"Requirements Engineering - Software Modeling and Analysis" Reading notes 03

 

First, introduce the concept of requirements engineering process

(I. Overview

1. Specifications

Requirements engineering process is an integrated system development requirements development activities, it is to business problems faced by users as a starting point for analysis and various conversion, and ultimately produce a system solution to solve the business problems of user in the user environment, and its documentation into clear specifications.

2. Life Cycle

There are also requirements engineering life cycle model of its own, that there is demand for the development of requirements engineering process that has deployed in the early stages of system development as a sub-process systems engineering and software engineering.

3. Classification Activity

Requirements elicitation, requirements analysis, requirements specification, requirements validation activities for the development of demand, demand management project management activities.

(B) the results of development activities demand brief document type

1. The project vision and scope document

The system defined business requirements, scope of work and a clear direction for system development.

2. User Requirements Document

User-defined system requirements, in order to express the position of the user behavior expectations. For example, a case document belongs to user requirements document.

3. The requirements specification document

System-level requirements definition system, noting that developers should complete the task. Requirements specification document in accordance with the needs of the range can be divided into the following two categories:

( 1) System specification document

The definition of the software and hardware requirements, other requirements.

( 2) software specification document

Only used to describe software requirements.

(C) the subsequent stages of system development

After the end of all system development activities, well-defined requirements are transferred to the subsequent stages of system development - design, implementation, and test, then often be faced with an important issue - changes in demand. Therefore, after the end of the requirements development, adopt effective measures at a later stage in the development of the unified management of demand and changes in demand, demand management and change control.

Second, the demand for engineering process step by step introduction

(A) requirements elicitation

The main requirements elicitation includes five steps:

Collecting background -> Get problems and objectives, the definition and scope of the project Prospects -> identify stakeholders, selected sources of information -> select acquisition method, performing acquisition function of acquiring the non-functional requirements -> Get Record results.

The following brief description of each process considerations :

1. gather background material

This stage is mainly through communication with users, found that users of the problem, through needs analysis step into the user's needs.

2. The issue of access and goals, define the project scope and prospects

Needs to obtain information in the face of broader, therefore, need to ensure the effectiveness of access to information assurance:

( 1) do not spend too much time on unrelated content.

( 2 ) do not miss important content should be retrieved.

3. Identify stakeholders, selected sources of information

This process will involve the acquisition needs of many users, but in order to facilitate the collection and accuracy of information, users need to be broadly categorized according to different roles, select the user representatives to collect comprehensive information as possible after classification. This process is called "analysis involving the public."

4. Select the acquisition method of performing acquisition function of acquiring the non-functional requirements

There are many requirements elicitation techniques and methods, the use of forms, reports, memos and other hard data acquisition requirements, as well as commonly used method for obtaining interviews, questionnaires, observation and prototypes. You should select the appropriate service type according to the actual scene and collection method.

5. Record results Get

Above the acquired information is needed for each stage record for post-analysis and processing, therefore, to obtain transcripts of the recorded content tend to have messy, fuzzy, redundancy and omissions and many other issues.

(B) Requirements Analysis

Its main work is through modeling to integrate all kinds of information, check the requirements that exist in various defects errors, omissions and inconsistencies and so on , and corrected. Which mainly contains the contents of six areas:

Background -> problem analysis, goal analysis, business analysis, system boundaries -> Software Requirement Modeling -> Refinement demand -> to determine the optimal level -> demand negotiation.

1. Background

Mainly for large-scale system, because the system environment is difficult to sort out, this time on the need for background analysis. For example, the field of analysis, enterprise modeling.

This step is omitted in the general project, so as not to spend too much unnecessary energy.

2. problem analysis, goal analysis, business analysis, determine the system boundary

System boundaries need to ensure that the system can form an effective interaction and the surrounding environment, and solve user problems in the interaction, to meet business needs, which will depend on the use of analytical techniques and methods. For example, the system of FIG context and with FIG.

3. Modeling Software Requirements

Semi-formal abstract description of modeling techniques in order to demonstrate and explain the activity information for the commonly used techniques include data flow diagrams, entity relationship diagrams, state transition diagrams, class diagrams. Note that, for some demanding project (Medical Device Control), also need to use a strict formal modeling techniques. For example, the Z-model.

4. Refinement demand

For user needs have vague, ambiguous, by system modeling, into a number of detailed requirements and have a good particle size characteristics, i.e., "the system the type of demand."

5. determine the optimal level

For many user needs, requirements engineers need to sort of demand.

6. demand consultation

When the user needs conflict, the need for consultation with users, the demand for the conflict to choose.

(C) requirements specification

1. customizable document templates

Organization will usually refer to [IEEE 1998] recommended specification document, and then adjust according to their characteristics and needs, establish a reference template organization.

2. documenting

Usually use both expression language model (graphics, expressions, etc.) and natural language (text) mode, to ensure that the content of the document is accurate, easy to read.

(D) requirements validation

Validation requirements documentation meet the following criteria:

truly reflect the user's intention

demand recorded a whole has integrity and consistency

organization and manner of writing readable and modifiability

The main requirements validation includes the following tasks:

1. Perform verification

Best to take peer review, if necessary, can be taken or analog prototype but a higher price.

2. bug fixes

The problems identified, the need for timely correction after verification. Tracking and correction to ensure the implementation of the amendments.

(E) demand management

On the demand to develop a need to establish a baseline in the design, implementation, follow-up activities such as handling change requests from customers, management, marketing and other stakeholder groups. Demand management has a very important role in the management activities of the project, CMMI (Capability Maturity Model Integration, Software Capability Maturity Model Integration) will be a key process area as all second-maturity enterprise should have.

Mainly includes the following tasks:

1. Establish and maintain baseline requirements set

Establish a good configuration management, version control baseline demand. We must first identify each requirement, records related to property. Work baseline version control version management tool you can use to carry out.

2. Establish requirements traceability information

Traceability system requirements to system-level requirements as the starting point for two-way track.

( 1 post) to the track

Tracking system level requirements are designed to realize why the products, and back to each design, implement products is why they exist.

( 2 ) Forward Tracking

Back each system-level requirements for which user requirements and business needs support exists.

3. Change Control

After establishing the baseline demand, still needs to be actively embrace change requests from the outside world, and make timely adjustments and feedback.

Issue Date: 2018-04-01 15:03

Guess you like

Origin www.cnblogs.com/daisy99lijing/p/11869537.html