250 likes | 476 Views
AAR Architecture Development. Evolution of the OneSAF AAR Architecture. References. Author: Paul Clements Publisher: Addison-Wesley SEI Series in Software Engineering Documenting Software Architectures Views and Beyond Evaluating Software Architectures Methods and Test Case Studies
E N D
AAR Architecture Development Evolution of the OneSAF AAR Architecture
References • Author: Paul Clements • Publisher: Addison-Wesley • SEI Series in Software Engineering • Documenting Software Architectures • Views and Beyond • Evaluating Software Architectures • Methods and Test Case Studies • Software Product Lines • Practices and Patterns
Extending the Architecture • Baseline Architecture • Receive Stakeholder Requirements • Allocate Stakeholder Requirements • Develop Use Case Scenarios • Identify Extensions • Define Extensions
Baseline Architecture • Quality Attributes • System Requirements • Layered View defines Virtual Machine “layers” of capability • Use Case Scenarios provide threads of functionality • Define Components • Define Layers, Subcomponents, and Services
AAR Use Case Scenarios Use Case Scenarios represent threads providing context in which the architecture is quantitatively evaluated by stakeholder quality attributes. Use Case One … Use Case N Capabilities Specify a logical grouping of components along boundaries (applications, phases, tools, etc) Capability or Phase … Components Document modules of implementation that interact according to defined interfacing mechanisms called “Connectors”. These connectors are themselves Supporting Components of the architecture. For each Component, context-connector diagrams are documented one dependency deep. Component Support Layer Support Components represent the layer that connects Use Case Scenario Components. The mechanisms used by the connectors are strongly driven by the stakeholder quality attributes. Connector Functional Services Sub-Component Data Model API Service Layer Service components represent the layer that abstracts the Components and Connectors of the Use Cases Scenarios from the underlying implementation details (HW/SW). XML Services GUI Services File O/I Services ODBC/ADO Services Office Services
No Quality Attributes PLRS specified SRS specified Use Case Scenarios identified, not well defined. Components and Interfaces defined Block C Architecture Baseline
Receive Stakeholder Requirements • Capture Stakeholder Quality Attributes • If the sponsor of a system cannot tell you what any of the quality goals are for the system, then any architecture will do. • Quality attributes are used in context to architectural evaluation techniques • Allocate Requirements • Allocate to Components • Identify Specification Level
Allocate Requirements • Allocate to Components • For each component ask what this stakeholder’s requirement means in the component's context • Identify Specification Level • Identify the specification level of each requirement; for example: 0 = No Allocation 1 = Specified 2 = Designed 3 = Implementation (Partial) 4 = Complete
Develop Use Case Scenarios • Use Case Scenarios represent the threads by which to evaluate an architecture in context to its quality attributes • Use Case Scenarios provide first impressions for any architecture • Not the same as software (UML) use cases • These threads represent methods of evaluating the architecture in context to a stakeholder’s quality attributes • Write your tests first, implement second
Identify Extensions • Analyze Requirements • Identify how implementation falls short of providing for quality attributes in context to the requirements • Develop Alternatives • Ensure each alternative is distinguishable from the others • Analyze Alternatives • Weigh alternatives by quality attributes and other common criteria • Select Extensions • This process is representative of a trade-off or decision analysis and resolution study
Define Extensions • As each stakeholder reuses the Architecture, the architectural definition is extended to include stakeholder detail including: • Quality Attributes • Use Case Scenarios • Requirements • Capabilities • Components & Connectors
Joint After Action Review OneSAF AAR Extended
Stakeholder Attributes Supportability Reliability Interoperability Scalability Usability Extensibility Deployability Maintainability Schedule Affordability Evaluation Attributes Conceptual Integrity Modifiability Performance Security Variability JAAR Quality Attributes
JAAR Use Case Scenarios • AAR System Integration • Data Distribution • AAR Planning • Observation and Monitoring • AAR Generation and Briefing • Training and AAR Assessment
Integrate External System Data Integrate External Databases Integrate AAR Queries Integrate AAR Products Integrate Media MSDL SAL RTTE Media Media DIS Product (Generator) Product (Generators) XSD Methods of Evaluation SAL Schema MOP MOE Raw Data HLA ODBC XSD Query C4I … APDL Data: Products Query Specs Database Views Substitution Fields Synthesized Information Agents XSD Query MOE/MOP Data 1 SAL 2 APDL 3 Product 4 Media Control Data Fusion Analysis 1 Integrate to external system protocols for data collection.. 2 Integrate external system databases using APDL. 3 Integrate product generation capabilities from external systems. 4 Integrate media or other product format from external systems. JAAR System Integration
Data Collection & Synthesis Data Delivery Data Transformation Feedback & AAR Data Logging MSDL SAL RTTE Media Media DIS Product (Generator) Product (Generators) XSD Methods of Evaluation SAL Schema MOP MOE Raw Data HLA ODBC XSD Query C4I … APDL Data: Products Query Specs Database Views Substitution Fields Synthesized Information Agents Data XSD Control Query MOE/MOP Analysis Method of Evaluation 1 Collection 2 Query 3 Content Model 4 Data Fusion 1 Data Collection is distributed 2 Collected Data is distributed (queried) From any Database to any Consumer 3 Queries are distributed to Product Generators 4 Generated Products are distributed as Media representing Methods of Evaluation Data Distribution
Domain Data Providers Data Subscriber Data Persistence MOP/MOE Data Discussion Points Tasks to be Trained Agents & External Systems SAL SAL Database Query (Product Content Model) Product (Method of Evaluation) Task Content Model 5 4 3 2 1 Planning for AAR Data Collection (MOP/MOE) Flows Backwards From the JTA and JTT content models to the systems providing content data Data Control Analysis 1 Selected Tasks Identify the Products and Methods of Evaluation. 2 Products are Associated with the Queries (Product Content). 3 Product Content (Queries) map to Databases Content. 4 Databases Content is Provided by SALs. 5 SALs Collect Data from Agents and External Systems. AAR Planning
Domain Data Providers Data Subscriber COP External Systems (Data Source) SAL (What to Log) Replay Objects AAR Monitor (Replay) System Protocols RTTE Agents (Information Source) AAR Data Source 1 SAL Database 3 Graphics, Text and Voice Data Control RTTE 1 Enter Annotations/Bookmarks SAL (Annotator) OC Annotator 2 2 Log Annotations/Bookmarks 3 Query COP Content, Annotations & Bookmarks Observation & Monitoring
HITL 4 3 2 1 SAL Databases AAR Data Source Product Generators Product Presentation & Brief Collaboration Web Log Information Retrieval Product FTP 1 4 3 2 HITL Data Control 1 AAR Definition (Templates) Analysis 2 Media Definition (Text, Graphics, Video, Audio, etc) 3 Product Definition (Method of Evaluation) 4 Content Model (Query MOP/MOE) AAR Generation & Briefing
Training & AAR Assessment Develop Task Content Requirement Analysis 7 Develop Product 6 3 8 Assess SAL Schema (Content Model) Product Content Model 2 4 Methods of Evaluation 5 1 Develop SAL or Agent Data Analysis & Feedback Decision & Development 1 Product content not Supported 5 Assess/Apply Method of Evaluation Develop Information Retrieval 2 Collect Product content 6 Identify Requirements for Improvement 3 Method of Evaluation not Supported • Analyze MOP/MOE Requirements 4 Generate Evaluation Content 8 Update SAL Schema (JTA/JTT Content)
AAR Use Case Scenarios AAR System Integration Data Distribution AAR Planning Observation & Monitoring AAR Generation & Briefing Training & AAR Assessment TBD Capabilities Task MOP/MOE Information Retrieval AAR Planning Data Collection AAR Composition Replay & Monitoring AAR Authoring AAR Generation Components Task Author Information Mapper Scenario Importer SAL Binder Manager Replay Objects Aid Author AAR Manager MOP/MOE Author Search Component Event Author RTTE Data Broker AAR Monitor Query Author Media Manager Retrieval Component Subscription Manager SAL Manager MS Access Wrapper 2D/3D Component Product Author Aid Generator AAR Agent OC Annotator Database Mapper Collaboration Component Component Support Layer Messaging Support APDL Support Office Support 2D/3D Support MIL STD 2525B Binder Support Information Support Annotation Support Collaboration Support Task Support GUI Support Administration & Security Graphic & SVG Support AAR Data Source PDA Support Communication Support Service Layer XML Services GUI Services Network Crawler Administration Services Messaging Services Annotation Services PDA Services ODBC/ADO Services Office Services Search & Retrieval Collaboration Server Communication Services
DST Ground Truth (HLA) WARSIM Ground Truth (BDE & Above) Media Media CAPT SAL RTTE Plan XSD XSD XSD Query Query SAL Schema DST Ground Truth ODBC WARSIM OneSAF Product (Generator) Product (Generators) GCCS Agent GCCS Perception AAR Data Source Legend BSG Agents Component Current Capability Conflicts in Fires & Maneuver Component Future Capability Component Under Development JAAR Integrated Prototype
Questions ISBN: 020170482X ISBN: 0201703726 ISBN: 0201703327