110 likes | 514 Views
Overview of a Pattern-based Reference Architecture. Carroll A. Hood GEOSS Chief Architect. Outline. What is a Pattern-based Reference Architecture? Example Why is this relevant to GEOSS?. Pattern based Reference Architecture. Patterns: Abstractions of design solutions
E N D
Overview of a Pattern-based Reference Architecture Carroll A. Hood GEOSS Chief Architect
Outline • What is a Pattern-based Reference Architecture? • Example • Why is this relevant to GEOSS?
Pattern based Reference Architecture • Patterns: Abstractions of design solutions • Reference Architecture (RA): Abstraction of an architecture with common characteristics and quality attributes • Tailorable • Reduces Risk • Encourages Reuse • What and Who NOT How and Why RAs: The Building Blocks for GEOSS
Characteristics of an RA • Structure • Entities • Internal/External Interfaces • Behaviors • Global Rules • Standards • Constraints
Structure: Value Stream and IPO Chart High Level Value Stream Go to Store Buy Stuff Take Stuff Home Prepare Taco Consume Taco Paper Go to Store Pencil/Pen Shopping List • Check Pantry/Frig • Make List • Get in Car w/list • Drive to Store Keys ATM Card Input-Process-Output (IPO) Chart for one Step in Value Stream
Structure: Domain Collaboration Diagram Mexican Foods Dairy Cooler Cheese, Sour Cream Shells, Seasoning, Taco Sauce Beer Grocery Store Meats Produce Checkout Ground beef Lettuce, Tomato Seasoning Food Stove Pantry Beef me Kitchen Refrigerator Beef Shells Taco Sauce Cheese, Lettuce, Tomato, Sour Cream, Beer Home Cupboard Oven Tacos, Beer Plate Shells Island Dining Room Structure provides a top-level organization, defines entities, identifies interfaces, and scopes the enterprise
Grocery Store Select Commodity (pattern) Ground Beef Cheese Beer Etc. Manage Cart (pattern) Insert item Remove Item Pay for Groceries Home Put Food Away (pattern) Into Pantry Into Refrigerator Prepare Beef Heat Shells Assemble Ingredients (pattern) From Pantry From Refrigerator Build Taco Ignore Cat (begging for people food) Behaviors: List of Use Cases Behaviors describe the interactions between entities
Use Case Example: Build Taco Use Case ZZZ: Build Taco • Description: This use case describes the construction of a fully-loaded taco, ready-to-eat • Actors: Me • Preconditions: All ingredients have been moved to the island (UC XXX Assemble Ingredients, etc) • Flow of Events for Main Scenario: • Take heated shell from cookie sheet • Spoon Beef inside empty shell • Pour some taco sauce on top of beef • Spoon dabs Sour Cream on top of that • Sprinkle grated cheese across top • Insert chopped tomato • Stuff chopped lettuce on top of cheese • Alternate Scenario • If taco shell breaks at any point during steps 1-7, • place ingredients accumulated so far onto plate and continue with remaining step. • put ingredients accumulated so far into new shell and continue with remaining steps • Move Step 5 (cheese) to end. • Post Conditions: Ensure beer is still cold before moving to Dining Room • Special Conditions: none
Global Rules: Standards and Constraints • Standards • To my knowledge, there are no ISO Standards that come into play here • Perhaps some USDA Regulations (Food safety) • “Tastes Great, Less Filling” (community-based standard) • Constraints • Budget • Hours of Operation of Grocery Store • Dinner Time Constraints and standards do not define but help shape the solution space
Relevance to GEOSS • GEOSS is a system of system of systems • No single large procurement • Multiple entitles evolving toward GEOSS-level interoperability over time • Some new elements will be developed; hopefully with GEOSS-level interoperability in mind • Enterprise-wide optimization will require collaboration between Government, Academia, and the Private Sector • Reference Architectures for specific GEOSS elements or threads • Provides a blueprint for development/evolution within a common GEOSS interoperability framework • Allows for flexibility and innovation in design and implementation • Private Sector is in best position to lead (notown) RA development for GEOSS • It’s what we do (This is why we are all here) • RA’s are not static; they will evolve as our knowledge and capabilities expand • Buy-in at a high level (i.e., RAs) will enable all of us to more forward at more detailed levels more smartly and will help GEOSS become real