Instructor: Rob Hasker (414-277-7326)
Drop-in times (office hours): See my home page: https://faculty-web.msoe.edu/hasker/
| Textbook: |
|
Course Description:
This course introduces students to software design and development of real
time distributed systems. Real-time applications include flight control
systems, vehicle control systems, industrial processes, life-support
systems, robotic manipulators, and multimedia applications. Special
attention is paid to scheduling, latency minimization, bandwidth
constraints, and other design issues that impact the design of these
systems. Team based laboratory assignments provide experience in the design
and implementation of realistic applications using a real-time operating
system, cross compilation, and embedded development boards.
Prereq: CSC 2210, CSC 3210
Format: 2 lecture hours, 2 lab hours, 3 credits
Course Outcomes: On successful completion of this course, the student will be able to
Grading:
| Percentage | |||
|---|---|---|---|
| Labs | 35% | ||
| Quizzes/Homework: | 15% | ||
| Midterm: | 25% | ||
| Final Exam: | 25% | ||
| Total: | 100% |
The MSOE grading scale will be used, though higher grades may be awarded to individual students if it increases fairness. In addition, successfully demonstrating mastery of course outcomes is a prerequisite for a passing grade. This includes being successful on the final exam and, in some cases, completing assignments even if worth zero points.
Most materials will be available on my class web site, https://faculty-web.msoe.edu/hasker/swe4211/ or in Canvas. For instance, quizzes will be in Canvas but links to notes will be on the website. I will also communicate to the class on Teams; it is critical you enable notifications for the Teams entries for this class. Many announcements will be made that way and no other. I expect you to check for electronic communications at least once a day. I may use email at times, but my preferred form of communication for this course is Teams since that is the campus standard.
My office hours are listed as "drop-in" times to emphasize that you do not have to have an appointment to come see me. You can come other times as well! I am always glad to help students with challenges. I do expect you to have spent a few minutes checking for answers on the class website and Teams before requesting help, but absolutely would rather you ask for help than spend hours trying to find solutions on your own.
Lab solutions which do not run or which do not produce some correct output will be worth 0 points. You can get partial credit for partially working solutions. Estimate how long the lab will take, and see me if you have to double that time!
Unless otherwise announced, late solutions will be penalized 2% per day for up to 3 days. Because sometimes 3 days are not enough, students can use the More Time, Please! form to request 7 more days (for a total of 10 days). Note that penalties will continue to accrue over that time unless you have an adequate reason. You can document that reason on the form, but you might want to email your instructor to clarify such cases. See the form for additional policies; in particular, you can use this form for CSC 2210 just twice in a semester. Solutions submitted late (up to 3 days late without using the form and up to 10 days late with the form) are worth zero points. Unless you have written permission, all assignments must be submitted by the Saturday before the start of finals, including late assignments. Note that quizzes and exams have a due date and you will not be able to submit those after that due date (with or without the form). You can submit a late solution to any assignment with this policy; this includes reading assignments, programming assignments, and exercises.
Because we use multiple tools to collect assignments, there may be discrepencies between due dates. The date in Canvas is considered the most correct date, but please ask if you find discrepencies.
Because you will be working in groups for certain labs and some of that group work will be during lecture hours, it is important that students be in the same sections for lecture and lab. Students who miss group lab times may get a zero for the entire lab.
All submitted work is expected to be consistent with the academic integrity guidance for CSC and SWE courses. This clarifies how the campus academic integrity policy applies to computing assignments including when citations are necessary. Generally, you can satisfy this policy simply by not copying code from other students into your projects and citing code you obtain online. You can help other students with their solutions, but do not help by showing them your code or writing code for them. Unless explicitly permitted, using artificial intelligence to write your solution will be treated as a form of plagiarism. Electronic tools may be used to identify plagiarism.
Code will be graded for both correctness and meeting published standards. The most frequent mistake is in using (hard) tab characters in source files - this is a practice that is strongly discouraged in industry, and it makes your code harder to grade. Configure your IDE to insert spaces instead of tabs. The standard also covers repositories. Note that git repositories created by your instructor will be deleted after the end of the term; copy any code you wish to keep to your own, private repository.
Students are expected to use standard tools as discussed in lab writeups and Canvas. This includes the campus-provided laptop. If you use an alternative, it will be your responsibility to master that alternative and to ensure you meet deadlines.
Missed quizzes cannot be made up, but the lowest quiz or homework score may be dropped. Many quizzes will be online with flexible times. Exams will typically be scheduled during class time and students must take the exam in class or the testing center (as appopriate).
Do not skip class! If you do happen to miss, be sure to check for new materials and get the notes you missed from a friend before the next class period. You are responsible for anything missed! If you need to be excused from class for MSOE activities or religious observances, let me know in advance. If you're sick, stay home! This includes days on which there are exams; just be sure to contact me as soon as you can get to a phone or computer.
Using phones and laptops during class to browse social media, write papers, etc. is a form of missing class!
Strongly consider taking hand-written notes for this class. The slides omit many details on purpose. Do not try to type your notes; research shows hand-written notes are the most effective way to capture key material. Note the campus printers will easily scan documents so you can organize your notes electronically.
Do not record or distribute video or audio of lectures without my permission.
If an exam is missed, I will determine whether to give you a make-up exam or increase the weight of the other exams. All students must take the final exam to receive a passing grade unless the student has been excused in advance.
For students with documented disabilities, chronic medication conditions and mental health concerns: MSOE provides services to make reasonable accommodations available. If you are a student who requires or anticipates the need for accommodations, please contact Student Accessibility Services Office at 414-277-7281, by email at moureau@msoe.edu, or in person at K250 to discuss appropriate accommodations and eligibility requirements.