尊敬的 微信汇率:1円 ≈ 0.046166 元 支付宝汇率:1円 ≈ 0.046257元 [退出登录]
SlideShare a Scribd company logo
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

More Related Content

What's hot

Language and Processors for Requirements Specification
Language and Processors for Requirements SpecificationLanguage and Processors for Requirements Specification
Language and Processors for Requirements Specification
kirupasuchi1996
 
Staffing level estimation
Staffing level estimation Staffing level estimation
Staffing level estimation
kavitha muneeshwaran
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
NancyBeaulah_R
 
Defining the Problem - Goals and requirements
Defining the Problem - Goals and requirementsDefining the Problem - Goals and requirements
Defining the Problem - Goals and requirements
Stephennancy
 
Estimating Software Maintenance Costs
Estimating Software Maintenance CostsEstimating Software Maintenance Costs
Estimating Software Maintenance Costs
lalithambiga kamaraj
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
janani thirupathi
 
Planning the development process
Planning the development processPlanning the development process
Planning the development process
Siva Priya
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
Darshit Metaliya
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
UMA PARAMESWARI
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specification
lavanya marichamy
 
source code metrics and other maintenance tools and techniques
source code metrics and other maintenance tools and techniquessource code metrics and other maintenance tools and techniques
source code metrics and other maintenance tools and techniques
Siva Priya
 
Delphi cost estimation model
Delphi cost estimation modelDelphi cost estimation model
Delphi cost estimation model
Shashwat Shriparv
 
unit testing and debugging
unit testing and debuggingunit testing and debugging
unit testing and debugging
KarthigaGunasekaran1
 
software design
software designsoftware design
software design
PRIYADARSINISK
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptx
KarthigaiSelviS3
 
1.1 The nature of software.ppt
1.1 The nature of software.ppt1.1 The nature of software.ppt
1.1 The nature of software.ppt
JAYAPRIYAR7
 
Software design
Software designSoftware design
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9
koolkampus
 
Real time and distributed design
Real time and distributed designReal time and distributed design
Real time and distributed design
priyapavi96
 
Introduction to Compiler design
Introduction to Compiler design Introduction to Compiler design
Introduction to Compiler design
Dr. C.V. Suresh Babu
 

What's hot (20)

Language and Processors for Requirements Specification
Language and Processors for Requirements SpecificationLanguage and Processors for Requirements Specification
Language and Processors for Requirements Specification
 
Staffing level estimation
Staffing level estimation Staffing level estimation
Staffing level estimation
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
 
Defining the Problem - Goals and requirements
Defining the Problem - Goals and requirementsDefining the Problem - Goals and requirements
Defining the Problem - Goals and requirements
 
Estimating Software Maintenance Costs
Estimating Software Maintenance CostsEstimating Software Maintenance Costs
Estimating Software Maintenance Costs
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Planning the development process
Planning the development processPlanning the development process
Planning the development process
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specification
 
source code metrics and other maintenance tools and techniques
source code metrics and other maintenance tools and techniquessource code metrics and other maintenance tools and techniques
source code metrics and other maintenance tools and techniques
 
Delphi cost estimation model
Delphi cost estimation modelDelphi cost estimation model
Delphi cost estimation model
 
unit testing and debugging
unit testing and debuggingunit testing and debugging
unit testing and debugging
 
software design
software designsoftware design
software design
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptx
 
1.1 The nature of software.ppt
1.1 The nature of software.ppt1.1 The nature of software.ppt
1.1 The nature of software.ppt
 
Software design
Software designSoftware design
Software design
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9
 
Real time and distributed design
Real time and distributed designReal time and distributed design
Real time and distributed design
 
Introduction to Compiler design
Introduction to Compiler design Introduction to Compiler design
Introduction to Compiler design
 

Similar to Designing Techniques in Software Engineering

Procedural programming
Procedural programmingProcedural programming
Procedural programming
Ankit92Chitnavis
 
Design techniques
Design techniquesDesign techniques
Design techniques
Amit Debnath
 
Cost effort.ppt
Cost effort.pptCost effort.ppt
Cost effort.ppt
Jayaprasanna4
 
Software architecture
Software architectureSoftware architecture
Software architecture
Ahmad Raza Aslam
 
Software Engineering Fundamentals in Computer Science
Software Engineering Fundamentals in Computer ScienceSoftware Engineering Fundamentals in Computer Science
Software Engineering Fundamentals in Computer Science
Arti Parab Academics
 
Spm software effort estimation
Spm software effort estimationSpm software effort estimation
Spm software effort estimation
Kanchana Devi
 
