Software Quality Requirements and Factors-3

download Software Quality Requirements and Factors-3

of 29

Transcript of Software Quality Requirements and Factors-3

  • 7/31/2019 Software Quality Requirements and Factors-3

    1/29

    1

    Software Quality

    Factors

  • 7/31/2019 Software Quality Requirements and Factors-3

    2/29

    2

    The need for a comprehensiveThe need for a comprehensivesoftware quality requirementssoftware quality requirements

    There are some characteristic common :All the software projects satisfactory fulfilled the basicrequirements for correct calculations

    All the software projects suffered from poor performancein important areas such as maintenance, reliability,software reuse, or training.

    The cause for the poor performance of the developedsoftware projects in these areas was the lack of predefinedrequirements to cover these important aspects of thesoftwares functionally .

  • 7/31/2019 Software Quality Requirements and Factors-3

    3/29

    3

    The need for a comprehensiveThe need for a comprehensivedefinition of requirementsdefinition of requirements (2)(2)

    There is a need for a comprehensivedefinition of requirements that will cover allattributes of software and aspects of theusability aspects, reusability aspects,maintainability aspects, and so forth inorder to assure the full satisfaction of theusers.

  • 7/31/2019 Software Quality Requirements and Factors-3

    4/29

    4

    Classification of software requirementsClassification of software requirementsinto software quality factorsinto software quality factors

    The classic model of software qualityfactors suggest by :

    McCall (consist of 11 factors, 1977)Deutsch and Willis (consist of 12 to 15 factors,1988)Evans and Marciniak (1987)

  • 7/31/2019 Software Quality Requirements and Factors-3

    5/29

    5

    McCalls Factor ModelMcCalls Factor Model

    Classifies all software requirement into 11software quality factors, grouped into threecategories :

    1. Product operation factors : Correctness,Reliability, Efficiency, Integrity, Usability.2. Product revision factors : Maintainability,

    Flexibility, Testability.3. Product transition factors : Portability,

    Reusability, Interoperability.

  • 7/31/2019 Software Quality Requirements and Factors-3

    6/29

    6

    Product OperationProduct OperationFactorsFactors

  • 7/31/2019 Software Quality Requirements and Factors-3

    7/29

    7

    Product Operation : CorrectnessProduct Operation : Correctness

    Correctness requirements are defined in a list of thesoftware systems required outputs.

    Output specifications are usually multidimensional;some common dimensions include :

    o The output missiono The required accuracy of outputo The completeness of the output information

    o The up-to-dateness of the informationo The availability of the informationo The standards for coding and documenting the software

    system.

  • 7/31/2019 Software Quality Requirements and Factors-3

    8/29

    8

    Product OperationProduct Operation -- ReliabilityReliability

    Reliability requirements deal with failures to provide service.Determine the maximum allowed software system failuresrate, and can refer to the entire system or to one or more of its separate functions.

    Examples :1. The failures frequency of a heart-monitoring unit that will operate in a

    hospitals intensive care ward is required to be less than one in 20years. Its heart attack detection function is required to have a failurerate of less than one per million cases.

    2. One requirement of the new software system to be installed in themain branch of Independence Bank, which operates 120 branches, isthat it will not fail, on average, more than 10 minutes per monthduring the banks office hours.

  • 7/31/2019 Software Quality Requirements and Factors-3

    9/29

    9

    Product OperationProduct Operation -- EfficiencyEfficiency

    Efficiency requirements deal with the hardwareresources needed to perform all the functions of thesoftware system in conformance to all other requirements.

    Examples :1. A chain stores is considering two alternative bids for a

    software system.

  • 7/31/2019 Software Quality Requirements and Factors-3

    10/29

    10

    Product OperationProduct Operation -- IntegrityIntegrity

    Integrity requirements deal with the softwaresystem security, that is requirements to presentaccess to an authorize person,[to distinguish between the majority of personnel allowed to see theinformation (read permit) and a limited group who will be allowed toadd and change data (write permit), and so forth.]

    Example :GIS SW allowed citizens access to its GIS through Internet only for viewingand copying data but not to insert changes.

  • 7/31/2019 Software Quality Requirements and Factors-3

    11/29

    11

    Product OperationProduct Operation -- UsabilityUsabilityUsability requirements deal with the scope of staff resources

    needed to train a new employee and to operate the softwaresystem .

    Example :The software usability requirements document for the newhelp desk system initiated by a home appliance servicecompany lists the following specifications :

    a. A staff member should be able to handle at least 60 servicecalls a day

    b. Training a new employee will take no more than two days,immediately at the end of which the trainee will be able tohandle 45 service calls a day.

  • 7/31/2019 Software Quality Requirements and Factors-3

    12/29

    12

    Product RevisionProduct RevisionFactorsFactors

  • 7/31/2019 Software Quality Requirements and Factors-3

    13/29

    13

    Product Revision software QualityProduct Revision software QualityFactorsFactors

    According to the McCall model of software qualityfactors, three quality factors comprise the productrevision category. These factors deal with those

    requirements that affect the complete range of software maintenance activities :o Corrective maintenanceo Adaptive maintenanceo Perfective maintenance

  • 7/31/2019 Software Quality Requirements and Factors-3

    14/29

    14

    Product RevisionProduct Revision -- MaintabilityMaintabilityMaintainability requirements determine the efforts that will

    be needed by users and maintenance personnel to identify thereasons for software failures, to correct the failures, and toverify the success of the corrections.

    This factors requirements determine refer to the modular structure of software, the internal program documentation,and the programmers manual, among other items.

    Example typical maintainability requirements :a. The size of a software module will not exceed 30 statements.b. The programming will adhere to the company coding standards

    and guidelines.

  • 7/31/2019 Software Quality Requirements and Factors-3

    15/29

    15

    Product RevisionProduct Revision -- FlexibilityFlexibility

    The capabilities and efforts required to supportadaptive maintenance activities are covered by theflexibility requirements.

    These include the resources (in man-days) required toadapt a software package to a variety of customers of the same trade, of various extents of activities, of different ranges of products, and so on.

    This factors requirements also support perfectivemaintenance activities.

  • 7/31/2019 Software Quality Requirements and Factors-3

    16/29

    16

    Product RevisionProduct Revision -- TestabilityTestability

    Testability requirements deal with the testingof an information system as well as with itsoperation.

    Testability requirements for the ease of testingare related to special features in the programs

    that help the tester, for instance by providing predefined intermediate results and log files.

  • 7/31/2019 Software Quality Requirements and Factors-3

    17/29

    17

    Product TransitionProduct Transition

    FactorsFactors

  • 7/31/2019 Software Quality Requirements and Factors-3

    18/29

    18

    Product TransitionProduct Transition -- PortabilityPortability

    Portability requirements tend to theadaptation of software system to other environenments consisting of differenthardware, different operating systems, and soforth.

  • 7/31/2019 Software Quality Requirements and Factors-3

    19/29

    19

    Product TransitionProduct Transition -- ReusabilityReusability

    Reusability requirements deal with theuse of software modules originallydesigned for one project currently beingdeveloped.

  • 7/31/2019 Software Quality Requirements and Factors-3

    20/29

    20

    Product TransitionProduct Transition --InteroperabilityInteroperability

    Interoperability requirements focus oncreating interfaces with other software systems

    or with other equipment firmware.Interoperability requirements can specify thename of the software or firmware for whichinterface is required.

  • 7/31/2019 Software Quality Requirements and Factors-3

    21/29

    21

    Alternative Models of SoftwareAlternative Models of SoftwareQuality FactorsQuality Factors

    Formal comparison of the alternativemodels (Evans M 1987, Deutsch & Willis

    1988)Comparison of the factors models-contentanalysis (verifiability, expandability, safety,

    manageability, survivability)Structure of the alternative factor models

  • 7/31/2019 Software Quality Requirements and Factors-3

    22/29

    22

    Who is interested in the definitionWho is interested in the definitionof quality requirements?of quality requirements?

    Some quality factors not included in the typicalclients requirements document may, in many cases,interest the developer.The following lists of quality factors usually interestthe developer whereas they may raise very littleinterest on the part of the client :

    o Portability

    o Reusabilityo Verifiability

  • 7/31/2019 Software Quality Requirements and Factors-3

    23/29

    23

    Requirements DocumentsRequirements Documents

    A project will be carried out to according totwo requirements documents :

    The clients requirements documentThe developers additional requirementsdocument

  • 7/31/2019 Software Quality Requirements and Factors-3

    24/29

    24

    Software Compliance withSoftware Compliance withQuality FactorsQuality Factors

    The softwares product compliance to therequirements belonging to the various qualityfactors is measured by software quality metrics,measures that quantify the degree of compliance.In order to allow for valid measurements of compliance, sub-factors have been defined for

    those quality factors that represent a wide rangeof attributes and aspects of software use.

  • 7/31/2019 Software Quality Requirements and Factors-3

    25/29

    25

    Factors and sub-factors

  • 7/31/2019 Software Quality Requirements and Factors-3

    26/29

    26

    Factors and sub-factors (cont.)

  • 7/31/2019 Software Quality Requirements and Factors-3

    27/29

    27

    Factors and sub-factors (cont.)

  • 7/31/2019 Software Quality Requirements and Factors-3

    28/29

    28

    Summary

    1. The need for a comprehensive requirementsdocuments and their contents.2. The structure (categories and factors) of

    McCalls classic factor model.3. The additional factors suggested by

    alternatives factor models.

    4. Those interested in defining software qualityrequirements.

  • 7/31/2019 Software Quality Requirements and Factors-3

    29/29

    29

    Questions ?

    Thank you