Rekayasa Perangkat Lunak

Slides:



Advertisements
Similar presentations
Ch.21 Software Its Nature and Qualities. Ch.22 Outline Software engineering (SE) is an intellectual activity and thus human-intensive Software is built.
Advertisements

Software Quality Seung Yang CS 525 Software Engineering II Dr. Sheldon X. Liang.
Quality Management. What is a software product? Software product = computer programs (sources and executable) + associated documentation Software products.
Overview of Software Engineering Principles
Software project management (intro) Quality assurance.
Ch2: Software: Its Nature and Qualities. 1 Introduction  Difference between a software and other engineering products.  Difference between software.
Overview of Software Engineering Principles CSCI 599: Software Engineering for Embedded Systems August 27, 2002.
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The need for comprehensive software quality requirements Classification.
Software Quality Assurance For Software Engineering && Architecture and Design.
Factor Of Software Quality
Software Project Management Fifth Edition
Managing Software Quality
 The software systems must do what they are supposed to do. “do the right things”  They must perform these specific tasks correctly or satisfactorily.
Requirements specification Copyright, 2001 © Jerzy R. Nawrocki Quality Management.
CSE 303 – Software Design and Architecture
1 Software Quality CIS 375 Bruce R. Maxim UM-Dearborn.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
Software Software is omnipresent in the lives of billions of human beings. Software is an important component of the emerging knowledge based service.
OHTO -99 SOFTWARE ENGINEERING “SOFTWARE PRODUCT QUALITY” Today: - Software quality - Quality Components - ”Good” software properties.
Software Quality Engineering Chapters 1-3 Overview, Software Quality and Quality Assurance.
Topic (1)Software Engineering (601321)1 Introduction Complex and large SW. SW crises Expensive HW. Custom SW. Batch execution.
1 Software quality - Definition IEEE 1. The degree to which a system, component, or process meets specified requirements. 2. The degree to which a system,
Software Quality Assurance SE Software Quality Assurance What is “quality”?
Software Engineering 2003 Jyrki Nummenmaa 1 SOFTWARE PRODUCT QUALITY Today: - Software quality - Quality Components - ”Good” software properties.
Software Engineering Quality What is Quality? Quality software is software that satisfies a user’s requirements, whether that is explicit or implicit.
Question To know that quality has improved, it would be helpful to be able to measure quality. How can we measure quality?
OHTO -99 SOFTWARE ENGINEERING “SOFTWARE PRODUCT QUALITY” Today: - Software quality - Quality Components - ”Good” software properties.
+ Overview of Embedded Systems & Embedded Software Engineering CSCI 589: Software Engineering for Embedded Systems.
Code Complete Steve McConnell. 20. The Software-Quality Landscape.
Software quality factors
CS551 - Lecture 5 1 CS551 Lecture 5: Quality Attributes Yugi Lee FH #555 (816)
Quality Factors Chapter Three. Question To know that quality has improved, it would be helpful to be able to measure quality. How can we measure quality?
Software Engineering 2004 Jyrki Nummenmaa 1 SOFTWARE PRODUCT QUALITY Today: - Software quality - Quality Components - ”Good” software properties.
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa SOFTWARE PRODUCT QUALITY Today: - Software quality -
CSE 303 – Software Design and Architecture
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 15a: Product Metrics for Software Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Metrics "A science is as mature as its measurement tools."
Software Quality Prepared By: Rooshabh Kothari Assistant Professor T & P Co-ordinator CSE/IT Department 1.
Chapter 10 Software quality. This chapter discusses n Some important properties we want our system to have, specifically correctness and maintainability.
TOTAL QUALITY MANAGEMENT
Software Quality Control and Quality Assurance: Introduction
Non-functional requirements as Gordian knot
Rekayasa Perangkat Lunak Part-10
Rekayasa Perangkat Lunak Part-4
Rekayasa Perangkat Lunak
Rekayasa Perangkat Lunak Part-2
Software Quality Assurance Software Quality Factor
McCall’s Quality Factors
Lecture 15: Technical Metrics
Software Quality Assurance
Software Verification and Validation
Rekayasa Perangkat Lunak Part-3
Software Engineering (CSE 314)
Rekayasa Perangkat Lunak
Software Engineering Rekayasa Perangkat Lunak
Software engineering.
مقدمه اي بر مهندسي نيازمنديها
Software Quality Engineering CS- 449
Rekayasa Perangkat Lunak
Thursday’s Lecture Chemistry Building Musspratt Lecture Theatre,
Software Engineering Rekayasa Perangkat Lunak
Software Engineering Rekayasa Perangkat Lunak
Software Engineering Rekayasa Perangkat Lunak
Rekayasa Perangkat Lunak
20. The Software-Quality Landscape
Rekayasa Perangkat Lunak
Rekayasa Perangkat Lunak
Software Engineering Rekayasa Perangkat Lunak
Luca Simoncini PDCC, Pisa and University of Pisa, Pisa, Italy
Presentation transcript:

Rekayasa Perangkat Lunak Software Quality

Outline of this presentation Software Quality Mc Call’s Triangle of Quality Mc Call’s Software Quality Factors Product Operation Product Revision Product Transition

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

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

McCall’s Software Quality Factors (1) Product Operation Correctness Reliability Efficiency Integrity Usability 7

McCall’s Software Quality Factors (2) Product Revision Maintainability Flexibility Testability 7

McCall’s Software Quality Factors (3) Product Transition Portability Reusability Interoperability 7

McCall’s Software Quality Factors (4) Product Operation Correctness satisfies a specification ideal quality established w.r.t. the requirements specification absolute 8

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

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

McCall’s Software Quality Factors (7) Product Revision Maintainability effort required to correct 9

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

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

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

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

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

Software Qualities Qualities (a.k.a. “ilities”) are goals in the practice of software engineering External vs. Internal qualities Product vs. Process qualities

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

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

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

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

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!

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

Finished, Questions?