Once the system development is complete we must test the product to see whether it is free of bugs or not. High quality products must meet the user’s needs and expectations. The product should attain with minimal or no defects. The focus must be on improving the products before delivery rather than correcting them after delivery. The main goal of building high quality software is the user satisfaction. To achieve high quality in software we must be able to answer the following questions: How we determine when the system is ready for delivery?
Is it now an operational system that satisfies the users’ needs? Is it correct and operating as we thought it should? Does it pass an evaluation process? There are two basic approaches to system testing i.e. we can test a system according to how it has been built or alternatively as what it should do. System evaluation is done in terms of four quality measures shown in the following figure: 1. Correspondence: this measures how well the delivered system matches the needs of the operational environment, as described in the original requirements. 2. Validation: this is the task of predicting the correspondence. True correspondence cannot be determined until the system is in place. 3. Correctness: this measure the consistency of the product requirement with respect to the design specification. 4. Verification: this is the exercise of determining the correctness. For any given specification of a product, it should be possible to determine if the system satisfies the requirements of the specification. The verification and validation answers the following questions: Verification: Am I building the right product? Validation: Am I building the product right? Validation begins as the project started, but the verification can begin only after the specification has been accepted. Verification and validation are independent of each other. Object-Oriented System Development: A Use-Case Driven Approach The object-oriented system development cycles (SDLC) consists of three main macro processes namely object -oriented analysis, object-oriented design, and object- oriented implementation as shown in the following figure:
The object-oriented system development approach corresponding to analysis (transformation 1), design (transformation 2) and implementation (transformation 3) The use-case model can be used in most of the activities of software development. By following the life cycle model of Jacobson, Ericsson and Jacobson , we can produce the designs that are traceable across the requirement analysis, design, implementation and testing as shown in the figure below: The main advantage is that all the design decisions can be traced back directly to user requirements. Usage scenarios can become test scenarios.
- Spring '19
- this chao
- Object-Oriented Programming