Course Announcement: Software Engineering of Multiprogram Systems

Ruth Dameron in the ECEE department will be teaching a class next semester called the Software Engineering of Multiprogram Systems. This course is going to be taught as a special topics ECEN class, but it can be taken by CS undergraduates and petitioned to count as a CS elective. The course is in the process of being assigned a "real" course number and in the future will be offered as CSCI 4648/5648. More details are below.


The ECEE and CS Departments are creating a new course titled "Software Engineering of Multiprogram Systems", which will be cross-listed as ECEN 4643/5643 and CSCI 4648/5648. Since the course may not be officially created in time for the Spring 2010 semester, it will be taught as an ECEN topics course (ECEN 4043/5043) that semester. The CS Department will allow students to petition to count Spring 2010 ECEN 4043-001 as a Computer Science elective.

This course assumes a background in object-oriented analysis and design. The course considers the software engineering of a product in which multiple processes are running concurrently, sharing data, and communicating as a system in a single environment (not distributed). Since concurrent processes vying for resources can cause performance bottlenecks of various types, we look at how to analyze performance at design time as well as how to design and test synchronization and shared-data communication. We look at how design choices interact with memory management, input/output, and file system support. The newer multicore processors add to the importance that software engineers understand concurrency and its impact on requirements analysis, design and testing.

The call number will be posted here as soon as it is available (in the next few days). Contact Ruth Dameron at <Ruth.Dameron@colorado.edu> for more information.

© Kenneth M. Anderson, 2009.