CC0ARCH3D: Introduction to Software Architecture Design and Evaluation

3-day crash course, $2750 per student


Please contact us for 2015 dates or to schedule a private class


In this course students will be introduced to formal methodologies for software architecture design and evaluation with focus on Service Oriented Architectures (SOA). But the design techniques and methodologies, as well as the design patterns taught in this class are applicable to other software architectures.

In the real world, software is a complex system of components and modules. If you are tasked with evaluating an existing architecture or designing a new system from scratch, the task can be overwhelming. This course will introduce the learners to  you to the Architecture Tradeoff Analysis Method where you will learn how to develop quality attributes, evaluate existing or proposed architectures against such attributes, and make sure that your design meets the business needs. You will go through an exercise where the team will review high level business requirements, design the process to gather data from stakeholders, and develop the quality attributes. Then, a couple of architectural proposals will be evaluated and rated against the quality attributes. The last half day of this 3-day class will focus on design patterns applicable to SOA 


This course is designed for experienced software developers who are new to the role of Software Architect, are in the process of designing a new software system, or need to evaluate an existing software architecture against some business requirements.

This course requires that you meet the following prerequisites:

  • 1 or more years of experience creating applications 


  • What is an architecture?
  • Why architecture analysis is important
  • Introduction to quality attributes and as they relate to software architectures
  • Attribute-driven design
  • Tradeoffs and analysis of quality attribute
  • ATAM evaluation
  • Architecture documentation
  • Architecture testing
  • Service Oriented Architecture Patterns (SOA)


 Day 1

Module 1: What is software architecture?

  • What is or isn’t an architecture?
  • Introduction to views and patterns
  • What’s a good architecture
  • Why is it important?

Module 2: Contexts of software architecture

  • Technical context
  • Life-cycle context
  • Business context
  • Professional context
  • Stakeholders

Module 3: Quality Attributes

  • Requirements and software
  • Availability
  • Interoperability
  • Modifiability
  • Peformance
  • Security
  • Testability
  • Usability
  • Other attributes


Day 2

Module 4: Architecture design

  • Architecture tactics and patterns
  • Design Strategy
  • Attribute-Driven Design (ADD) method
  • The steps of ADD

Module 5: Documenting software architectures

  • Notations
  • Views
  • Documenting behavior
  • Documenting fast changing architectures
  • Architecture documentation and agile development


Day 3

Module 6: Architecture Evaluation

  • Evaluation factors
  • The Architecture Tradeoff Analysis Method (ATAM)
  • ATAM activities
  • Architecture testing

Module 7: Architecture in business

  • Economic analysis
  • Putting theory into practice (CBAM)
  • Case Study

Module 8: Cloud-based architecture

  • Service models
  • Introduction to Cloud-based design patterns
  • Introduction to Service Oriented Architecture (SOA) and Design Patterns

Cancellation Policy

We understand that things come up. However, when you register for a class, a spot will be reserved for you! You will receive a full refund if you cancel a week before the training class. 80% of the class fees will be refunded if a cancellation occurs more than 3 days from the day of the class and within a week. Cancellations within 3 days of the class will trigger a 50% refund.