About COP 3402

This page provides general information about COP 3402 (Systems Software) at the University of Central Florida. The course's home page is www.cs.ucf.edu/~leavens/COP3402/.

This page is organized as follows:

  1. Meetings
  2. Course Textbooks
  3. Accessibility
  4. Deployed Active Duty Military Students
  5. Make-Up Assignments for Authorized University Events or Co-curricular Activities
  6. Religious Observances
  7. Prerequisites
  8. Course Description and Credit Hours
  9. Course Learning Objectives
  10. Course Learning Outcomes
  11. Acknowledgments

The course grading policy and syllabus are on separate web pages. Also on a separate page is our contact information.

Meetings

For lecture class meetings, the time is as follows: Tuesdays and Thursdays from noon to 1:15 PM. The meetings are in the Psychology Building, room 108.

Lab (i.e., recitation) section meetings are your chance to ask questions and get help with the class material. The recitation you should attend is determined by the section of the class you registered for. The lab sections associated with the lecture are:

Section Days and Times Room
0011-LAB Mo 8:30AM - 9:20AM HEC 0117
0012-LAB We 8:30AM - 9:20AM HEC 0117
0013-LAB Fr 8:30AM - 9:20AM CB1 O318

Return to top

COVID-19 and Illness Notification

Students who believe they may have a COVID-19 diagnosis should contact UCF Student Health Services (407-823-2509) so proper contact tracing procedures can take place.

Students should not come to campus if they are ill, are experiencing any symptoms of COVID-19, have tested positive for COVID, or if anyone living in their residence has tested positive or is sick with COVID-19 symptoms. See the CDC guidance for COVID-19 symptoms.

Students should contact their instructor(s) as soon as possible if they miss class for any illness reason to discuss reasonable adjustments that might need to be made. When possible, students should contact their instructor(s) before missing class.

In Case of Faculty Illness

If the instructor falls ill during the semester, there may be changes to this course, including having a backup instructor take over the course. Please look for announcements or mail in Webcourses@UCF or Knights email for any alterations to this course.

Course Accessibility and Disability COVID-19 Supplemental Statement

Accommodations may need to be added or adjusted should this course shift from an on-campus to a remote format. Students with disabilities should speak with their instructor and should contact sas@ucf.edu to discuss specific accommodations for this or other courses.

Return to top

Course Textbooks

There is one required textbook for this course:

Recommended Texts

The following books are recommended.

Additional Readings

If you want more reading material, or help with background and concepts, then you may want to check out books on the course topics from the UCF Library.

We may use other material as described in the syllabus's bibliography.

Return to top

Accessibility

