Software Engineering

Elvis C. Foster's Software Engineering: A Methodical Approach

My lecture notes is Software Engineering have been refined and developed into the text Software Engineering: a Methodical Approach.

The list below shows the topics covered in the book, arranged in the order that I teach the course. The course can be covered over one semester, or two semesters, depending on the institution that you are studying at, and your level of preparation. If you are interested in acquiring a copy of the book, please View the Book's Website.

Division A: Fundamentals

1.    Introduction to Software Engineering

2.    The Role of the Software Engineer

Division B: Software Investigation & Analysis

3.    Project Selection and Initial System Requirements  

4.    The Requirements Specification

5.    Information Gathering    

6.    Communicating Via Diagrams    

7.    Decision Models for System Logic

8.    Project Management Aids

Division C: Software Design

9.    Overview of Software Design

10.    Database Design

11.    User Interface Design

12.    Operations Design

13.    Other Design Considerations

Division D: Software Development

14.    Software Development Issues

15.    Human Resource Management

16.    Software Economics

Division E: Software Implementation & Management

17.    Software Implementation Issues

18.    Software Management

19.    Organizing for Effective Management

Division F: Final Preparations

20.    Sample Exercises and Examination Questions

Division G: Appendices

Includes additional topics drawn from object-oriented methodologies, and deliverables
for the construction of a generic inventory management system.