Software Architecture Workshop
| Provider : | Bredemeyer Consulting | |
| Location : | Chicago, IL | |
| Cost : | $2400 | |
| Start Date : | Monday 6th April 2009 ( 4 Days ) | |
| Website : | http://www.bredemeyer.com/Workshops/2009Workshops/20090406ChicagoSAW.htm |
Tags : 2009, Software Architecture, Bredemeyer, Architect, Role, Leadership, Strategy, Organizational Politics, Consulting, Role of Architect, Modeling, Chicago, IL, April, April2009, Software Architecture Workshop, Workshop, Course, Software Architecture, UML,
This is a workshop, and small teams work on creating a draft architecture using the Visual Architecting Process. We follow the iterative architecting process, and weave concepts and architecting techniques into the lectures between work sessions. The lecture topics are driven by the concerns that are being addressed at that stage of the architecting process. This makes it a "non-traditional" format, but it is one that works well as it allows us to work end-to-end through the creation of a draft architecture.
Software Architecture
In the architecture specification sections, we deal with:
meta-architecture: the architectural vision, style, principles, key communication and control mechanisms, and concepts that guide the team of architects in the creation of the architecture.
architectural patterns: structural patterns such as layers and client/server, and mechanisms such as brokers and bridges.
architecture modeling using the Unified Modeling Language (UML).
architectural views: structural views help document and communicate the architecture in terms of the components and their relationships, and are useful in assessing architectural qualities like extensibility. Behavioral views are useful in thinking through how the components interact to accomplish their assigned responsibilities and evaluating the impact of what-if scenarios on the architecture. Behavioral views are especially useful in assessing run-time qualities such as performance and security. Execution views help in evaluating physical distribution options and documenting decisions.
component specification: components are identified and assigned responsibilities that client components access through "contracted" interfaces. Component interconnections specify communication and control mechanisms and allow component interactions to accomplish system behavior.
key architectural design principles including abstraction, separation of concerns, postponing decisions, and simplicity, and related techniques such as interface hiding and encapsulation, as well as system decomposition principles and good interface design.
The Architecting Process
The technical process section is the principal focus of the workshop, and covers:
Architectural requirements: how to elicit and document functional (i.e., behavioral) requirements and non-functional requirements (i.e., system qualities including run-time qualities such as performance and reliability, and development-time qualities such as evolvability/ extensibility and reusability).
System Specification: how to use architectural modeling to decompose the system, evaluate architectural trade-offs, and document the system using different views.
Architecture Validation: how to assess the system in terms of the system requirements.
The organizational process section covers:
Sponsorship: how to gain the support of all levels of management affected by the architecture
Leadership: how to create and lead the architecture team
Consulting: how to assist the developer community in their use of the architecture to ensure its successful adoption and appropriate use.
The Role and Responsibilities of the Architect
This section relates the responsibilities and associated skills and attitudes of the architect to the architecting process.
Course Category
- Information Technology > Architecture
Applicable to Industry Role
- Information Technology > Architecture > Enterprise Architect
- Information Technology > Architecture > System Architect
- Information Technology > Architecture > Software Architect
- Information Technology > Architecture > Process Architect
- Information Technology > Architecture > Business Architect
- Information Technology > Management > Software Engineering Manager
- General > Architect