Paper_19-Software_Architecture_Reconstruction_Method_a_Survey
Paper_19-Software_Architecture_Reconstruction_Method_a_SurveyPaper_19-Software_Architecture_Reconstruction_Method_a_Survey
Paper_19-Software_Architecture_Reconstruction_Method_a_Survey
Zainab Nayyar
 
Vedic Calculator
Vedic CalculatorVedic Calculator
Vedic Calculator
divyang_panchasara
 
Reengineering including reverse & forward Engineering
Reengineering including reverse & forward EngineeringReengineering including reverse & forward Engineering
Reengineering including reverse & forward Engineering
Muhammad Chaudhry
 
Intro-Soft-Engg-2.pptx
Intro-Soft-Engg-2.pptxIntro-Soft-Engg-2.pptx
Intro-Soft-Engg-2.pptx
Viju Neduvathoor
 
Se notes
Se notesSe notes
Software Engineering - SOFTWARE DESIGN Process
Software Engineering - SOFTWARE DESIGN ProcessSoftware Engineering - SOFTWARE DESIGN Process
Software Engineering - SOFTWARE DESIGN Process
Dr Anuranjan Misra
 
Computers in management
Computers in managementComputers in management
Computers in management
Kinshook Chaturvedi
 
Restructuring functions with low cohesion
Restructuring functions with low cohesionRestructuring functions with low cohesion
Restructuring functions with low cohesion
Aditya Kumar Ghosh
 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
taxegap762
 
E workshop system design
E workshop system designE workshop system design
E workshop system design
Student Project Guide
 
chapter 1.pdf
chapter 1.pdfchapter 1.pdf
chapter 1.pdf
ThedronBerhanu
 
Reduced order in discrete domain
Reduced order in discrete domainReduced order in discrete domain
Reduced order in discrete domain
Rumrum Banerjee
 
List and describe various features of electronic systems.List and .pdf
List and describe various features of electronic systems.List and .pdfList and describe various features of electronic systems.List and .pdf
List and describe various features of electronic systems.List and .pdf
info824691
 
architectural.ppt
architectural.pptarchitectural.ppt
architectural.ppt
ThamaraiKannan97
 

Similar to Designing Techniques in Software Engineering (20)

Procedural programming
Procedural programmingProcedural programming
Procedural programming
 
Design techniques
Design techniquesDesign techniques
Design techniques
 
Cost effort.ppt
Cost effort.pptCost effort.ppt
Cost effort.ppt
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
Software Engineering Fundamentals in Computer Science
Software Engineering Fundamentals in Computer ScienceSoftware Engineering Fundamentals in Computer Science
Software Engineering Fundamentals in Computer Science
 
Spm software effort estimation
Spm software effort estimationSpm software effort estimation
Spm software effort estimation
 
Paper_19-Software_Architecture_Reconstruction_Method_a_Survey
Paper_19-Software_Architecture_Reconstruction_Method_a_SurveyPaper_19-Software_Architecture_Reconstruction_Method_a_Survey
Paper_19-Software_Architecture_Reconstruction_Method_a_Survey
 
Vedic Calculator
Vedic CalculatorVedic Calculator
Vedic Calculator
 
Reengineering including reverse & forward Engineering
Reengineering including reverse & forward EngineeringReengineering including reverse & forward Engineering
Reengineering including reverse & forward Engineering
 
Intro-Soft-Engg-2.pptx
Intro-Soft-Engg-2.pptxIntro-Soft-Engg-2.pptx
Intro-Soft-Engg-2.pptx
 
Se notes
Se notesSe notes
Se notes
 
Software Engineering - SOFTWARE DESIGN Process
Software Engineering - SOFTWARE DESIGN ProcessSoftware Engineering - SOFTWARE DESIGN Process
Software Engineering - SOFTWARE DESIGN Process
 
Computers in management
Computers in managementComputers in management
Computers in management
 
Restructuring functions with low cohesion
Restructuring functions with low cohesionRestructuring functions with low cohesion
Restructuring functions with low cohesion
 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
 
E workshop system design
E workshop system designE workshop system design
E workshop system design
 
chapter 1.pdf
chapter 1.pdfchapter 1.pdf
chapter 1.pdf
 
Reduced order in discrete domain
Reduced order in discrete domainReduced order in discrete domain
Reduced order in discrete domain
 
List and describe various features of electronic systems.List and .pdf
List and describe various features of electronic systems.List and .pdfList and describe various features of electronic systems.List and .pdf
List and describe various features of electronic systems.List and .pdf
 
architectural.ppt
architectural.pptarchitectural.ppt
architectural.ppt
 

More from kirupasuchi1996

