1 / 16

SOFTWARE QUALITY ASSURANCE

SOFTWARE QUALITY ASSURANCE. Basic Principles. Requirements. SW Quality : An issue in all phases of the life-cycle. System Design. Detailed Design. Implementation. Installation & Testing. Maintenance. SW Quality Factors. basic quality characteristics for whom?

bijan
Download Presentation

SOFTWARE QUALITY ASSURANCE

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SOFTWARE QUALITY ASSURANCE Basic Principles

  2. Requirements SW Quality: An issue in all phases of the life-cycle System Design Detailed Design Implementation Installation & Testing Maintenance

  3. SW Quality Factors • basic quality characteristics • for whom? • depend on the phase of the life-cycle • quality measures? • consistency of the transformation process • mapping between phases • completeness and adequacy of the product • can the end-user use the product

  4. The Cost of SW Quality [B. Boehm] • quality costs time & money during development: • code and unit test: 8% • integration test: 7% • re-testing (after each fix): 20% • rework (in earlier phases): 10% ===> about 45% of your budget goes into quality related activities

  5. Cost Ratio of Errors Requirements : Maintenance = 1 : 200 ===> detect quality problems early

  6. The Benefits of SW Quality • lower maintenance cost • stable and useful product • satisfied customers • better chances for continuing releases • build corporate culture & identity • build know-how and expertise • better chances for SW and design reuse

  7. SW Quality Management • SRS must include quality specification • be precise & clear (“measurable”) • make clear what your priorities are • check at each milestone in your life-cycle • use reviews & tests • identify risks • decide on how to proceed

  8. Principle: Separation of Concerns development metrics quality metrics Project Management monitoring software & fixes SW Development Quality Assurance test & review reports

  9. The SOFTWARE QUALITYCHARACTERISTICSTREE

  10. SW Quality Characteristics - II[B. Boehm, A. Davis] • portability • reliability • efficiency • human engineering • maintainability • testability, understandability, modifiability

  11. Portability • The degree to which software running in one environment can easily be converted to run in another environment. • Specification & test: • very hard to quantify (time?) • specify indirectly by • limiting languages, compilers, tools, ... • insisting on good development methodology • (cohesion & coupling) • isolating environment dependent modules in your design • To whom and when is it important?

  12. Reliability • The ability of software to behave consistently in a user-acceptable manner (when running in stable and pre-planned environment). • Specification & test: • measure as a percentage: 99% reliability • of operational (time), functions, accuracy/integrity,... ? • MTTF (mean time to failure): • Does software degrade? • counting bugs (ratio): • a “post mortem”? • Bring “reliability” into perspective (cost).

  13. Efficiency • The level at which software uses and supports (scarce) resources. • Specification & test: • resource = capacity: specify in numbers. • resource = time: specify what time-frame you measure • stimulus - response • stimulus - stimulus ... • make sure your system is • device efficient and accountable • give rules for degradation of service • First design, then optimize.

  14. Human Engineering • User-friendliness and consistency in external behavior. The degree to which software reflects and integrates customer needs and culture. • Specification & test: • very hard to quantify • establish an authorized test/benchmark team • specify indirectly: • establish criteria for the user interface by providing rules for external system behavior, execution sequences, robustness, adaptability, ... • limit interactive styles, tools, languages, ...

  15. Maintainability • Based on three major qualities: • testability • understandability • modifiability • Specification & test: • specify indirectly by • insisting on good development methodology: evaluate your design with cohesion & coupling • provide for structured implementation environment: limit languages, compilers, tools, ... • A shared interest between customer and supplier.

  16. End of Section 4c coming up: forms of quality management

More Related