20
Reference Architecture Reference Architecture and Agile Development and Agile Development Presentation to NASA Standards Process Group Presentation to NASA Standards Process Group Reference Architecture workshop at Reference Architecture workshop at the ESIP Federation Meeting the ESIP Federation Meeting George Percivall OGC Chief Architect 22 July 2010 Copyright © 2010, Open Geospatial Consortium, Copyright © 2010, Open Geospatial Consortium, Inc. Inc.

Reference Architecture and Agile Development Presentation to NASA Standards Process Group Reference Architecture workshop at the ESIP Federation Meeting

Embed Size (px)

Citation preview

Reference Architecture Reference Architecture and Agile Developmentand Agile Development

Presentation to NASA Standards Process Group Reference Presentation to NASA Standards Process Group Reference Architecture workshop at Architecture workshop at

the ESIP Federation Meetingthe ESIP Federation Meeting

George Percivall

OGC Chief Architect

22 July 2010

Copyright © 2010, Open Geospatial Consortium, Inc. Copyright © 2010, Open Geospatial Consortium, Inc.

Making Location Count…

Reference Architecture and Agile DevelopmentReference Architecture and Agile Development

• Architecting

• Reference Architectures

• Agile Development

• Some examples

Copyright © 2010, Open Geospatial Consortium, Inc.

Making Location Count…

Architecture and ArchitectingArchitecture and Architecting

• Architecture

– Organization of a system embodied in its components, their relationships to each other and to the environment and principles guiding its design and evolution (IEEE P1471)

• Architecting Approaches

– Heuristics: Rule of thumb

– Stakeholders: Process

– Normative: Standards

Systems Architecting, Eberhardt Rechtin, Prentice Hall, 1991

Copyright © 2010, Open Geospatial Consortium, Inc.

Making Location Count…© 2006, Open Geospatial Consortium, Inc. 4

Architecting HeuristicsArchitecting Heuristics

• The greatest leverage in system architecting is at the interfaces - Eberhard Rechtin

• Look for misfits with context and design to minimize them - Christopher Alexander

• Running code wins - IETF• Solutions should be as simple as possible, but no simpler –

Albert Einstein• Simple ain’t easy – Thelonious Monk

Making Location Count…

Reference Architecture StandardsReference Architecture Standards

• IEEE 1471

– General process. Requires viewpoints but does not define any.

• RM-ODP

– Reference Model for Open Distributed Processing

– Enterprise, Informational, Computational, Engineering, Technology

– Viewpoint languages coordination with UML

• OASIS Reference Model for Service Oriented Architecture

– Focused on Services

• Others: DODAF, TOGAF, Zachman

Copyright © 2010, Open Geospatial Consortium, Inc.

Making Location Count…

SUMMARY OF ARCHITECTURE STANDARDSSUMMARY OF ARCHITECTURE STANDARDS

Source: GST Interoperability Group, 2002

Making Location Count…

SUMMARY OF ARCHITECTURE STANDARDSSUMMARY OF ARCHITECTURE STANDARDS

• Maintenance organization – what organization is responsible for establishing, updating and distributing the standard.

• Architecting products defined? – Does the standard define what items, e.g., views, shall be used to define an architecture?

• Architecting process defined? – Does the standard define the steps that an organization shall perform in order to develop an architecture?

• Standards Category Model? – Does the standard provide an outline for organizing standards that shall be used to define architectures. (These categories are the basis for a Standards Technical Reference Model)

• Required standards listed? – Does the standard provide specific standards that shall be used to be compliant to the architecture standard?

• Standards Development Process? – Does the standard define a process for developing or adopting standards?

• The Zachman Framework is not included in the evaluation as it is a proprietary approach not allowing for comparison.

Copyright © 2010, Open Geospatial Consortium, Inc.

Making Location Count…

RM-ODP Viewpoints – Separation of ConcernsRM-ODP Viewpoints – Separation of Concerns

“GIGAS Methodology for comparative analysis of information and data management systems” OGC Best Practice, 10‑028r1

Making Location Count…

Examples of Reference Architecture for Examples of Reference Architecture for Evolutionary DevelopmentEvolutionary Development

• OGC Reference Model (ORM)– Overview of OGC Standards Baseline– Resource for defining architectures for specific applications

• GEOSS Architecture Implementation Pilot

– System of Systems based on Interoperability Arrangements

– Process of iterative development while refining an architecture

– AIP Architecture using RM-ODP

• http://www.ogcnetwork.net/AIpilot

Copyright © 2010, Open Geospatial Consortium, Inc.

GEOSS AIP Enterprise Viewpoint

GEOSS AIP Information Viewpoint

