getting to know irma ( integration of resource management applications) - overview by: margaret...

1
Getting to know IRMA (Integration of Resource Management Applications) - Overview By: Margaret Beer, Brent Frakes, Alison Loar, Simon Kingston National Park Service U.S. Department of the Interior Natural Resource Program Center Inventory and Monitoring Program http://nrinfo.nps.gov NATURAL RESOURCE PROGRAM CENTER Science, Stewardship, Solutions From Silos to Service-Oriented Architecture Transition staff away from an application-based organization to a function- based organization. Step One – Transition Organization Philosophy System Development Life Cycle Engage Users Silo Application-based Goals and Benefits Service Development Goals Program M anagem ent SO A Architect D B Lead Q A Lead Application Architect AnalystLead AnalystTeam D evelopm entTeam SO A Team D atabase Team Q A Team SOA Function-based Step Two – Transition Infrastructure Configuration Transition infrastructure away from an application-based configuration to Transition infrastructure away from an application-based configuration to a a task-based task-based organization. organization. Silo Application-based D ataStore N atureBib N PSpecies SOA Task-based Staging Developm ent QA Training & Beta Testing Production Application M igration Paths Pr o du c t C od e Fix e s Step Three – Build System Development Life Cycle Build a system development life cycle (SDLC) that is Build a system development life cycle (SDLC) that is supported by supported by role-based role-based teams. teams. • Project Management • Functional Analysis • Architecture - SOA - Application - Database • User Interface Design • Development • Quality Assurance • Configuration Management & Support Iterative D evelopm ent U ser U ser Functional Analyst C hange C ontrol Develop QA Architect Deploy Silo One or two people do it all SOA Teams whose expertise is shared among applications • Functional Analysis • Architecture - Application - Database • User Interface • Quality Assurance • Configuration Mgmt • Technical Support • Documentation Reconstruction: • What are the user workflows among these discrete functions? • How should work be channeled between users? • How should data be consumed by various services? • How can the services be made flexible for future needs? • What infrastructure needs to be in place to optimize performance? • What are the priorities and dependencies for development? Deconstruction: • What are the discrete functions of current systems? • How do users want to perform their work? • Does an existing application get replaced by multiple services? • Do we need to create new services? • Do we outsource or delete existing functions? • What do users need? • How can discrete functions be improved? • How can these functions be shared among wider audiences? Engage stakeholders Engage stakeholders and the many types of users by and the many types of users by gathering user requirements before the system is gathering user requirements before the system is built. Understand and fully document those built. Understand and fully document those requirements, including future needs and wants. requirements, including future needs and wants. Deconstruct Deconstruct the application into its the application into its core core functions functions . These functions can be formalized as . These functions can be formalized as services services which can be shared among many which can be shared among many applications. applications. Define Application Scope Build once, use many times. Each service is simple and modular, and can become one of the basic building blocks of many different advanced applications. When new user needs arise, applications can be built far more quickly and easily by tapping into existing services. Lasting Benefits of SOA and IRMA Background Over the past decade, NRPC has built and maintained information systems that have captured valuable information and provided essential tools for its management. However, each system has had a unique login, look, definitions, and logic for use. In 2006, the NRPC Center Director issued a policy that established the basis for revamping information systems and gave IRMA its start. The goal of the IRMA is to create a central web portal, a single sign-on system, and a common user interface for all natural resource applications. The underlying framework of this portal is based on service-oriented architecture (SOA), which allows efficient use and sharing (both within NPS and with partners) of data. Best practices for service development follow these goals: Attack risks early Attack risks early Develop iteratively Develop iteratively Get regular feedback Get regular feedback Risks are addressed by maintaining regular contact with the users and informing them of the long-term service roadmap before the development begins. Previous system development followed a waterfall development approach, which was to build the entire system before release. IRMA follows an iterative development cycle which incrementally releases versions, each with a little more functionality than the previous. Users can provide regular feedback on each version and refine the long-term vision of the service (i.e., scope). Users can also help steer the development timeline to make sure their priorities are addressed first. Develop Service Version O btain U ser Feedback M odify Versions Timeline Progressive Elaboration of ProjectScope bugs Reconstruct Reconstruct the the core functions core functions into distinct into distinct services. services.

Post on 18-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Getting to know IRMA ( Integration of Resource Management Applications) - Overview By: Margaret Beer, Brent Frakes, Alison Loar, Simon Kingston National

