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