Hotline

0963 801 047
Apex Global
ACADEMY FOR PROFESSIONAL EXCELLENCE

Software Architecture and Design Professional

Learning Objectives

By the end of the course participants should:         

  • Understand what is a software architecture
  • Explain why a software architecture is important
  • Describe the architecture influence cycle
  • Describe the relationships between system qualities and software architectures
  • Describe software architectural patterns and tactics, and their relationship to system qualities
  • Able to apply the QAW for eliciting critical quality attributes
  • Understand the essential considerations in any architectural design process
  • Be able to apply attribute-driven design
  • Be able to document a software architecture documentation
  • Be able to evaluating software architecture effectively using ATAM, CBAM
  • Be able to Apply architectural reuse via software product lines
  • Understand Difference Perspectives of Software Architecture
Training Contents

Module 1: Introduction to Software Architecture

  • What is software architecture?
  • Who is software architect?
  • What’s the difference Between Architecture and Design?
  • Why is software architect important?
  • Architecture in Technical, Business, Professional Context
  • Architecture in a Project Life-Cycle Context
  • The architecture influence cycle
  • Underlying Competencies of Software Architecture

Module 2: Architecture and Requirements

  • Gathering Architecturally Significant Requirement (ASR)
  • The Quality Attribute Workshop (QAW)
  • Capturing Architecturally Significant Requirement

Module 3: Designing an Architecture

  • Design Strategy and The Attribute-Drive Design Method
  • Understanding Quality Attributes
  • Architectural Tactics
  • Architecture Patterns
  • Quality Attribute Modeling and Analysis

Module 4: Documenting Software Architectures

Overview of Architecture Documentation

  • Uses and Audiences for Architecture Documentation
  • Architecture Documentation and Quality Attributes
  • Architecture View and Architecture Styles
  • Seven rules for sound Documentation
  • Notations for Architecture Documentation
  • Documenting Software Interfaces
  • Documenting Behavior

Building the Architecture Documentation

  • Choosing the Views
  • Documenting a View, Beyond Views, a Mapping to Requirements
  • Packaging the Architecture Documentation
  • Reviewing an Architecture Document

Module 5: Architecture Evaluation

  • Evaluation Factors
  • The Architecture Tradeoff Analysis Method
  • Lightweight Architecture Evaluation
  • Decision-Making Context
  • The Basis for the Economic Analyses
  • Putting Theory into Practice: The CBAM

Module 6: Architecture Reconstruction and Conformance

  • Architecture Reconstruction Process
  • Raw View Extraction
  • Database Construction
  • View Fusion
  • Architecture Analysis: Finding Violations

Module 7: Architecture, Implementation, and Testing

  • Embedding the Design in the Code
  • Using Frameworks and Code Templates
  • Keeping Code and Architecture Consistent
  • Levels of Testing and How Architecture Plays a Role in Each

Module 8: Management and Governance

  • The top-down and bottom-up budget and schedule
  • Developing architecture design and the release plans
  • Responsibilities of Project Manager and Software Architect
  • Global Development
  • Tradeoffs, incremental development, and managing risk.
  • Global Metrics, Phase Metrics and Costs to Complete
  • Controls, Compliance, Processes and Practices

Module 9: Architecture in Agile Projects

  • Agility and Architecture Methods
  • Examples of Agile Architecting
  • Guidelines for the Agile Architect

Module 10: Architecture Reuse via Software Product Lines

  • Product Line Variability and Quality Attribute of Variability
  • What Makes a Software Product Line Work?
  • Product Line Scope and Variation Mechanisms
  • The Role of a Product Line Architecture
  • Evaluating a Product Line Architecture
  • Key Software Product Line Issues

Module 11: Architecture in the Cloud

  • Basic Cloud Definitions
  • Service Models and Deployment Options
  • Base Mechanisms: Hypervisor, Page Mapper, Storage, Network
  • Sample Technologies: virtual resource managers, HBase, MongoDB
  • Architecting in a Cloud Environment
Target Audience

This course is intended for those as below:

  • Software Engineer
  • Designer
  • Developer
  • Software Architect
  • Technical Lead
  • Project Manager
  • Product Line Manager
  • Software Engineering Manager
Key Highlights

Class training methods  
Training Methods1Values

  • CUSTOMISED: Our tailor-made solutions are in line with your business goals, drawing on best practices and proven approaches
  • RESULT-ORIENTED: Our primary objective is the enhancement of business results through continuous evaluation for maintaining focus and accountability
  • COST-EFFECTIVE: Our customized and simple solutions are highly cost-effective
  • TARGETED: We use a combination of approaches and techniques to meet the objectives of our individual clients and organizational needs
  • PROCESS-ORIENTED: Our training programs are process focused, not process bound. We apply standard tools for process streamlining
  • IMPROVEMENT FOCUSED: Our techniques involve robust evaluation, open and honest communication and on-going process upgrading for continuous improvement.
  • IMPACTFUL: Our experts leverage powerful solutions that can deliver the right impetus to your business

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Course Pictures
Other Info

Contact Info

Public Training Schedule

Phone: +84 (0)862 718 187               
Email: [email protected]
Please click below link to view our public training schedule

  e-brochure-downloadBrochure EN

 

 

Perceived by Participants
[testimonials category=”76″]
Certified Partners International