The SEI helps advance software engineering principles and practices and serves as a national resource in software engineering, computer security, and process improvement. The SEI works closely with defense and government organizations, industry, and academia to continually improve software-intensive systems. Its core purpose is to help organizations improve their software engineering capabilities and develop or acquire the right software, defect free, within budget and on time, every time.

Defining Software Architecture

What Is Software Architecture?

The software architecture of a program or computing system
is a depiction of the system that aids in the understanding of how the
system will behave.

Software architecture serves as the blueprint for both the
system and the project developing it, defining the work assignments that
must be carried out by design and implementation teams. The
architecture is the primary carrier of system qualities such as
performance, modifiability, and security, none of which can be achieved
without a unifying architectural vision. Architecture is an artifact for
early analysis to make sure that a design approach will yield an
acceptable system. By building effective architecture, you can identify
design risks and mitigate them early in the development process.

Our Mission in Architecture

For almost two decades, the SEI has been instrumental in the creation
and development of the field of software engineering known as software architecture. Operated by Carnegie Mellon University—a
global research university recognized worldwide for its innovative
work—and funded by the federal government, the SEI solves real-world
problems by conducting research, developing tools and methods, providing consulting services, and publishing case studies.

03/23/2017Secure Tactical Cloudlets for Mission Support at the EdgeThis presentation introduces the architecture and features of tactical cloudlets and presents a solution for establishing trusted identities in disconnected environments based on the generation and exchange of secure keys in the field.

12/06/2016Designing Modern SOA Systems: SEI TrainingCourse attendees will gain a clear understanding of the main types of design elements and technologies that can be applied in SOA, including REST and SOAP servers.

12/06/2016Architecture Evaluation at the SEIThis brochure describes the SEI methods of evaluating architecture, which are informed by working directly with dozens of organizations over the past 20 years.

Certificates and Training

Training in Software Architecture from SEI Experts

The SEI offers software architecture courses and certificate programs. More than 17,000 people from more than 1,400 organizations have attended courses in the SEI Software Architecture Curriculum, and more than 2,200 people have earned certificates conferred by the SEI for taking a series of architecture-related SEI courses. These courses are informed by the experiences of SEI staff members working directly with organizations over the past two decades and helping them to achieve significant cost reductions, quicker time to market, and higher product quality by applying architecture-centric practices to the development of their systems.

Software professionals can complete one or more of three software architecture certificate programs. These programs are based on completion of specific sequences in the software architecture curriculum, as depicted below. For more information on these software architecture certificates, please visit the SEI Professional Certificates in Architecture website.

Training courses provided by the SEI are not academic courses for academic credit toward a degree. Any certificates provided are evidence of the completion of the courses and are not official academic credentials.