Best New Free Computer IT Training Tutorial Resources

December 2, 2005

Free Software Engineering Course Book

This free course book on Software Engineering introduces the reader to state-of-the-art software engineering techniques which are now of practical utility and which can be applied immediately in practical software projects. It covers software specification, software design, implementation, software verification and testing, documentation, and project management. The chapters here are in doc format, and the book is also available online in HTML format.

Software Engineering Course Book:


Chapter 1 Introduction:
1.1 Scope
1.1.1 The development of software engineering
1.1.2 The term software engineering
1.2 Quality attributes of software products
1.2.1 Software quality attributes
1.2.2 The importance of quality criteria
1.2.3 The effects of quality criteria on each other
1.2.4 Quality assurance measure
1.3 The phases of a software project
1.3.1 The classical sequential software life-cycle model
1.3.2 The waterfall model
1.3.3 The prototyping-oriented life-cycle model
1.3.4 The spiral model
1.3.5 The object-oriented life-cycle model

Chapter 2 Software Specification:
2.1 Structure and contents of the requirements definition
2.2 Quality criteria for requirements definition
2.3 Fundamental problems in defining requirements
2.4 Algebraic specification
2.5 Model-based specification

Chapter 3 Software Design:
3.1 Design techniques
3.1.1 Top-down design
3.1.2 Bottom-up design
3.1.3 Systems design
3.1.4 Design decomposition
3.2 User interface design
3.3 Function-oriented design
3.4 Object-oriented design
3.4.1 The Abbott Method
3.4.2 Design of the class hierarchies
3.4.3 Generalization

Chapter 4 Implementation:
4.1 Programming environments
4.2 Programming style
4.3 Portability and reuse
4.3.1 Software portability
4.3.2 Machine architecture dependencies
4.3.3 Operating system dependencies
4.3.4 Software reuse
4.4 Computer-aided software engineering
4.4.1 CASE workbenches
4.4.2 Text editing systems
4.4.3 Language processing systems
4.5 Incremental implementation

Chapter 5 Software Verification:
5.1 Test methods
5.1.1 Verification of algorithms
5.1.2 Static program analysis
5.1.3 Dynamic testing
5.1.4 Black-box and white-box tests
5.1.5 Top-down and bottom-up testing
5.2 Mathematical program verification
5.3 Debugging

Chapter 6 Documentation:
6.1 User documentation
6.2 System documentation
6.3 Document quality
6.4 Document maintenance
6.5 Document portability

Chapter 7 Project Management:
7.1 The goal and tasks of project management
7.2 Difficulties in project management
7.3 Cost estimation
7.4 Project organization
7.4.1 Hierarchical organizational model
7.4.2 The chief programmer team
7.5 Software maintenance
7.5.1 Maintenance costs
7.5.2 System restructuring
7.5.3 Program evolution dynamics


Filed under: Best New Free Computer IT Training Tutorial Resources — computer_teacher @ 11:27 pm

Powered by WordPress