 |
Course Description
Advanced topics related to the analysis, design, and development of large software
projects. Prerequisite: CS 5640.
Course Syllabus
Core topics (more or less in order of coverage):
- Introduction - broad issues and challenges that face professional software engineers. How
has the field changed over the last 20 years.
- CASE tools - categories, costs and benefits. Examples of CASE tools.
- Rapid Prototyping - types of prototyping. Costs and benefits. Examples of prototyping tools.
- Software complexity - complexity analyses and models. Theories of software complexity.
- Program productivity - measurements and influences.
- Software costing models.
- Object-oriented Software Engineering - analysis, design, testing, and complexity issues
Additional topics:
- Software reliability concepts and models
- Training issues
- Future trends - software engineering "in the large"
- Alternative software engineering methodologies and environments
- Database software engineering
- Usability Engineering - Psychology of programming. User interface design. Usability Assessment
Course Structure The course consists of lectures, demonstrations and student
presentations. Students are expected to write at least one significant research paper.
|