Getting to know IRMA (Integration of Resource Management Applications) - Overview

By: Margaret Beer, Brent Frakes, Alison Loar, Simon Kingston

National Park ServiceU.S. Department of the Interior

Natural Resource Program CenterInventory and Monitoring Program

http://nrinfo.nps.gov/NATURAL RESOURCE PROGRAM CENTERScience, Stewardship, Solutions

From Silos to Service-Oriented Architecture

Transition staff away from an application-based organization to a function-based organization.

Step One – Transition Organization Philosophy

System Development Life Cycle

Engage Users

Silo Application-based

Goals and Benefits

Service Development Goals

Program Management

SOA Architect

DB Lead

QA Lead

Application Architect

Analyst Lead

Analyst Team Development Team SOA Team Database Team QA Team

SOAFunction-based

Step Two – Transition Infrastructure Configuration

Transition infrastructure away from an application-based configuration to a Transition infrastructure away from an application-based configuration to a task-basedtask-based organization. organization.

SiloApplication-based

DataStore NatureBibNPSpecies

SOATask-based

Staging

Development

QA

Training & Beta Testing

Production

Application Migration Paths

Pro

duct

Cod

e F

ixes

Step Three – Build System Development Life Cycle

Build a system development life cycle (SDLC) that is supported Build a system development life cycle (SDLC) that is supported by by role-basedrole-based teams. teams.

• Project Management• Functional Analysis• Architecture

- SOA- Application- Database

• User Interface Design• Development• Quality Assurance• Configuration Management & Support

Iterative Development

User User

Functional Analyst

Change Control

Develop

QA

Architect

Deploy

Silo One or two people do it

all

SOATeams whose expertise is shared among

applications

• Functional Analysis• Architecture

- Application- Database

• User Interface • Quality Assurance• Configuration Mgmt • Technical Support• Documentation

Reconstruction:• What are the user workflows among these discrete functions?• How should work be channeled between users?• How should data be consumed by various services?• How can the services be made flexible for future needs?• What infrastructure needs to be in place to optimize performance?• What are the priorities and dependencies for development?

Deconstruction:• What are the discrete functions of current systems?• How do users want to perform their work?• Does an existing application get replaced by multiple services?• Do we need to create new services?• Do we outsource or delete existing functions?• What do users need?• How can discrete functions be improved?• How can these functions be shared among wider audiences?

Engage stakeholdersEngage stakeholders and the many types of users by and the many types of users by gathering user requirements before the system is built. gathering user requirements before the system is built. Understand and fully document those requirements, including Understand and fully document those requirements, including future needs and wants.future needs and wants.

Deconstruct Deconstruct the application into its the application into its core functionscore functions. These . These functions can be formalized as functions can be formalized as servicesservices which can be shared which can be shared among many applications.among many applications.

Define Application Scope

Build once, use many times. Each service is simple and modular, and can become one of the basic building blocks of many different advanced applications.

When new user needs arise, applications can be built far more quickly and easily by tapping into existing services.

Lasting Benefits of SOA and IRMA

Background

Over the past decade, NRPC has built and maintained information systems that have captured valuable information and provided essential tools for its management. However, each system has had a unique login, look, definitions, and logic for use.

In 2006, the NRPC Center Director issued a policy that established the basis for revamping information systems and gave IRMA its start. The goal of the IRMA is to create a central web portal, a single sign-on system, and a common user interface for all natural resource applications. The underlying framework of this portal is based on service-oriented architecture (SOA), which allows efficient use and sharing (both within NPS and with partners) of data.

Best practices for service development follow these goals:•Attack risks earlyAttack risks early•Develop iteratively Develop iteratively •Get regular feedbackGet regular feedback

Risks are addressed by maintaining regular contact with the users and informing them of the long-term service roadmap before the development begins.

Previous system development followed a waterfall development approach, which was to build the entire system before release. IRMA follows an iterative development cycle which incrementally releases versions, each with a little more functionality than the previous.

Users can provide regular feedback on each version and refine the long-term vision of the service (i.e., scope). Users can also help steer the development timeline to make sure their priorities are addressed first.

Develop Service Version

Obtain User Feedback

Modify Versions Timeline

Progressive Elaboration of Project Scope

bugs

Reconstruct Reconstruct the the core functions core functions into distinct services.into distinct services.