SlideShare a Scribd company logo
Software Design
Methodologies and Testing
Prof. Prashant J. Gadakh
International Institute of Information Technology
http://www.isquareit.edu.in/
UNIT-I
Design Concept
Introduction To Software Design
• Deriving a solution which satisfies software requirements.
• Software Design is a process of describing, organizing and
structuring the components of a system.
• Software Design are like set of blueprints in which various
components of the system are shown.
Stages of Design
• Problem understanding
• Look at the problem from different angles to discover the
design requirements.
• Identify one or more solutions
• Evaluate possible solutions and choose the most
appropriate depending on the designer's experience and
available resources.
Stages of Design (Cont..)
• Describe solution abstractions
• Use graphical, formal or other descriptive notations to
describe the components of the design.
• Repeat process for each identified abstraction
Until the design is expressed in primitive terms.
The Design Process
• Any design may be modeled as a directed graph made up of
entities with attributes which participate in relationships.
• The system should be described at several different levels of
abstraction.
• Design takes place in overlapping stages. It is artificial to
separate it into distinct phases but some separation is
usually necessary.
Phases in the Design Process
Architectural
design
Abstract
specificatio
n
Interface
design
Component
design
Data
structure
design
Algorithm
design
Sy stem
architecture
Software
specification
Interface
specification
Component
specification
Data
structure
specification
Algorithm
specification
Requirements
specification
Design activities
Design products
PROCEDURAL DESIGN
METHODOLOGY
• A design methodology combines a systematic set of
rules for creating a program design with diagramming
tools needed to represent it.
• Procedural design is best used to model programs that
have an obvious flow of data from input to output.
• It represents the architecture of a program as a set of
interacting processes that pass data from one to another
Design Tools
• The two major diagramming tools used in procedural design
are as follows.
1. Data Flow Diagrams
2. Structure Charts (Flow Chart).
Data Flow Diagrams
• A data flow diagram (or DFD) is a tool to help you
discover and document the program’s major processes.
The following table shows the symbols used and what each
represents.
Sr.
NO
Symbol Used Meaning Example
1
An entity. A source of data or
a destination for data.
2
A process or task that is
performed by the system.
3 A data store, a place where data is
held between processes.
4
A data flow.
Relationship and Rules
• The DFD may be used for any level of data abstraction. DFD can
be partitioned into levels. Each level has more information flow
and data functional details than the previous level.
Highest level is Context Diagram. Some important points are:
• 1 bubble (process) represents the entire system.
• Data arrows show input and output.
• Data Stores NOT shown. They are within the system.
Software Design Methodologies and Testing
Level 0 DFD
• Next Level is Level 0 DFD. Some important points are:
• Level 0 DFD must balance with the context diagram it
describes.
• Input going into a process are different from outputs leaving
the process.
• Data stores are first shown at this level.
Software Design Methodologies and Testing
Level 1 DFD
• Next level is Level 1 DFD. Some important points are:
• Level 1 DFD must balance with the Level 0 it describes.
• Input going into a process are different from outputs leaving
the process.
• Continue to show data stores.
Software Design Methodologies and Testing
Difference Between DFD & Flow
Chart
• A DFD may look similar to a flow chart. However, there is a significant difference
with the data flow diagram. The arrows in DFDs show that there is a flow of data
between the two components and not that the component is sending the data
that must be executed in the following component.
• A component in DFD may not continue execution when sending data and during
execution of the component receiving the data. The component sending data can
send multiple sets of data along several connections. In fact, a DFD node can be
a component that never ends. In DFDs, all arrows must be labelled.
Flow Chart
Structure Chart
• Structural Chart is principle tool of structure design.
• Elements are ,
1. Module
2. Data
3. Flag
• 1. Flag going from caller to
• called
• 2. Data going from caller to
called
• 3. Data going from called to
caller
Design methods: Object-Oriented
Design
Object-Oriented Design
Unified Modeling Language
Introduction
What is UML?
 Is a complete Language for capturing knowledge (semantics)
about a subject and expressing knowledge (syntax) regarding
the subject for the purpose of communication
 Applies to Modeling – process of understanding a subject (or
a system)
 Is Unified – remaining the same at each stage of development
Background
• 1965 - The first object-oriented programming language,
Simula I, was introduced
 Object-oriented Analysis & Design (OOAD) by Grady Booch.
 The Object Modeling Technique (OMT) by James Rumbaugh.
 The Object-oriented Software Engineering method (OOSE) by
Ivar Jacobson
OO Analysis vs. OO Design
 Analysis refers to
understanding
the problem.
 Design refers to
coming up with
the solution.
REQUIREMENTS
and
ANALYSIS
DESIGN
IMPLEMENTATION
TESTING
OO Analysis vs. OO Design
 Jacobson (OOSE) good at high-level design
 Rumbaugh (OMT) good at the middle ground
 Booch (OOAD) good at low-level design
