Design1
-
Upload
deepinderbedi -
Category
Education
-
view
250 -
download
3
Transcript of Design1
Guide: Er. Deepinder Kaur Presented By: Sonali Nikhil Pallavi
Computer software, or just software, is a collection of computer programs and related data that provides the instructions for telling a computer what to do and how to do it.
Software is a set of programs, procedures, algorithms and its documentation concerned with the operation of a data processing system.
System Development Life Cycle
We are going to
study about the
design phase.
Design process takes inputs of software
specifications and is dedicated to plan for
implementation of the software.
The focus of this process is to cover the gap
between understanding the specification and
implementing them in the software
These design elements are intended to
describe the software in sufficient detail.
Design elements describe the desired
software features in detail
Design Phase
Structured
Analysis Structured
design
Structured Analysis (SA) in
software engineering and its
allied technique, Structured
Design (SD), are methods for
analyzing and converting
business requirements into
specifications and ultimately,
computer programs, hardware
configurations and related
manual procedures.
Structured analysis
Analysis model
Scenario based
Flow oriented based
Class based
Behavioral
To describe customer
requirement
To establish basis of
design
A data flow diagram (DFD) is a graphical representation of the "flow" of data through an information system, modeling its process aspects.
A DFD shows what kinds of information will be input to and output from the system, where the data will come from and go to, and where the data will be stored.
Synchronous
operations
Asynchronous
operations
If data is going from 1
bubble to another
If data goes to a
data store then to
other bubble
Level 0 P
0
Level 1 P1
0.1
Level 2 P11
0.1.1
P12
0.1.2
Balancing
DFD’s
Also known as “high – level design”
Software architecture is made with the help of structured charts
Characteristics of Software Design
Correctness
Understandability
Efficiency
Maintainability
Identify nature of
requirement.
Analysis & build
modal
Validate solution
Refine design solution
Implement design
solution
Requirement
specification
Functional
specification
system
Mismatch b/w
modal & design
are removed
Design blueprint
Software
architecture
Process Outcome
Concepts
of design modularity
abstraction
cohesion
coupling
Problem
partitioning
& hierarchy
Modularity
Concept of keeping
separate the various
unrevealed aspects
of a system so that
each aspect can be
studied in isolation.
A
B C
It helps in system debugging.
In system repairs.
In system building.
Condition must for
modularity!!
Each module needs
to support a well-
defined abstraction &
have a clear interface
through which it can
interact with other
modules.
Decomposition
Is creating lower level elements from higher lever key element
on the basis of functions & features.
Result of this is called MODULES.
Abstraction of a component describes the
external behaviour of that component without
bothering with the internal details that produce
the behaviour
It is essential for problem partitioning.
Functional
abstraction Data
abstraction
1.
• Is the basis of partitioning in the functional oriented
approach
2.
• when problem is being partitioned ,the complete
transformation function for the system is partitioned into
smaller functions
3.
• The decomposition of the system is in terms of functional
modules
It supports certain operations required
from a data object, depending on the
object & environment in which it is used.
Only such operations are visible &
internals are hidden.
It forms the basis of object oriented
design.
Rule of “Divide & Conquer”.
Goal is to divide the problem into manageable small pieces that can be solved
separately
The cost of solving the entire problem is more than the sum of the cost of
solving all the pieces
Different pieces have to cooperate & communicate to solve larger problem
The design produced by using problem partitioning can be represented as a
hierarchy of components
Hierarchical structure makes it much easier to comprehend larger problems
All design methodologies aim to produce a design that employs hierarchical
structures
Fan-in refers to no. of units that use
a particular software unit.
Fan-out refers to no. of units used by
particular software unit
A
B
D E
C
F
Super-ordinate
of B & C
Sub-ordinate of A
& super-ordinate of
D , E & F
Sub-ordinate of B
& C
Fan-in for B
is 1 & fan-
out is 2
Two modules are considered independent if one can
function completely without the presence of other.
The more connections between the modules ,the more they
are dependent.
Hence, fewer & simpler the connections between modules
the easier is to understand them.
Coupling is the strength of
interconnections between
modules.
Highly – coupled modules
are joined by strong
interconnections.
While loosely-coupled
modules have weak
connections.
Independent modules have
no interconnections.
A B
C D
Highly
coupled
A B
C D
Loosely
A B Uncoupled
Coupling increases the complexity.
To minimize coupling , the no. of interfaces per module.
Interface is used to pass information to & from modules.
Reference made from 1 module to another
Amount of data passed from 1 module to another
Amount of control passed from 1 module to another
It represents how tightly bound the internal elements
of the module are to 1 another.
It gives an idea whether the different elements of a
module belong together in the same module.
Greater the cohesion of each module in the system ,
lower the coupling between modules is.
Co-incidental
logical
temporal
procedural
communicational
sequential
functional
Component level design
Interface design
Architectural design
Data/class design
Known as structural decomposition: actually a
conversion of Data flow Diagram to Structured
chart
Selection: determined by “diamond”. This means condition will
checked & depending on these modules will be executed.
Process
Process Process
Using “semi-circular arrow we represent this.
This arrow includes a link to a module implying
that module is executed multiple times
A
B C D
Module A
Invocation
arrow
Parameters
Input module: obtain info. From subordinate &
passes to super-ordinate
Input module
Output module : takes info. From their
super-ordinate & pass to sub-ordinate.
Output module
Transform module : that
transform data into other form.
Transform module
Co-ordinate module: manages info. To & from other
sub-ordinates.
Co-ordinate module
A B
Composite module: perform function of more than 1
module.
Composite module
B C
Transformation of DFD to structured
design.
Identify system
processing
transform
Identify input
transform
Identify output
transform
Main
readnums Sort Add_n
switch
A,n
A,n a
X,y X,y
A,n
sum
Any questions
Thankyou you
Made By :
Sonali Narang
B.Ca