Architectural design
1 / 19

Architectural Design - PowerPoint PPT Presentation

  • Updated On :

Architectural Design. Objectives. To discuss the relationships between architectural design and product and detailed design To list influences on architectural design To review the architectural design process To present the contents of a software architecture document (SAD)

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Architectural Design' - akira

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Objectives l.jpg

  • To discuss the relationships between architectural design and product and detailed design

  • To list influences on architectural design

  • To review the architectural design process

  • To present the contents of a software architecture document (SAD)

  • To explain quality attributes and their role in architectural design

  • To survey architectural specification notations, especially those for interfaces

Topics l.jpg

  • Architectural design, product design, and detailed design

  • Architectural design influences

  • The architectural design process

  • Quality attributes

  • Architectural design specifications

Architectural design4 l.jpg
Architectural Design

Architectural design is the activity of specifying a program’s major parts; their responsibilities, properties, and interfaces; and the relationships and interactions among them.

Architectural design during product design l.jpg
Architectural Design During Product Design

Architecture is often needed during product design to

  • Judge feasibility

  • Convince stakeholders their needs can be met

  • Conduct tradeoff analyses

  • Plan the project

Architectural versus detailed design l.jpg
Architectural versus Detailed Design

Often the distinction between architectural and detailed design is not clear.

  • What is a “major” program part?

  • How abstract should architectural specifications be?

  • What is the architecture of a very small program?

Influence on architectural design l.jpg
Influence on Architectural Design

  • Code libraries and other assets

  • Organizational structure

  • Knowledge and experience of designers

  • Architectures influence people and organizations too

Software architecture document sad contents l.jpg
Software Architecture Document (SAD) Contents

  • ProductOverview—Product vision, stakeholders, target market, etc.

  • ArchitecturalModels—Specification using various models, both static and dynamic


  • Mapping BetweenModels—Tables and text relating models

  • Architectural DesignRationale—Explanation of difficult, crucial, puzzling, and hard-to-change design decisions

Quality attributes l.jpg
Quality Attributes

A quality attribute is a characteristic or property of a software product independent of its function that is important in satisfying stakeholder needs.

  • Non-functional requirements

  • Architectures have a big influence on quality attributes

  • Development or operational attributes

  • Techniques for using quality attributes (later)

Development attributes l.jpg
Development Attributes

  • Maintainability—Ease with which a product can be corrected, improved, or ported

    • Often subdivided

  • Reusability—Degree to which a product’s parts can be reused in another product

  • Others

Operational attributes l.jpg
Operational Attributes

  • Performance—Ability to accomplish product functions within time or resource limits

  • Availability—Readiness for use

  • Reliability—Ability to behave in accord with requirements under normal operating conditions

  • Security—Ability to resist being harmed or causing harm by hostile acts or influences

  • Others

Interfaces l.jpg

An interface is a communications boundary between entities.

An interface specification describes the mechanism that an entity uses to communicate with its environment.

Interface specifications l.jpg
Interface Specifications

  • Syntax—Elements of the communications medium and how they are combined to form messages

  • Semantics—The meanings of messages

  • Pragmatics—How messages are used in context to accomplish tasks

  • Interface specifications should cover the syntax, semantics, and pragmatics of the communication between a module and its environment.

Semantic specification l.jpg
Semantic Specification

  • A precondition is an assertion that must be true at the start of an activity or operation.

  • A postcondition is an assertion that must be true at the completion of an activity or operation.

  • Pre- and postconditions can together specify what happens when an operation executes, thus explaining its semantics.

Summary 1 l.jpg
Summary 1

  • Architectural design must usually begin during product design to help product feasibility.

  • Architectural design may shade into detailed design.

  • A SAD contains an overview, architecture specifications, and design rationale.

  • Architectural decisions greatly influence quality attributes.

Summary 2 l.jpg
Summary 2

  • A variety of notations are used for architectural modeling.

  • Interface specifications should include descriptions of a communication medium’s

    • Syntax,

    • Semantics, and

    • Pragmatics.