sofwtareArchitecture

sofwtareArchitecture - Foundations of Software Engineering...

Info iconThis preview shows pages 1–10. Sign up to view the full content.

View Full Document Right Arrow Icon
Foundations of Software Engineering (for non-software engineers) Software Architecture Guy-Vincent Jourdan
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Software architecture The software architecture design is the first stage of the design process. It is the crucial bridge linking the requirement engineering process to the software design. The software architecture dictates the general “shape” of the entire system, sets global directions that are going to be followed from that point on. Consequently, a wrong architecture can be very costly, or even fatal to the project
Background image of page 2
Software architecture Van Vliet, H. Software Engineering: Principles and Practice, 2nd Edition , Wiley, 2000 Sommerville, I. Software Engineering IEEE Std 1471-2000, Recommended Practice for Architectural Description of Software-Intensive Systems
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Software architecture The software architecture is the top level decomposition of the system into major components, together with a characterization of how these components interact. It serves at least three purposes: stakeholders communication, system analysis and reuse.
Background image of page 4
Software architecture Stakeholder communication : the architecture is a global, often graphic description of the system than can be easily communicated to the stakeholders. It is easily understood and is used as a starting point for discussion with the customers, the end users, the designers etc.
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Software architecture System analysis : creating the architecture early requires some analysis and allows to capture the early design decisions. These decisions will have a profound effect on all the subsequent phases, and will deeply influence the end product’s performance, reliability, maintainability and cost. It is thus very important to assess the quality of these decisions as early as possible.
Background image of page 6
Software architecture System reuse : the software architecture is often the same for “similar” systems, systems with similar requirements. It thus provides a basis for all of the systems within that family, creating a common, product-line architecture used across a range of systems.
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
External factors of influence In addition to the system’s requirements, other forces are going to influence the architecture: Background of the organization: the existence of other systems following a given architecture will give a bias toward that architecture because of the in-house expertise that has been developed (development, maintenance etc.) Background of the architect: similarly, the main architect will have existing, positive and negative experiences with some software architectures that will influence the final choice Technical and organizational environment: external “regulations”, software engineering practices etc., may influence the division of functionalities between components
Background image of page 8
Definition(s) The software architecture is “an abstract system specification consisting primarily of functional components described in terms of their behaviors and interfaces and component-component interconnections”
Background image of page 9

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 10
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 42

sofwtareArchitecture - Foundations of Software Engineering...

This preview shows document pages 1 - 10. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online