0% found this document useful (0 votes)
48 views

Lecture Note - 1

The document discusses various software architectural styles including data-centered, data flow, call and return, object-oriented, and layered styles. Each style consists of components, connectors defining how components communicate and coordinate, conditions for integrating components into a system, and semantic models to understand system properties. The styles establish a structure for organizing system components and are used during architectural design to represent the design of a software system.

Uploaded by

Somnath Sinha
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views

Lecture Note - 1

The document discusses various software architectural styles including data-centered, data flow, call and return, object-oriented, and layered styles. Each style consists of components, connectors defining how components communicate and coordinate, conditions for integrating components into a system, and semantic models to understand system properties. The styles establish a structure for organizing system components and are used during architectural design to represent the design of a software system.

Uploaded by

Somnath Sinha
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

The Activity diagrams in Object Oriented Design are just like the flow carts that show the

sequence of
steps that make up a complex process, such as an algrithm or workflow. Activity diagram are most useful
during the initial stages of the design phase.

Swim Lames:

Swimlanes are used to show which activities are performed by which organisation in the activity diagram.
The lanes are boundaries are drawn and the activities of a particular organisation are drawn in the same
lane as that of the organisation. Swimlanes have to be ordered in a Logical Manner. It is suggested to
have less than five swimlanes in an activity diagram. Swimlanes are good in that they combine the
activity diagram’s depiction of logic with the interaction diagram’s depiction of responsibility.

The above activity diagram for “TICKET VENDING MACHINE” with the swimlanes is shown below:
Software Engineering | Architectural Design
Introduction: The software needs the architectural design to represents the design of software.
IEEE defines architectural design as “the process of defining a collection of hardware and
software components and their interfaces to establish the framework for the development of a
computer system.” The software that is built for computer-based systems can exhibit one of these
many architectural styles.

Each style will describe a system category that consists of:

• A set of components(eg: a database, computational modules) that will perform a function


required by the system.
• The set of connectors will help in coordination, communication, and cooperation between
the components.
• Conditions that how components can be integrated to form the system.
• Semantic models that help the designer to understand the overall properties of the system.

The use of architectural styles is to establish a structure for all the components of the system.
Taxonomy of Architectural styles:

1. Data centred architectures:


• A data store will reside at the center of this architecture and is accessed frequently by
the other components that update, add, delete or modify the data present within the
store.
• The figure illustrates a typical data centered style. The client software access a central
repository. Variation of this approach are used to transform the repository into a
blackboard when data related to client or data of interest for the client change the
notifications to client software.
• This data-centered architecture will promote integrability. This means that the
existing components can be changed and new client components can be added to the
architecture without the permission or concern of other clients.
• Data can be passed among clients using blackboard mechanism.
2. Data flow architectures:
• This kind of architecture is used when input data to be transformed into output data
through a series of computational manipulative components.
• The figure represents pipe
pipe-and-filter
filter architecture since it uses both pipe and filter and
it has a set of components called filters connected by pipes.
• Pipes are used to transmit data from one component to the next.
• Each filter will work independently and is designed to take data input of a certain
form and produces data output to the next filter of a specified form. The filters don’t
require any knowledge of the working of neighboring filters.
• If the data flow degenerates into a single line of transforms, then it is termed as batch
sequential. This structure accepts the batch of data and then applies a series of
sequential components to transform it.

3. Call and Return architectures: It is used to create a program that is easy to scale and
modify. Many sub-styles
styles exist within this category. Two of them are explained below.
• Remote procedure call architecture: This components is used to present in a main
program or sub program architecture distributed among multiple computers on a
network.
• Main program or Subprogram architectures: The main program structure
decomposes into number of subprograms or function into a control hierarchy. Main
program contains number of subprograms that can invoke other components.

4. Object Oriented architecture: The components of a system encapsulate data and the
operations that must be applied to manipulate the data. The coordination and
communication
ommunication between the components are established via the message passing.

5. Layered architecture:
• A number of different layers are defined with each layer performing a well-defined
well
set of operations. Each layer will do some operations that become closer to machine
instruction set progressively.
• At the outer layer,, components will receive the user interface operations and at the
inner layers, components will perform the operating system
interfacing(communication and coordination with OS)
• Intermediate layers to utility services and application software functions.

You might also like