1994 : Booch + Rumbaugh = Unified Method 0.8
1995 : + Jacobson = UML 0.8
Receiving a feedback from IBM, Microsoft, Oracle, HP
and other companies
1996 : UML 0.9
1997 : UML 1.0
Object Management Group (OMG) joined UML project
1997 : UML 1.1
UML is running under the OMG Revision Task Force
Improving semantics and flexibility
2003 : UML 2.0
Relationship Among UML Diagrams
• Structural Diagram
• Behaviour Diagrams
Software Design Methodologies and Testing
Static and Dynamic Modelling
• Static Modelling:-
Static Modelling is used to represent the static constituents
of a Software such as :
1.Classes, 2.Objects, 3.Interfaces and 4.Their relationship
with each other.
Static and Dynamic Modelling
• Dynamic Modelling:-
Dynamic Modelling is used to represent the behaviour of the static
constituents of a software ,
Dynamic Modelling Represent Following Diagrams,
1. Interaction Diagram:- Sequence and Collaboration Diagram.
2. Use Case Modelling
3. Activity Diagram
Use Case Diagram
About I²IT
I²IT aspires to be an academic leader recognized for innovation, quality teaching
and research, holding high moral values and a forward thinking institution that
explores creative approaches for the future.
• Address: P-14, Rajiv Gandhi Infotech Park, Phase – 1, Hinjawadi, Pune – 411057,
India
• Phone: +91 20 2293 3441 / 2 / 3
• Email: info@isquareit.edu.in
• Web: www.isquareit.edu.in

More Related Content

What's hot (18)

Structured Vs, Object Oriented Analysis and Design
Structured Vs, Object Oriented Analysis and DesignStructured Vs, Object Oriented Analysis and Design
Structured Vs, Object Oriented Analysis and Design
Motaz Saad
 
Object oriented analysis and design
Object oriented analysis and designObject oriented analysis and design
Object oriented analysis and design
naveed428
 
14 functional design
14 functional design14 functional design
14 functional design
randhirlpu
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
Anirban Majumdar
 
Ooad overview
Ooad overviewOoad overview
Ooad overview
Dr. C.V. Suresh Babu
 
Enhancement of Action Description Language for UML Activity Diagram Review
Enhancement of Action Description Language for UML Activity Diagram ReviewEnhancement of Action Description Language for UML Activity Diagram Review
Enhancement of Action Description Language for UML Activity Diagram Review
Chinnapat Kaewchinporn
 
Arch06 1
Arch06 1Arch06 1
Arch06 1
nazn
 
Round - Trip Software Engineering using UML: From Architecture to Design and...
Round - Trip Software Engineering using UML:  From Architecture to Design and...Round - Trip Software Engineering using UML:  From Architecture to Design and...
Round - Trip Software Engineering using UML: From Architecture to Design and...
Aman Mishra
 
Design final
Design finalDesign final
Design final
Indu Sharma Bhardwaj
 
Data flow oriented modeling
Data flow oriented modelingData flow oriented modeling
Data flow oriented modeling
KavithaGowri
 
Lecture 4-oop class diagram
Lecture 4-oop class diagramLecture 4-oop class diagram
Lecture 4-oop class diagram
ktuonlinenotes
 
Function Oriented and Object Oriented Design,Modularization techniques
Function Oriented and Object Oriented Design,Modularization techniquesFunction Oriented and Object Oriented Design,Modularization techniques
Function Oriented and Object Oriented Design,Modularization techniques
nimmik4u
 
Flow oriented modeling
Flow oriented modelingFlow oriented modeling
Flow oriented modeling
ramyaaswin
 
Ooad
OoadOoad
Ooad
jojikhan
 
CS8592-OOAD Lecture Notes Unit-3
CS8592-OOAD Lecture Notes Unit-3CS8592-OOAD Lecture Notes Unit-3
CS8592-OOAD Lecture Notes Unit-3
Gobinath Subramaniam
 
Software Design
Software DesignSoftware Design
Software Design
Ha Ninh
 
Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
Mamun Ahmed
 
Lecture 14 requirements modeling - flow and behavior
Lecture 14   requirements modeling - flow and  behaviorLecture 14   requirements modeling - flow and  behavior
Lecture 14 requirements modeling - flow and behavior
IIUI
 
Structured Vs, Object Oriented Analysis and Design
Structured Vs, Object Oriented Analysis and DesignStructured Vs, Object Oriented Analysis and Design
Structured Vs, Object Oriented Analysis and Design
Motaz Saad
 
Object oriented analysis and design
Object oriented analysis and designObject oriented analysis and design
Object oriented analysis and design
naveed428
 
14 functional design
14 functional design14 functional design
14 functional design
randhirlpu
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
Anirban Majumdar
 
