Lecture Date Reading Assignment Topics Covered
Module 0 : Course Review, Installation and Setup
Wed. Jan 20 Introduction and Setup Review of course syllabus and schedule.
Module 1 : Software Engineering Process
1 Wed. Jan 20 Introduction to Software Engineering 1
(due: 2/4)
Historical roots of software engineering, and surveys the field.
2 Wed. Jan 27 Models of Software Engineering Processes 2
(due: 2/11)
Specific types of software engineering process models that have been developed to guide product development.
3 Wed. Feb 3 Focus on Agile Methodologies Introduction to Agile methodologies, including history, principles, variations, and approaches.
4 Wed. Feb 10 Focus on Open Source Methodologies Introduction to Open Source software, and special issues for open source development.
Module 2 : Project Resources
5 Wed. Feb 17 Managing Project Content Organization and management project content, capturing and storing project content, and making content accessible to team members based on software development model. Introduction to Git for managing code content.
6 Wed. Feb 24 Content Collaboration 3
(due 3/5)
Team-oriented aspects of project content, including managing multiple concurrent versions of code content during development, distributed content management for collaboration, and extensions for managing larg content files in a repository.
7 Wed. Mar 3 Requirements 4
(due 3/11)
Determining the requirements that fulfill the expectations of the software being developed, and using requirements to guide the development process.
8 Wed. Mar 10 Estimation Introduction to techniques for estimating the resources required for a software project, using estimation tools including forward-looking and historical estimators.
Module 3 : Project Processes
9 Wed. Mar 17 Communications and Collaboration 5
(due 4/1)
Use of communication methods and tools for project communication, and uses of communication to facilitate project collaboration.
10 Wed. Mar 24 Managing and Tracking Resources Management and tracking of project resources to enable teams to improve estimates from metrics-based project models.
11 Wed. Mar 31 Managing and Tracking Communications Management , tracking, and analyzing communications within a project to determine the measure the effectivness of the development process. Also looks at the role of unified communications in a software development project.
12 Wed. Apr 7 Managing and Tracking Development Processes Management and tracking of the overall development project in terms of the components that comprise the process, including time and and development resources.
Module 4 : Quality Assurance and Testing
13 Wed. Apr 14 Software Quality Assurance (SQA) Ensuring that a software product meets its functional and quality requirements. Includes approaches to SQA and the use of metrics and statistics.
14 Wed. Apr 21 Software Testing Principles and Practice Reducing the cost of errors in a software system, using techniques for isolating and fixing errors at various stages of the product lifecycle.
Tue. Apr 27 Projects Due -- Presentations
Wed. Apr 28 Project Presentations (additional if needed).