We are happy to help with accessibility issues. The procedure is outlined in the following statement (modified from the faculty center for teaching and learning's web site):

The University of Central Florida is committed to providing access and inclusion for all persons. Students who have accessibility issues "due to course design limitations should contact the professor as soon as possible. Students should also connect with Student Accessibility Services (SAS) (Ferrell Commons 185, sas@ucf.edu, phone 407-823-2371). For students connected with SAS, a Course Accessibility Letter may be created and sent to professors, which informs faculty of potential course access and accommodations that might be necessary and reasonable. Determining reasonable access and accommodations requires consideration of the course design, course learning objectives and the individual academic and course barriers experienced by the student. Further conversation with SAS, faculty and the student may be warranted to ensure an accessible course experience."

Return to top

Deployed Active Duty Military Students

Quoting from the faculty center for teaching and learning's web site:

"Students who are deployed active duty military and/or National Guard personnel and require accommodation should contact their instructors as soon as possible after the semester begins and/or after they receive notification of deployment to make related arrangements."

Return to top

Make-Up Assignments for Authorized University Events or Co-curricular Activities

Quoting from the faculty center for teaching and learning's web site:

"Students who represent the university in an authorized event or activity (for example, student-athletes) and who are unable to meet a course deadline due to a conflict with that event must provide the instructor with documentation in advance to arrange a make-up. No penalty will be applied. For more information, see UCF policy 4-401."

Return to top

Religious Observances

Quoting from the faculty center for teaching and learning's web site:

"Students must notify their instructor in advance if they intend to miss class for a religious observance. For more information, see UCF regulation 5.020."

Return to top

Prerequisites

The formal prerequisite in the University of Central Florida catalog is "CDA 3103C and COP 3502C each with a grade of "C" (2.0) or better."

See the professor if you have questions about the prerequisites.

Return to top

Course Description and Credit Hours

COP 3402 is a 3 credit course is titled "Systems Software."

From the University of Central Florida Catalog: " Design and development of assemblers, linkers, loaders, and compilers. Study memory hierarchy, program performance, and system level I/O."

Explanation

Systems Software consists of tools that enable the running of programs on computers. This includes software tools that:

Also included in the term "systems software" is the code for the operating system itself. An operating system (OS) is a program that provides an interface to between users (and their programs) and the computer's hardware. The OS manages and provides security for the computer's resources. Of particular concern to us, in terms of the code that comprises an OS, is how the OS interacts with other software tools; for example, how does the OS interact with loaders, dynamic linkers, and debuggers? How the OS manages storage is an important interaction with compilers and assemblers.

Motivation for the Course Objectives

An understanding of how systems software, especially compilers, works is essential for developers, because:

Motivation for the Course Plan

Because programming is an essential tool for Computer Scientists, and because the goal of systems software is to help people run programs, it is important to understand how system software works. One could also say that systems software describes how essential tools work for Computer Scientists.

Furthermore, many techniques that are used in systems software, such as parsing and recursion over grammars, are widely used in Computer Science; thus learning these techniques will help in building other kinds of applications.

Return to top

Course Learning Objectives

The objectives for this course are divided into two parts: a set of essential objectives, and a set of enrichment objectives. The essential objectives will be helpful for your career as a computer scientist; hence they lead to the course's essential outcomes that we want to help you master. The enrichment objectives are less important for the course, but lead to enrichment outcomes that you are encouraged to explore both for their own sake and because learning more about those will help deepen your understanding of the essential objectives.

This course's objectives are linked to the CS program's educational objectives (in references that look like this: [CSPEO2]).

Essential Objectives

In one sentence, this course's main objective is that you will be able to work with a team to design and implement systems software [CSPEO2].

In more detail the essential objectives for this course are that you will be able to:

Enrichment Objectives

Enrichment objectives could be multiplied without limit, but the following seem most important, especially in relation to the CS program's learning objectives.

The course's enrichment objectives are that you will be able to:

Course Learning Outcomes

This course's learning outcomes are divided into two parts: a set of essential outcomes, and a set of enrichment outcomes. The essential outcomes are designed to support this course's essential learning objectives, and thus to be helpful for your career as a computer scientist or software engineer; hence we want to help you to master them. They also form the basis for grading and assessment of your learning. The enrichment outcomes are not used directly for assessment. However, you are encouraged to explore topics related to the enrichment outcomes both for their own sake and because learning more about those will help your performance relative to the essential outcomes.

The course's outcomes are linked to the course's objectives and to the computer science program's outcomes. The links to this course's objectives are shown in references that look like this: [Implement]. The links to the CS program's student outcomes are shown in references that look like this: [CSOut2]).

Essential Outcomes

In one sentence, this course's main expected learning outcome is that you will be able to, in a team, effectively and correctly implement system software [Participate] [Explain] [Implement] [Evaluate] [CSOut1] [CSOut2] [CSOut6] [CSOut7] [CSOut8].

In more detail, the essential objectives for this course are that you will be able to:

Enrichment Outcomes

Enrichment outcomes could be multiplied without limit, but the following seem most important, especially in relation to the CS program's learning outcomes.

The course's enrichment outcomes are that you will be able to:

Return to top

Acknowledgments

Many thanks to Euripides Montagne for discussions about this course.

Thanks to Curtis Clifton (now at Apple) for his initial work on the HTML for these web pages, which I have adapted from another course, and his style sheets, which I have also adapted.

Return to top

Last modified Monday, February 6, 2023.

This web page is for COP 3402 at the University of Central Florida. The details of this course are subject to change as experience dictates. You will be informed of any changes. Please direct any comments or questions to Gary T. Leavens at Leavens@ucf.edu. Some of the policies and web pages for this course are quoted or adapted from other courses I have taught, in partciular, COP 4020.