0% found this document useful (0 votes)
26 views32 pages

Week 01

Software Quality Engineering

Uploaded by

Ajay Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views32 pages

Week 01

Software Quality Engineering

Uploaded by

Ajay Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 32

Software Quality Engineering

(SEN453)
Dr. Abdul Rehman
Baloch
Assistant Professor,
FEST,
IQRA University, Karachi

Week # 1
Unit 1/3
Software Quality Engineering
2
 Unit 1/3
 Course Objective(s)
 Course Contents
 Book Title
 Course Learning Outcomes (CLOs)
 Mapping and Assessment
 Grading Assessment / Grading Policy
 Weekly Course Plan
 Unit 2/3
 What is Software
 Software Engineering
 Software Development Life Cycle SDLC
 Testing Phase in SDLC
 Mapping and Assessment
 Grading Assessment / Grading Policy
 Weekly Course Plan
 Unit 3/3
 Introduction to Quality Engineering
 Why Software Quality Matters
 Key Software Quality Attributes
 Core Quality Engineering Activities
Week 01 -Software Quality Engineering - SEN453
Course Objective(s)
3

 This course aims to provide students with a thorough


understanding of software quality metrics and models, alongside
software testing techniques and software reliability analysis. The
objectives include introducing quality assurance and quality control
techniques, developing QA and Test Plans, documenting and
reporting findings, and performing inspections and testing in
production environments.

Week 01 -Software Quality Engineering - SEN453


Course Contents
4
 The Software Quality Engineering course, offered in Fall 2024, aims
to provide students with an in-depth understanding of the subject,
testing techniques, and reliability analysis. Throughout the semester,
students will explore various aspects of quality assurance, including
the development of QA and Test Plans, documentation, reporting,
and performing inspections and tests. The course content includes
foundational texts in the books.
 Students will engage with topics ranging from topic attributes, testing
lifecycles, strategies, and techniques, to reliability models, quality
models, and system testing.
 Assignments, projects, quizzes, mid-semester, and end-semester
examinations will contribute to the grading.

Week 01 -Software Quality Engineering - SEN453


Book Title
5

 Software Quality Engineering, (Testing, Quality Assurance, & Quantifiable


Improvement), by JEFF TIAN, 2018, WILEY.

 Software Testing, A Craftsman's Approach, by Paul Jorgensen, 4th Edition 2015,


Taylor and Francis Group. Bernard Homes, 2012

 Fundamentals of Software Testing, ISTE, Wiley Publisher, 2012

 Software Engineering, by Ian Sommerville, 10th Edition – 2017 Addison Wesley

Week 01 -Software Quality Engineering - SEN453


Course Learning Outcomes (CLOs)
6

Course Learning Outcomes (CLOs)

CLO 1 Apply software quality metrics and models is essential for ensuring
the delivery of high-quality software products

CLO 2 Design software testing strategies to systematically evaluate


software products.
CLO 3 Adhere to ethical and professional standards in software quality
engineering, ensuring transparency, accountability, and integrity in
all quality-related activities.

Week 01 -Software Quality Engineering - SEN453


Mapping and Assessment
7

Mapping and Assessment


CSC-131 Related PLOs CLO Attainment checked in
CLOs

CLO1 GA-2: Engineering Assignments, Case Study


Knowledge Analysis

CLO2 GA-4: Lab Exercises, Peer Review


Design/Development of
Solutions
CLO3 GA-9: Ethics Project Delivery, Reports,
Peer Assessment

Week 01 -Software Quality Engineering - SEN453


Grading Assessment / grading Policy
8

Grading Breakup and Policy


Assessment tool Assessment %
Assignments / Project Report 15%
Quizzes 15%

Midterm Exam 30%

Final Exam 40%

Total 100%

Week 01 -Software Quality Engineering - SEN453


Weekly Course Plan
9

Weekly Course Plan


Week Topic Covered
Week Software Quality: Overview and Introduction Basic Introduction. Software
-1 Quality Attributes. Introduction to Quality Engineering.
Testing: Concepts, Issues, and Techniques Introduction to software testing.
Week
Software testing lifecycle. Testing Scopes. Testing Approaches. Testing
-2 Concepts.
Week Test Planning Process Introduction to testing process Requirement of software
-3 test planning Testing documentation Reporting and historical data recording.
Week Software testing techniques Testing philosophies Testing strategies Model-
-4 based testing:
Software testing techniques (Continued…) Testing using models: Using finite
Week
state machine Control-flow and dataflow-based testing Domain and
-5 combinatorial testing
Week
Unit and integration testing Unit testing Integration testing Acceptance testing
-6
Week Integration testing Introduction to integration testing Introduction to MM paths
Test automation
Weekly Course Plan
10

