UMSTMaster of Science in Information SystemsBatch(03)Information System Quality ManagementDocument subtitlePrepared by:Israa Abdulla Moh AbdullaMIS03-2017-003UNIVERSITYiUMSTUNIVERSITY UNIVERSITY UNIVERSITYMaster of Science in Information Systems Master of Science in Information Systems Master of Science in Information Systems Master of Science in Information Systems Master of Science in Information Systems Master of Science in Information Systems Master of Science in Information Systems Master of Science in Information SystemsBatch(03) Batch(03) Batch(03)Information System Quality Management Information System Quality Management Information System Quality Management Information System Quality Management Information System Quality Management Information System Quality Management Information System Quality Management Information System Quality Management Information System Quality Management Information System Quality Management Information System Quality ManagementPrepared by: Prepared by: Prepared by: Prepared by: Prepared by:Prepared by:Israa Abdulla Moh Israa Abdulla Moh Israa Abdulla Moh Israa AbdullaMohiiMauritius – Software Development DepartmentSoftware Quality Management PlanVersion 0.4Project ID: #018-119JUN 2018iiiApproval SignatureQuality plan AcceptanceThe undersigned acknowledge that they have reviewed the Software Development Department Quality Management plan. This signatory also have an understanding of the purpose and content of this document and agree that the quality management plan is sufficient to allow the project to move forward.
The Project Manager is hereby authorized to apply organizational resource to project activities.Name/department TitleRoleSignatureDateAbdulla QurashiProject manager11/1/2018Suad AlyasQualityQuality manager11/1/2018ivMohamed AbdullaQualityQuality Assurance Consultant10/1/2018Asma NaserSoftware DevelopmentAnalyst7/1/2018Elan FaisalSoftware DevelopmentDeveloper7/1/2018Hassan EsiaaSoftware DevelopmentDeveloper5/1/2018vTABLE OF CONTENTS1 INTRODUCTION ..
……
….
…..
……
….
…
……
…
…
……
…..
…
……..
…..
…….
……..
…….
……..
12 PURPOSE AND SCOPE …..
…..
…..
…
….
…….
……..
……..
…….
……..
……
….
…..
……..
…. 13 SQM DESCRIPTION ..
…
……
….
…
…
…..
…….
….
…
….
……
…
…….
….
…….
……..
……..
…… 23.
1 Roles and Responsibilities…………………….
..…………………………….23.2 Required Skills ..
…..
…..
……
…
……
……..
……..
…….
……..
……..
…..
….
….
…….
.. 34 STANDARD ..
……
…
……
….
…
…..
…
…
…….
….
…….
…..
…….
….
……………………………….. 45 SOFTWARE DEVELOPMENT METHODOLOGY …………………………………………. 46 PROJECT QUALITY MANAGEMENT ……. ERROR! BOOKMARK NOT DEFINED.6.1 Quality Planning ………………………………………………………………………….. 56.2 Quality Assurance ……………………………… Error! Bookmark not defined.6.3 Quality Control ………………………………….. Error! Bookmark not defined.6.3.1 QUALITY CONTROL ACTIVITY ……………………………………………… 137 VERIFICATION AND VALIDATION OF REQUIREMENTS ………………………….. 147.1 Verification ……………………………………………………………………………….. 157.2 Validation …………………………………………………………………………………. 16vivii11-IntroductionThe purpose of the Software Quality Management Plan is to addressed outline of some activities using in software development department at Mauritiuscompany ,such as define roles and responsibilities of the members of the software development department, Provide practice of Project Quality Management that breaks down into three process groups: Quality Planning (QP), Quality Assurance (QA) and Quality Control (QC), provide the standards used in carrying out Quality Assurance and Quality Control , provide methodology to support Software Quality Management activities, and provide guidelines to perform the Quality Assurance.2-Purpose and ScopeThis SQMP provides a foundation for managing the processes and activities throughout the full lifecycle, from project planning to delivery, identifies roles and responsibilities, defines standers and methodology and how they will be conducted, and define Project Quality Management approach to ensure that the quality objectives are achieved.23-SQM Description3.1- Roles and ResponsibilitiesThis section outlines the Software Department Roles and Responsibilities for those involved in the QM process.RoleResponsibilityProject ManagerDevelop a project plan, Manage deliverables according to the plan, Recruit project staff ,Lead and manage the project team, Determine the methodology used on the project, Establish a project schedule and determine each phase, Assign tasks to project team members, Provide regular updates to upper management.Analystensuring that the requirements of the business clients are captured and documented correctly before a solution is developed and implemented.Developerunderstand the problem that the software is supposed to solve, design a solution, and develop and test it before releasing it to customers.33.2- Required SkillsThe Quality Assurance consultant must be able to review the Project Plan and lifecycle work products to determine industry standards, as modified and documented in the Project Plan, and provide expert assistance on project management practices and software development process related matters.This position will work independently from the development team to ensure objective audits of the work products as they are being developed and objective reviews of project management processes and stage exits.Quality Managerensure that the deliverables of the project are meets both external and internal requirements and customer expectations.Quality Assurance ConsultantAudits and approves project deliverables from QA perspective. Reviews plans and deliverables for compliance with applicable standards. Provides guidance and assistance on process matters.44-StandardIn this Software Quality Management Plan will following the ISO ISO/IEC 25010 stander to meet the quality in Software and fulfil customer requirements and will use the Characteristics such us Functional Suitability, Performance Efficiency, Compatibility, Usability, Reliability, Security, Maintainability and portability.5-Software Development MethodologyIn this SQMP will use the Waterfall Development Model (the reason of use waterfall because i presented it in class) A phase in waterfall starts only when the previous has completed so be carefully when gathering the requirement, before completing each stage, they should perform quality assurance (verification and validation). It is having 5 phases (Requirement Definition, Design, implementation, integration and unit test and Operational and maintenance).56-Project Quality ManagementAt the highest of levels Quality Management involves planning, doing, checking, and acting to improve project quality standards. PMI PMBOK breaks the practice of Quality Management into three process groups: Quality Planning (QP), Quality Assurance (QA) and Quality Control (QC). The following sections define how this project will apply each of these practice groups to define, monitor and control quality standards.6.1 Quality PlanningQuality planning works at a more granular, project-based level, defining the quality attributes to be associated with the output of the project and how those attributes should be assessed. Additionally, any existing organizational standards may also be assigned to the project at this phase. Attributes such as “accessibility,” and “modularity” may be assigned to the software development project. While this may be a more formalized, integral process, those using a more agile method of quality management may place less emphasis on strict planning structures.66.2 Quality AssuranceMonitoring the software engineering processes and methods used to ensure quality. The methods by which this is accomplished are many and varied, and may include ensuring conformance to standards, such as ISO ISO/IEC 25010SQA encompasses the entire software development process, which includes processes such as requirements definition, software design, coding, integration and testing and operation and maintenance6.3 Quality Controlset of procedures used by organizations to ensure that a software product will meet its quality goals at the best value to the customer, and to continually improve the organization’s ability to produce software products in the future.7PhaseActivityQuality AssuranceRequirementClearly and carefully defined requirement:No conflict, not overlap, no changeability, should be SMARTSuitability:-Completeness(Requirement complete and meet user objective)-Correctness(requirement correct and no conflict)-Appropriateness(facilitate the accomplishment of requirement and objectives and consistence.)Design-Ensure the models and diagrams explain the whole processes.-Prioritize the processes and how its flow.-DB constraints and privileges.-Ensure DB normalize and clear table name.-Ensure the component fits into the system structure.Compatibility:-Co-existence(ensure the system low coupling and high cohesion and make system to sharing a resources with other system, without detrimental impact on any other system.)Usability:-Appropriateness recognisability (Content clarity no ambiguous or conflicts, and easy to use to achieve specified goals)8-Ensure the component design is complete.-Learnability(less time for training and easy of user to learn how to use the system with effectiveness, efficiency in emergency situations.)-Operability(make the system easy of user to Operate and control)-Accessibility(easy of user to access and capabilities to achieve a specified goal in a specified context of use)-User interface aesthetics(make friendly graphical user interface and easy to interact between system)-User error protection(show pop-up windows or massage alert for user)ImplementationSoftware Coding(-During software coding, classes are codedPerformance efficiency:-Time behaviour9and a clean compilation produced.-Coding standards and naming conventions Project Instructors are followed during this process. A different coding standard is provided for each language used- A set of step-by-step unit test procedures is developed to verify that the requirements are satisfied)Peer Review(-Peer reviews are conducted to ensure that the code implements the allocated requirements and complies with project standards.-In addition to the source code and design, the unit(use efficiency algorithm and the speed of run time execution for system)-Resources usability(reduce resource consumption and completion time as much possible with minimum risk)-Capacity(use optimal memory and non-volatile storage)Reliability:-Maturity(the ability to avoid failures resulting from defects in the system)-fault tolerance(the ability of system to keep an established performance when dealing with failures)-Availability(display the service internal and external and compose from others existing ones)10test cases and procedures are reviewed.)Unit Testing(-After the code is peer reviewed and the defects from the peer review resolved, the component must be tested to ensure that its allocated requirements are satisfied.-conducts a unit test walkthrough to verify the functionality of the unit.-Any discrepancies in the code are documented. Only code with non-critical non-conformance reports in the newly introduced functionality are allowed to pass the unit test.)11Integration and Test-Integration the parts of system.-Component test by focus on showing that the component interface behaves according to its specification.-System testing system Should Be Tested as a whole, and testing component interactions.Performance efficiency, Reliability, usability andSecurity:-Confidentiality(system allow access to data only a person have authority)- Integrity (system prevents unauthorized access to, or modification of, computer programs or data.)-Authenticity (identify the resource can be proved to be the one claimed)12Operational and MaintenanceEstablishing Operational and Maintenance policies and procedures; facilitating information sharing and problem resolution; managing the sustaining engineering budget; coordinating patches and maintenance releases to already fielded baselines; communication that must occur between Development and Operational and Maintenance to provide the information required to update the M procedures.Portability:-Installability(installed the system in various hardware platform and easy configurations)- Adaptability(adapt the different using its own functionality including the scalability of its internal capacity)- Replaceability(used specific system instead of another system for the same purpose)Maintainability:- Modifiability(system accepted the change)- Testability(check the system work correctly without error after the change)-Modularity(Extension configuration)136.3.1 Quality Control Activity? Check that assumptions and criteria for the selection of data and the different factors related to data are documented.? Check for transcription errors in data input and reference.? Check the integrity of database files.? Check for consistency in data.? Check that the movement of inventory data among processing steps is correct.? Check for uncertainties in data, database files etc.? Undertake review of internal documentation.? Check methodological and data changes resulting in recalculations.? Undertake completeness checks.? Compare Results to previous Results147- Verification and Validation of RequirementsBefore completing each stage, they should perform quality assurance (verification and validation).verification: The process of determining whether or not the products of a given stage of the software development cycle fulfill the requirements established during the previous stage.validation: The process of evaluating software at the end of the software development process (acceptance testing activity in the Testing stage) to ensure compliance with software requirements.157.1 VerificationThe following activities will be performed as part of requirements verification:• Produce a traceability of tracing all requirements back to system objectives in the Software Development Department Objectives Statement and forward to Software Design elements.• Evaluate requirements and relationships for correctness, consistency, completeness, accuracy, readability and testability.• Assess how well the satisfies the Software Development Department system objectives.• Assess the criticality of requirements to identify key performance or critical areas of software164.2 ValidationThe following activities will be performed as part of requirements validation:• Plan acceptance testing, including criteria for:• compliance with all requirements• adequacy of user documentation• performance at boundaries and under stress conditions.• Plan documentation of test tasks and results.• Execute the Acceptance Test Plan.• Document acceptance test results.