Introduction

Steven J. Zeil

Last modified: Aug 30, 2020
Contents:

1 The Course

Students will explore the process of automating the integration of changes into a code base, the testing of that code on varied platforms, and the delivery and deployment of the code products.

1.1 This is About Late-Stage Software Engineering

We can divide the activities that make up the lifetime of a software project into:

Development Operations
Activities
Supporting Technology

1.2 Key Concepts

Key concepts to be explored will be:

1.3 Demonstration Projects

Part of this course will be hands-on

1.4 Expect to use:

1.5 This is Not a Finished Course

This is intended as a prototype for a future course to be offered at the 400/500 level.

2 What You Will Be Doing

2.1 Lesson Plans

Each student will be expected to prepare a lesson plan on a topic selected in conjunction with the instructor. This lesson plan will consist of

All students will be expected to read all lesson plans.

2.2 Reviews

Each student will also be assigned to formally review two lesson plans created by other students. This review will entail

* Critiquing the introductory document and choice of readings.
* Attempting the lab/assignment, while keeping a log of steps performed and difficulties encountered.

2.3 Examples of Possible Topics

2.4 Demonstration Project

Each student must maintain, through the semester, a demonstration project involving a non-trivial amount of code, preferably code that includes some system dependencies.

2.5 Grading

Tasks Grade %
Lesson plan 35%
Lesson reviews 30%
Demonstration project 25%
Class participation 10%