0% found this document useful (0 votes)
81 views10 pages

Advance Software Engineering: Course Code: MCSE503

This document discusses software quality assurance and key concepts related to ensuring high quality software. It defines verification and validation, explaining that verification checks that the software implements requirements as designed, while validation checks that it meets customer needs. Quality attributes that ensure high quality software are also defined, including correctness, reliability, robustness, efficiency and usability. Finally, it discusses ISO 9000 standards for quality management and assurance.

Uploaded by

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

Advance Software Engineering: Course Code: MCSE503

This document discusses software quality assurance and key concepts related to ensuring high quality software. It defines verification and validation, explaining that verification checks that the software implements requirements as designed, while validation checks that it meets customer needs. Quality attributes that ensure high quality software are also defined, including correctness, reliability, robustness, efficiency and usability. Finally, it discusses ISO 9000 standards for quality management and assurance.

Uploaded by

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

ADVANCE SOFTWARE ENGINEERING

Course Code : MCSE503


Course Teacher : Engr. Devashis Das
M. S. (Telecom Engg.); B. Sc. Engg. (CSE); B. Sc. Hons (Statistics);
CCNA; RHCSA; RHCE; DCS; AMC; DWE; MCP;
Email : [email protected]
Mobile : 017 15 16 10 10

Software Quality Plan


A quality plan should:
set out desired product qualities and how these are assessed
- define the most significant quality attributes
define the quality assessment process
- i.e., the controls used to ensure quality
set out which organizational standards should be applied
- may define new standards, i.e., if new tools or methods are used
...
Reliability
Software
Quality

Efficiency
Usability
Maintainability
Portability

Quality attribute
may be further
refined into
subattributes

Quality attributes apply both to


the product and the process
product: delivered to the customer
process: produces the software product
resources: (both the product and the process require resources)
Underlying assumption: a quality process leads to a quality product (cf.
metaphor of manufacturing lines)

Quality attributes can be external or internal


External: Derived from the relationship between the environment and the system (or the
process). (To derive, the system or process must run)
e.g. Reliability, Robustness
Internal: Derived immediately from the product or process description (To derive, it is sufficient
to have the description)
Underlying assumption: internal quality leads to external quality (cfr. metaphor manufacturing
lines)
e.g. Efficiency

Correctness, Reliability, Robustness, Efficiency, Usability


Correctness
A system is correct if it behaves according to its specification
- An absolute property (i.e., a system cannot be almost correct)
- ... in theory and practice undecidable
Reliability
- The user may rely on the system behaving properly
- Reliability is the probability that the system will operate as expected over a specified interval
- A relative property (a system has a mean time between failure of 3 weeks)
Robustness
- A system is robust if it behaves reasonably even in circumstances that were not specified
- A vague property (once you specify the abnormal circumstances they become part of the requirements)

Correctness, Reliability, Robustness, Efficiency, Usability


Efficiency (Performance)
> Use of resources such as computing time, memory
- Affects user-friendliness and scalability
- Hardware technology changes fast!
- First do it, then do it right, then do it fast
> For process, resources are manpower, time and money
- relates to the productivity of a process
Usability (User Friendliness, Human Factors)

>The degree to which the human users find the system (process) both easy to use and useful
- Depends a lot on the target audience (novices vs. experts)
- Often a system has various kinds of users (end-users, operators, installers)
- Typically expressed in amount of time to learn the system

ISO 9000 and quality management


Advance Database Management System

Software Engineering : Verification and Validation


Verification and validation are used in the software testing process.
Verification
Validation
Verification
This is to ensure that the software being developed implements a specific function.
Verification is done against the design document. It verifies that the software being
developed implements all the functionality specified in the design document
Verification-Are we building the product Right
Validation
This is to ensure that the product being developed is matching with the customer
requirements. Validation is done against the SRS(Software Requirement
Specification) document. It verifies that the software being developed implements
all the requirements specified in the SRS document.
Validation: Are we building the right product

Difference between software Verification and Validation


Verification

Validation

Verification is the process of evaluating products of a development Validation is the process of evaluating software at the end of the
phase to find out whether they meet the specified requirements. development process to determine whether software meets the
customer expectations and requirements.

The objective of Verification is to make sure that the product being The objective of Validation is to make sure that the product actually
develop is as per the requirements and design specifications.
meet up the users requirements, and check whether the specifications
were correct in the first place.

Following activities are involved in Verification: Reviews, Meetings Following activities are involved in Validation: Testing like black box
and Inspections.
testing, white box testing, gray box testing etc.
Verification is carried out by QA team to check whether
implementation software is as per specification document or not.

Validation is carried out by testing team.

Verification process explains whether the outputs are according to Validation process describes whether the software is accepted by the
inputs or not.
user or not.
Verification is carried out before the Validation.

Validation activity is carried out just after the Verification.

Following items are evaluated during Verification: Plans,


Following item is evaluated during Validation: Actual product or
Requirement Specifications, Design Specifications, Code, Test Cases Software under test.
etc,

Cost of errors caught in Verification is less than errors found in


Validation.

Cost of errors caught in Validation is more than errors found in


Verification.

Software Quality Assurance (SQA)


Software quality assurance (SQA) is a process that ensures that developed software
meets and complies with defined or standardized quality specifications. SQA is an
ongoing process within the software development life cycle (SDLC) that routinely
checks the developed software to ensure it meets desired quality measures.
ISO 9000 is an international standard that many companies use to ensure that their
quality assurance system is in place and effective. Conformance to ISO 9000 is said
to guarantee that a company delivers quality products and services. To follow ISO
9000, a company's management team decides quality assurance policies and
objectives. Next, the company or an external consultant formally writes down the
company's policies and requirements and how the staff can implement the quality
assurance system. Once this guideline is in place and the quality assurance
procedures are implemented, an outside assessor examines the company's quality
assurance system to make sure it complies with ISO 9000

You might also like