Source: GEOSS AIP-3 Architecture – Information Viewpoint

GEOSSClearinghouse

s

GEO Web Portals

GEOSS Common Infrastructure

Components & Services

Standards andInteroperability

Best PracticesWiki

User Requirements

Registries

Main GEOWeb Site

CSW WMS

CSW

Registered Community Resources

Community Portals

Client Applications

Client Tier

Business Process Tier

CommunityCatalogues

AlertServers

WorkflowManagement

ProcessingServers

Access Tier

GEONETCastProduct Access

ServersSensor Web

ServersModel Access

Servers

Test Facility

MediationServers

CSW WMS CSW W*S

WMS WFS WFS SOS SAS SPS W*S

CSW

WPS

Engineering Viewpoint

OGC 13

ISO 19101-2 – Geographic Information – Reference Model – ImageryISO 19101-2 – Geographic Information – Reference Model – Imagery

Engineering viewpoint - NodesEngineering viewpoint - Nodes

Making Location Count…

Prototyping Versus SpecifyingPrototyping Versus Specifying

• “Prototyping Versus Specifying: A Multiproject Experiment”

1) Prototyping yielded products with roughly equivalent performance, but with about 40 percent less code and 45 percent less effort.

2) The prototyped products rated some what lower on functionality and robustness, but higher on ease of use and ease of learning.

3) Specifying produce produced more coherent designs and software that was easier to integrate.

– BARRY W. BOEHM, TERENCE E. GRAY, AND THOMAS SEEWALDT, IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. SE-10,NO. 3,MAY 1984

• See also Michael Schrage, e.g., Serious Play and “Cultures of Prototyping” in Bringing Design to Software

Copyright © 2010, Open Geospatial Consortium, Inc.

Making Location Count…

Agility and ArchitectureAgility and Architecture

• Use agile development to get to a good architecture by appropriately applying suitable combinations of – architectural functions

• (such as communication, quality attributes, and design patterns) and

– architectural skills at four points in the development life cycle. • (up-front planning, storyboarding, sprint, and working

software)

• http://www.computer.org/cms/Computer.org/ComputingNow/homepage/2010/0410/T_SW_AgileArchitectureInteractions.pdf

Copyright © 2010, Open Geospatial Consortium, Inc.

Making Location Count…

IEEE SOFTWARE - March/April 2010 IEEE SOFTWARE - March/April 2010

GEO AIP Evolutionary Development Process

DevelopmeDevelopmentnt

ActivitiesActivities

Kick-offKick-offWorkshoWorksho

pp

Call for Call for ParticipationParticipation

ConceptConceptDevelopmeDevelopme

ntnt

PersistentPersistentOperationOperation

ss(AR-07-(AR-07-

01)01)

Participation

Participation

Participation

Participation

ParticipationArchitectureArchitectureDocumentationDocumentation

Updates for each step

Baseline

AR-07-02 Architecture Implementation Pilot

Evolutionary Development Process

Operational Baseline and Lessons Learned for next evolutionary spiral

Continuous interaction with external activities

4.Deployment

Plan

4.Deployment

Plan

1. SBA

Scenarios

1. SBA

Scenarios

2.Enterprise

Models

2.Enterprise

Models

3. Engineering

Design

3. Engineering

Design

Component Types

Information Framework

Optimize

Specify

AIP: Using the Architecture Views in the Evolutionary Development Process

Use Cases

Services

Making Location Count…

David Byrne: David Byrne: How Architecture helped music evolveHow Architecture helped music evolve

• http://www.ted.com/talks/david_byrne_how_architecture_helped_music_evolve.html

• He asks: Does the venue make the music? – From outdoor drumming to Wagnerian operas to arena rock, Byrne

explores how context has pushed musical innovation.

• Model for creation (at 13:45 in talk)

– We make music primarily in a form to fit the context and we make art to fit museum walls

– We write software to fit existing operating systems. Its evolutionary, its adaptive.

– This is a reverse view from the traditional romantic view: first comes the outpouring of emotion and then somehow it gets shaped into something.

– The passion is still there, but the vessel that it is going to be injected into and poured in to is instinctively and intuitively created first.

Copyright © 2010, Open Geospatial Consortium, Inc.

Making Location Count…

For Details on OGC Standards…For Details on OGC Standards…

• OGC Standards– Freely available– www.opengeospatial.org/standards

• OGC Reference Model (ORM)– Overview of OGC Standards Baseline– Resource for defining architectures for specific

applications– www.opengeospatial.org/standards/orm

George Percivall, gpercivall at opengeospatial.org

Copyright © 2010, Open Geospatial Consortium, Inc.