This work attempts to respond the need of a systematic and rigorous process of developing requirements for software systems seeking to define and validate an orderly requirements development process that can be performed systematically and with easily predictable outputs.
Título original
Methodology for Information Systems Requirements Development Teams
This work attempts to respond the need of a systematic and rigorous process of developing requirements for software systems seeking to define and validate an orderly requirements development process that can be performed systematically and with easily predictable outputs.
Direitos autorais:
Attribution Non-Commercial (BY-NC)
Formatos disponíveis
Baixe no formato PDF, TXT ou leia online no Scribd
This work attempts to respond the need of a systematic and rigorous process of developing requirements for software systems seeking to define and validate an orderly requirements development process that can be performed systematically and with easily predictable outputs.
Direitos autorais:
Attribution Non-Commercial (BY-NC)
Formatos disponíveis
Baixe no formato PDF, TXT ou leia online no Scribd
Pedro Rodrigo Caetano Strecht Ribeiro Dissertation developed under supervising of Prof. João Pascoal Faria in the Faculty of Engineering of the University of Porto
1. Motivation requirements early in the software development cycle
and requirements management, to monitor their The mission of the Project of Information Systems changes and relevance of inclusion in the system. (PSI) of FEUP is the development and maintenance This work fits in the first of these sub-processes. of information systems. With a policy of continuous improvement, it aims to define a systematic and According to the Kotonya-Sommerville generic rigorous process of developing requirements for methodology, the requirements development process software systems. This work attempts to respond to has four main steps: this need seeking to define and validate an orderly • Elicitation, using techniques to discover requirements development process that can be requirements from various sources of information performed systematically and with easily predictable (stakeholders, legislation, existing systems, outputs, thus contributing to increase the maturity of domain information, etc.) the organization. • Analysis and negotiation, discussing and 2. Main goals analyzing the discovered requirements, in order The main goals of this work are: to reach an agreement to decide which ones • Rigorous definition of a methodology for should be included in the system. requirements development appropriate to the kind • Specification and documentation, formalizing of projects developed by PSI taking advantage of requirements in an appropriate level of detail and existing methodologies as much as possible. precision to include then in their specification • Implementation of this methodology to the document, which will be used in the subsequent stages of the software development cycle. specification of a system for student management thus allowing its validation and evaluation of • Validation, inspecting the requirements results achieved specification document, in order to detect problems and suggest changes. 3. Work description 3.2. The proposed methodology This work was structured in three phases. It began It is proposed a methodology for developing with a study of the requirements engineering process requirements based on the main steps of Kotonya- based on a generic methodology. Then, it was Sommerville. However, this is not a generic developed a new methodology combining the methodology, since its implementation is based on introduction of innovative aspects with the reuse of the following assumptions: aspects of other methodologies. Finally, this methodology was applied in the specification of a • Is should be used only for the specification of new system for student management (WebGA). medium-sized information systems with significant administrative weight and with 3.1. Requirements engineering process restrictions imposed by law. The requirements engineering process is a structured • It has to be formed a specification team to set of activities which are followed to capture, prepare and implement activities during the organize, document and maintain the requirements of requirement engineering process; a system. These set out the services that should be provided, define constraints and supply domain • Assignment of the requirement engineer role to a information to system developers. An accurate person with exclusive dedication to the project. requirements specification allows a system to be conceived to adequately respond to the needs of its Figure 1 represents an overview of the proposed customers. requirements development methodology, in which it is possible to identify three phases: The use of techniques and models are tools for implementing the activities of the requirement • Requirement sources identification and planning, engineering process in a systematic way and predict to identify the sources of information (from their execution. The process is actually divided in which requirements can to be discovered), assign requirements development, to discover new a specification team, to make a plan of meetings (including a breakdown of the system in several requirements development process it was already parts) and produce a preceding study (a document possible to perform, at least once, almost all activities that summarizes the basic knowledge about the described in the methodology. The first phase was business). completed, resulting in the preceding study, the meetings plan and the identification of a large • Requirements analysis by functional areas, where quantity of requirements sources. The second phase by means of a collaborative effort, the was held for five parts of the system, although with specification team holds a series of meetings to different stages of completeness, obtaining a final thoroughly examine each part of the system. The base-specification. The third phase was the least requirements engineer, using this analysis, exercised, with the production of incomplete versions completes it adding business models (using the of the specification part referring to courses and the Eriksson-Penker methodology) and produces a requirements specification document. base-specification document (bringing together supporting information relevant to the area 4. Conclusions and future work analyzed) for each part of the system. With its implementation, it is possible to draw some • Requirements specification and documentation, conclusions on the effectiveness of the proposed describing in a consistent manner the functional methodology, such as: (incorporating them in use cases) and non- functional requirements of the system. Each part • The system partitioning allows the analysis of of the system in brought together and integrated each part to be done in isolation, which reduces with information already included in the its complexity and enables certain activities to be preceding study. It is produced a requirements performed in parallel, reducing the time needed specification document in accordance with a to requirement analysis; model derived within this methodology. • The proposal of a collaborative environment in the requirement analysis helps to obtain a more Requirement sources Preceding representative view of the business area through a identification and planning study systematic observation carried out by a specification team; Specification Plan of Requirements • The definition of intermediate artifacts (preceding team meetings sources study and base-specification) helps separating system requirements from supporting information. Requirements analysis by Base- • The use of business modeling as a tool for functional areas specification requirements analysis shows how the system supports the business and points out potential For each part of the system new forms of integration. Requirements specification and documentation • The inclusion of requirements in the context of use cases, taking advantage of the flow of events to describe the system dynamics, eases their use Requirements specification in the subsequent stages of the software development cycle. Fig. 1 – Overview of the proposed methodology. • The proposed model for the requirements 3.3. Specification of the WebGA system specification document incorporates elements from other models such as IEEE 830-1998 and GAUP is an information system designed to assist the Rational Unified Process. administrative tasks of the educational process in the University of Porto. WebGA is a new information The application of the proposed methodology to the system aimed at replacing GAUP. The specification requirements specification of the WebGA system of this new system was assigned to PSI. The system revealed that, although all assumptions were met, meets the assumptions of the proposed methodology some activities didn’t need to be implemented. This thus allowing its use for requirements development. shows that, despite being very specific, this approach Also, there were roles assigned to a group of people can be further improved by identifying the more forming a specification team. One of those people relevant activities and eventually include new tasks. took the role of requirements engineer with full It may also include a test-driven specification dedication to the task. approach in which all test cases are designed within the requirements specification itself. After six months since the beginning of the