Download presentation
Presentation is loading. Please wait.
1
Rekayasa Perangkat Lunak
Software Quality
2
Outline of this presentation
Software Quality Mc Call’s Triangle of Quality Mc Call’s Software Quality Factors Product Operation Product Revision Product Transition
3
McCall’s Triangle of Quality
b l y F e x T s P o r R u I p C c E f g U O D A N S V
4
McCall’s Triangle of Quality
Correctness Traceability Completeness Reliability Consistency Accuracy Efficiency Error tolerance Execution efficiency Integrity Storage efficiency Access Control Usability Access Audit McCall’s Triangle of Quality Operability Training Maintainability Communicativeness Simplicity Flexibility Conciseness Instrumentation Testability Self-descriptiveness Expandability Portability Generality Modularity Reusability SW independence HW independence Communication commonality Interoperability Data commonality
5
McCall’s Software Quality Factors (1)
Product Operation Correctness Reliability Efficiency Integrity Usability 7
6
McCall’s Software Quality Factors (2)
Product Revision Maintainability Flexibility Testability 7
7
McCall’s Software Quality Factors (3)
Product Transition Portability Reusability Interoperability 7
8
McCall’s Software Quality Factors (4)
Product Operation Correctness satisfies a specification ideal quality established w.r.t. the requirements specification absolute 8
9
McCall’s Software Quality Factors (5)
Product Operation Reliability performs with precision statistical property probability that software will operate as expected over a given period of time relative 8
10
McCall’s Software Quality Factors (6)
Product Operation Efficiency utilization of system resources Integrity control of access by the unauthorized Usability effort required to learn, operate, etc. ability of end-users to easily use software extremely subjective 8
11
McCall’s Software Quality Factors (7)
Product Revision Maintainability effort required to correct 9
12
McCall’s Software Quality Factors (8)
Product Revision Flexibility effort required to modify ability to add or modify functionality addresses adaptive and perfective maintenance problem: evolution of implementation is too easy evolution should start at requirements or design 9
13
McCall’s Software Quality Factors (9)
Product Revision Testability effort required to test ease of establishing desired properties performed by formal analysis or testing internal quality 9
14
McCall’s Software Quality Factors (10)
Product Transition Portability dependency on hardware and operating environments ability to execute in new environments with minimal effort may be planned for by isolating environment- dependent components necessitated by the emergence of highly- distributed systems (e.g., the Internet) an aspect of heterogeneity 10
15
McCall’s Software Quality Factors (11)
Product Transition Reusability degree to which program can be used in other applications ability to construct new software from existing pieces must be planned for occurs at all levels: from people to process, from requirements to code FAKULTAS TEKNOLOGI INFORMASI REKAYASA PERANGKAT LUNAK – KP146 – 3 SKS – BAG 10 10
16
McCall’s Software Quality Factors (12)
Product Transition Interoperability effort required for 2 systems to communicate ability of software (sub)systems to cooperate with others easily integratable into larger systems common techniques include APIs, plug-in protocols, etc. 10
17
Software Qualities Qualities (a.k.a. “ilities”) are goals in the practice of software engineering External vs. Internal qualities Product vs. Process qualities
18
Software Quality External vs. Internal Quality
External qualities are visible to the user reliability, efficiency, usability, etc Internal qualities are the concern of developers they help developers achieve external qualities maintainability, testability, flexibility,etc
19
Software Quality Product vs. Process Qualities
Product qualities concern the developed artifacts maintainability, understandability, performance Process qualities deal with the development activity products are developed through process maintainability, productivity, timeliness
20
Software Quality Software Process Qualities
Process is reliable if it consistently leads to high- quality products Process is robust if it can accommodate unanticipated changes in tools and environments Process performance is productivity Process is evolvable if it can accommodate new management and organizational techniques Process is reusable if it can be applied across projects and organizations
21
Software Quality Qualities must be measurable
Assesing Software Qualities Qualities must be measurable Measurement requires that qualities be precisely defined Improvement requires accurate measurement Currently most qualities are informally defined and are difficult to assess
22
Software Quality Software Engineering “Axioms” Adding developers to a project will likely result in further delays and accumulated costs Basic tension of software engineering better, cheaper, faster — pick any two! functionality, scalability, performance — pick any two!
23
Software Quality The longer a fault exists in software
Software Engineering “Axioms” The longer a fault exists in software the more costly it is to detect and correct the less likely it is to be properly corrected Up to 70% of all faults detected in large-scale software projects are introduced in requirements and design detecting the causes of those faults early may reduce their resulting costs by a factor of 100 or more
24
Finished, Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.