Rotor machine,subsitution technique
Rotor machine,subsitution techniqueRotor machine,subsitution technique
Rotor machine,subsitution technique
kirupasuchi1996
 
rotor machine
rotor machinerotor machine
rotor machine
kirupasuchi1996
 
DVI,FRACTAL IMAGE,SUB BAND IMAGE,VIDEO CODING AND WAVELET BASED COMPRESSION
DVI,FRACTAL IMAGE,SUB BAND IMAGE,VIDEO CODING AND WAVELET BASED COMPRESSIONDVI,FRACTAL IMAGE,SUB BAND IMAGE,VIDEO CODING AND WAVELET BASED COMPRESSION
DVI,FRACTAL IMAGE,SUB BAND IMAGE,VIDEO CODING AND WAVELET BASED COMPRESSION
kirupasuchi1996
 
Cyper crime
Cyper crimeCyper crime
Cyper crime
kirupasuchi1996
 
DS ppt
DS pptDS ppt
Image compression standards
Image compression standardsImage compression standards
Image compression standards
kirupasuchi1996
 
Software Cost Factor
Software Cost FactorSoftware Cost Factor
Software Cost Factor
kirupasuchi1996
 
GUI components in Java
GUI components in JavaGUI components in Java
GUI components in Java
kirupasuchi1996
 
Dmppt 180312092027
Dmppt 180312092027Dmppt 180312092027
Dmppt 180312092027
kirupasuchi1996
 
Datatransferandmanipulation 180214044522
Datatransferandmanipulation 180214044522Datatransferandmanipulation 180214044522
Datatransferandmanipulation 180214044522
kirupasuchi1996
 
Filesharing 180214044607
Filesharing 180214044607Filesharing 180214044607
Filesharing 180214044607
kirupasuchi1996
 
B tree-180214044656
B tree-180214044656B tree-180214044656
B tree-180214044656
kirupasuchi1996
 
Addressingmodes
Addressingmodes Addressingmodes
Addressingmodes
kirupasuchi1996
 
Managing,working with files
Managing,working with filesManaging,working with files
Managing,working with files
kirupasuchi1996
 

More from kirupasuchi1996 (14)

Rotor machine,subsitution technique
Rotor machine,subsitution techniqueRotor machine,subsitution technique
Rotor machine,subsitution technique
 
rotor machine
rotor machinerotor machine
rotor machine
 
DVI,FRACTAL IMAGE,SUB BAND IMAGE,VIDEO CODING AND WAVELET BASED COMPRESSION
DVI,FRACTAL IMAGE,SUB BAND IMAGE,VIDEO CODING AND WAVELET BASED COMPRESSIONDVI,FRACTAL IMAGE,SUB BAND IMAGE,VIDEO CODING AND WAVELET BASED COMPRESSION
DVI,FRACTAL IMAGE,SUB BAND IMAGE,VIDEO CODING AND WAVELET BASED COMPRESSION
 
Cyper crime
Cyper crimeCyper crime
Cyper crime
 
DS ppt
DS pptDS ppt
DS ppt
 
Image compression standards
Image compression standardsImage compression standards
Image compression standards
 
Software Cost Factor
Software Cost FactorSoftware Cost Factor
Software Cost Factor
 
GUI components in Java
GUI components in JavaGUI components in Java
GUI components in Java
 
Dmppt 180312092027
Dmppt 180312092027Dmppt 180312092027
Dmppt 180312092027
 
Datatransferandmanipulation 180214044522
Datatransferandmanipulation 180214044522Datatransferandmanipulation 180214044522
Datatransferandmanipulation 180214044522
 
Filesharing 180214044607
Filesharing 180214044607Filesharing 180214044607
Filesharing 180214044607
 
B tree-180214044656
B tree-180214044656B tree-180214044656
B tree-180214044656
 
Addressingmodes
Addressingmodes Addressingmodes
Addressingmodes
 
Managing,working with files
Managing,working with filesManaging,working with files
Managing,working with files
 

Recently uploaded

Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
Mydbops
 
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc
 
ScyllaDB Real-Time Event Processing with CDC
ScyllaDB Real-Time Event Processing with CDCScyllaDB Real-Time Event Processing with CDC
ScyllaDB Real-Time Event Processing with CDC
ScyllaDB
 
Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!
Ortus Solutions, Corp
 
Multivendor cloud production with VSF TR-11 - there and back again
Multivendor cloud production with VSF TR-11 - there and back againMultivendor cloud production with VSF TR-11 - there and back again
Multivendor cloud production with VSF TR-11 - there and back again
Kieran Kunhya
 
Cyber Recovery Wargame
Cyber Recovery WargameCyber Recovery Wargame
Cyber Recovery Wargame
Databarracks
 
