Please enable JavaScript.
Coggle requires JavaScript to display documents.
Fundamental concepts of software process and quality - Coggle Diagram
Fundamental concepts of
software process and quality
Software Engineering Challenges
Software size, complexity and technical debt is
growing
Software size, complexity and technical debt is
growing
Global disruptive forces - cyberattacks, widespread disinformation, pandemic
Rapid technology advancement
End-user needs that constantly evolve
operating model constantly evolves to adapt to
changing customer needs, changing technologies,
and changing vendor environments
Data trustworthiness, protection and
cybersecurity
All software is affected by external factors (e.g.,
dependencies, constraints)
Low quality
development practices
not include quality concerns or robust testing until the end of the development cycle,
Code - functional but not high quality
Weaknesses and vulnerabilities are insufficiently
corrected due to tight deadlines
amount of time and effort needed to
retroactively make code of high quality is ignored
What Is Software Quality?
Philip Crosby
Quality - "conformance to the requirements”
not take the intrinsic difference in quality of
products into account in judging the quality of the product
Juran
Quality - “fitness for use”
better definition, although it does not provide
a mechanism to judge better quality when two products are equally fit to be used.
Software Product Quality
(ISO/IEC 25010)
Usability
operability
User error
protection
Learnability
user interface
Aesthetics
Appropriateness
Recognizability
Accessibility
Compatitbility
Co-existence
Interoperability
Realibility
Availability
Fault Tolerance
Maturity
Recoverability
Performance Efficiency
Time Behavior
Resource Utilization
Capacity
Security
Authenticity
Accountability
Non-repudiation
Integrity
Confidentiality
Functional Suitability
Functional Correctness
Functional Appropriateness
Functional Completeness
Maintainability
Modifiability
Testability
Analyzability
Reusability
Modularity
Portability
Replaceability
Installability
Adaptability
Software Quality Control
Software testing
Software inspection
Verification
Concerned with activities to ensure that the end product satisfies the functional and non-functional requirements and is fit for purpose
Validation
Software quality pioneers
Walter Shewhart
About
Walter Shewhart was a statistician
at AT&T Bell laboratories
Founder of statistical process
control (SPC), in monitoring and
controlling a process
Shewhart argued that quality and
productivity improve as process
variability is reduced.
Shewhart Model
(PDCA Cycle)
Do
carrying out the improvements
involve a pilot of the proposed changes
Check
checking the results obtained against the
expected results
to determine their effectiveness.
Plan - dentifies an improvement opportunity and
outlines the problem or process
Identify the possible causes of the problem.
Find the root cause of problems.
Describe current process.
Develop an action plan to correct the root cause.
Select the problem to be addressed.
Act
analysis of the results to adjust
process performance
to achieve the desired results
W. Edwards Deming
Joseph Juran
Philip Crosby
Philip Crosby