Feasibility study
Specific aspects: economic feasibility, technical feasibility, operational feasibility, legal feasibility, time feasibility
Software plan
It is the specific content described in terms that administrators, technicians and users can understand, including
1. The scope of the software (software function scale, software capability requirements for hardware)
2. Environmental resources (human resources, hardware, software, development schedule, software cost)
Software price estimation: parameterized algorithm: C=f(v) c is an independent parameter selected by the original price v for the software price
Code line estimates source code lines, excluding comment lines
Guiding principles for software requirements:
1. Before starting to build an analysis model, understand the problem
2. Develop prototypes so that how users will interact with humans
3. Record the origin and reason of each requirement
4. Use multiple demand views
5. Give priority to requirements
6. Work hard to remove ambiguity
Classification of software prototypes:
Exploratory, experimental, and evolutionary
Software development model
Software development process
Overall design task
1. Divide the system into physical elements, namely programs, files, databases, and documents.
3. Design the software structure
4. Database design
5. Make a test plan
6. Write the overall design document
7. Review and review the overall design document
Structural design guidelines
1. Improve module independence 2. Choose appropriate module rules 3. Appropriately select the depth, width, fan-in and fan-out of the module 4. The scope of action of the module should be within the control range 5. Reduce the complexity of the module interface 6. Design Single entry single exit module with predictable function.
Three elements of software engineering:
Method: Provides "how to" technology for software development
Tools: Provide an automatic or semi-automatic software support environment for software engineering methods
Basic goals of software engineering projects:
Pay lower development costs, meet the required software engineering, obtain better software performance, develop software that is easy to transplant, requires lower maintenance costs, can complete development work on time, and deliver it to use in time
The principle of soft drop project:
1. Strict management with a phased life cycle plan
2. Insist on stage review
3. Implement strict product control
4. Using modern programming technology
5. The results should be clearly reviewed
6. Reasonably arrange people in the software development team
7. Acknowledge the need to continuously improve software engineering practices
Structured design process:
Inadequacies, welcome to correct!