0% found this document useful (0 votes)
26 views

Software Engineering: Dilip Sharma Reader - CEA Dept

The document discusses software quality and its factors. It defines software quality as how well the software is designed and how well it conforms to that design. It then lists and describes 12 key factors that influence software quality: understandability, completeness, conciseness, portability, consistency, maintainability, testability, usability, reliability, efficiency, and security. These factors relate to aspects like clarity, functionality, optimization, cross-platform use, standards, updates, testing, user experience, dependability, resource use, and data protection.

Uploaded by

Arun Kr
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views

Software Engineering: Dilip Sharma Reader - CEA Dept

The document discusses software quality and its factors. It defines software quality as how well the software is designed and how well it conforms to that design. It then lists and describes 12 key factors that influence software quality: understandability, completeness, conciseness, portability, consistency, maintainability, testability, usability, reliability, efficiency, and security. These factors relate to aspects like clarity, functionality, optimization, cross-platform use, standards, updates, testing, user experience, dependability, resource use, and data protection.

Uploaded by

Arun Kr
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 14

Software Engineering

Dilip Sharma
Reader – CEA Dept
Software Quality

 In the context of software engineering, software


quality measures how well software is designed
(quality of design), and how well the software
conforms to that design (quality of
conformance), although there are several
different definitions.
 Whereas quality of conformance is concerned
with implementation (see Software Quality
Assurance), quality of design measures how
valid the design and requirements are in
creating a worthwhile product
Software Quality Factors
 Understandability–clarity of purpose.
 This goes further than just a statement of

purpose; all of the design and user


documentation must be clearly written so that
it is easily understandable.
 This is obviously subjective in that the user

context must be taken into account: for


instance, if the software product is to be used
by software engineers it is not required to be
understandable to the layman.
Software Quality Factors
Completeness–presence of all constituent
parts, with each part fully developed.
 This means that if the code calls a

subroutine from an external library, the


software package must provide reference to
that library and all required parameters must
be passed.
 All required input data must also be

available.
Software Quality Factors
Conciseness–minimization of excessive or
redundant information or processing.
 This is important where memory capacity is

limited, and it is generally considered good


practice to keep lines of code to a minimum.
 It can be improved by replacing repeated

functionality by one subroutine or function


which achieves that functionality.
 It also applies to documents.
Software Quality Factors
 Portability–ability to be run well and easily on
multiple computer configurations.
 Portability can mean both between different

hardware—such as running on a PC as well as


a smartphone—and between different
operating systems—such as running on both
Mac OS X and GNU/Linux.
Software Quality Factors
 Consistency–uniformity in notation,
symbology, appearance, and terminology
within itself.
Software Quality Factors
 Maintainability–propensity to facilitate
updates to satisfy new requirements.
 Thus the software product that is
maintainable should be well-documented,
should not be complex, and should have
spare capacity for memory, storage and
processor utilization and other resources.
Software Quality Factors
 Testability–disposition to support acceptance
criteria and evaluation of performance.
 Such a characteristic must be built-in during

the design phase if the product is to be easily


testable; a complex design leads to poor
testability.
Software Quality Factors
 Usability–convenience and practicality of use.
 This is affected by such things as the human-

computer interface.
 The component of the software that has most

impact on this is the user interface (UI), which


for best usability is usually graphical (i.e. a
GUI).
Software Quality Factors
 Reliability–ability to be expected to perform
its intended functions satisfactorily.
 This implies a time factor in that a reliable

product is expected to perform correctly over


a period of time.
 It also encompasses environmental

considerations in that the product is required


to perform correctly in whatever conditions it
finds itself (sometimes termed robustness).
Software Quality Factors
 Efficiency–fulfillment of purpose without
waste of resources, such as memory, space
and processor utilization, network bandwidth,
time, etc.
Software Quality Factors
Security–ability to protect data against
unauthorized access and to withstand
malicious or inadvertent interference with its
operations.
 Besides the presence of appropriate security

mechanisms such as authentication, access


control and encryption, security also implies
resilience in the face of malicious, intelligent
and adaptive attackers.

You might also like