System design is the skill of the architect, but design is based on system analysis. The system architect works with the system analyst in coordination with the project manager.

The purpose of a software system is to solve problems, so the first step in software development is to define and analyze problems, on this basis, to summarize the model.

The process of defining a problem involves understanding real-world problems and user needs and coming up with solutions.

1. Reach a consensus on the definition of the problem

2. Understand the nature of the problem

Causality fishbone diagram and Pareto diagram are commonly used.



Causal fishbone diagram





Pareto chart

The Pareto principle is also known as the 80/20 principle.

3. Determine project stakeholders and users

Define the boundaries of the system

Systems and things that interact with them.

There are two ways to describe system boundaries:

1) Context scope diagram



2) Use case diagrams

5. Determine the constraints of system implementation

(2) Problem definition 1. Objective 2. Functional requirements 3

Requirements Analysis and Software Design The two most important steps in the software life cycle. Requirements analysis solves what to do, software design solves how to do it.

(I) Task and process project failure rate of requirements analysis exceeds 76%; 60% of this is due to demand problems. The main task of requirements analysis is to communicate extensively with users, clarify some vague concepts constantly, and finally form a complete, clear, consistent requirements description. Subdivided into 4 aspects: 1, problem identification 2, analysis and synthesis 3, document preparation 4, review

Requirements are classified into functional requirements, non-functional requirements, design constraints, business requirements, user requirements, and system requirements. These are all from different people, different positions.

(2) how to carry out system design 1, system design tools and methods are not the most important, the key is the strength of the designer, in practice and continue to learn and summarize 2, design is a compromise, find the balance of the process 3, learn from 4, keep learning, keep pace with The Times

(3) Tasks and activities of software design Software design will be software requirements – > software representation. First the general framework, then fill in the details. 1, the two stages of software design 1) outline design 2) detailed design

2. Comparison of main design methods 1) Structured analysis and design 2) Object-oriented analysis and design

3. Structured analysis and design of data flow diagrams

Four, object-oriented analysis and design UM nine diagrams

Five, user interface design principles: 1, user experience 2, reduce the user’s memory burden 3, maintain the consistency of the interface and say so many are pulling, good-looking is the right way.

Six, workflow design

Design of Simple Distributed Computer ApplicationSThere are two completely different ways for distributed systems to collaborate and collaborate: 1. Instance-based collaborative remote calls; 2

Viii. Integration and design of system operating environment

How does the newly developed system replace the old system? Nothing more than: 1, direct transition 2, parallel transition 3, stage transition