Article directory
type | Proportion of total score |
---|---|
attendance at work | 10% |
Homework | 2×5%=10% |
midterm | 10% |
final exam | 70% |
Additional points | Extra points for questions |
question type | Question size × score | predict |
---|---|---|
choose | 15×2’ | |
fill in the blank | 5×2’ | software engineering methodology, |
Glossary | 5×2’ | software crisis, software life cycle |
short answer | 3×5’ | |
comprehensive | 15’+20’ | 15' data flow diagram, 20' = system flow diagram, state transition diagram, program flow diagram, box diagram |
Final Key Points of Software Engineering (26)
P1 Software Crisis (Concept)
P9 Software Engineering Methodology:
Three Elements: Method, Tool, and Process
Method: The technical method for completing various tasks of software development, answering the question of "how to do it"
Tool: Automatic or semi-automatic software engineering support for the application of the method Environment
Process: A framework for a series of tasks that need to be completed in order to obtain high-quality software, which specifies the work steps to complete each task
.
P11 Software life cycle
The software life cycle consists of three periods: software definition, software development, and operation and maintenance (software maintenance)
1. Problem definition
2. Feasibility study
3. Requirement analysis
1. Overall design
2. Detailed design
3. Coding and units Test
4. Comprehensive Test
1. Software Maintenance
P15 Software Model - Waterfall Model
P35 Feasibility study
The purpose of feasibility study is not to solve the problem, but to determine whether the problem is worth solving
①Technical feasibility
②Economic feasibility
③Operational feasibility
P38 system flow chart (no impression) (20 points for short answer questions)
P40 Data Flow Diagram (15 points for short answer questions)
The line indicates the direction of data
P47 Data Dictionary
Elements:
①Data flow
②Data flow components
③Data storage
④Processing
P62 Analytical modeling (seemingly nothing)
data model
behavior model
P65 state transition diagram (alternative diagram for short answer questions with 20 points)
P70 Verify key requirements (knowledge points are complete, more is redundant)
(1) From what aspects to verify the correctness of software requirements: consistency, completeness, reality, validity
(2) Methods of verifying software requirements:
① Verify the consistency of the requirements
② Verify the reality of the requirements
③ Verify the integrity and effectiveness of the requirements
P82Petri net (take a look)
P94 Design Principles - Modularization (see)
P95 Design Principles - Abstraction
P97 Design Principles - Module Independent⭐ (focus)
① Coupling
② Cohesion
P100 Heuristic Rule 3: Depth, Width, Fan-In and Fan-Out
Depth: Maximum number of layers
Width: Maximum total number of modules at the same level
Fan-in: How many upper-level modules call it
Fan-out: Number of modules controlled by a module
P124 program flow chart (20 points for short answer questions)
P125 box diagram (20 points for short answer questions)
P130Jackson diagram (take a look)
P137 Calculation of cyclomatic complexity method (3)⭐
(in order to quantify program complexity)
①Number of regions (the figure divides the two-dimensional plane into several pieces)
②Edge-node+2
③Number of decision nodes+1 (easy to ignore some Node)
P153 unit test (take a good look) (no impression) (not complete)
test focus:
① module interface
② local data structure
③ important execution path
④ error handling path
⑤ boundary conditions
P156 integration test (take a good look, there is an important point)
P162 White Box Testing - Logic Coverage (5)
① Statement Coverage
② Decision Coverage
③ Condition Coverage
④ Judgment/Condition Coverage
⑤ Condition Combination Coverage
P166 White box testing - control structure testing - basic path testing (code and diagram)
P171 Black Box Testing Techniques (Concept)
P179 Software Reliability (Formula 3)
①
② Estimation of mean time between failures
③ Method of estimating the total number of errors