Weekly Course Plan – Topic Covered


Mid-Term Examination Week
Software reliability models and engineering Introduction Exponential model.
Week -9 Reliability growth models Modeling process
Week - Software inspections Fagan inspections Software reviews Inspection checks and
10 metrics
Week - Quality Models Introduction Models for quality assessment Product quality
11 metrics
Week - Quality Measurements In-process metrics for software testing In-process quality
12 management Effort/outcome models
Week -
System testing Introduction to system testing Scenarios development
13
Week -
System testing Use-cases for testing Specification-based testing
14
Week -
Open issues on software testing
15
Week -
Review all topics
Introduction to Software

Week # 1
Unit 2/3
What is Software
12

Software: Software refers to a set of instructions,


data, or programs used to operate computers and
perform specific tasks.

Types of Software:
•System Software: Manages the hardware of a
computer and provides a platform for running
application software (e.g., Operating Systems like
Windows, macOS).
•Application Software: Performs specific user-
oriented tasks (e.g., word processors, web
browsers, games).
•Middleware: Acts as a bridge between the both
Week 01 -Software Quality Engineering - SEN453
Software Engineering -SWE
13

 Definition: SWE is the disciplined application of engineering principles to the design,


development, testing, and maintenance of software systems.
 Key Aspects:
 Systematic Approach: Involves using established methodologies and frameworks to
ensure the software development process.
 Quality Assurance: Ensures that the software meets quality standards, including
performance, security, and usability.
 Lifecycle Management: Focuses on managing the software development lifecycle
(SDLC), from initial requirements gathering to post-deployment maintenance.
 Importance of Software Engineering:
 Efficiency:
 Risk Management:
 Collaboration:

Week 01 -Software Quality Engineering - SEN453


Software Development Life Cycle SDLC
14

Definition: The Software


Development Lifecycle (SDLC) is a
systematic framework utilized by
software engineers to design,
develop, and deliver software
applications.

Week 01 -Software Quality Engineering - SEN453


Software Development Life Cycle SDLC
15

•Purpose: Provides a structured approach that enhances


efficiency and effectiveness in the software development
process.
•Key Phases:
• Planning: Identifying project goals and
requirements.
• Analysis: Gathering and analyzing user
requirements.
• Design: Creating architectural and design
specifications.
Week 01 -Software Quality Engineering - SEN453
Software Development Life
16
Cycle SDLC

Fig: 01 – Seven Stages / Phase of SDLC – from


Internet

Week 01 -Software Quality Engineering - SEN453


Software Development Life Cycle SDLC
17

Fig: 02 – Seven Stages / Phase of SDLC – from


Internet
Week 01 -Software Quality Engineering - SEN453
Software Development Life
Cycle SDLC
18

Fig: 03 – Seven Stages / Phase of SDLC – from Internet

Week 01 -Software Quality Engineering - SEN453


Software Development Life Cycle SDLC
19

Fig: 04 – Seven Stages / Phase of SDLC – from


Internet Week 01 -Software Quality Engineering - SEN453
Testing Phase in SDLC: Software Quality
20

Objective:
The testing phase aims to verify and validate that the software meets
the specified requirements and is free from defects.

Key Activities:
•Bug Detection: Identifying and fixing any errors, bugs, or issues in
the software before deployment.
•Functionality Testing: Ensures that the software performs all the
required functions correctly, as outlined in the functional
requirements.
•Performance Testing: Evaluates how the software behaves under
various conditions, such as high user traffic or large data loads.
•Security Testing: Ensures that the software is secure from external
threats and unauthorized access.
•Usability Testing: Checks how user-friendly and intuitive the
software is for the intended users.
•Compatibility Testing: Confirms that the software works across
different devices, browsers, or operating
Week 01systems.
-Software Quality Engineering - SEN453
Testing Phase in SDLC: Software
Quality (Cont..)
21

Types of Testing:
•Unit Testing: Testing individual components or modules of
the software for correctness.

