Page 84 - DCAP305_PRINCIPLES_OF_SOFTWARE_ENGINEERING
P. 84
Principles of Software Engineering
Notes 2. Form: Properties (constraints on elements and system) and relationship (configuration,
topology).
3. Rationale: Philosophy and pragmatics of the system: requirements, economics, reliability,
performance.
There can be “views” of the architecture from the perspective of the process elements, the data,
or the connectors. The views might show static and dynamic structure.
Create a logical structure of software.
Self Assessment Questions
1. .................. is an elementary process in which data crosses the boundary from outside to
inside.
(a) External inputs (b) External outputs
(c) External inquiry (d) Internal logical files
2. A ............. is a unique user recognizable, non recursive field on an ILF.
(a) EIF (b) DET
(c) EQ (d) VAF
3. The final function point count is obtained by multiplying the VAF times the ................
(a) EIF (b) IFPUG
(c) UAF (d) GSC
4. ........................ is the ease with which a program can be correct if an error occurs.
(a) Correctness (b) Maintainability
(c) Integrity (d) Usability
5. The conceptual architecture identifies the high-level components of the system, and the
relationships among them.
(a) True (b) False
4.3 Architecture Views
In our Software Architecture Decision Framework (Figures 4.2 and 4.3), we presented a set of
standardized views. These are what we have found to be useful in guiding architects as they make
architectural decisions that is, they provide useful thinking tools for considering decisions and
choosing among alternatives. They also become the foundation for the architecture specification,
by which we mean the complete set of architecture decisions at the chosen level(s) of abstraction,
specificity and precision.
Both structural and behavioural views are important to thinking through and representing
architecture:
• Structural View: If we accept that “architecture is the high-level structure of the system
comprised of components, their interrelationships, and externally visible properties”, the
structural view is central. It consists of the Architecture Diagram (stereotyped UML Class
Diagram), and Component and Interface Specifications.
• Behavioural View: In decomposing the system into components and designing their
interfaces, and in designing mechanisms to address key cross-cutting concerns, we have
to answer the question “How does this work?” Likewise, in understanding and using
the architecture, we have to be able to answer the same question. This is the role of the
behavioural view, with its Component Collaboration or Sequence Diagrams (stereotyped
UML Sequence and Collaboration Diagrams).
78 LOVELY PROFESSIONAL UNIVERSITY