Introduction To Software and Systrem Quality Oct. 2023 - V04
Introduction To Software and Systrem Quality Oct. 2023 - V04
Introduction To Software and Systrem Quality Oct. 2023 - V04
Prepared by:
Prof. Samir Elmougy
Professor of Computer Science
Director of Artificial Intelligence B.Sc. Program
Dept. of Computer Science
Faculty of Computer Science and Information
Mansoura University
Instructor
◼ Prof. Samir Elmougy
◼ Professor of Computer Science, Department of Computer
Science, Faculty of Computers and Information, Mansoura
University.
◼ Vice Dean of Postgraduate Studies and Research, Faculty of
Computers and Information, Mansoura University.
◼ Director of Artificial Intelligence B.Sc. Program, Faculty of
Computers and Information, Mansoura University.
◼ Ph.D. in Computer Science, College of Engineering, Oregon
State University, USA.
2
Course Objectives
◼ Presenting the history, concepts, challenges,
characteristics, applications, models, and ethics of SW
Quality.
◼ Explaining the importance of SW quality to SW users and
to SW developers.
◼ To understand the international standards that are applied
to assess software quality.
◼ Defining the features of SW and the qualities of a good
SW.
◼ Describing the methods and measure used in measuring
the required qualities of SW.
◼ Monitoring the quality of the processes in a SW project.
3
Course Objectives
◼ Describing the continue improvement of SW quality
◼ Using external quality standards to ensure the quality
4
Course Topics
◼ Background and concepts related to computer systems,
SW, program, project, and SE engineering.
◼ The history, concepts, challenges, characteristics,
applications, models, and ethics of SW Quality.
◼ The importance of SW quality to SW users.
◼ The importance of SW quality to SW developers.
◼ International standards of SW quality.
◼ Features of SW
◼ Qualities of a good SW.
◼ Measures qualities of SW.
5
Course Topics
◼ The continue improvement of SW quality.
◼ External quality standards.
◼ Quality Models.
6
Course Workload
7
Computer System
◼ Software (SW): “a set of items or objects that form a “configuration” that
includes programs, documents, data, ...”
[Software is a set of items or objects ]
◼ programs that execute (run) on computers
◼ set of instructions that tells the computer what to do
◼ Controlled by software
8
Information
◼ Data do not carry any specific meaning.
◼ Information is created when data are processed, organized, or
structured to provide context and logical meaning.
◼ Information:
◼ knowledge represented in a form suitable for transmission,
manipulation, storing, . . .
◼ Many types such as:
9
Information
◼ All information is digitized:
1. broken down into pieces
2. represented as numbers and,
3. represented and stored in memory using the binary number
system.
◼ Information Science:
◼ the study of information and
10
What is Software?
◼ Software Categories
(1) Systems SW:
➢ Programs that are directly controlling the running of
other programs
➢ Example: Microsoft.NET, Java SDK
11
What is Software?
12
What is Software?
Application Programs
Video processing, games, web browsers, word processors, education
programs, electronic spreadsheets, etc…
exe (Windows) or .app (Mac) file
Can use without knowing how it works behind the scenes (abstraction)
System Software
Compilers, Interpreters, Operating System, Device Drivers, etc
Hardware
A Layered View of the Computer
13
What is Computer Science (CS)?
◼ Computer Science (CS) delivers
acceptable solutions to complex, hard,
and various challenging problems
◼ CS studies of
◼ information,
◼ protocols, and
◼ algorithms
14
What is Computer Science (CS)?
◼ To delivery high quality project, computer scientists and
all other team works need some (not all) useful skills
include (based on the nature and the complexity of the
required project): ◼ Logical thinking
16
SW Programming Versus SE Engineering
◼ SW Programming:
17
SW Programming Versus SE Engineering
◼ SW Engineering:
20
Quality
22
Software Quality
◼ Software quality may be a vague, attribute, or undefined.
◼ Quality is needed to be agreed and focused during all phases of project (SW)
◼ requirements,
◼ planning,
◼ execution.
23
Software Quality
24
Quality Management
◼ It ensures that whether needed level of product achieved or not, through:
◼ Define the procedures and standards
◼ Main Problems:
No standard for aspects of software quality
[Software Quality Assurance, Mark J. Tseytlin, Sr. SQE, Raytheon Company]
25
Software Quality Assurance (SQA)
◼ Main elements of SQA
• SQA:
establishment of network of organizational procedures and standards leading to
high-quality software
2. Software Quality Planning (SQP):
selection of appropriate procedures and standards from this framework and
adaptation of these to specific software project
3. Software Quality Control (SQC):
definition and enactment of processes that ensure that project quality procedures
and standards are being followed by the software development team
4. Software Quality Metrics (SQM):
collecting and analyzing quality data to predict and control quality of the
software product being developed
[Software Quality Assurance, Mark J. Tseytlin, Sr. SQE, Raytheon Company]
26
Software Quality Assurance (SQA)
• “SQA consists of those procedures, techniques, and tools applied by
professionals to ensure that a product meets or exceeds pre-specified
standards during it’s development cycle.”
[E.H. Bersoff]
27
Software Development Cycle
28
Software Metric
◼ Software quality remains a subject
◼ who is to blame?
30
Software Metric
◼ Help analyzing the metrics in every phase of testing to improve the defect
removal efficiency.
31
Modeling Quality
◼ ISO/IEC 25010:2011: Standard Quality Model
32
Modeling Quality
33
Modeling Quality
Quality System Requirements Software Quality Responsibilities
◼ Management Responsibility ◼ Management Responsibility
◼ Quality system ◼ Quality system
◼ Contract review ◼ Contract review
Design Control ◼ Design Control
ISO - 9001 Elements
◼ https://www.win.tue.nl/~wstomv/edu/2ip30/references/9126ref.html
35