GoConqr has a new look! Let us know what you think.

Mind map

Software Architecture Importance

Carlos Aguirre Orozco English

Map content

Software Architecture Importance

  1. Reasoning About and Managing Change

    • Local: Modifying a single element
    • Nonlocal: Multiple element modifications but leaves the underlying architectural approach intact
    • Architectural: Affect the fundamental ways in which the elements interact with each other
  2. Predicting System Qualities

    • We can make architectural decisions that lead to certain quality attributes to predict the system quality
  3. Enhancing Communication among Stakeholders

    • This can lead to sufficient rich technical specifications to guide implementation, integration, test and development.
  4. Carrying Early Design Decisions

    • These decisions carry enormous weight with respect to the system lifecycle.
  5. Defining Constraints on an Implementation

    • The implementation must be implemented as the set of prescribed elements
      • interact with each other in the prescribed fashion
      • fulfill its responsibility to the other elements as dictated by the architecture
  6. Influencing the Organizational Structure

    • The architecture includes the broadest decomposition of the system
  7. Enabling Evolutionary Prototyping

    • The architecture dictates the skeletal system of the app that enables it to evolve.
  8. Improving Cost and Schedule Estimates

    • The architect goes hand by hand with the project manager to estimate the appropriate budget and time
  9. Supplying a Transferable Reusable Model

    • When some systems are very similar, the reuse of a model is preferred
  10. Allowing Incorporation of Independently Developed Components

    • Composing or assembling elements that are likely to have been developed separately, even independently, from each other.
  11. Restricting the Vocabulary of Design Alternatives

    • Enhanced reuse, more regular and simpler designs that are more easily understood and communicated, more capable analysis, shorter selection time, and greater interoperability.
  12. Providing a Basis for Training

    • The architecture, including a description of how the elements interact with each other to carry out the required behavior, can serve as the first introduction to the system for new project members.
  13. Inhibiting or Enabling a System's Quality Attributes

    • This is dependent of the software architecture, but a good architecture doesn't guarantees the functionality or quality required of a system.

Information

Description
Mind Map on Software Architecture Importance, created by Carlos Aguirre Orozco on 19/02/2020.
Views
0
Rating

Feedback

What is it about?

What do you think of the new look?

How do you like it?