Enhancement of Action Description Language for UML Activity Diagram Review
Enhancement of Action Description Language for UML Activity Diagram ReviewEnhancement of Action Description Language for UML Activity Diagram Review
Enhancement of Action Description Language for UML Activity Diagram Review
Chinnapat Kaewchinporn
 
Arch06 1
Arch06 1Arch06 1
Arch06 1
nazn
 
Round - Trip Software Engineering using UML: From Architecture to Design and...
Round - Trip Software Engineering using UML:  From Architecture to Design and...Round - Trip Software Engineering using UML:  From Architecture to Design and...
Round - Trip Software Engineering using UML: From Architecture to Design and...
Aman Mishra
 
Data flow oriented modeling
Data flow oriented modelingData flow oriented modeling
Data flow oriented modeling
KavithaGowri
 
Lecture 4-oop class diagram
Lecture 4-oop class diagramLecture 4-oop class diagram
Lecture 4-oop class diagram
ktuonlinenotes
 
Function Oriented and Object Oriented Design,Modularization techniques
Function Oriented and Object Oriented Design,Modularization techniquesFunction Oriented and Object Oriented Design,Modularization techniques
Function Oriented and Object Oriented Design,Modularization techniques
nimmik4u
 
Flow oriented modeling
Flow oriented modelingFlow oriented modeling
Flow oriented modeling
ramyaaswin
 
Software Design
Software DesignSoftware Design
Software Design
Ha Ninh
 
Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
Mamun Ahmed
 
Lecture 14 requirements modeling - flow and behavior
Lecture 14   requirements modeling - flow and  behaviorLecture 14   requirements modeling - flow and  behavior
Lecture 14 requirements modeling - flow and behavior
IIUI
 

Similar to Software Design Methodologies and Testing (20)

Ch. 3.pdf
Ch. 3.pdfCh. 3.pdf
Ch. 3.pdf
RajniSavaliya
 
Online eaxmination
Online eaxminationOnline eaxmination
Online eaxmination
Aditi_17
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
naina-rani
 
OOSD_UNIT1 (1).pptx
OOSD_UNIT1 (1).pptxOOSD_UNIT1 (1).pptx
OOSD_UNIT1 (1).pptx
DebabrataPain1
 
10-System-ModelingFL22-sketch-19122022-091234am.pptx
10-System-ModelingFL22-sketch-19122022-091234am.pptx10-System-ModelingFL22-sketch-19122022-091234am.pptx
10-System-ModelingFL22-sketch-19122022-091234am.pptx
huzaifaahmed79
 
Function-Oriented(Lec5) Pantnagar college.pdf
Function-Oriented(Lec5) Pantnagar college.pdfFunction-Oriented(Lec5) Pantnagar college.pdf
Function-Oriented(Lec5) Pantnagar college.pdf
yash32148
 
Df dtutorial
Df dtutorialDf dtutorial
Df dtutorial
Alex Ali
 
uml.pptx
uml.pptxuml.pptx
uml.pptx
amanuel236786
 
Software development life cycle
Software development life cycle Software development life cycle
Software development life cycle
shefali mishra
 
BM322_05.pptxBusiness Management Integral University
BM322_05.pptxBusiness Management Integral UniversityBM322_05.pptxBusiness Management Integral University
BM322_05.pptxBusiness Management Integral University
DrMoizAkhtar
 
System design
System designSystem design
System design
Gheethu Joy
 
Iterative Waterfall model
Iterative Waterfall modelIterative Waterfall model
Iterative Waterfall model
Anmol Purohit
 
Df dtutorial
Df dtutorialDf dtutorial
Df dtutorial
Shaldon Suntu
 
Sw Software Design
Sw Software DesignSw Software Design
Sw Software Design
jonathan077070
 
Software engineering.pptx
Software engineering.pptxSoftware engineering.pptx
Software engineering.pptx
JAGADEESWARIS6
 
Data Flow Diagram and Sequence Diagram
Data Flow Diagram and Sequence DiagramData Flow Diagram and Sequence Diagram
Data Flow Diagram and Sequence Diagram
Hamna Shahzad
 
ISAD 313-3_ MODELS.pptx
ISAD 313-3_ MODELS.pptxISAD 313-3_ MODELS.pptx
ISAD 313-3_ MODELS.pptx
Dr. Rosemarie Sibbaluca-Guirre
 
fdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.pptfdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.ppt
RAJESH S
 
2.2. Software cycle Models-System_Models.ppt
2.2. Software cycle Models-System_Models.ppt2.2. Software cycle Models-System_Models.ppt
2.2. Software cycle Models-System_Models.ppt
dawarbaba
 
CPEN 70 - Chapter 2 (Relevant Tools, Standards andor Engineering Constraints)...
CPEN 70 - Chapter 2 (Relevant Tools, Standards andor Engineering Constraints)...CPEN 70 - Chapter 2 (Relevant Tools, Standards andor Engineering Constraints)...
CPEN 70 - Chapter 2 (Relevant Tools, Standards andor Engineering Constraints)...
MarkMedina31
 
