ECE 373 - Software Intensive Engineering
University of Massachusetts Amherst
The College of Engineering
Department of Electrical and Computer Engineering
UMass Amherst Logo

Calendar Staff Assignments Resources Feedback


09/11/2017    ANNOUNCEMENT - Room change to ILC S140 effective for Wednesday, 9/13 class
09/06/2017    First lecture 12:20-1:10pm in Engineering Building Room 304


This course provides the theoretical and practical foundations for engineering the production of contemporary and future software intensive systems, and provides the basis for the analysis and co-design of complex hardware and software systems.   The course enables advanced engineering problem solving concepts and skills by means of state of the art tools. The primary objectives of the course are to provide a deep introduction to both i) "systems" software programming in a Unix environment and ii) the basic suite of tools for engineering software.  Systems programming topics include process control, static and dynamic linking, exceptional control flow, system-level I/O, network programming, inter-process communication, and concurrent programming.


The prerequisites for the course are either ECE 242 (Data Structures and Algorithms) or CMPSCI 187 (Programming with Data Structures). 
The required textbook is Computer Systems: A Programmer's Perspective.  As the book title indicates, we will cover all topics from a "programmer's perspective" with a focus on how each topic affects software performance and design.  The course will focus on C programming. Since Unix is written in C, it is the language of choice for systems-level programming. The course assumes you are familiar with a C-like language, such as Java, but does not assume you already know or are familiar with C. The classic book that describes C is The C Programming Language, which was written by the original authors of C and Unix.  In some cases, to better understand software performance, we will also look at how C code translates to assembly code.  Thus, while not a required prerequisite, ECE232 is recommended (Hardware Organization and Design).

The class will consist of three lectures on MWF from 12:20-1:10pm in Engineering Building I room 304. 

Course grades will be determined based on the following breakdown:

Please note that all projects and assignments are due by midnight (11:59pm) on the due date. 

Academic Honesty Policy

Since the integrity of the academic enterprise of any institution of higher education requires honesty in scholarship and research, academic honesty is required of all students at the University of Massachusetts Amherst.  Academic dishonesty is prohibited in all programs of the University.  Academic dishonesty includes but is not limited to: cheating, fabrication, plagiarism, and facilitating dishonesty.  Appropriate sanctions may be imposed on any student who has committed an act of academic dishonesty.  Instructors should take reasonable steps to address academic misconduct.  Any person who has reason to believe that a student has committed academic dishonesty should bring such information to the attention of the appropriate course instructor as soon as possible.  Instances of academic dishonesty not related to a specific course should be brought to the attention of the appropriate department Head or Chair.  Since students are expected to be familiar with this policy and the commonly accepted standards of academic integrity, ignorance of such standards is not normally sufficient evidence of lack of intent (\_students/codeofconduct/acadhonesty/).

Inclusivity Statement

We are all members of an academic community with a shared responsibility to cultivate a climate where all students/individuals are valued and where both they and their ideas are treated with respect. The diversity of the participants in this course is a valuable source of ideas, problem solving strategies, and engineering creativity. If you feel that your contribution is not being valued for any reason, please speak with me privately. If you wish to communicate anonymously, you may do so in writing or speak with Dr. Paula Rees, Director of Engineering Diversity Programs (, 413.545.6324, Marston 128).

Accommodation Policy Statement

The University of Massachusetts Amherst is committed to providing an equal educational opportunity for all students.  If you have a documented physical, psychological, or learning disability on file with Disability Services (DS), you may be eligible for reasonable academic accommodations to help you succeed in this course.  If you have a documented disability that requires an accommodation, please notify me within the first two weeks of the semester so that we may make appropriate arrangements.