Presentation is loading. Please wait.

Presentation is loading. Please wait.

Prepared by: Hussein Alhashimi.  This course introduces fundamental concepts related to Quality Assurance and Measurements and Metrics in the software.

Similar presentations


Presentation on theme: "Prepared by: Hussein Alhashimi.  This course introduces fundamental concepts related to Quality Assurance and Measurements and Metrics in the software."— Presentation transcript:

1 Prepared by: Hussein Alhashimi

2  This course introduces fundamental concepts related to Quality Assurance and Measurements and Metrics in the software industry: Measurements of product, process and resource attributes – Planning a measurements program - Goal/Question/Metric - Collection and analysis of software empirical measurements - Building software metrics - Quality concepts – Software quality assurance - Software quality management - Quality planning and control – Quality manual – Product and process standards - Internal and external software quality attributes - Software reviews, walkthrough and inspection – Statistical software quality assurance – Software configuration management - Software reliability – International Software quality models, e.g. ISO 9000 Quality standards and ISO 9000-3, etc.. – Software process improvement – The Capability Maturity Model (CMM), balanced scorecards. Ethical responsibility to produce high-quality software is also discussed. Students participate in a group project on Software quality assurance.

3 Topic Introduction and definitions Components of software quality assurance Software quality planning and control Software quality metrics Costs of Software Quality International software quality models Capability maturity model (CMM, CMMI) Personal software process and team software process Concluding remarks, review, and evaluation

4  Software Requirements Specification  Software Design  Implementation (Coding & Module Testing)  Integration & Testing Each stage will require some sort of Software Quality Assurance (SQA).

5  IEEE Glossary: Degree to which a system, component, or process meets (1) specified requirements, and (2) customer or user needs or expectations  ISO: the totality of features and characteristics of a product or service that bear on its ability to satisfy specified or implied needs

6 ◦ Functionality ◦ Efficiency ◦ Flexibility ◦ Integrity ◦ Interoperability ◦ Maintainability ◦ Portability ◦ Reliability ◦ Reusability ◦ Testability ◦ Usability

7 In respective stages of software development The degree to which a system, component, or process meets specified requirements. The degree to which a system, component or process meets customer or user needs or expectations.

8  Software quality assurance (SQA) is a process that ensures that developed software meets and complies with defined or standardized quality specifications. SQA is an ongoing process within the software development life cycle (SDLC) that routinely checks the developed software to ensure it meets desired quality measures.

9 SQA encompasses the entire software development process software requirements software design coding source code control code reviews change management configuration management release management

10  Decreased number of defects and errors in software  Less rework as a result of less software defects  Reduced development and maintenance cost  Increased software reliability  Increased customer satisfaction  Happier software practitioners

11  The software requirement document regarding a software system for managing a hospital laboratory (Super Lab) consists of chapters of requirements. For each section, fill in the name of the factor that best fits the requirement. the requirement (use McCall’s factor model and the attached reading list to choose only one factor per requirements section).

12 No Section taken from the software requirement document The requirement factors 1 The probability that the “Super-lab” software system will be found in a state of failure during peak hours (9 am to 4 pm) is required to be below 0.5%. 2 The “Super-Lab” software system will enable direct transfer of laboratory results to those files of hospitalized patients managed by the “MD-File” software package. 3The “Super-Lab” software system will include a module that prepares a detailed report of the patient’s laboratory test results during his current hospitalization. (This report will serve as an Appendix to the family physician’s file). The time required to obtain this printed report will be less than 30 seconds; the level of accuracy and completeness will be at least 99%. Reliability Interoperability Correctness

13 No Section taken from the software requirement document The requirement factors 4 The “Super-Lab” software to be developed for hospital laboratory use may be adapted later for private laboratory use. 5 The training of a laboratory technician, requiring no more than 3 days, will enable the technician to reach level C of “Super-Lab” software usage. This means he or she will be able to manage reception of 20patients per Hour. 6The “Super-Lab” software system will record a detailed user‘s Log. In addition, the system will report attempts by unauthorized persons to obtain medical information from the laboratory test results data base. The report will include the following informations: The network identification of the applying terminal, the system code of the employee who requested that information, the day and time of attempt and the type of attempt. Flexibility Usability Integrity

14 No Section taken from the software requirement document The requirement factors 7 The “Super-Lab” sub-system that deals with billing patients for their tests may be eventually used as a subsystem in the “physiotherapy center” software package. 8 The different system components should be kept so simple as possible, and very well documented. 9 The software system should be able to serve 12 workstations and 8 automatic testing machines with a single model AS20 server and a cs25 communication server that will be able to serve 25 communication lines. This hardware system should conform to all availability requirements as listed in appendix C Reusability Correctness Efficiency

15 No Section taken from the software requirement document The requirement factors 10 The “Super-Lab” software package developed for the Linux Operating System should be compatible for applications in a window NT environment. 11 The system software documentation should be clear, self descriptive, and have a high degree of consistency. Portability Usability

16 The three factor categories belonging to McCall’s factor model are:  Product operations (basic operational characteristics).  Product revision (ability to change).  Product transition (adaptability to new environments).

17  There are 11 factors grouped into three categories as follows:  Product operations  Correctness الصواب the functionality matches the specification.  Reliability الموثوقية the extent to which the system fails.  Efficiency الكفاءة, system resource (including cpu, disk, memory, network) usage.  Integrity النزاهة, protection from unauthorized access.  Usability سهولة الاستخدام, ease of use.

18  Product revision  Maintainability الصيانة, the ability to find and fix a defect.  Flexibility المرونة قابلية, the ability to make changes required as dictated by the business.  Testability الاختبار قابلية, the ability to Validate the software requirements.

19  Product transition  Portability قابلية التشغيل في بيئة مختلفة the ability to transfer the software from one environment to another.  Reusability قابلية إعادة استخدام the ease of using existing software components in a different context.  Interoperability قابلية التشغيل و التفاعل مع برامج اخرى the extent, or ease, to which software components work together.

20


Download ppt "Prepared by: Hussein Alhashimi.  This course introduces fundamental concepts related to Quality Assurance and Measurements and Metrics in the software."

Similar presentations


Ads by Google