























Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
This lecture is part of lecture series for Software Engineering course. Prof. Prateek Aron delivered this lecture at Allahabad University. Its main points are: Architectural, Design, Overall, Structure, Software, System, Control, Models, Modular, Decomposition
Typology: Slides
1 / 31
This page cannot be seen from the preview
Don't miss anything!
























Topics covered:
System structuring
Control models
Modular decomposition
Multiprocessor architectures
Client-server architectures
Distributed object architectures
The design process for identifying the sub-systems making up a system and the framework for sub-system control and communication is architectural design
The output of this design process is a description of the software architecture
System structuring
The system is decomposed into several principal sub- systems and communications between these sub-systems are identified
Control modelling
A model of the control relationships between the different parts of the system is established
Modular decomposition
The identified sub-systems are decomposed into modules
A sub-system is a system in its own right whose operation is independent of the services provided by other sub- systems.
Static structural models show the major system components
Dynamic process models show the process structure of the system
Interface models define sub-system interfaces
Relationships models such as a data-flow model
Concerned with decomposing the system into interacting sub-systems
The architectural design is normally expressed as a block diagram presenting an overview of the system structure (More specific models showing how sub-systems share data, are distributed and interface with each other may also be developed)
COMP201 - Software Engineering 10
docsity.com
Sub-systems must exchange data. This may be done in two ways: Shared data is held in a central database or repository and may be accessed by all sub-systems Each sub-system maintains its own database and passes data explicitly to other sub-systems
When large amounts of data are to be shared, the repository model of sharing is most commonly used
Catalogue server
Catalogue
Video server Film clip files
Picture server Digitiz ed photographs
Hypertext server Hypertext web
Client 1 Client 2 Client 3 Client 4
Wide-bandwidth network
Advantages Distribution of data is straightforward Makes effective use of networked systems. May require cheaper hardware Easy to add new servers or upgrade existing servers
Disadvantages No shared data model so sub-systems use different data organisation. data interchange may be inefficient Redundant management in each server No central register of names and services - it may be hard to find out what servers and services are available
Application Presentation Session Transport Network Data link Physical
7 6 5 4 3 2 1
Communica tions medium
Network Data link Physical
Application Presentation Session Transport Network Data link Physical
Application
Control Models are concerned with the control flow between sub systems:
Centralised control
One sub-system has overall responsibility for control and starts and stops other sub-systems
Event-based control
Each sub-system can respond to externally generated events from other sub-systems or the system’s environment
Routine 1.1 Routine 1.2 Routine 3.1 Routine 3.
Routine 1 Routine 2 Routine 3
Main program
If the controlled subsystems run in parallel , then we may use the manager model of centralised control:
Applicable to concurrent systems. One system component controls the stopping, starting and coordination of other system processes. Can also be implemented in sequential systems as a case statement.