Software Engineering——Chapter 3 Requirements Analysis Knowledge Points Arrangement

This column is the blogger's personal notes, the main purpose is to use the fragmented time to memorize the knowledge points of soft engineering, hereby declare!

Article directory

1. What are the basic tasks of needs analysis?

2. What should the system analyst do at the end of the requirements analysis phase?

3. What are the comprehensive requirements for the software system?

4. What is the task of needs analysis?

5. What methods are usually used to analyze the data requirements of the system?

6. What are the methods of communicating with users to obtain requirements?

7. What are the definitions, main points and characteristics of rapid prototyping?

8. Which three models should be established in the requirements analysis process?

9. What is the most important document obtained in the requirement analysis stage?

10. What three types of interrelated information does a data model contain?

11. What are the components of the ER diagram?

12. What are the advantages of ER diagram?

13. What is a paradigm? Which normal form is the maximum and minimum data redundancy?

14. What is the role of the state transition diagram?

15. What is the difference between state and event?

16. Which structure does a hierarchical block diagram use to describe the hierarchical structure of the data?

17. Which structure does a warnier diagram use to describe information? The main difference from the hierarchical block diagram?

18. Which diagram is used in the requirements analysis phase to briefly describe the main algorithm of the system?

19. What is the definition and function of IPO chart?

20. From what aspects to verify the correctness of software requirements?

21. In order to quickly modify the prototype, what methods and tools are used?

22. Why needs analysis? (Importance of needs analysis)

23. What are the criteria that the requirements analysis method must follow?

Summary at the end of the chapter


1. What are the basic tasks of needs analysis?

        Requirements analysis is the last stage of the software definition period. Its basic task is to accurately answer the question " what the system must do ", that is, to put forward complete, accurate, clear and specific requirements for the target system.

2. What should the system analyst do at the end of the requirements analysis phase?

A system analyst should write a software requirements specification that accurately describes software requirements in written form .

3. What are the comprehensive requirements for the software system?

  1. functional requirements
  2. performance requirements
  3. Reliability and Availability Requirements
  4. error handling requirements
  5. interface requirements
  6. constraint
  7. reverse demand
  8. possible future requirements

4. What is the task of needs analysis?

  1. Determine the comprehensive requirements for the system
  2. Analysis System Data Requirements
  3. Export the logical model of the system
  4. Revised system development plan

5. What methods are usually used to analyze the data requirements of the system?

Use methods for building data models , such as entity relationship diagrams (ER diagrams)

6. What are the methods of communicating with users to obtain requirements?

  1. Interviews : The earliest and most widely used. Two methods of interviewing: sending out questionnaires and using situational analysis techniques
  2. Top-down refinement for data flow (structured analysis method) : record the information of data elements in the analysis process in the data dictionary, and record the algorithm in the IPO diagram
  3. Easy application specification technique : This approach brings users and developers together and resolves the separation of users and developers that exists in interviews and structured methods
  4. Rapid software prototyping : the most accurate, effective, and powerful requirements analysis technique

7. What are the definitions, main points and characteristics of rapid prototyping?

Definition: Rapid Prototyping refers to an operational program that is quickly established to demonstrate the main functions of the target system

Key points: Implement functions that are visible to the user , and omit functions that are invisible to the target system

Features: fast, easy to modify

8. Which three models should be established in the requirements analysis process?

  1. Data model (using entity relationship diagram)
  2. Functional model (using data flow diagram)
  3. Behavior model (using transition diagram)

9. What is the most important document obtained in the requirement analysis stage?

Software requirements specification (written in natural language)

10. What three types of interrelated information does a data model contain?

data object, property, relation

11. What are the components of the ER diagram?

Entities (data objects), relationships, attributes

12. What are the advantages of ER diagram?

The ER model is closer to people's habitual way of thinking and can be used as an effective communication tool between users and analysts .

13. What is a paradigm? Which normal form is the maximum and minimum data redundancy?

The normal form defines the degree of data redundancy elimination , the first normal form has the largest data redundancy, and the fifth normal form has the least data redundancy

[Note] It is more appropriate to choose the third normal form in most occasions

14. What is the role of the state transition diagram?

        The state transition diagram, referred to as the state diagram , is to represent the behavior of the system by describing the state of the system and the events that cause the system state transition . The state diagram also indicates what actions the system will take as a result of a specific event .

15. What is the difference between state and event?

A state refers to any observable system behavior pattern , and a state represents a behavior pattern of the system.

An event is something that happens at a specific moment , it is an abstraction of an event that causes the system to act and transition from one state to another

16. Which structure does a hierarchical block diagram use to describe the hierarchical structure of the data?

tree structure

17. Which structure does a warnier diagram use to describe information? The main difference from the hierarchical block diagram?

The warnier diagram uses a tree structure to describe information, but provides a richer means of depiction than a hierarchical box diagram .

