System Analysis and Design System Implementation - Mr. Ahmad Al-Ghoul learning Objectives Explain the importance of software quality assurance and software engineering Describe the application development process Avicenna System Analysis and Design System Implemantation 2 Software Quality Assurance In today’s competitive business environment, companies are intensely concerned with the quality of their products and services Rigorous testing catches errors in the implementation stage Quality assurance: A process or procedure for minimizing errors and ensuring quality in products. Poor quality can result from inaccurate requirements, design problems, coding errors, faulty documentation, and ineffective testing. Avicenna System Analysis and Design System Implemantation 3 Software Quality Assurance Software Engineering Avicenna Software Engineering Institute (SEI) : The SEI is a leader in software engineering and provides quality standards and suggested procedures for software developers and systems analysts. SEI's primary objective is to find better, faster, and less expensive methods of software development. Capability Maturity Model (CMM): A model developed by SEI The purpose of the model, was to improve software quality, reduce development costs and time. Capability Maturity Model Integration (CMMI) : that integrates software and systems development into the process improvement framework. System Analysis and Design System Implemantation 4 Software Quality Assurance Software Engineering Avicenna Process improvement: The framework used to integrate software and systems development by a new SEI model, Capability Maturity Model Integration (CMMI)®. CMMI tracks an organization's processes, using five maturity layers, from Level 1performed (process unpredictable, poorly controlled and reactive) Level 2 managed (process characterized for projects and is often reactive) Level 3 defined ( process characterized for the organization and is proactive) Level 4 quantitatively managed (process managed and controlled) Level 5 optimizing ( focus on process improvement) . System Analysis and Design System Implemantation 5 Software Quality Assurance International Organization for Standardization (ISO) Many firms seek assurance that software systems will meet rigid quality standards In 1991, ISO established a set of guidelines called ISO 9000-3 ISO requires a specific development plan, which outlines a step-bystep process for transforming user requirements into a finished product ISO requires that a software supplier document all testing and maintain records of test results If problems are found, they must be resolved, and any modules affected must be tested. Software and hardware specifications of all test equipment must be documented and included in the test records Avicenna System Analysis and Design System Implemantation 6 Overview of Application Development Application development Application development is the process of constructing the programs and code modules that are the building blocks of an information system. Application development is handled by an application development group within a traditional IT department that is composed of systems analysts and programmers who handle information system design, development, and implementation. Objective is to translate the logical design into program and code modules that will function properly Creation of the System Design Avicenna The tasks involved in system design produced an overall design and a plan for physical implementation System Analysis and Design System Implemantation 7 Overview of Application Development Application Development Steps Module: A module consists of related program code organized into small units that are easy to understand and maintain. A complex program could have hundreds or even thousands of modules. Start by reviewing documentation from prior SDLC phases and creating a set of program designs In addition to the system design specification, you will refer to DFDs, process descriptions, ERDs, and anything else that describes the functions that program or module must perform Avicenna System Analysis and Design System Implemantation 8 Overview of Application Development Application Development Steps Screen layout, report layouts, source documents, and data dictionary entries, must be reviewed regardless of whether you used a structured or object-oriented analysis method If you used an object-oriented approach, you also will review your object model, including use case diagrams, class diagrams, objectrelationship diagrams, sequence diagram, and state transition diagrams After the design is created, coding can begin The module then is tested as a unit, system is tested, and all necessary documentation is prepared and checked Avicenna System Analysis and Design System Implemantation 9 Overview of Application Development Project Management Project might have hundreds or even thousands of modules so they need good management Set realistic schedules, meet project deadlines, control costs, and maintain quality Project manager should use project management tools and techniques to monitor and control the development effort Avicenna System Analysis and Design System Implemantation 10 Sequence Summary Quality assurance is essential during the implementation phase Many companies utilize software engineering concepts and quality standards established by (ISO) During development, large systems can be broken down into subsystems and modules that represent a particular transaction or process described in a DFD or object model When structured analysis methods are used, programmers and systems analysts create structure chart, program flowcharts, and pseudocode to represent program modules logically If an object-oriented approach was used, the development team will review the object model, including use case diagrams, class diagrams, object-relationship diagrams, sequence diagrams, and state-transition diagram Avicenna System Analysis and Design System Implemantation 11 Sequence Summary In this Sequence we have Avicenna Defined the term quality assurance Focused on Software Engineering Institute (SEI) and it’s models Defined and explained application development Described the application development steps Explained the project management role System Analysis and Design System Implemantation 12 Reference [1] System Analysis and Design, Sixth Edition Authors: Gary B. Shelly, Thomas J. Cashman and Harry J. Rosenblatt Publisher: SHELLY CASHMAN SEWIES. Avicenna System Analysis and Design System Implemantation 13