| Day 1 Overview: Software Architecture Overview: Architectural Description Including Architectural Views, Models, Viewpoints and Perspectives Overview: Level of Abstraction Overview: Iterative and Incremental Development Overview: Agile (Lean Software Process) Overview: Requirements Engineering and Management Overview: Applying Marketing Approach for Requirements Engineering Principles of Thought: Integrated Thinking, Lateral Thinking, Strategic Thinking, Positive Thinking, Etc. Overview: Approaches for Driving The Software Development: o Risk Driven Development o Business Driven Development o Test Driven Development o Function (Use Case) Driven and Behavior Driven Development o Quality Attribute Driven Design o Constrain Driven Design Reviewing Problem Blackground Reviewing Stakeholders Reviewing Vision: Projects Vision, Stakeholders Vision, Architectures Vision Reviewing Architecture Constraints Reviewing Architecture Principles Reviewing Stakeholders Concerns Day 2 Reviewing and Refining Key Abstractions (Vocabulary / Glossary) and Business Domain Model Reviewing Business Processes and Business Model / Business Architecture Reviewing Business Goals / Business Requirements Reviewing Business Automation / Business Solution Reviewing Business Process Re-Engineering and/or Improvement Reviewing System Features Reviewing Functional Requirements / Use Cases, and Use Case Model Reviewing Non-Functional Requirements / Quality Attributes Reviewing Requirements Traceability Reviewing Traceability: Between Business Goals and System Features, and System Features and Use Cases Refinement: o Identifying Actor and Building Actor Model o Finding Use Cases from Actors o Building Use Case Model Preliminary Measuring Requirements for Identifying Architectural Requirements o Overview: Using Microsoft Access to Measuring Requirements, Managing Requirements and Traceability Day 3 Detailing Architectural Significant Use Cases (Focus on Flow-of-Events Analysis / Requirements Analysis) Understanding Quality Attributes (Non-Functional Requirements) Based On Stakeholders Concerns and Risks Creating Traceability: Between Quality Attributes and Use Cases Refining Quality Attributes Using System Quality Scenario Simulation Identifying Architectural Drivers Day 4 Preliminary Identifying Risks Using Affinity Diagram Defining View Catalog: Architectural Views, Models, Viewpoints (and Diagrams), and Architectural Perspectives Creating Baseline for Inception Phase, Creating Commitment and Updating Project Plan, and Guideline for Preliminary Estimation Using Architecture-Centric Software Project Management Approach Refining Use Cases (System Analysis) o Transforming Use Case Detail to Screen Flow Model o Transforming Use Case Detail to User Manual o Transforming Screen Flow Model to Analysis Model o This process's result are key logic objects, proxy objects to communicate with external systems and other subsystems, and conceptual database design model which specific to each use case. o Overview: Transforming Analysis Model to Service Design for Web Services or SOA Purposes Day 5 Refining Quality Attributes (Scenarios) Preliminary Evaluating Architecture, A Qualitative Approach Using ATAM (Architecture Trade-off Analysis Method) Refining Requirements Measurement (Especially Quality Attributes) Overview: Test Architecture Short Brief on Transforming Use Case to Functional Test Cases Transforming System Quality Scenario to Architectural Test Cases Day 6-7 Overview: Architectural Mechanisms Understanding General Architectural Strategies and Tactics GoF Design Patterns Overview: Transaction Design Patterns of Enterprise Application Architecture Overview: Some Patterns from Pattern Oriented Software Architecture (POSA) Overview: Object-to-Relational Mapping (Designing Data Model by Using Object-Orientation Concepts to Support RDBMS) Day 8 Finding Candidate Architectural Strategies Guideline for Defining Preliminary Solution Architecture Considering Software Product Lines and Component Off-The Shelf (COTS) Identifying Sensitivity Points, Trade-Off Points, and Risks Evaluating Architecture Using ATAM Overview: Cost-Benefit Analysis Method (CBAM) and How to Work with Financial Analyst, Investment Advisor and Legal Advisor Day 9 Find Architectural Mechanisms and Designing the Architecture Applying Patterns and Refining Architecture and Architectural Interfaces Analyzing Impact and Reflection, and Evaluating Architecture Using ATAM and CBAM Categorizing System's Logic and Defining Architectural Layers Overview: Documenting the Software Architecture and Design Integrating Design Between Function-Driven Approach and Quality Attribute Driven Approach Day 10 Overview: Creating Architecture References and Design References for Programmers Overview: Architecture Governance and Implementation Governance Creating Baseline for Elaboration Phase, Refining Project Plan and Estimation Using Architecture-Centric Software Project Management Approach Architectural Process and Plan Summary Best Practices for Collaborate with Stakeholders: Customers, Project Managers, Programmers, Outsourcers, Etc. Special Guidelines: o Communication and Negotiation o Leadership o Patterns for Introducing New Ideas o Other Architectures: System Architecture, Solution Architecture, Enterprise Architecture, Etc. o Using Architecture to Refine TOR (Term of References)
|