Introduction to ThousandEyes AMER Webinar
Introduction  to ThousandEyes AMER WebinarIntroduction  to ThousandEyes AMER Webinar
Introduction to ThousandEyes AMER Webinar
ThousandEyes
 
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdfLee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
leebarnesutopia
 
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
DanBrown980551
 
An All-Around Benchmark of the DBaaS Market
An All-Around Benchmark of the DBaaS MarketAn All-Around Benchmark of the DBaaS Market
An All-Around Benchmark of the DBaaS Market
ScyllaDB
 
CTO Insights: Steering a High-Stakes Database Migration
CTO Insights: Steering a High-Stakes Database MigrationCTO Insights: Steering a High-Stakes Database Migration
CTO Insights: Steering a High-Stakes Database Migration
ScyllaDB
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
Pablo Gómez Abajo
 
Automation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI AutomationAutomation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI Automation
UiPathCommunity
 
Building a Semantic Layer of your Data Platform
Building a Semantic Layer of your Data PlatformBuilding a Semantic Layer of your Data Platform
Building a Semantic Layer of your Data Platform
Enterprise Knowledge
 
Day 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio FundamentalsDay 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio Fundamentals
UiPathCommunity
 
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDBScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB
 
Elasticity vs. State? Exploring Kafka Streams Cassandra State Store
Elasticity vs. State? Exploring Kafka Streams Cassandra State StoreElasticity vs. State? Exploring Kafka Streams Cassandra State Store
Elasticity vs. State? Exploring Kafka Streams Cassandra State Store
ScyllaDB
 
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeckPoznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
FilipTomaszewski5
 
Day 4 - Excel Automation and Data Manipulation
Day 4 - Excel Automation and Data ManipulationDay 4 - Excel Automation and Data Manipulation
Day 4 - Excel Automation and Data Manipulation
UiPathCommunity
 
Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2
DianaGray10
 

Recently uploaded (20)

Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
 
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
 
ScyllaDB Real-Time Event Processing with CDC
ScyllaDB Real-Time Event Processing with CDCScyllaDB Real-Time Event Processing with CDC
ScyllaDB Real-Time Event Processing with CDC
 
Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!
 
Multivendor cloud production with VSF TR-11 - there and back again
Multivendor cloud production with VSF TR-11 - there and back againMultivendor cloud production with VSF TR-11 - there and back again
Multivendor cloud production with VSF TR-11 - there and back again
 
Cyber Recovery Wargame
Cyber Recovery WargameCyber Recovery Wargame
Cyber Recovery Wargame
 
Introduction to ThousandEyes AMER Webinar
Introduction  to ThousandEyes AMER WebinarIntroduction  to ThousandEyes AMER Webinar
Introduction to ThousandEyes AMER Webinar
 
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdfLee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
 
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
 
An All-Around Benchmark of the DBaaS Market
An All-Around Benchmark of the DBaaS MarketAn All-Around Benchmark of the DBaaS Market
An All-Around Benchmark of the DBaaS Market
 
CTO Insights: Steering a High-Stakes Database Migration
CTO Insights: Steering a High-Stakes Database MigrationCTO Insights: Steering a High-Stakes Database Migration
CTO Insights: Steering a High-Stakes Database Migration
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
 
Automation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI AutomationAutomation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI Automation
 
Building a Semantic Layer of your Data Platform
Building a Semantic Layer of your Data PlatformBuilding a Semantic Layer of your Data Platform
Building a Semantic Layer of your Data Platform
 
Day 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio FundamentalsDay 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio Fundamentals
 
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDBScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
 
Elasticity vs. State? Exploring Kafka Streams Cassandra State Store
Elasticity vs. State? Exploring Kafka Streams Cassandra State StoreElasticity vs. State? Exploring Kafka Streams Cassandra State Store
Elasticity vs. State? Exploring Kafka Streams Cassandra State Store
 
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeckPoznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
 
Day 4 - Excel Automation and Data Manipulation
Day 4 - Excel Automation and Data ManipulationDay 4 - Excel Automation and Data Manipulation
Day 4 - Excel Automation and Data Manipulation
 
Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2
 

Designing Techniques in Software Engineering

  • 2.  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
  • 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 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.
  • 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 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
  • 8. 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.
  • 9.
  • 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.
  • 15. INPUT AND OUTPUT STRUCTURES FOR AN INVERTING PROBLEM
  • 16. CORRESPONDENCE BETWEEN INPUT & OUTPUT STRUCTURE FOR AN INVENTORY PROBLEM.
  • 17. ASSOCIATION OF OPERATIONS WITH PROGRAM STRUCTURE
  翻译: