We usually have a special liking for graphical things. When we were a child, the Enlightenment education started from the graphical aspects. We have seen comic books, cartoons, picture-based literacy, and so on. Because graphics can embody and visualize an abstract object, graphical expressions can clearly present ideas, things, and scientific concepts that cannot be clearly expressed or hard to express in words. This is why we prefer vivid images than obscure words.
As a very important course in software engineering, the introduction to software engineering is usually not paid much attention by people because of its liberal arts, theoretical, and conceptual nature, fortunately, there is something we can easily accept and understand in the introduction to software engineering-graphs, otherwise we will make ourselves miserable.
In the introduction to software engineering, software development is generally divided into eight stages: 1. problem definition 2. feasibility study 3. requirement Analysis 4. overall Design (Outline Design) 5. detailed Design 6. coding and unit testing 7. comprehensive Test 8. software maintenance. Next, let's talk about the difficulties with the graph in each stage.
1. Problem definition
The problem definition stage mainly defines the problems that users need to solve based on their needs and what functions they need to implement.
2. Feasibility Study
The feasibility study stage is to check whether there is a solution to solve the problem at the minimum cost, within the shortest time, and with the maximum benefits. The analysis at this stage mainly involves the following graphic tools.
2.1 system flowchart
System flowchart is a traditional tool used to describe the physical model of a system. It represents the flow of data between various components of the system, rather than the control process of data processing. It is a physical data flow diagram rather than a program flow chart. The system flowchart shows the functions of the software. Even if you do not understand the software, you can easily understand it. It can be said that it is an effective tool for communication and communication between software designers and users.
2.2 Data Flow Diagram
A data flow chart is a graphical representation of the system's logical functions, the logical flow of data within the system, and the logical transformation process from the perspective of data transmission and processing, it is the main expression tool of the structured system analysis method and a graphical method used to represent the software model. If the system flow chart allows users to better understand the functions of the system, the data flow chart gives users a better understanding of the operating principles of the system.
2.3 Data Dictionary
A data dictionary is a set of data information, that is, a set of definitions of all elements in the data flow diagram mentioned above. The main function of data dictionary is to facilitate the access to the descriptive information of data that we do not know very well in the software analysis and design phase.
3. Demand Analysis
The requirement analysis stage mainly determines what the system must do. For example, the user's requirements on the system, determine all the functions of the target system, determine the hardware and software environment for the system to run, system performance requirements, error handling requirements, interface requirements, verification software requirements, and so on.
3.1 e-r Diagram
E-r diagram is mainly used to present user data requirements in a visual image.
3.2 status transition diagram
The state transition diagram shows the system behavior modeling, that is, the system behavior is expressed by describing the system status and events that cause state changes, displays detailed status changes during system running to users.
3.3 layered Block Diagram
The layered block diagram shows the layered structure of data.
3.4 warnier Diagram
The role of a warnier graph is basically the same as that of a layered block chart, except that a warnier graph has more descriptive techniques.
3.5 IPO Diagram
An ipo diagram is short for an input, processing, and output diagram. It clearly describes the relationships between input data, processing data, and output data.
4.Overall Design
In the demand analysis stage, we have determined what the system should do, and the overall design is to figure out how to do the problem. The overall design aims to summarize how the system should be implemented, specifically, it is necessary to clarify the components of the system and the relationship between these modules.
4.1 hierarchy chart
A hierarchy chart is used to describe the hierarchy of software.
4.2 hipo Diagram
Hipo diagram = Hierarchy Diagram + input + Processing + output (Hierarchy Diagram + IPO diagram)
4.3 Structure Diagram
Similar to a hierarchy chart, a structure chart is a graphical tool used to describe the software structure.
5.Detailed Design
The detailed design stage is based on the overall design to determine how to implement the functions required by the system in detail, and to accurately describe the system.
5.1 program flowchart
A program flow chart intuitively describes the program control process.
5.2 N-S diagram (box chart)
Out of the need for a graphical tool that does not allow violations of the structural design spirit, nassi and shneiderman proposed a box chart, also known as a N-S chart.
5.3 Problem Analysis pad Diagram
The PAD chart uses a two-dimensional tree structure to represent the control flow of a program.
6. coding and unit testing
The coding and unit testing phases mainly describe the detailed description of the detailed design phases for specific implementation and Module Testing.
7. Comprehensive Test
Comprehensive Testing includes testing the components and functions of the system, covering all functional points of the software system, and testing the performance and ease of use of the software based on the needs of the tested software, achieve the purpose of testing all aspects of the software.
8. Software maintenance
The software maintenance phase is the last and longest stage in the software life cycle, the main task of software maintenance is to make some or all modifications to the application based on changes in demand or hardware environment, and make full use of the source program during modification. After modification, you must enter the application change registration form and specify the differences between the new and old procedures in the application change notice.
This article from "extreme scholar" blog, please be sure to keep this source http://long7s.blog.51cto.com/2889364/598376