0
2.6kviews
Architectural Design
1 Answer
0
60views
  • The architectural design starts then the developed software is put into the context.

  • The information is obtained from the requirement model and other information collect during the requirement engineering.

enter image description here

All the following entities communicates with the target system through the interface that is small rectangles shown in above figure.

Superordinate system

These system use the target system like a part of some higher-level processing scheme.

Subordinate system

This systems is used by the target system and provide the data mandatory to complete target system functionality.

Peer-level system

These system interact on peer-to-peer basis means the information is consumed by the target system and the peers.

Actors

These are the entities like people, device which interact with the target system by consuming information that is mandatory for requisite processing.

Defining Archetype

  • An archetype is a class or pattern which represents a core abstraction i.e critical to implement or design for the target system.

  • A small set of archetype is needed to design even the systems are relatively complex.

  • The target system consists of archetype that represent the stable elements of the architecture.

  • Archetype is instantiated in many different forms based on the behavior of the system.

  • In many cases, the archetype is obtained by examining the analysis of classes defined as a part of the requirement model.

An Architecture Trade-off Analysis Method (ATAM)

ATAM was developed by the Software Engineering Institute (SEI) which started an iterative evaluation process for software architecture.

The design analysis activities which are executed iteratively that are as follows:

1. Collect framework

Collect framework developed a set of use cases that represent the system according to user point of view.

2. Obtained requirement, Constraints, description of the environment.

These types of information are found as a part of requirement engineering and is used to verify all the stakeholders are addressed properly.

3. Describe the architectural pattern

The architectural patterns are described using an architectural views which are as follows:

Module view: This view is for the analysis of assignment work with the components and the degree in which abstraction or information hiding is achieved

Process view: This view is for the analysis of the software or system performance.

Data flow view: This view analyzes the level and check whether functional requirements are met to the architecture.

4. Consider the quality attribute in segregation

The quality attributes for architectural design consist of reliability, performance, security, maintainability, flexibility, testability, portability, re-usability etc.

5. Identify the quality attributes sensitivity

  • The sensitivity of quality attributes achieved by making the small changes in the architecture and find the sensitivity of the quality attribute which affects the performance.

  • The attributes affected by the variation in the architecture are known as sensitivity points.

Architectural styles for Software Design

The architectural styles that are used while designing the software as follows:

1. Data-centered architecture

  • The data store in the file or database is occupying at the center of the architecture.

  • Store data is access continuously by the other components like an update, delete, add, modify from the data store.

  • Data-centered architecture helps integrity.

  • Pass data between clients using the blackboard mechanism.

  • The processes are independently executed by the client components.

enter image description here

2. Data-flow architecture

  • This architecture is applied when the input data is converted into a series of manipulative components into output data.

  • A pipe and filter pattern is a set of components called as filters.

  • Filters are connected through pipes and transfer data from one component to the next component.

  • The flow of data degenerates into a single line of transform then it is known as batch sequential.

3. Call and return architectures

This architecture style allows to achieve a program structure which is easy to modify.

Following are the sub styles exist in this category:

1. Main program or subprogram architecture

  • The program is divided into smaller pieces hierarchically.

  • The main program invokes many of program components in the hierarchy that program components are divided into subprogram.

2. Remote procedure call architecture

  • The main program or subprogram components are distributed in network of multiple computers.

  • The main aim is to increase the performance.

4. Object-oriented architectures

  • This architecture is the latest version of call-and-return architecture.

  • It consist of the bundling of data and methods.

5. Layered architectures

  • The different layers are defined in the architecture. It consists of outer and inner layer.

  • The components of outer layer manage the user interface operations.

  • Components execute the operating system interfacing at the inner layer.

  • The inner layers are application layer, utility layer and the core layer.

  • In many cases, It is possible that more than one pattern is suitable and the alternate architectural style can be designed and evaluated.

enter image description here

Please log in to add an answer.