Software Requirement Engineering through Use case
Mrs Mirza Zainab, Lecturer in IT Dept, M.H.S.S. COE, Byculla, India Mirza_zainab@yahoo.com
By now, it is well known that shortcomings in requirements definition and management lead to excessive rework on software projects and products that fail to achieve full customer satisfaction. In systems engineering and software engineering, requirements analysis encompasses all of the tasks that go into the investigation, scoping and definition of a new or altered system. Requirements analysis is an important part of the system design process, whereby requirements engineers and business analysts, along with systems engineers or software developers, identify the needs or requirements of a client. Once the client's requirements have been identified, the system designers are then in a position to design a solution. Software requirements engineering is a communication-intensive activity, at a minimum involving analysts, developers, business stakeholders and end users. The paper describes how use cases can be used effectively to model requirement of system and how it can be used as a means of communication between analyst and end users.
Software requirement engineering, use cases, actor, include, extend
Software development involves perhaps 50 percent computing and 50 percent communication. Unfortunately, most teams are better at the computing part, and requirements are almost entirely about communication. There are many links in the requirements communication chain, like end user, sales representative, marketing, product manager, developer, and tester. A breakdown in any of these links leads to significant problems. The inevitable outcome of requirements errors is time consuming and costly rework. Analysts report that rework can consume 30 to 40 percent of the total effort expended on a software project. Multiple studies have indicated that roughly 50 percent of the defects identified on software projects can be traced back to errors in the requirements. One analysis of the potential return on investment from better requirements suggests that requirements errors can consume between 70 and 85 percent of all project rework costs .The first step in finding an appropriate solution to given problem is to understand the problem and its domain ie detailed problem and domain analysis .Without analysis there is a real danger of designing and implanting system that do not meet the user’s needs, simply because the users needs were not adequately identified and defined
Figure 1. Relative cost to correct a requirement defect depending on when it is discovered
Requirements analysis can be a long and arduous process during which many delicate psychological skills are involved. New systems change the environment and relationships between people, so it is important to identify all the stakeholders, take into account all their needs and ensure they understand the implications of the new systems. Analysts can employ several techniques to elicit the requirements from the customer. Analysis requires a great deal of interaction with the people who will be affected by the system, including the actual users and anyone else on whom its creation will have an impact For extracting information about the system , analyst can use four tools that is interview, Questionnaire ,Observation and examination of existing system documents [2 ].
USE CASES AND ACTORS
As we think further about the way in which the system needs to do its job for the user, we might find it beneficial to employ the Use case technique for further describing system behavior. This technique has been well developed in a number of books [Jacobson 1992] and is also an integral technique in the industry-standard Unified Modeling Language (UML) [Booch 1999]. Technically, a use case describes a sequence of actions, performed by a system that yields a result of value to the user.
Please join StudyMode to read the full document