SlideShare a Scribd company logo
Subject-software engineering
B.Tech cse 6th
semester
Paper code-BTCS603A
Design concepts
unit-3
CONTENTS
 DESIGN CONCEPTS
 OO CONCEPTS
 PDL
 VERIFICATION METRICS &THEIR SCOPE
 QUALITIES OF A GOOD SOFTWARE METRICS
 CLASSIFICATION OF METRICS
 COST ESTIMATION MODEL(COCOMO)
 QUALITY ATTRIBUTES
 SQA
 QUALITY STANDARDS-ISO9000 AND CMM
DESIGN CONCEPTS
• Design activities-Iterating series of steps require to design a software.
a)HLD and b)Detailed design
• Design methodologies – these are the various approaches used for
software design .a)Function oriented b)OO approach
• Cohesion and Coupling
• Design techniques-used to perform high level design of a software
• Design verification
• Metrics- quantifiable measurements used to evaluate various aspects
of software development, including performance, productivity, and
quality.
OBJECT ORIENTED CONCEPTS
 Objects - All entities involved in the solution design are known as objects. For
example, person, banks, company and customers are treated as objects.
 Classes - A class is a generalized description of an object. Class defines all the
attributes, which an object can have and methods, which defines the functionality of
the object.
 Encapsulation - In OOD, the attributes (data variables) and methods (operation on the
data) are bundled together is called encapsulation. Encapsulation not only bundles
important information of an object together, but also restricts access of the data and
methods from the outside world. This is called information hiding.
 Inheritance - OOD allows similar classes to stack up in hierarchical manner where the
lower or sub-classes can import, implement and re-use allowed variables and methods
from their immediate super classes. This property of OOD is known as inheritance.
 Polymorphism - OOD languages provide a mechanism where methods performing
similar tasks but vary in arguments, can be assigned same name. This is called
polymorphism, which allows a single interface performing tasks for different types.
VERIFICATION
The output of software design process is-
 design documentation,
 pseudo codes,
 detailed logic diagrams,
 process diagrams,
 and detailed description of all functional or non-functional
requirements.
It is necessary to verify the output before proceeding to the next phase.
By structured verification approach, reviewers can detect defects that
might be caused by overlooking some conditions.
A good design review is important for good software design, accuracy
and quality.
Scope of Software Metrics
In software design, metrics scope encompasses quantifiable measures used to evaluate and improve
software characteristics, covering areas like performance, productivity, and quality, helping to make
data-driven decisions and manage projects effectively.
Software measurement is a diverse collection of these activities that range from models predicting
software project costs at a specific stage to measures program structure.
Software metrics contains many activities which include the following −
 Cost and effort estimation
 Productivity measures and model
 Data collection
 Quantity models and measures
 Reliability models
 Performance and evaluation models
 Structural and complexity metrics
 Capability – maturity assessment
 Management by metrics
 Evaluation of methods and tools
The basic constructs of PDL
 The basic constructs of PDL are similar to those of a structured language.The following are the
conditional operators and loops used in PDL.
 1. Sequence Construct : It is the simplest; whereby statements are executed in the order
they’re found in procedure . Sequence Construct
 2. If construct : The if construct is used to control the flow of execution down one of two or
more paths, depending on the result of given condition . if-then-else construct
 3. Selection Constructs : The selection construct are used when the flow of execution may
flow down two or more paths.When there are many conditions and the values are discrete,
selection constructs are used.There are two or more conditions in the selection constructs. Each
condition statement is an entry point, and execution will continue from that point unless a break
statement is used.The break statement causes the program to continue from the end of the
selection construct. Only discrete values may be used for the conditions . Selection Construct
 4. Repetition Constructs : The repetition construct are used when a block of code is
required to be executes continually until a condition is met.This type of loop is used to execute
the block of code and the condition should be true.Repetition construct
 A variety of data structure can be defined and used in PDL such as lists, tables, scalar and
