محتويات مقرر CS514_Software Engineering
تم التحديث آخر مرة في .
4- Course Content :-
|
Topic
|
Introduction :-
- The emergence of software engineering.
- The term software engineering.
- Quality attributes of software products.
- Software quality attributes.
- The importance of quality criteria.
- The effects of quality criteria on each other.
- Quality assurance measures.
- The phases of a software project.
- The classical sequential software life-cycle model.
- The waterfall model.
- The prototyping-oriented life-cycle model.
- The spiral model.
- The object-oriented life-cycle model .
- The object-and prototyping-oriented life- cycle model.
|
Software Specification :-
- Structure and contents of the requirements definition .
- Quality criteria for requirements definition.
- Fundamental problems in defining requirements.
- Algebraic specification.
- Model-based specification.
- References and selected reading.
|
Software Design :-
- Design techniques .
- Top-down design.
- Bottom-up design .
- Systems design.
- Design decomposition.
- User interface design.
- Function-oriented design.
- Object-oriented design.
- The Abbott Method.
- Design of class hierarchies.
- Generalization.
|
Implementation :-
- Programming environments.
- Programming style .
- Portability and reuse .
- Software portability.
- Machine Architecture dependencies.
- Operating system dependencies.
- Software reuse .
- Computer-aided software engineering.
- CASE workbenches.
- Text editing systems.
- Language processing systems.
- Incremental implementation.
|
Software Verification :-
- Test methods.
- Verification of algorithms .
- Static program analysis.
- Dynamic testing.
- Black-box and white-box testing.
- Top-down and bottom-up testing.
- Mathematical program verification..
- Debugging.
|
Documentation :-
- User documentation.
- System documentation .
- Document quality.
- Document maintenance .
- Document portability.
|
Project Management :-
- The goal and tasks of project management.
- Difficulties in project management.
- Cost estimation.
- Project organization.
- Hierarchical organizational model.
- The chief programmer team.
- Software maintenance.
- Maintenance costs.
- System restructuring.
- Program evolution dynamics.
|
Total
|