Software Architecture Specialization

Demonstrated understanding of the major categories of knowledge/specialization within software architecture, and the ability to compare and contrast the commonalities between specializations.

Software Architecture Capabilities

Development, Methodologies and Processes

Participation in many phases of the software development life cycle (SDLC). Demonstrated understanding of common development cycles and their role in these processes, including set up and management of development environments and give the learner tools to participate fully in the delivery of a solution. Ability to provide comparison of key development methodologies and recommendations on when to use what method.

Software Architecture Tools

Demonstrate use a variety of tools to create working solutions and participate in the development process, including significant concepts of architecture tools and how they integrate with the SDLC. Site examples and reusable patterns for successful tool usage.

Software Engineering for Architects

Demonstrate understanding and use of advanced concepts in software engineering with a focus on the architect’s role in working with developers and software engineers.

Services, Workflow and Messaging

Demonstrate an understanding of current and future shifts in IT architecture. Examples include Service Oriented Architecture, messaging, workflow and other systems have become a major component of the architect’s toolset. Highlight common concepts and components of these solutions with a focus on providing the student with the ability to effectively use these systems for their organization, including reusable assets and patterns (where appropriate).

Advanced Quality Attributes

Demonstrate employment of constraints and quality attributes across all IT systems, including an advanced view of the software architect’s responsibilities and opportunities for ensuring the appropriate quality attributes are represented in their solutions.

Technologies, Platforms and Frameworks

Demonstrated understanding of, and ability to contrast and compare key technologies important to the work of the software architect. Examples include mobile technologies, client technologies, integration technologies, remoting technologies, workflow technologies, with a specific focus on the architectural qualities rather than specific platforms. Demonstrated understanding of how platforms and frameworks relate to one another (user interface, client, server, persistence, data storage and integration, etc) and ability to provide direction for selecting specific approaches and solutions.

Data/Information/Knowledge Management

Demonstrated understanding of, and ability to describe the essentials of data modeling, managing, mining, transforming, converting, and reporting. Demonstrated understanding of data structures, the importance and creation of taxonomies, ontologies, vocabularies, glossaries, dictionaries, and use of semantics; data analytics and other BI-related subjects.