integers.
METRICS
Types of Software Metrics:
Product Metrics: These metrics focus on the characteristics of the software product
itself, such as code complexity, defect density, and code coverage.
Process Metrics: These metrics focus on the software development process, such as
effort variance, schedule variance, and defect injection rate.
Project Metrics: These metrics focus on the project itself, such as project scope, budget,
and schedule.
 Examples of Software Metrics:
 Lines of Code (LOC): A measure of the size of the code.
 Defect Density: The number of defects per unit of code.
 Code Coverage: The percentage of code that is executed during testing.
 Development Velocity: The rate at which a team delivers working software.
 Customer Satisfaction: A measure of how satisfied users are with the software.
 Mean Time To Detect an Issue (MTTD): The average time it takes to find a defect.
 System Availability: The percentage of time a system is operational.
Productivity Model and Measures
Quality of a good software metrics
1. Objective and Measurable: Metrics should provide quantifiable data, allowing
for objective assessment of software quality rather than relying on subjective
opinions.
2. Relevant to Quality Attributes: Metrics should focus on aspects that directly
impact software quality, such as reliability, maintainability, usability,
performance, and security.
3. Actionable: Metrics should provide insights that can be used to identify
problems, track progress, and make improvements to the software or the
development process.
4. Consistent: Metrics should be consistently measured and interpreted to ensure
that trends and patterns can be reliably identified.
5. Applicable: Metrics should be applicable throughout the software development
lifecycle, from initial design to ongoing maintenance.
6. Economical: The effort required to collect and analyze metrics should be
reasonable and not overly burdensome.
7. Repeatable: When measured repeatedly, the metric values should be the same
and consistent.
COCOMO
 (Constructive Cost Estimation Model) Boehm proposed COCOMO
in 1981.
 COCOMO is one of software estimation models in the world to
predicts the efforts and schedule of a software product based on the
size of the software .The necessary steps in this model are:
1. Get an initial estimate of the development effort from evaluation of
thousands of delivered lines of source code (KLOC).
2. Determine a set of 15 multiplying factors from various attributes
of the project.
3. Calculate the effort estimate by multiplying the initial estimate
with all the multiplying factors i.e., multiply the values in step1
and step2.
COCOMO
 To determine the initial effort Ei in person-months the equation
used is of the type is shown below
 Ei=a*(KDLOC)b
 The value of the constant a and b are depends on the project
type.
 In COCOMO, projects are categorized into three types:
1. Organic
2. Semidetached
3. Embedded
design-3 software engineering unit three
COCOMO :Example
 Suppose a project was estimated to be
400 KLOC. Calculate the effort and
development time for each of the three
model i.e., organic, semi-detached &
embedded.
 Solution: The basic COCOMO equation
takes the form:
 Effort=a1*(KLOC)a2
PM
 Tdev=b1*(efforts)b2
months
Estimated Size of project= 400 KLOC
(i)Organic Mode
 E = 2.4 * (400)1.05 = 1295.31 PM
D = 2.5 * (1295.31)0.38=38.07 M
(ii)Semidetached Mode
 E = 3.0 * (400)1.12=2462.79 PM
D = 2.5 * (2462.79)0.35=38.45 M
(iii) Embedded Mode
 E = 3.6 * (400)1.20 = 4772.81 PM
D = 2.5 * (4772.8)0.32 = 38 M
design-3 software engineering unit three
PROCESS DESIGN LANGUAGE(PDL)
 It is a kind of programming process in which the design is
communicated precisely according to the desired of the
designer.
 It is used to specify the design of system and to extend it to
logic design.
 Process Design Languages(PDL) is used to express the design
in a language that is as precise and unambiguous as possible
without having too much detail and that can be easily converted
into an implementation.
 It is the outer syntax of a structured programming language
and also it has a vocabulary of a natural language.
PDL EXAMPLE
Consider the problem of reading the record from the file. If file reading is not completed and there
is no error in the record then print the information of the record otherwise print that there is an
error in reading of the record.This process will continue till the whole file is completed:
Process (F_Procedure)
Read file
while not end-of-file
if record ok then
print record
else
print error
else if
read file
end while
End
 To implements will have to be converted into programming language statements.
PROCESS DESIGN LANGUAGE
Advantages of PDL :
 It can be embedded with
source code, therefore easy
to maintain.
 It enables declaration of
data as well as procedure.
 It is the cheapest and most
effective way to change
program architecture,
Disadvantages of PDL :
 It is unable to express the
functionality in an
understandable way.
 Only notation is
understandable to people
with PDL.
software quality
 software quality refers to how well a software product conforms to its
requirements and meets the needs of its users.
 It involves both the software product itself as well as the processes used to
develop it.
 Quality refers to characteristics like reliability, usability, performance, and
security.
 From a process perspective, it refers to using disciplined methods and best
practices that are likely to result in a higher quality product.
 Software quality refers to the degree to which software conforms to its
requirements and meets the needs of its users. It is formally defined as “the
capability of a software product to satisfy stated and implied needs when
used under specified conditions.”
Quality attributes
 Portability: A software is claimed to be transportable
 Usability: A software has smart usability if completely different classes of
users (i.e. knowledgeable and novice users)
 Reusability: A software has smart reusability to develop new merchandise.
 Correctness: Software is correct if completely different needs as laid out in
the SRS document are properly enforced.
 Maintainability: A software is repairable, if errors may be simply
corrected as and once they show up, new functions may be added and
functionalities of the merchandise may be simply changed.
 Reliability: Software is more reliable if it has fewer failures. Designers can
improve reliability by ensuring the software is easy to implement and
change, by testing it thoroughly, and also by ensuring that if failures occur,
the system can handle them or can recover easily.
 Efficiency. The more efficient software is, the less it uses of CPU-time,
memory, disk space, network bandwidth, and other resources.
McCalls Factor Model(Software quality
model)
 The classic model of software quality factors, suggested by McCall, consists of 11
factors (McCall et al., 1977).
 Similarly, models consisting of 12 to 15 factors were suggested by Deutsch and
Willis (1988) and by Evans and Marciniak (1987).
 The McCall factor model provides a practical, up-to-date method for classifying
software requirements (Pressman, 2000).
 This model classifies all software requirements into 11 software quality factors.
The 11 factors are grouped into three categories product operation, product
revision, and product transition factors.
1. Product operation factors − Correctness, Reliability, Efficiency, Integrity,
Usability.
2. Product revision factors − Maintainability, Flexibility,Testability.
3. Product transition factors − Portability, Reusability, Interoperability.
SQA Standards
The mission of the International Standard Organization is to market the
development of standardization and its related activities to facilitate the
international exchange of products and services.
It also helps to develop cooperation within the different activities like spheres
of intellectual, scientific, technological, and economic activity.
1.Software quality assurance management standards, including
certification and assessment methodologies (quality management standards)
 Example − ISO 9000-3 and the Capability Maturity Model (CMM)
2.Software project development process standards (project process
standards)
 ISO/IEC 12207 IEEE Std 1012-1998
Quality assurance
S.N
o
Quality Management Standards Software project development
process standards (project process
standards)
1 -These focus on the organizations SQA
system, infrastructure and requirements,
while leaving the choice of methods and
tools to the organization.With quality
management standards, organizations can
steadily assure that their software products
achieve an acceptable level of quality.
These focus on the methodologies for
implementing the software development
and maintenance projects.These standards
include the following −
The steps to be taken
Design documentation requirements
Contents of design documents
Design reviews and review issues
Software testing to be performed
Testing topics
2 Example − ISO 9000-3 and the
Capability Maturity Model (CMM) ISO/IEC 12207 IEEEStd 1012-1998
Capability Maturity Model (CMM)
 It is a framework developed by the Software Engineering Institute (SEI) to guide
organizations in improving their software development processes and achieving higher levels
of maturity and predictability.
 The CMM aims to help organizations systematically improve their software development
processes, leading to better quality, reduced costs, and more predictable project outcomes.
 The CMM defines five levels of process maturity, each representing a different stage of
process improvement :
1. Initial: Processes are ad hoc and chaotic, with little or no formal structure.
2. Repeatable: Basic project management processes are in place, allowing for consistent
execution of similar projects.
3. Defined: Processes are standardized and documented, with a focus on engineering
practices.
4. Managed: Processes are measured and controlled, with a focus on product and process
quality.
5. Optimizing: Processes are continuously improved and optimized, with a focus on
innovation and best practices.
For your time and concentration
Thank you