Online eaxmination
Online eaxminationOnline eaxmination
Online eaxmination
Aditi_17
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
naina-rani
 
10-System-ModelingFL22-sketch-19122022-091234am.pptx
10-System-ModelingFL22-sketch-19122022-091234am.pptx10-System-ModelingFL22-sketch-19122022-091234am.pptx
10-System-ModelingFL22-sketch-19122022-091234am.pptx
huzaifaahmed79
 
Function-Oriented(Lec5) Pantnagar college.pdf
Function-Oriented(Lec5) Pantnagar college.pdfFunction-Oriented(Lec5) Pantnagar college.pdf
Function-Oriented(Lec5) Pantnagar college.pdf
yash32148
 
Df dtutorial
Df dtutorialDf dtutorial
Df dtutorial
Alex Ali
 
Software development life cycle
Software development life cycle Software development life cycle
Software development life cycle
shefali mishra
 
BM322_05.pptxBusiness Management Integral University
BM322_05.pptxBusiness Management Integral UniversityBM322_05.pptxBusiness Management Integral University
BM322_05.pptxBusiness Management Integral University
DrMoizAkhtar
 
Iterative Waterfall model
Iterative Waterfall modelIterative Waterfall model
Iterative Waterfall model
Anmol Purohit
 
Software engineering.pptx
Software engineering.pptxSoftware engineering.pptx
Software engineering.pptx
JAGADEESWARIS6
 
Data Flow Diagram and Sequence Diagram
Data Flow Diagram and Sequence DiagramData Flow Diagram and Sequence Diagram
Data Flow Diagram and Sequence Diagram
Hamna Shahzad
 
fdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.pptfdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.ppt
RAJESH S
 
2.2. Software cycle Models-System_Models.ppt
2.2. Software cycle Models-System_Models.ppt2.2. Software cycle Models-System_Models.ppt
2.2. Software cycle Models-System_Models.ppt
dawarbaba
 
CPEN 70 - Chapter 2 (Relevant Tools, Standards andor Engineering Constraints)...
CPEN 70 - Chapter 2 (Relevant Tools, Standards andor Engineering Constraints)...CPEN 70 - Chapter 2 (Relevant Tools, Standards andor Engineering Constraints)...
CPEN 70 - Chapter 2 (Relevant Tools, Standards andor Engineering Constraints)...
MarkMedina31
 
Ad

More from International Institute of Information Technology (I²IT) (20)

Minimization of DFA
Minimization of DFAMinimization of DFA
Minimization of DFA
International Institute of Information Technology (I²IT)
 
Understanding Natural Language Processing
Understanding Natural Language ProcessingUnderstanding Natural Language Processing
Understanding Natural Language Processing
International Institute of Information Technology (I²IT)
 
What Is Smart Computing?
What Is Smart Computing?What Is Smart Computing?
What Is Smart Computing?
International Institute of Information Technology (I²IT)
 
Professional Ethics & Etiquette: What Are They & How Do I Get Them?
Professional Ethics & Etiquette: What Are They & How Do I Get Them?Professional Ethics & Etiquette: What Are They & How Do I Get Them?
Professional Ethics & Etiquette: What Are They & How Do I Get Them?
International Institute of Information Technology (I²IT)
 
Writing Skills: Importance of Writing Skills
Writing Skills: Importance of Writing SkillsWriting Skills: Importance of Writing Skills
Writing Skills: Importance of Writing Skills
International Institute of Information Technology (I²IT)
 
Professional Communication | Introducing Oneself
Professional Communication | Introducing Oneself Professional Communication | Introducing Oneself
Professional Communication | Introducing Oneself
International Institute of Information Technology (I²IT)
 
Servlet: A Server-side Technology
Servlet: A Server-side TechnologyServlet: A Server-side Technology
Servlet: A Server-side Technology
International Institute of Information Technology (I²IT)
 
What Is Jenkins? Features and How It Works
What Is Jenkins? Features and How It WorksWhat Is Jenkins? Features and How It Works
What Is Jenkins? Features and How It Works
International Institute of Information Technology (I²IT)
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
International Institute of Information Technology (I²IT)
 
Hypothesis-Testing
Hypothesis-TestingHypothesis-Testing
Hypothesis-Testing
International Institute of Information Technology (I²IT)
 
Data Science, Big Data, Data Analytics
Data Science, Big Data, Data AnalyticsData Science, Big Data, Data Analytics
Data Science, Big Data, Data Analytics
International Institute of Information Technology (I²IT)
 
Types of Artificial Intelligence
Types of Artificial Intelligence Types of Artificial Intelligence
Types of Artificial Intelligence
International Institute of Information Technology (I²IT)
 
