Getting to know IRMA ( Integration of Resource Management Applications) - Overview By: Margaret...

Preview:

Citation preview

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.