You are on page 1of 6

FACULTY OF COMPUTING

RIPHAH INTERNATIONAL UNIVERSITY

Assignment # 1

Muhammad Ali Khan 2282

SOFTWARE DESIGN ARCHITECTURE


BS-SE
SPRING 2021

INSTRUCTOR (s)-IN- CHARGE: SIR BASHARAT

DATE: 23-03-2021

Page 1 of 6
Assigment:
Software Architecture: A Roadmap David Garlan

What is Software Architecture?


The organization of the overall system:

“ The organization of the whole system: “how does the system is consists of part interacting with each
other, what are the main way to interact, and what are the key properties of the parts.”

“Organization of the system as a whole:” How does the system interacting, where are the main modes
of interaction and what are the main features of the parts? " (developed at SEI 1994)

Roles of Software Architecture


Understanding:

top-level view of system design

Reuse:

component libraries and frameworks

Construction:

blueprint of main components & their dependencies

Evolution:

distinguishes between component functionality and interactions

Analysis:

consistency, dependency, constraints, quality and domain-specific

Management:

critical evaluation improves software development process

Yesterday
Box-and-line diagrams
Informal with vague semantics

No formal checking for consistency, completeness or correctness

Non conformance of constraints with evolutionNon conformance of constraints with evolution

Developments within Industry


It recognized the need for shared methods, patterns for structuring systems, and the need to improve
semantics.Take advantage of similarities in specific areas to provide reusable frameworks, eg. user
interface toolkits

Today

Page 2 of 6
Architecture is an important design activity in software development

Technological developments:

Architectural description languages and tools

Product series and standards

Coding and publishing

Architecture Description Languages and Tools


Official symbols of representation and analysis

It provides a conceptual framework and concrete syntax for analysis

Tools for analyzing, presenting, synthesizing, analyzing or simulating descriptions

Examples: Adage, Aesop, SADL, Darwin C2 etc.

Examples of ADLs
Avionics Domain Application Generation Environment (ADAGE) is an environment for developing,
specifying, and analyzing helicopter avionics software.

C2 supports description of user interface systems using an event-based style

Product Lines and Standards


Rationale behind this is to make use of commonality across many products

Challenges:
Arch. must consider requirements for a entire family of systems and the relationships between these
requirements.

Progress made:
Case study have been published about product line approach that which provide a better
understanding about issues involved.

SEI has developed guidelines and the processes.

Cross vendor Integration


Requires architectural FWs that permit a system developer to configure a wide variety of specific
systems by instantiating the FW.

Integration standards allow “gluing” of parts provided by multiple vendors

Example:
HLA for distributed simulation prescribes interface standards to co-ordinate the behavior of multiple
independent simulations.

Codification & Dissemination

Page 3 of 6
Publication of books on architectural design and courses.

Use standard arch. style which include specific vocabulary, constraints on its usage and semantic
assumptions.

Advantages:
valuable documentation for others to use and adopt.

Reality:
Systems comprise of parts architected in different styles hence there is a need for techniques to bridge
mismatches.

Tomorrow
Relatively new field take time for new idea and approaches to propagate.

Technological basis still immature.

Prominent Trends
Changing Build Vs Buy balance

Network-centric computing

Pervasive computing

Changing Build-Versus-Buy Balance


Key issue in the development of systems.

Advantage
Saves development time.

Disadvantages:
Needs are not met.

Less under the developing organization’s control.

Consequences
Need for industry-wide standards

Component-based engineering uses components that work on a common FW reducing architectural


mismatches. E.g. COM, JavaBeans or CORBA.

Architecture-based engineering (HLA, EJB)

New SW subcontracting process

Higher standards of architecture conformance (commercial or governmental)

Page 4 of 6
Standardization of notations and tools across vendors

Architectural modeling (UML, XML)

Network-Centric Computing
Advantages:
Wider base/range of services provided.

Access to rich set of computing and information retrieval services.

Promotes user mobility through ubiquitous access.

Example:

Internet which is an open system, where the standardization is low allowing variations in hardware
and applications.

Challenges
Requires for archs. to scale up to the size and variability of the Internet.

Support for computing with dynamically- formed coalitions of autonomous resources.

Flexible architectures that accommodate commercial application service providers.

Archs. that allow end users to make their own compositions.

Pervasive Computing
It is computing power freed from the desktop - embedded in wireless handheld devices, home
appliances, and commercial tools-of the-trade. It expands our freedom to exchange information
anytime, anywhere.

Challenges
Require architectures suitable for the systems in which resource usage is critical.

Require flexible architectures to handle dynamic re-configuration without affecting the processing.

Require architectures to handle user mobility by providing automated control over the management
of computational services.

Strengths & Weaknesses:


Provides useful insight in the field of the Software Architecture and cover the major challenges
associated with it.

Page 5 of 6
It speaks of various styles like event- based, client-server based, but does not specify which is suitable
for embedded software.

Conclusions
Software Architecture is emerging as an independent engineering field.

Grown in last decade and will continue to do so.

It is still very immature field, but we are moving in the right direction.

Page 6 of 6

You might also like