•Integration Testing: Ensures that different modules or


components of the software work together.

•System Testing: Tests the complete system to verify that


all parts work together as expected.

•User Acceptance Testing (UAT): Performed by the end-


users to confirm that the software meets their needs and
requirements.

Week 01 -Software Quality Engineering - SEN453


Testing Phase in SDLC: Software Quality
(Cont..)
22

Why It’s Important:


•Quality Assurance: Ensures that the software is reliable,
secure, and performs efficiently before it’s released.

•Cost Reduction: Identifying and fixing issues early in the


testing phase can save time and resources, reducing costly
fixes after deployment.

•User Satisfaction: Well-tested software results in a smoother


user experience and higher customer satisfaction.

Week 01 -Software Quality Engineering - SEN453


Overview of the Topic

Week # 1
Unit 3/3
Overview & Introduction
24

 By the end of this lecture, you will understand:


• Overview and basic introduction of Software
Quality.
• Key Software Quality Attributes.
• Introduction to Quality Engineering.

Week 01 -Software Quality Engineering - SEN453


Overview & Introduction
(Cont..)
25

 Quality Engineering integrates quality processes


throughout the software development lifecycle.
 It focuses on preventing defects early rather than
just finding them later in testing.
 Quality engineering ensures a continuous and
consistent focus on delivering high-quality
software from design to deployment.

Week 01 -Software Quality Engineering - SEN453


Overview & Introduction
(Cont..)
26

 Software engineering is the systematic approach to the


development, operation, maintenance, and retirement of
software. It ensures high-quality software products are
delivered efficiently.
 Software quality refers to how well software conforms to its
specified functional and non-functional requirements.

• High-quality software meets both End-User needs and


performs efficiently under different conditions.

• It ensures software's reliability, ease of use, and future


maintainability.
Week 01 -Software Quality Engineering - SEN453
Introduction to Quality Engineering
27

 Quality Engineering integrates quality processes


throughout the software development lifecycle.
 It focuses on preventing defects early rather than
just finding them later in testing.
 Quality engineering ensures a continuous and
consistent focus on delivering high-quality software
from design to deployment.

Week 01 -Software Quality Engineering - SEN453


Why Software Quality Matters
28

 Ensuring software quality reduces long-term


maintenance costs by minimizing defects.
 High-quality software enhances customer

satisfaction, as it meets user expectations


and functions well.
 Compliance with industry standards and

regulatory requirements is often a byproduct


of high software quality.
 Software quality also increases market

competitiveness and ensures long-term

Week 01 -Software Quality Engineering - SEN453


Key Software Quality Attributes
29

 Functionality: The software’s ability to perform the intended functions.


 Reliability: The software consistently performs under specific conditions
over time without failure.
 Usability: It should be intuitive and easy for users to operate.
 Efficiency: The software uses system resources optimally and performs
quickly.
 Maintainability: Ease with which software can be modified or updated
to adapt to changes.
 Portability: The ability of software to function on different platforms and
environments.

Week 01 -Software Quality Engineering - SEN453


Core Quality Engineering Activities
30

 Test Planning: Defining a strategic approach for testing


activities, identifying what and how to test.
 Test Automation: Reducing manual testing efforts by
automating repetitive tasks, increasing testing efficiency.
 Performance Monitoring: Continuously assessing if the
software meets performance expectations, like speed and
responsiveness.
 Continuous Feedback: Establishing regular feedback loops
between developers and testers, enabling early issue
identification and resolution.

Week 01 -Software Quality Engineering - SEN453


Summary
31
 CIS – Software Quality Engineering
 Course Objective(s)
 Course Contents
 Book Title
 Course Learning Outcomes (CLOs)
 Mapping and Assessment
 Grading Assessment / Grading Policy
 Weekly Course Plan
 Software and Software Engineering
 Software Development Life Cycle SDLC
 Understanding software quality
 Quality attributes

Week 01 -Software Quality Engineering - SEN453


Assignment #1:
32

Think of a Favorite Software Pick a software


application you use regularly (e.g., a social media
app, a game, or a tool like Microsoft Word).

Task: Write down 3 qualities you think make the


software good or bad.
• Example: "It never crashes" or "It loads too
slowly.

Week 01 -Software Quality Engineering - SEN453

You might also like