当前位置:网站首页>On software requirement analysis

On software requirement analysis

2022-06-24 17:39:00 Software test network

One 、 What is demand analysis ?
Generally speaking , The process of continuously revealing and testing the user's intention , It is necessary to make a more detailed description of the system objectives determined by the system feasibility analysis .
If you are a construction engineer , A client asked you to build a chicken nest , We need to communicate with customers at this time , To determine what kind of henhouse the customer wants . We should pay attention to three points :
1、 Accurately understand and describe the functions required by customers .
Customer said , My chicken nest needs three layers , With elevator , Drinking pool , Toilet , The drinking pool should automatically judge the water level and supply , The elevator should be able to ride at the same time 10 chicken …. The customer talked a lot , You are also very loyal in accordance with their own understanding of one another to describe the customer again , In order to confirm whether the customer's requirements are correct .
2、 Help customers to explore their needs .
Wait for the customer to finish his needs , You find that the client didn't say the chicken bedroom , therefore , You propose to the client that :“ You see , What does the chicken bedroom look like ?”, The customer clapped his forehead and said , I almost forgot , Chickens like to chat together at night , So , Need a long, big bedroom , But be comfortable .
3、 Analyze the feasibility of customer needs .
When the customer left, he said , Recently , There are many weasels , My chicken nest , There is no need to build the first floor , Just build the second and third floors ! To avoid being attacked by weasels at night . You have such an analysis , The customer asked , It can't be built according to the current technology , therefore , You propose , The first floor uses solid shelves to support the buildings on the second and third floors .
 
Two 、 What are the difficulties of demand analysis ?
There are several reasons why demand analysis is difficult :
(1) The customer didn't know what they wanted ;
Some customers have only a hazy sense of demand , Of course, I don't know the specific needs .
Some customers are very clear about what they want , But I can't understand .
If the customer understands software development , Be able to articulate the needs , Such demand analysis will be very easy 、 Cheerful . If the customer doesn't understand the software at all , But trust the software developers , It's easy to do . Analysts can lead customers , Start with the usual needs , Then the customer negates the unnecessary , Finally determine the real needs of customers . What I fear most is “ Don't know, pretend to know ” perhaps “ Half know how to be an expert ” The customer , They will make unrealistic demands .
(2) Demand itself is constantly changing ;
Analyze as much as possible what are the stable needs , What are the changeable needs . In order to design the system , Building the core of software on stable requirements .
It must be clearly defined in the contract or requirements specification “ What do you do ” and “ What not to do ”.
(3) The analyst or the customer misunderstood .
Requirements analysts cannot all be generalists . The needs expressed by customers , Different analysts may have different understandings . If you get it wrong , It may cause the development to waste time and energy . So after the analyst has written the requirements specification , It is better to ask the client for verification . Conditionally design prototypes to demonstrate requirements .
 
3、 ... and 、 Classification of requirements analysis :
Requirement analysis can be generally divided into functional requirements 、 Non functional and domain requirements
1、 functional requirement
Functional requirements mainly explain what the system should actually do . This is the most intuitive and main demand of users , Such as the input and output of the system 、 Functions that the system can complete and other related processing ;
2、 Non functional requirements
Nonfunctional requirements are also called “ constraint ”, It mainly restricts and restricts the system from all aspects . Such as response time 、 Storage efficiency 、 Report specifications and interface styles
3、 Domain needs
The source of domain requirements is not users , It's the field of system application , It mainly reflects the basic problems in this field .
 
Four 、 How to conduct demand analysis ?
Demand analysis is not like romance between lovers ——“ Let me touch your hair , Feel what color it is .” We need to understand the channel and process of demand analysis .
http://otfah9orz.bkt.clouddn.com/requirement-analysis_01.png
The process of requirement analysis :
http://otfah9orz.bkt.clouddn.com/requirement-analysis_02.png
(1) feasibility study
It indicates existing software 、 Whether the hardware technology can meet the user's requirements for the system , From a business perspective, determine whether the system development is feasible and whether it can be developed within the budget . The result of the feasibility study is a clear answer : Whether the system is worth developing ?
(2) Requirements export and analysis
This is an analysis of existing systems 、 Discuss with potential customers 、 The process of deriving system requirements, such as task analysis , It may also be necessary to develop one or more different system prototypes , To help the analyst understand the system to be described .
(3) Requirements describe
Requirement description is to determine the information collected in the analysis activities in the form of documents after analysis . There are two types of requirements in this document : User requirements are abstract descriptions of system requirements from the perspective of customers and end users ; System requirements are detailed descriptions of the functions to be provided by the system .
(4) Validation of requirements
Mainly through review 、 A series of activities such as verification to find out the errors and omissions in the requirements document and correct them .
(5) demand management
Requirements management requirements management is a systematic approach , Available for acquisition 、 Organize and document system requirements and keep users and developers consistent on system change requirements .
 
5、 ... and 、 The method of requirement analysis
1、 Functional analysis method
Functional analysis functional decomposition organizes the system around the functions provided by the system . First define the various functions , Then decompose the function into sub functions , At the same time, define the interface between functions . Data structure is based on function / Subfunctions need to be designed . The basic strategy is based on the experience of analysts , Determine the processing steps or sub steps expected by the new system , then , Map problem space to functions and subfunctions .
2、 Data flow method
Data flow method is also called structural analysis , Its basic strategy is to study how the data flows in the problem domain and how to deal with it in each link , To discover data flow and processing . The problem domain is mapped as a data stream 、 Processing and documentation 、 Data flow diagram composed of endpoint and other components (DFD) , And use data dictionary to explain data flow and processing in detail . The key to this approach is to dynamically track the flow of data .
3、 Information modeling methods
The core concept of information modeling is entity and relation , The main tool is semantic data model ( Entity relation diagram ) , Its basic strategy is to find out the objects of the real world , Then we use properties to describe objects , Add the relationship between objects , Define parent and child classes , Use the type of father / Subtypes extract the commonness of attributes , Make a detailed description of the relationship between related objects , Finally, the standardization treatment is carried out . Its essence is to map the problem space directly to the objects in the model .
原网站

版权声明
本文为[Software test network]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/02/202202211543394546.html

随机推荐