M.SUJITHA,
II-M.SC(CS&IT),
Nadar Saraswathi College Of Arts and Science,Theni
 The designing process involves in developing the
conceptual view of the system.
 The Software Design Techniques that takes
place are:
 Stepwise Refinement
 Levels Of Abstraction
 Structured Design
 Integrated Top-Down Develpoment
 Jackson Structured Programming
STEP-WISE REFINE MENT:
 Stepwise refinement is a top – down technique
for decomposing a system from high level
specification into more elementary levels.
 It is also known as “ Stepwise program
Development” and “Successive Refinement”.
The activities that takes place are:
 Decomposing design decisions to elementary
levels
 Isolating design aspects that are not truly
interdependent.
 Postponding decisions concering representation details
as long as possible.
 Carefully demonstrating that each successive step in
the refinement process is a faithful expasion of
previous steps.
 The procedure for computing the first N prime
numbers and writing them in file F is complete.
 It is complete because each pseudocode
statement has been refined into executable source
code.
 The efficiency of the program can be vastly
improved in several ways. For example, it is not
necessary to check X for divisibility by every number
K between S and X-l.
Example:
Refinement 5 X=l, P[l] = 2, LIM = 1.
For I = 2 to N do begin
repeat X = X+2; K = 2, PRIM := true; while PRIM and (K<
LIM) do begin
PRIM := (Xmod P[k]) <> 0 K:=K+1; . end;
until PRIM;
P[l] := X:LIM := LIM + 1 end;
MAJOR BENEFITS:
 Top-down decomposition
 Incremental addition of detail
 Postponement of design decisions
 Continual verification of consistency
LEVELS OF ABSTRACTION:
 Levels of abstraction was originally described by
Dijkstra as a bottom-up design technique in which an
operating system was designed as a layering of
hierarchical levels starting at level o .
 Internal functions are hidden from other levels, that
can only be invoked by functions on the same level.
 Each level of abstraction performs a set of services
for the functions on the next higher level of
abstraction.
 Thus a file manipulation system might be layered as a
set of routines to manipulate fields
 Higher level functions can invoke functions on lowest
levels, but lower-level functions cannot invoke make
use of higher-level functions.
 Operating system are listed in
Level 0 : Processor allocation clock interrupt handling
Level 1 : Memory segment controller
Level 2 : Console message interpreter
Level 3 : I/O buffering
Level 4 : User programs
Level 5 : operator
STRUCTURED DESIGN
 Structured design was developed by constantine as a
top-down technique for architectural design of
software systems.
 The basic approach is structured design is systematic
conversion of data-flow diagrams into structure
charts.
 Design heuristics such as coupling and cohesion are
used to guide the design process.
 The first step in structured design is review and
refinement of the data flow diagram(s) developed
during requirements definition and external design.
HIERARCHICAL STRUCTURE CHART
TRANSACTION-DRIVER DATA FLOW DIAGRAM.
INTEGRATED TOP-DOWN DEVELOPMENT
 Integrated top-down development integrates design,
implementation and testing.
 Using integrated top-down development, design
proceeds top-down from the highest-level routines;
Lower-level routines may be implementations of
elementary function.
 There is thus a hierarchical structure to a top-down
system.
JACKSON STRUCTURED PROGRAMMING
 It was developed by Michael Jackson as a systematic
technique for mapping the structure of a problem into
a program structure to solve the problem.
 The mapping is accomplished in these steps.
 The problem is modeled by specifying the input and
output data structures using tree structures
diagrams.
 The input-output model is converted into a structural
model that contains the operations needed to solve
the problem.
SPECIFICATION OF OBJECT “A” :
INPUT AND OUTPUT STRUCTURES FOR
AN INVERTING PROBLEM
CORRESPONDENCE BETWEEN INPUT & OUTPUT
STRUCTURE FOR AN INVENTORY PROBLEM.
ASSOCIATION OF OPERATIONS WITH
PROGRAM STRUCTURE
thankyou

Designing Techniques in Software Engineering

  • 1.
  • 2.
     The designingprocess involves in developing the conceptual view of the system.  The Software Design Techniques that takes place are:  Stepwise Refinement  Levels Of Abstraction  Structured Design  Integrated Top-Down Develpoment  Jackson Structured Programming
  • 3.
    STEP-WISE REFINE MENT: Stepwise refinement is a top – down technique for decomposing a system from high level specification into more elementary levels.  It is also known as “ Stepwise program Development” and “Successive Refinement”. The activities that takes place are:  Decomposing design decisions to elementary levels  Isolating design aspects that are not truly interdependent.
  • 4.
     Postponding decisionsconcering representation details as long as possible.  Carefully demonstrating that each successive step in the refinement process is a faithful expasion of previous steps.  The procedure for computing the first N prime numbers and writing them in file F is complete.  It is complete because each pseudocode statement has been refined into executable source code.  The efficiency of the program can be vastly improved in several ways. For example, it is not necessary to check X for divisibility by every number K between S and X-l.
  • 5.
    Example: Refinement 5 X=l,P[l] = 2, LIM = 1. For I = 2 to N do begin repeat X = X+2; K = 2, PRIM := true; while PRIM and (K< LIM) do begin PRIM := (Xmod P[k]) <> 0 K:=K+1; . end; until PRIM; P[l] := X:LIM := LIM + 1 end; MAJOR BENEFITS:  Top-down decomposition  Incremental addition of detail  Postponement of design decisions  Continual verification of consistency
  • 6.
    LEVELS OF ABSTRACTION: Levels of abstraction was originally described by Dijkstra as a bottom-up design technique in which an operating system was designed as a layering of hierarchical levels starting at level o .  Internal functions are hidden from other levels, that can only be invoked by functions on the same level.  Each level of abstraction performs a set of services for the functions on the next higher level of abstraction.  Thus a file manipulation system might be layered as a set of routines to manipulate fields
  • 7.
     Higher levelfunctions can invoke functions on lowest levels, but lower-level functions cannot invoke make use of higher-level functions.  Operating system are listed in Level 0 : Processor allocation clock interrupt handling Level 1 : Memory segment controller Level 2 : Console message interpreter Level 3 : I/O buffering Level 4 : User programs Level 5 : operator
  • 8.
    STRUCTURED DESIGN  Structureddesign was developed by constantine as a top-down technique for architectural design of software systems.  The basic approach is structured design is systematic conversion of data-flow diagrams into structure charts.  Design heuristics such as coupling and cohesion are used to guide the design process.  The first step in structured design is review and refinement of the data flow diagram(s) developed during requirements definition and external design.
  • 10.
  • 11.
  • 12.
    INTEGRATED TOP-DOWN DEVELOPMENT Integrated top-down development integrates design, implementation and testing.  Using integrated top-down development, design proceeds top-down from the highest-level routines; Lower-level routines may be implementations of elementary function.  There is thus a hierarchical structure to a top-down system.
  • 13.
    JACKSON STRUCTURED PROGRAMMING It was developed by Michael Jackson as a systematic technique for mapping the structure of a problem into a program structure to solve the problem.  The mapping is accomplished in these steps.  The problem is modeled by specifying the input and output data structures using tree structures diagrams.  The input-output model is converted into a structural model that contains the operations needed to solve the problem.
  • 14.
  • 15.
    INPUT AND OUTPUTSTRUCTURES FOR AN INVERTING PROBLEM
  • 16.
    CORRESPONDENCE BETWEEN INPUT& OUTPUT STRUCTURE FOR AN INVENTORY PROBLEM.
  • 17.
    ASSOCIATION OF OPERATIONSWITH PROGRAM STRUCTURE
  • 18.