18. Which diagram is used in the requirements analysis phase to briefly describe the main algorithm of the system?

        In the requirements analysis stage, IPO diagrams are used to briefly describe the main algorithms of the system, and these diagrams are further supplemented and corrected in the detailed design stage.

19. What is the definition and function of IPO chart?

        IPO diagram is the abbreviation of input, processing and output diagram , which can conveniently depict the relationship between input data, data processing and output data

20. From what aspects to verify the correctness of software requirements?

  1. Consistency : All requirements must be consistent and cannot contradict each other
  2. Completeness : Requirements must completely include the needs of users
  3. Realistic : The specified requirements should be achievable with existing technology
  4. Effectiveness : Requirements must be correct and effective, able to solve users' problems

21. In order to quickly modify the prototype, what methods and tools are used?

  1. fourth generation technology
  2. reusable software components
  3. formal specification

22. Why needs analysis? (Importance of needs analysis)

        In order to develop a software product that truly meets the needs of users, it is first necessary to know the needs of users. A deep understanding of software requirements is a prerequisite
for successful software development . No matter how well we do design and coding work, programs that cannot really meet user needs will only disappoint users and bring troubles to developers.

23. What are the criteria that the requirements analysis method must follow?

  1. The information domain of the problem must be understood and described , according to which the data model should be built .
  2. The functions that the software should perform must be defined , and this criterion requires the establishment of a functional model .
  3. The behavior of software as a result of external events must be described , and this criterion requires the establishment of a behavioral model .
  4. Models that describe information, functionality, and behavior must be decomposed to present details in a hierarchical manner.

Summary at the end of the chapter

        Traditional software engineering methodologies use structured analysis techniques to complete the work of analyzing user needs.

        Requirements analysis is the process of discovery, refinement, modeling, specification, and review . The first step in requirement analysis is to further understand the current situation of the user, discover the problems faced by the user and the basic requirements for the target system; the next step is to communicate with the user in depth, repeatedly refine and gradually refine the basic needs of the user, In order to obtain complete, accurate and specific requirements for the target system. Specifically, it should determine the functions, performance, reliability and availability that the system must have, the error handling requirements, interface requirements and reverse requirements that must be realized, the constraints and data requirements that must be met, and predict the development prospects of the system .

        In order to understand in detail and correctly understand the needs of users, appropriate methods must be used to communicate with users. Interviews are a time-honored technique for communicating with users and are still employed by many systems analysts today. Starting from the data flow diagram obtained in the feasibility study stage, and gradually refining the data flow from top to bottom with the assistance of users, it is also an effective method to communicate with users and obtain requirements. In order to encourage users and analysts to work together to analyze requirements, people have developed a team-oriented requirements collection method called simple application specification technology , and now this technology has become the mainstream technology used in the field of information systems . Practice shows that rapid software prototyping is the most accurate, effective and powerful requirement analysis technique . The basic characteristics that rapid prototyping should have are " fast " and " easy to modify ". Therefore, appropriate software tools must be used to support rapid prototyping technology. Rapidly build and modify prototypes, often using fourth-generation technologies, reusable software components, and formal specification and prototyping environments.
        In order to better understand the problem, people often adopt the method of building a model. Structural analysis is essentially a kind of modeling activity. In the stage of requirement analysis, data model, function model and behavior model are usually established .
        In addition to creating an analysis model, the software requirements specification should also be written during the requirements analysis stage , which will be the final result of this stage after rigorous review and user confirmation. Usually, the software requirements specification is reviewed mainly from the four aspects of consistency, completeness, reality and effectiveness .
        most people are used toUse entity-relationship diagrams to build data models , use data flow diagrams to build functional models, and use state diagrams to build behavioral models . Readers should master the basic symbols of these graphics, and be able to use these symbols correctly to build software system models.
        The data dictionary describes the characteristics of data objects and control information appearing in the data model, function model and behavior model , and gives their precise definitions. Therefore, the data dictionary becomes the " glue " that binds the three analysis models together , and is the " core " of the analysis model. In order to improve understandability, graphical tools such as hierarchical block diagrams or Warnier diagrams can also be used to assist in depicting the data structure in the system. In order to reduce redundancy and simplify modification steps, it is often necessary to standardize the storage structure of data.

        Algorithms are also important, and the basic purpose of analysis is to determine what the system must do. In a nutshell, the basic function of any computer system is to transform input data into output information, and algorithms define the rules of transformation . Therefore, without knowledge of the algorithm one cannot know exactly how the system will function. IPO diagrams are effective tools for describing algorithms.

Next chapter: Software Engineering——Chapter 4 Formal Description of Technical Knowledge Points

Repeatedly, down-to-earth; never forgetting, there will be echoes!

Guess you like

Origin blog.csdn.net/qq_52487066/article/details/131341104