More Related Content

PPTX
Project Scheduling and Tracking in Software Engineering.pptx
PDF
55 sample chapter
PDF
55 sample chapter
PPTX
CS8494 SOFTWARE ENGINEERING Unit-5
PPTX
Software Engineering
PPTX
Software Engineering
PPTX
Line Of Code(LOC) In Software Engineering By NADEEM AHMED FROM DEPALPUR
PPTX
Design programing logic powor point.pptx
Project Scheduling and Tracking in Software Engineering.pptx
55 sample chapter
55 sample chapter
CS8494 SOFTWARE ENGINEERING Unit-5
Software Engineering
Software Engineering
Line Of Code(LOC) In Software Engineering By NADEEM AHMED FROM DEPALPUR
Design programing logic powor point.pptx

Similar to design-3 software engineering unit three (20)

PDF
Software Engineering and project management
PPT
21UCAE52 Software Project Management.ppt
PDF
Extreme software estimation (xsoft estimation)
PPTX
7a Good Programming Practice.pptx
PDF
boughtonalexand jdjdjfjjfjfjfjnfjfjjjfkdifij
PDF
Extreme software estimation (xsoft estimation)
PPTX
Cost estamition
PPTX
Introduction to Software Engineering.pptx
DOCX
Testing material (1).docx
PPTX
Lecture 2 software metrics and estimation.
DOCX
Mi0033 software engineering
PPTX
SE-Lecture-5.pptx
DOCX
Software Engineering Solved Past Paper 2020
DOCX
Software Engineering (Short & Long Questions)
PDF
Software testing and introduction to quality
PPT
Ch26
PPT
Software Product Measurement and Analysis in a Continuous Integration Environ...
PPT
Cost effort in softwrae project management.ppt
PPTX
SDLC comprises seven different stages: planning, analysis, design, developmen...
Software Engineering and project management
21UCAE52 Software Project Management.ppt
Extreme software estimation (xsoft estimation)
7a Good Programming Practice.pptx
boughtonalexand jdjdjfjjfjfjfjnfjfjjjfkdifij
Extreme software estimation (xsoft estimation)
Cost estamition
Introduction to Software Engineering.pptx
Testing material (1).docx
Lecture 2 software metrics and estimation.
Mi0033 software engineering
SE-Lecture-5.pptx
Software Engineering Solved Past Paper 2020
Software Engineering (Short & Long Questions)
Software testing and introduction to quality
Ch26
Software Product Measurement and Analysis in a Continuous Integration Environ...
Cost effort in softwrae project management.ppt
SDLC comprises seven different stages: planning, analysis, design, developmen...
Ad

Recently uploaded (20)

PDF
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPTX
additive manufacturing of ss316l using mig welding
PDF
BIO-INSPIRED HORMONAL MODULATION AND ADAPTIVE ORCHESTRATION IN S-AI-GPT
PPTX
Construction Project Organization Group 2.pptx
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPTX
Geodesy 1.pptx...............................................
PDF
Well-logging-methods_new................
PDF
Level 2 – IBM Data and AI Fundamentals (1)_v1.1.PDF
PPTX
UNIT 4 Total Quality Management .pptx
PDF
III.4.1.2_The_Space_Environment.p pdffdf
PPTX
Sustainable Sites - Green Building Construction
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PPTX
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PDF
PREDICTION OF DIABETES FROM ELECTRONIC HEALTH RECORDS
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PPTX
Safety Seminar civil to be ensured for safe working.
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
additive manufacturing of ss316l using mig welding
BIO-INSPIRED HORMONAL MODULATION AND ADAPTIVE ORCHESTRATION IN S-AI-GPT
Construction Project Organization Group 2.pptx
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
Geodesy 1.pptx...............................................
Well-logging-methods_new................
Level 2 – IBM Data and AI Fundamentals (1)_v1.1.PDF
UNIT 4 Total Quality Management .pptx
III.4.1.2_The_Space_Environment.p pdffdf
Sustainable Sites - Green Building Construction
Embodied AI: Ushering in the Next Era of Intelligent Systems
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PREDICTION OF DIABETES FROM ELECTRONIC HEALTH RECORDS
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
Safety Seminar civil to be ensured for safe working.
Foundation to blockchain - A guide to Blockchain Tech
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
Ad

