CSC 450 - Course
Outline (Devon M. Simmonds, Instructor)
![]()
Course
Objectives: At the end of this
course students will be able to:
§ Define
Software Engineering and explain basic software engineering principles.
§ Describe the
software development process and software qualities.
§ Understand
basic software project management.
§ Perform
analysis, design and implement a software project.
§ Explain the
fundamentals of software testing and apply testing techniques to a given
software project.
Course Outline
1.
Introduction
to Software Engineering
1.1.
Course
overview
1.2.
The software
crisis
1.3.
Software
engineering defined
1.4.
Types of
software systems
1.5.
Software
characteristics
1.6.
Software
engineering process & paradigms
1.7.
Software
engineering principles
1.8.
Use of
models in software engineering
2.
Software
Project Management
2.1.
Introduction
to software project management
2.2.
Scoping
2.3.
Estimation
2.4.
Scheduling
2.5.
Feasibility
studies
3.
Requirements
Analysis
3.1.
Introduction
3.2.
Activity
diagrams
3.3.
Use case
modeling
3.4.
Requirements
class modeling
4.
Software
Design
4.1.
Introduction
4.1.1.
Quality,
cost, evolution
4.1.2.
Basic design
principles
4.1.3.
Design
documentation
4.2.
Diagram
Types
4.2.1.
Design class
diagrams
4.2.2.
Package
diagrams
4.2.3.
Sequence
diagrams
4.3.
Architectural
design
4.4.
User
interface design
4.5.
Procedural
design
5.
Implementation
5.1.
Introduction
5.2.
programming
principles
5.3.
Coding
standards and styles
5.4.
Documentation
6.
Testing
6.1.
Introduction
6.2.
Principles
and goals
6.3.
Techniques
and strategies
7.
Ethics in
software engineering