Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Reference Architecture and Agile Development Presentation to NASA Standards Process Group Reference Architecture workshop at the ESIP Federation Meeting George Percivall OGC Chief Architect 22 July 2010 Copyright © 2010, Open Geospatial Consortium, Inc. Reference Architecture and Agile Development • Architecting • Reference Architectures • Agile Development • Some examples Making Location Count… Copyright © 2010, Open Geospatial Consortium, Inc. Architecture 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 Making Location Count… Copyright © 2010, Open Geospatial Consortium, Inc. Architecting 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… © 2006, Open Geospatial Consortium, Inc. 4 Reference 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 Making Location Count… Copyright © 2010, Open Geospatial Consortium, Inc. SUMMARY OF ARCHITECTURE STANDARDS Source: GST Interoperability Group, 2002 Making Location Count… SUMMARY 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. Making Location Count… Copyright © 2010, Open Geospatial Consortium, Inc. RM-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 Evolutionary 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 Making Location Count… Copyright © 2010, Open Geospatial Consortium, Inc. GEOSS AIP Enterprise Viewpoint GEOSS AIP Information Viewpoint Source: GEOSS AIP-3 Architecture – Information Viewpoint Engineering Viewpoint GEOSS Common Infrastructure Main GEO Web Site Registered Community Resources Client Tier GEO Web Portals Registries Components & Services CSW Standards and Interoperability Best Practices Wiki Community Portals WMS CSW CSW Client Applications WMS CSW Business Process Tier CSW Community Catalogues GEOSS Clearinghouses W*S Mediation Servers Alert Servers WPS User Requirements Workflow Management WMS GEONETCast WFS WFS Product Access Servers SOS Processing Servers SAS SPS Sensor Web Servers W*S Test Facility Access Tier Model Access Servers ISO 19101-2 – Geographic Information – Reference Model – Imagery Engineering viewpoint - Nodes OGC 13 Prototyping 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 Making Location Count… Copyright © 2010, Open Geospatial Consortium, Inc. Agility 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/ComputingNo w/homepage/2010/0410/T_SW_AgileArchitectureInteractio ns.pdf Making Location Count… Copyright © 2010, Open Geospatial Consortium, Inc. IEEE SOFTWARE - March/April 2010 Making Location Count… GEO AIP Evolutionary Development Process Participation AR-07-02 Architecture Implementation Pilot Evolutionary Development Process Concept Development Participation Call for Participation Updates for each step Continuous interaction with external activities Participation Kick-off Workshop Architecture Documentation Baseline Operational Baseline and Lessons Learned for next evolutionary spiral Participation Development Activities Participation Persistent Operations (AR-07-01) AIP: Using the Architecture Views in the Evolutionary Development Process 1. SBA Scenarios 2. Enterprise Models Optimize 3. Engineering Design Specify Information Framework Use Cases Component Types Services 4. Deployment Plan David Byrne: How 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. Making Location Count… Copyright © 2010, Open Geospatial Consortium, Inc. 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 Making Location Count… Copyright © 2010, Open Geospatial Consortium, Inc.