design-3 software engineering unit three

  • 1. Subject-software engineering B.Tech cse 6th semester Paper code-BTCS603A Design concepts unit-3
  • 2. CONTENTS  DESIGN CONCEPTS  OO CONCEPTS  PDL  VERIFICATION METRICS &THEIR SCOPE  QUALITIES OF A GOOD SOFTWARE METRICS  CLASSIFICATION OF METRICS  COST ESTIMATION MODEL(COCOMO)  QUALITY ATTRIBUTES  SQA  QUALITY STANDARDS-ISO9000 AND CMM
  • 3. DESIGN CONCEPTS • Design activities-Iterating series of steps require to design a software. a)HLD and b)Detailed design • Design methodologies – these are the various approaches used for software design .a)Function oriented b)OO approach • Cohesion and Coupling • Design techniques-used to perform high level design of a software • Design verification • Metrics- quantifiable measurements used to evaluate various aspects of software development, including performance, productivity, and quality.
  • 4. OBJECT ORIENTED CONCEPTS  Objects - All entities involved in the solution design are known as objects. For example, person, banks, company and customers are treated as objects.  Classes - A class is a generalized description of an object. Class defines all the attributes, which an object can have and methods, which defines the functionality of the object.  Encapsulation - In OOD, the attributes (data variables) and methods (operation on the data) are bundled together is called encapsulation. Encapsulation not only bundles important information of an object together, but also restricts access of the data and methods from the outside world. This is called information hiding.  Inheritance - OOD allows similar classes to stack up in hierarchical manner where the lower or sub-classes can import, implement and re-use allowed variables and methods from their immediate super classes. This property of OOD is known as inheritance.  Polymorphism - OOD languages provide a mechanism where methods performing similar tasks but vary in arguments, can be assigned same name. This is called polymorphism, which allows a single interface performing tasks for different types.
  • 5. VERIFICATION The output of software design process is-  design documentation,  pseudo codes,  detailed logic diagrams,  process diagrams,  and detailed description of all functional or non-functional requirements. It is necessary to verify the output before proceeding to the next phase. By structured verification approach, reviewers can detect defects that might be caused by overlooking some conditions. A good design review is important for good software design, accuracy and quality.
  • 6. Scope of Software Metrics In software design, metrics scope encompasses quantifiable measures used to evaluate and improve software characteristics, covering areas like performance, productivity, and quality, helping to make data-driven decisions and manage projects effectively. Software measurement is a diverse collection of these activities that range from models predicting software project costs at a specific stage to measures program structure. Software metrics contains many activities which include the following −  Cost and effort estimation  Productivity measures and model  Data collection  Quantity models and measures  Reliability models  Performance and evaluation models  Structural and complexity metrics  Capability – maturity assessment  Management by metrics  Evaluation of methods and tools
  • 7. The basic constructs of PDL  The basic constructs of PDL are similar to those of a structured language.The following are the conditional operators and loops used in PDL.  1. Sequence Construct : It is the simplest; whereby statements are executed in the order they’re found in procedure . Sequence Construct  2. If construct : The if construct is used to control the flow of execution down one of two or more paths, depending on the result of given condition . if-then-else construct  3. Selection Constructs : The selection construct are used when the flow of execution may flow down two or more paths.When there are many conditions and the values are discrete, selection constructs are used.There are two or more conditions in the selection constructs. Each condition statement is an entry point, and execution will continue from that point unless a break statement is used.The break statement causes the program to continue from the end of the selection construct. Only discrete values may be used for the conditions . Selection Construct  4. Repetition Constructs : The repetition construct are used when a block of code is required to be executes continually until a condition is met.This type of loop is used to execute the block of code and the condition should be true.Repetition construct  A variety of data structure can be defined and used in PDL such as lists, tables, scalar and integers.
  • 9. Types of Software Metrics: Product Metrics: These metrics focus on the characteristics of the software product itself, such as code complexity, defect density, and code coverage. Process Metrics: These metrics focus on the software development process, such as effort variance, schedule variance, and defect injection rate. Project Metrics: These metrics focus on the project itself, such as project scope, budget, and schedule.  Examples of Software Metrics:  Lines of Code (LOC): A measure of the size of the code.  Defect Density: The number of defects per unit of code.  Code Coverage: The percentage of code that is executed during testing.  Development Velocity: The rate at which a team delivers working software.  Customer Satisfaction: A measure of how satisfied users are with the software.  Mean Time To Detect an Issue (MTTD): The average time it takes to find a defect.  System Availability: The percentage of time a system is operational.
  • 11. Quality of a good software metrics 1. Objective and Measurable: Metrics should provide quantifiable data, allowing for objective assessment of software quality rather than relying on subjective opinions. 2. Relevant to Quality Attributes: Metrics should focus on aspects that directly impact software quality, such as reliability, maintainability, usability, performance, and security. 3. Actionable: Metrics should provide insights that can be used to identify problems, track progress, and make improvements to the software or the development process. 4. Consistent: Metrics should be consistently measured and interpreted to ensure that trends and patterns can be reliably identified. 5. Applicable: Metrics should be applicable throughout the software development lifecycle, from initial design to ongoing maintenance. 6. Economical: The effort required to collect and analyze metrics should be reasonable and not overly burdensome. 7. Repeatable: When measured repeatedly, the metric values should be the same and consistent.
  • 12. COCOMO  (Constructive Cost Estimation Model) Boehm proposed COCOMO in 1981.  COCOMO is one of software estimation models in the world to predicts the efforts and schedule of a software product based on the size of the software .The necessary steps in this model are: 1. Get an initial estimate of the development effort from evaluation of thousands of delivered lines of source code (KLOC). 2. Determine a set of 15 multiplying factors from various attributes of the project. 3. Calculate the effort estimate by multiplying the initial estimate with all the multiplying factors i.e., multiply the values in step1 and step2.
  • 13. COCOMO  To determine the initial effort Ei in person-months the equation used is of the type is shown below  Ei=a*(KDLOC)b  The value of the constant a and b are depends on the project type.  In COCOMO, projects are categorized into three types: 1. Organic 2. Semidetached 3. Embedded
  • 15. COCOMO :Example  Suppose a project was estimated to be 400 KLOC. Calculate the effort and development time for each of the three model i.e., organic, semi-detached & embedded.  Solution: The basic COCOMO equation takes the form:  Effort=a1*(KLOC)a2 PM  Tdev=b1*(efforts)b2 months Estimated Size of project= 400 KLOC (i)Organic Mode  E = 2.4 * (400)1.05 = 1295.31 PM D = 2.5 * (1295.31)0.38=38.07 M (ii)Semidetached Mode  E = 3.0 * (400)1.12=2462.79 PM D = 2.5 * (2462.79)0.35=38.45 M (iii) Embedded Mode  E = 3.6 * (400)1.20 = 4772.81 PM D = 2.5 * (4772.8)0.32 = 38 M
  • 17. PROCESS DESIGN LANGUAGE(PDL)  It is a kind of programming process in which the design is communicated precisely according to the desired of the designer.  It is used to specify the design of system and to extend it to logic design.  Process Design Languages(PDL) is used to express the design in a language that is as precise and unambiguous as possible without having too much detail and that can be easily converted into an implementation.  It is the outer syntax of a structured programming language and also it has a vocabulary of a natural language.
  • 18. PDL EXAMPLE Consider the problem of reading the record from the file. If file reading is not completed and there is no error in the record then print the information of the record otherwise print that there is an error in reading of the record.This process will continue till the whole file is completed: Process (F_Procedure) Read file while not end-of-file if record ok then print record else print error else if read file end while End  To implements will have to be converted into programming language statements.
  • 19. PROCESS DESIGN LANGUAGE Advantages of PDL :  It can be embedded with source code, therefore easy to maintain.  It enables declaration of data as well as procedure.  It is the cheapest and most effective way to change program architecture, Disadvantages of PDL :  It is unable to express the functionality in an understandable way.  Only notation is understandable to people with PDL.
  • 20. software quality  software quality refers to how well a software product conforms to its requirements and meets the needs of its users.  It involves both the software product itself as well as the processes used to develop it.  Quality refers to characteristics like reliability, usability, performance, and security.  From a process perspective, it refers to using disciplined methods and best practices that are likely to result in a higher quality product.  Software quality refers to the degree to which software conforms to its requirements and meets the needs of its users. It is formally defined as “the capability of a software product to satisfy stated and implied needs when used under specified conditions.”
  • 21. Quality attributes  Portability: A software is claimed to be transportable  Usability: A software has smart usability if completely different classes of users (i.e. knowledgeable and novice users)  Reusability: A software has smart reusability to develop new merchandise.  Correctness: Software is correct if completely different needs as laid out in the SRS document are properly enforced.  Maintainability: A software is repairable, if errors may be simply corrected as and once they show up, new functions may be added and functionalities of the merchandise may be simply changed.  Reliability: Software is more reliable if it has fewer failures. Designers can improve reliability by ensuring the software is easy to implement and change, by testing it thoroughly, and also by ensuring that if failures occur, the system can handle them or can recover easily.  Efficiency. The more efficient software is, the less it uses of CPU-time, memory, disk space, network bandwidth, and other resources.
  • 22. McCalls Factor Model(Software quality model)  The classic model of software quality factors, suggested by McCall, consists of 11 factors (McCall et al., 1977).  Similarly, models consisting of 12 to 15 factors were suggested by Deutsch and Willis (1988) and by Evans and Marciniak (1987).  The McCall factor model provides a practical, up-to-date method for classifying software requirements (Pressman, 2000).  This model classifies all software requirements into 11 software quality factors. The 11 factors are grouped into three categories product operation, product revision, and product transition factors. 1. Product operation factors − Correctness, Reliability, Efficiency, Integrity, Usability. 2. Product revision factors − Maintainability, Flexibility,Testability. 3. Product transition factors − Portability, Reusability, Interoperability.
  • 23. SQA Standards The mission of the International Standard Organization is to market the development of standardization and its related activities to facilitate the international exchange of products and services. It also helps to develop cooperation within the different activities like spheres of intellectual, scientific, technological, and economic activity. 1.Software quality assurance management standards, including certification and assessment methodologies (quality management standards)  Example − ISO 9000-3 and the Capability Maturity Model (CMM) 2.Software project development process standards (project process standards)  ISO/IEC 12207 IEEE Std 1012-1998
  • 24. Quality assurance S.N o Quality Management Standards Software project development process standards (project process standards) 1 -These focus on the organizations SQA system, infrastructure and requirements, while leaving the choice of methods and tools to the organization.With quality management standards, organizations can steadily assure that their software products achieve an acceptable level of quality. These focus on the methodologies for implementing the software development and maintenance projects.These standards include the following − The steps to be taken Design documentation requirements Contents of design documents Design reviews and review issues Software testing to be performed Testing topics 2 Example − ISO 9000-3 and the Capability Maturity Model (CMM) ISO/IEC 12207 IEEEStd 1012-1998
  • 25. Capability Maturity Model (CMM)  It is a framework developed by the Software Engineering Institute (SEI) to guide organizations in improving their software development processes and achieving higher levels of maturity and predictability.  The CMM aims to help organizations systematically improve their software development processes, leading to better quality, reduced costs, and more predictable project outcomes.  The CMM defines five levels of process maturity, each representing a different stage of process improvement : 1. Initial: Processes are ad hoc and chaotic, with little or no formal structure. 2. Repeatable: Basic project management processes are in place, allowing for consistent execution of similar projects. 3. Defined: Processes are standardized and documented, with a focus on engineering practices. 4. Managed: Processes are measured and controlled, with a focus on product and process quality. 5. Optimizing: Processes are continuously improved and optimized, with a focus on innovation and best practices.
  • 26. For your time and concentration Thank you