Difference Between AI(Artificial Intelligence), ML(Machine Learning), DL (Dee...
Difference Between AI(Artificial Intelligence), ML(Machine Learning), DL (Dee...Difference Between AI(Artificial Intelligence), ML(Machine Learning), DL (Dee...
Difference Between AI(Artificial Intelligence), ML(Machine Learning), DL (Dee...
International Institute of Information Technology (I²IT)
 
Sentiment Analysis in Machine Learning
Sentiment Analysis in  Machine LearningSentiment Analysis in  Machine Learning
Sentiment Analysis in Machine Learning
International Institute of Information Technology (I²IT)
 
What Is Cloud Computing?
What Is Cloud Computing?What Is Cloud Computing?
What Is Cloud Computing?
International Institute of Information Technology (I²IT)
 
Introduction To Design Pattern
Introduction To Design PatternIntroduction To Design Pattern
Introduction To Design Pattern
International Institute of Information Technology (I²IT)
 
Importance of Theory of Computations
Importance of Theory of ComputationsImportance of Theory of Computations
Importance of Theory of Computations
International Institute of Information Technology (I²IT)
 
Java as Object Oriented Programming Language
Java as Object Oriented Programming LanguageJava as Object Oriented Programming Language
Java as Object Oriented Programming Language
International Institute of Information Technology (I²IT)
 
What Is High Performance-Computing?
What Is High Performance-Computing?What Is High Performance-Computing?
What Is High Performance-Computing?
International Institute of Information Technology (I²IT)
 
Data Visualization - How to connect Microsoft Forms to Power BI
Data Visualization - How to connect Microsoft Forms to Power BIData Visualization - How to connect Microsoft Forms to Power BI
Data Visualization - How to connect Microsoft Forms to Power BI
International Institute of Information Technology (I²IT)
 
Ad

Recently uploaded (20)

ELNL2025 - Unlocking the Power of Sensitivity Labels - A Comprehensive Guide....
ELNL2025 - Unlocking the Power of Sensitivity Labels - A Comprehensive Guide....ELNL2025 - Unlocking the Power of Sensitivity Labels - A Comprehensive Guide....
ELNL2025 - Unlocking the Power of Sensitivity Labels - A Comprehensive Guide....
Jasper Oosterveld
 
Domino IQ – What to Expect, First Steps and Use Cases
Domino IQ – What to Expect, First Steps and Use CasesDomino IQ – What to Expect, First Steps and Use Cases
Domino IQ – What to Expect, First Steps and Use Cases
panagenda
 
Trends Artificial Intelligence - Mary Meeker
Trends Artificial Intelligence - Mary MeekerTrends Artificial Intelligence - Mary Meeker
Trends Artificial Intelligence - Mary Meeker
Clive Dickens
 
AI Creative Generates You Passive Income Like Never Before
AI Creative Generates You Passive Income Like Never BeforeAI Creative Generates You Passive Income Like Never Before
AI Creative Generates You Passive Income Like Never Before
SivaRajan47
 
IntroSlides-May-BuildWithAi-EarthEngine.pdf
IntroSlides-May-BuildWithAi-EarthEngine.pdfIntroSlides-May-BuildWithAi-EarthEngine.pdf
IntroSlides-May-BuildWithAi-EarthEngine.pdf
Luiz Carneiro
 
Extend-Microsoft365-with-Copilot-agents.pptx
Extend-Microsoft365-with-Copilot-agents.pptxExtend-Microsoft365-with-Copilot-agents.pptx
Extend-Microsoft365-with-Copilot-agents.pptx
hoang971
 
DevOps in the Modern Era - Thoughtfully Critical Podcast
DevOps in the Modern Era - Thoughtfully Critical PodcastDevOps in the Modern Era - Thoughtfully Critical Podcast
DevOps in the Modern Era - Thoughtfully Critical Podcast
Chris Wahl
 
LSNIF: Locally-Subdivided Neural Intersection Function
LSNIF: Locally-Subdivided Neural Intersection FunctionLSNIF: Locally-Subdivided Neural Intersection Function
LSNIF: Locally-Subdivided Neural Intersection Function
Takahiro Harada
 
Mark Zuckerberg teams up with frenemy Palmer Luckey to shape the future of XR...
Mark Zuckerberg teams up with frenemy Palmer Luckey to shape the future of XR...Mark Zuckerberg teams up with frenemy Palmer Luckey to shape the future of XR...
Mark Zuckerberg teams up with frenemy Palmer Luckey to shape the future of XR...
Scott M. Graffius
 
Dancing with AI - A Developer's Journey.pptx
Dancing with AI - A Developer's Journey.pptxDancing with AI - A Developer's Journey.pptx
Dancing with AI - A Developer's Journey.pptx
Elliott Richmond
 
“State-space Models vs. Transformers for Ultra-low-power Edge AI,” a Presenta...
“State-space Models vs. Transformers for Ultra-low-power Edge AI,” a Presenta...“State-space Models vs. Transformers for Ultra-low-power Edge AI,” a Presenta...
“State-space Models vs. Transformers for Ultra-low-power Edge AI,” a Presenta...
Edge AI and Vision Alliance
 
Boosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdf
Boosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdfBoosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdf
Boosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdf
Alkin Tezuysal
 
How Advanced Environmental Detection Is Revolutionizing Oil & Gas Safety.pdf
How Advanced Environmental Detection Is Revolutionizing Oil & Gas Safety.pdfHow Advanced Environmental Detection Is Revolutionizing Oil & Gas Safety.pdf
How Advanced Environmental Detection Is Revolutionizing Oil & Gas Safety.pdf
Rejig Digital
 
Azure vs AWS Which Cloud Platform Is Best for Your Business in 2025
Azure vs AWS  Which Cloud Platform Is Best for Your Business in 2025Azure vs AWS  Which Cloud Platform Is Best for Your Business in 2025
Azure vs AWS Which Cloud Platform Is Best for Your Business in 2025
Infrassist Technologies Pvt. Ltd.
 
Soulmaite review - Find Real AI soulmate review
Soulmaite review - Find Real AI soulmate reviewSoulmaite review - Find Real AI soulmate review
Soulmaite review - Find Real AI soulmate review
Soulmaite
 
Your startup on AWS - How to architect and maintain a Lean and Mean account J...
Your startup on AWS - How to architect and maintain a Lean and Mean account J...Your startup on AWS - How to architect and maintain a Lean and Mean account J...
Your startup on AWS - How to architect and maintain a Lean and Mean account J...
angelo60207
 
7 Salesforce Data Cloud Best Practices.pdf
7 Salesforce Data Cloud Best Practices.pdf7 Salesforce Data Cloud Best Practices.pdf
7 Salesforce Data Cloud Best Practices.pdf
Minuscule Technologies
 
How to Detect Outliers in IBM SPSS Statistics.pptx
How to Detect Outliers in IBM SPSS Statistics.pptxHow to Detect Outliers in IBM SPSS Statistics.pptx
How to Detect Outliers in IBM SPSS Statistics.pptx
Version 1 Analytics
 
MCP vs A2A vs ACP: Choosing the Right Protocol | Bluebash
MCP vs A2A vs ACP: Choosing the Right Protocol | BluebashMCP vs A2A vs ACP: Choosing the Right Protocol | Bluebash
MCP vs A2A vs ACP: Choosing the Right Protocol | Bluebash
Bluebash
 
Jeremy Millul - A Talented Software Developer
Jeremy Millul - A Talented Software DeveloperJeremy Millul - A Talented Software Developer
Jeremy Millul - A Talented Software Developer
Jeremy Millul
 
ELNL2025 - Unlocking the Power of Sensitivity Labels - A Comprehensive Guide....
ELNL2025 - Unlocking the Power of Sensitivity Labels - A Comprehensive Guide....ELNL2025 - Unlocking the Power of Sensitivity Labels - A Comprehensive Guide....
ELNL2025 - Unlocking the Power of Sensitivity Labels - A Comprehensive Guide....
Jasper Oosterveld
 
Domino IQ – What to Expect, First Steps and Use Cases
Domino IQ – What to Expect, First Steps and Use CasesDomino IQ – What to Expect, First Steps and Use Cases
Domino IQ – What to Expect, First Steps and Use Cases
panagenda
 
Trends Artificial Intelligence - Mary Meeker
Trends Artificial Intelligence - Mary MeekerTrends Artificial Intelligence - Mary Meeker
Trends Artificial Intelligence - Mary Meeker
Clive Dickens
 
AI Creative Generates You Passive Income Like Never Before
AI Creative Generates You Passive Income Like Never BeforeAI Creative Generates You Passive Income Like Never Before
AI Creative Generates You Passive Income Like Never Before
SivaRajan47
 
IntroSlides-May-BuildWithAi-EarthEngine.pdf
IntroSlides-May-BuildWithAi-EarthEngine.pdfIntroSlides-May-BuildWithAi-EarthEngine.pdf
IntroSlides-May-BuildWithAi-EarthEngine.pdf
Luiz Carneiro
 
Extend-Microsoft365-with-Copilot-agents.pptx
Extend-Microsoft365-with-Copilot-agents.pptxExtend-Microsoft365-with-Copilot-agents.pptx
Extend-Microsoft365-with-Copilot-agents.pptx
hoang971
 
DevOps in the Modern Era - Thoughtfully Critical Podcast
DevOps in the Modern Era - Thoughtfully Critical PodcastDevOps in the Modern Era - Thoughtfully Critical Podcast
DevOps in the Modern Era - Thoughtfully Critical Podcast
Chris Wahl
 
LSNIF: Locally-Subdivided Neural Intersection Function
LSNIF: Locally-Subdivided Neural Intersection FunctionLSNIF: Locally-Subdivided Neural Intersection Function
LSNIF: Locally-Subdivided Neural Intersection Function
Takahiro Harada
 
Mark Zuckerberg teams up with frenemy Palmer Luckey to shape the future of XR...
Mark Zuckerberg teams up with frenemy Palmer Luckey to shape the future of XR...Mark Zuckerberg teams up with frenemy Palmer Luckey to shape the future of XR...
Mark Zuckerberg teams up with frenemy Palmer Luckey to shape the future of XR...
Scott M. Graffius
 
Dancing with AI - A Developer's Journey.pptx
Dancing with AI - A Developer's Journey.pptxDancing with AI - A Developer's Journey.pptx
Dancing with AI - A Developer's Journey.pptx
Elliott Richmond
 
“State-space Models vs. Transformers for Ultra-low-power Edge AI,” a Presenta...
“State-space Models vs. Transformers for Ultra-low-power Edge AI,” a Presenta...“State-space Models vs. Transformers for Ultra-low-power Edge AI,” a Presenta...
“State-space Models vs. Transformers for Ultra-low-power Edge AI,” a Presenta...
Edge AI and Vision Alliance
 
Boosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdf
Boosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdfBoosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdf
Boosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdf
Alkin Tezuysal
 
How Advanced Environmental Detection Is Revolutionizing Oil & Gas Safety.pdf
How Advanced Environmental Detection Is Revolutionizing Oil & Gas Safety.pdfHow Advanced Environmental Detection Is Revolutionizing Oil & Gas Safety.pdf
How Advanced Environmental Detection Is Revolutionizing Oil & Gas Safety.pdf
Rejig Digital
 
Azure vs AWS Which Cloud Platform Is Best for Your Business in 2025
Azure vs AWS  Which Cloud Platform Is Best for Your Business in 2025Azure vs AWS  Which Cloud Platform Is Best for Your Business in 2025
Azure vs AWS Which Cloud Platform Is Best for Your Business in 2025
Infrassist Technologies Pvt. Ltd.
 
Soulmaite review - Find Real AI soulmate review
Soulmaite review - Find Real AI soulmate reviewSoulmaite review - Find Real AI soulmate review
Soulmaite review - Find Real AI soulmate review
Soulmaite
 
Your startup on AWS - How to architect and maintain a Lean and Mean account J...
Your startup on AWS - How to architect and maintain a Lean and Mean account J...Your startup on AWS - How to architect and maintain a Lean and Mean account J...
Your startup on AWS - How to architect and maintain a Lean and Mean account J...
angelo60207
 
7 Salesforce Data Cloud Best Practices.pdf
7 Salesforce Data Cloud Best Practices.pdf7 Salesforce Data Cloud Best Practices.pdf
7 Salesforce Data Cloud Best Practices.pdf
Minuscule Technologies
 
How to Detect Outliers in IBM SPSS Statistics.pptx
How to Detect Outliers in IBM SPSS Statistics.pptxHow to Detect Outliers in IBM SPSS Statistics.pptx
How to Detect Outliers in IBM SPSS Statistics.pptx
Version 1 Analytics
 
MCP vs A2A vs ACP: Choosing the Right Protocol | Bluebash
MCP vs A2A vs ACP: Choosing the Right Protocol | BluebashMCP vs A2A vs ACP: Choosing the Right Protocol | Bluebash
MCP vs A2A vs ACP: Choosing the Right Protocol | Bluebash
Bluebash
 
Jeremy Millul - A Talented Software Developer
Jeremy Millul - A Talented Software DeveloperJeremy Millul - A Talented Software Developer
Jeremy Millul - A Talented Software Developer
Jeremy Millul
 

Software Design Methodologies and Testing

  • 1. Software Design Methodologies and Testing Prof. Prashant J. Gadakh International Institute of Information Technology http://www.isquareit.edu.in/
  • 3. Introduction To Software Design • Deriving a solution which satisfies software requirements. • Software Design is a process of describing, organizing and structuring the components of a system. • Software Design are like set of blueprints in which various components of the system are shown.
  • 4. Stages of Design • Problem understanding • Look at the problem from different angles to discover the design requirements. • Identify one or more solutions • Evaluate possible solutions and choose the most appropriate depending on the designer's experience and available resources.
  • 5. Stages of Design (Cont..) • Describe solution abstractions • Use graphical, formal or other descriptive notations to describe the components of the design. • Repeat process for each identified abstraction Until the design is expressed in primitive terms.
  • 6. The Design Process • Any design may be modeled as a directed graph made up of entities with attributes which participate in relationships. • The system should be described at several different levels of abstraction. • Design takes place in overlapping stages. It is artificial to separate it into distinct phases but some separation is usually necessary.
  • 7. Phases in the Design Process Architectural design Abstract specificatio n Interface design Component design Data structure design Algorithm design Sy stem architecture Software specification Interface specification Component specification Data structure specification Algorithm specification Requirements specification Design activities Design products
  • 8. PROCEDURAL DESIGN METHODOLOGY • A design methodology combines a systematic set of rules for creating a program design with diagramming tools needed to represent it. • Procedural design is best used to model programs that have an obvious flow of data from input to output. • It represents the architecture of a program as a set of interacting processes that pass data from one to another
  • 9. Design Tools • The two major diagramming tools used in procedural design are as follows. 1. Data Flow Diagrams 2. Structure Charts (Flow Chart).
  • 10. Data Flow Diagrams • A data flow diagram (or DFD) is a tool to help you discover and document the program’s major processes. The following table shows the symbols used and what each represents.
  • 11. Sr. NO Symbol Used Meaning Example 1 An entity. A source of data or a destination for data. 2 A process or task that is performed by the system. 3 A data store, a place where data is held between processes. 4 A data flow.
  • 12. Relationship and Rules • The DFD may be used for any level of data abstraction. DFD can be partitioned into levels. Each level has more information flow and data functional details than the previous level. Highest level is Context Diagram. Some important points are: • 1 bubble (process) represents the entire system. • Data arrows show input and output. • Data Stores NOT shown. They are within the system.
  • 14. Level 0 DFD • Next Level is Level 0 DFD. Some important points are: • Level 0 DFD must balance with the context diagram it describes. • Input going into a process are different from outputs leaving the process. • Data stores are first shown at this level.
  • 16. Level 1 DFD • Next level is Level 1 DFD. Some important points are: • Level 1 DFD must balance with the Level 0 it describes. • Input going into a process are different from outputs leaving the process. • Continue to show data stores.
  • 18. Difference Between DFD & Flow Chart • A DFD may look similar to a flow chart. However, there is a significant difference with the data flow diagram. The arrows in DFDs show that there is a flow of data between the two components and not that the component is sending the data that must be executed in the following component. • A component in DFD may not continue execution when sending data and during execution of the component receiving the data. The component sending data can send multiple sets of data along several connections. In fact, a DFD node can be a component that never ends. In DFDs, all arrows must be labelled.
  • 20. Structure Chart • Structural Chart is principle tool of structure design. • Elements are , 1. Module 2. Data 3. Flag
  • 21. • 1. Flag going from caller to • called • 2. Data going from caller to called • 3. Data going from called to caller
  • 25.  Is a complete Language for capturing knowledge (semantics) about a subject and expressing knowledge (syntax) regarding the subject for the purpose of communication  Applies to Modeling – process of understanding a subject (or a system)  Is Unified – remaining the same at each stage of development
  • 26. Background • 1965 - The first object-oriented programming language, Simula I, was introduced  Object-oriented Analysis & Design (OOAD) by Grady Booch.  The Object Modeling Technique (OMT) by James Rumbaugh.  The Object-oriented Software Engineering method (OOSE) by Ivar Jacobson
  • 27. OO Analysis vs. OO Design  Analysis refers to understanding the problem.  Design refers to coming up with the solution. REQUIREMENTS and ANALYSIS DESIGN IMPLEMENTATION TESTING
  • 28. OO Analysis vs. OO Design  Jacobson (OOSE) good at high-level design  Rumbaugh (OMT) good at the middle ground  Booch (OOAD) good at low-level design
  • 29. 1994 : Booch + Rumbaugh = Unified Method 0.8 1995 : + Jacobson = UML 0.8 Receiving a feedback from IBM, Microsoft, Oracle, HP and other companies 1996 : UML 0.9 1997 : UML 1.0 Object Management Group (OMG) joined UML project 1997 : UML 1.1 UML is running under the OMG Revision Task Force Improving semantics and flexibility 2003 : UML 2.0
  • 30. Relationship Among UML Diagrams • Structural Diagram • Behaviour Diagrams
  • 32. Static and Dynamic Modelling • Static Modelling:- Static Modelling is used to represent the static constituents of a Software such as : 1.Classes, 2.Objects, 3.Interfaces and 4.Their relationship with each other.
  • 33. Static and Dynamic Modelling • Dynamic Modelling:- Dynamic Modelling is used to represent the behaviour of the static constituents of a software , Dynamic Modelling Represent Following Diagrams, 1. Interaction Diagram:- Sequence and Collaboration Diagram. 2. Use Case Modelling 3. Activity Diagram
  • 35. About I²IT I²IT aspires to be an academic leader recognized for innovation, quality teaching and research, holding high moral values and a forward thinking institution that explores creative approaches for the future. • Address: P-14, Rajiv Gandhi Infotech Park, Phase – 1, Hinjawadi, Pune – 411057, India • Phone: +91 20 2293 3441 / 2 / 3 • Email: [email protected] • Web: www.isquareit.edu.in