Link Search Menu Expand Document

Course Policies and Expectations

Table of contents

  1. Contacting the course staff
  2. Course Objectives
  3. Book and materials
  4. Assessments
    1. Summary
    2. Homework
    3. Labs
    4. Project
    5. Capstone
  5. Classroom Community
  6. Diversity, Equity, and Inclusion
  7. Accessibility and Accommodations
  8. Class Recording
  9. Academic Integrity/Collaboration Policy

Contacting the course staff

For extension and accommodation requests, contact Milda only (per University and department policy, TAs do not handle extension or accommodation requests). Milda is also happy to help with issues that you are not comfortable bringing to a TA.

To get a faster response to your course questions, please use EdSTEM to communicate with the staff as a whole. For matters that warrant e-mail, use cs1600tas@lists.brown.edu. Unless asked to, please refrain from emailing individual TAs – you will get a much faster response if you contact all of us.

Course Objectives

  • Recognize the purpose of embedded and real-time software

  • Understand the resource constraints specific to embedded software systems

  • Engineer complex systems that may be connected to multiple sensors and actuators working together

  • Conceptualize how code is loaded and executed on an embedded microcontroller at the architecture level

  • Apply principles of software engineering to developing embedded systems, including specific practices for safety-critical systems

  • Use models of embedded systems to verify properties of the systems

  • Recognize the societal impacts of designing and writing embedded software

  • Engineer an embedded system project developed in collaboration with others, by applying principles learned in the course

Book and materials

Introduction to Embedded Systems by Lee and Seshia (available for free online)

Supplemental reading and materials will be made available

MKR1000 Arduino and SunFounder electronics kit (both available at the bookstore) or Arduino MKR IoT Bundle (limited supplies available at the bookstore). Note that an Arduino other than the MKR1000 will not work for some of the labs.

Assessments

Summary

Assignment typeWhen dueType of gradingWeightNotes
HomeworksMost Wednesdays and Fridays at 11amGood-effort completion (Individual)10%Three dropped
PrelabMost Mondays at 11amAutomatically graded; resubmission allowed (Individual) Part of lab grade
In-class labChecked off Monday/Tuesday during labChecked off according to rubric (Partner)60% (7.5% per lab)Must complete all labs to get A in course and 6/8 labs to pass course. Late labs checkoff permitted.
Lab writeupMondays at 11am (with next prelab)Graded for correctness according to rubric (Individual) Part of lab grade
ProjectMultiple due dates during the semesterGood-effort completion and according to rubric (Individual and Group components)30%More information on each part of the project will be posted as class progresses

Homework

Homework exercises are due by 11am of the corresponding class day. During some clases, students will be called on to present their homework and participate in group discussions. Homework is graded on “good faith” effort/completion, rather than correctness. Because homeworks are tied to the in-class participation of the corresponding class session, there are no late homeworks accepted.

Labs

Labs are larger technical assignments that will include pre-lab, checkoff, and writeup components. In-person demonstration of learning is a large portion of each lab grade, with a TA checking off progress throughout the lab session. A pre-lab is due before each lab and a writeup is due after each lab. We will provide a rubric along with each lab that clearly defines the grading for the lab. The in-class lab portion is intended to be done in pairs, but we will accommodate larger groups at the beginning of the semester in order to share supplies. When working in pairs, we ask that you work with a different partner every time. Pre-labs and writeups are to be done individually.

Late labs are accepted, but there is a 10% penalty for each week that the lab is late (can be waived in light of special circumstances by contacting Milda). Lateness is calculated according to the hand-in date of the lab component (so you could, for example, finish the lab on time, but receive a late penalty on the writeup). Late prelabs are not accepted without prior approval.

Because in-person labs and collaboration are a large part of the class, there is no remote option for the class this semester. If you have a circumstance that requires you to miss lab for a portion of the semester, please contact Milda for accommodation.

Project

A major component of the course is a group project that draws on principles taught in class. A project proposal and mid-point demo and report are due during the semester, and a final demo and report are due at the end of the semester.

In lieu of a final exam, the reports are the conduit by which you can provide evidence that you met the learning objectives of the course. To give you a fair chance at communicating this, the reports will ask you to answer specific questions about how your project meets these objectives. The reports will initially be graded before reading period, and you will be given the opportunity to expand on any questions raised in feedback.

Late projects are not accepted except by exceptional circumstances at the discretion of the instructor.

Capstone

This course can be used as a capstone course. In this course, the capstone consists of some extra functionality related to the final project, that you propose and implement on your own. After your group submits the project proposal, you will send me a short description for some idea(s) you have for a capstone. We will meet to discuss and flesh out the idea, and you will implement this work. The capstone work will be considered complete when you demonstrate the functionality to me and submit a writeup that details your approach.

Classroom Community

This is the third offering of the course, which means that we are still actively revising it. There may be hiccups along the way, and my intention is to build trust with you so that we can communicate about these hiccups and smooth them out. As such, I will actively be asking for and following up on your feedback about the course (with the intent of demonstrating to you that your feedback is valuable). The policies in this document are subject to change based on our discussions, and will be communicated clearly ahead of time. I will ask for feedback periodically during class, in reflection questions in the lab writeups, and through the anonymous feedback form.

Diversity, Equity, and Inclusion

Engineering, including software engineering for embedded and real-time systems, involves working with people to create artifacts that will be used by people. As we will see in this course, it is vital to be conscientious of how we work with others and how the things we build will impact others and society as a whole.

This course has a major participation and collaboration component. My goal is to foster a welcoming and inclusive environment, where your identities and experiences are honored. If you do not feel like this is the case at any point in the course, please let the course staff know.

I am always open to inspecting my own biases or changing the course content/format to better suit students’ needs. If you have concerns, again, please reach out to me personally or submit anonymous feedback. You can also come to the TAs, or contact the department’s student advocates. Department staff and faculty resources include Lauren Clarke (department manager), Tom Doeppner and Kathi Fisler (the directors of undergraduate studies), and Roberto Tamassia (department chair).

Accessibility and Accommodations

Brown University is committed to full inclusion of all students. Please inform me early in the term if you may require accommodations or modification of any of course procedures. You may speak with me after class, during office hours, or by appointment. If you need accommodations around online learning or in classroom accommodations, please be sure to reach out to Student Accessibility Services (SAS) for their assistance (seas@brown.edu, 401-863-9588). Undergraduates in need of short-term academic advice or support can contact an academic dean in the College by emailing college@brown.edu. Graduate students may contact one of the deans in the Graduate School by emailing graduate_school@brown.edu.

I also want to acknowledge the very real role stress and mental health play in students’ lives. I will make reasonable accommodations if you contact me for extensions or other mental health needs, and I also encourage you to reach out to CAPS as a university resource. At the department level, you can contact your student health and wellness advocates.

Class Recording

The lecture portion of the class will be recorded automatically using lecture capture. These recordings will be made available to students registered in the class.

Academic Integrity/Collaboration Policy

This class encourages collaboration and cooperation, but also expects that you submit your own work for individual assessments. The distinction between individual assessments and group work will be made clear for all assignments.

From the University’s Academic Code (page 5), “A student’s name on any exercise (e.g., a theme, report, notebook, performance, computer program, course paper, quiz, or examination) is regarded as assurance that the exercise is the result of the student’s own thoughts and study, stated in his or her own words, and produced without assistance, except as quotation marks, references, and footnotes acknowledge the use of printed sources or other outside help.” Assistance includes AI tools, such as ChatGPT and CoPilot.