CSE498, Collaborative Design, Spring 2021
Computer Science and Engineering
Michigan State University

Syllabus

Printable PDF...
  1. Professor

    Dr. Wayne Dyksen
    Professor of Computer Science and Engineering
    3149 Engineering Building
    (517) 353-5573
    dyksen@msu.edu

  2. Teaching Assistants

    James Mariani
    Graduate Teaching Assistant
    Room 3322 Engineering Building
    (517) 353-8734
    mariani4@msu.edu

    Luke Sperling
    Graduate Teaching Assistant
    Room 3322 Engineering Building
    (517) 353-8734
    sperli14@msu.edu


  3. Meeting Times

    Lecture: Tuesday, Thursday, 10:20 a.m. – 11:40 a.m. ET, Microsoft Teams General Channel

    Lab: TBA, 3322 Engineering Building, 3340 Engineering Building, 3352 Engineering Building and 3358 Engineering Building

  4. Web Site

    www.capstone.cse.msu.edu

  5. Catalog Description

    Credits: 4 (2 – 4), Lecture/Recitation/Discussion Hours: 2, Lab Hours: 4.

    Prerequisites: In order to enroll in CSE498, a student must have successfully completed each of the following in advance:

    • CSE 325 or CSE 410;
    • CSE 335;
    • at least two CSE technical 400-level courses chosen from CSE 402, CSE 404, CSE 410, CSE 415, CSE 420, CSE 422, CSE 425, CSE 431, CSE 435, CSE 440, CSE 450, CSE 460, CSE 471, CSE 472, CSE 476, CSE 477, CSE 480 and CSE 482;
    • and WRA (Tier I Writing Requirement).

    Restrictions: Open only to students in the Computer Science Major or in the Lyman Briggs Computer Science Coordinate Major.

    Description: Development of a comprehensive software and/or hardware solution to a problem in a team setting with emphasis on working with a project sponsor. Participation in a design cycle including specification, design, implementation, testing, maintenance and documentation. Issues of professionalism, ethics and communication.

  6. Prerequisites

    In order to be enrolled in CSE498, a student must have successfully completed the prequisites listed above in the section titled Catalog Description. These requirements are prerequisites, which means that they must be completed successfully, in advance of the semester in which a student is enrolled in CSE498.

    If a student has not met these prerequisites, they are disenrolled from CSE498 unless they have specific permission to enroll from the professor.

  7. Course Objectives

    The course objectives for CSE498 include the following:

    • design, develop, debug, document and deliver a complete software system to a project sponsor,
    • work effectively in a team environment,
    • develop written and oral communication skills,
    • become proficient with software development tools and environments,
    • learn about system building and system administration,
    • consider issues of professionalism and ethics,
    • integrate knowledge and skills from other computer science courses, and
    • transition from being students to professionals.
  8. Team Projects

    Each student team designs, develops, debugs, documents and delivers a complete software system for a project sponsor. The sponsor organizations range in type from industry to non-profits to academic and in size from small startups to large global companies.

    Project sponsor contacts are busy professionals. With respect to CSE498, they are volunteers who are doing students and teams a favor. Students must work with them in a respectful manner. If there are problems getting responses from project sponsors, let the professor and the teaching assistants know, and we will handle it.

    Each team selects one team member who is the main contact for the project sponsor. The computing experiences of project sponsors may vary widely from basic software users to experienced software developers.

    For most of a student’s academic experiences, they have been handed a complete system architecture with detailed specifications and asked to develop it. For this course, learning the underlying business processes, gathering the system requirements, and architecting the system are often the most difficult challenge, particularly when working with users who are not sure about what software technologies they need to solve their problem.

    Each project must be the right level of difficulty. On the one hand, it must be difficult enough to warrant four credits in a computer science major from one of the top programs in the country, MSU. On the other, it must be simple enough to be completed and delivered in one semester. What constitutes the right level of difficulty is something that each team works out with their project sponsor and with us. As a team designs their projects, they should do so with levels of deliverables where the first level is clearly achieveable, the second is likely achieveable and the third is possibly achieveable.

    Each team must deliver a completed project to their project sponsor on time. Period. There are no exceptions. No excuses are considered or accepted. Thus, it is in a team’s best interest to propose something that is acceptable to their sponsor and to us, and is achieveable.

    Completed software and systems are submitted to the project sponsors at the end of the semester.

  9. Course Materials

    There are no required or recommended textbooks, software or course packets to be purchased for this course. Teams are provided with any and all software, hardware and documentation required to complete their project.

  10. Business-Like Course Environment

    One goal of this course is to give students a non-academic experience similar to that of an internship. Hence, we run this course as business-like as possible. We view each team as a small company attempting to deliver a software product to a customer. We assign students to teams so as to best distribute the variety of skills and experiences.

  11. Team Dynamics

    One goal of this course is to give students a significant experience working on a team. Students may be working with people whom they did not know prior to the course, and whose experiences and abilities may be very different from theirs. The challenge is to take a disparate group of individuals and form a real team. Each team may organize itself as it sees fit; we offer advice and counsel.

  12. Project Management, Major Milestones and Deliverables

    Each team is expected to manage its own project. Each project is divided up into milestones with specific deliverables due on specific dates. While the completed project at the end of the semester is one very important milestone, all of the major milestones are considered important. Meeting the milestones factors significantly into the final course grade.

    For a description of major milestones with due dates see Major Milestones.

    Project deliverables include but are not limited to the following:

  13. Use of Eastern Time (ET)

    Unless indicated otherwise, all times specified are Eastern Time (ET), either Eastern Standard Time (EST) or Eastern Daylight Time (EDT), depending on the time of year.

    These times include but are not limited to meeting times and submission deadline times.

  14. All-Hands Meeting Attendance

    Our all-hands meetings are held online using our Microsoft Teams General Channel.

    The format of all-hands meetings includes lectures, team status reports, team formal presentations, project videos and possibly guest speakers.

    In order to maintain a business-like environment, the wearing of hats, hoods and coats during our all-hands meetings is prohibited. While the dress code is normally casual, everyone is expected to look professional.

    Attendance is a significant factor in the final course grade comprising at least 5% of the final course grade. (See Grading below.)

    On-time attendance is required. “On-time” means joined to the Microsoft Teams meeting by 10:20 a.m.

    If a student joins the meeting after 10:20 a.m. but before 10:25 a.m., they are marked late. If a student joins the meeting after 10:25 a.m., they are marked absent. Almost no excuses for lateness or absence are accepted.

    Students are required to join a meeting using a device and a location that is appropriate for a business meeting. In general, appropriate devices include a laptop or a desktop, and an appropriate location is a quiet, semi-private place like a room in an apartment or at home, or a dorm room. If the instructors deem that a student has joined a meeting using a device or from a location that is inapproriate, that student will be marked absent for that meeting.

    A student may elect to join a meeting using a laptop or a desktop and a mobile device such as a phone to ensure a continued, stable connection to Microsoft Teams.

    Meeting attendance is taken using a variety of mechanisms. At the end of the each meeting, we download from Microsoft Teams the meeting attendees, which includes a list of who joined and left the meeting, and when. In addition, at random times during a meeting, students are given one minute to complete a Google Form to indicate their attendance and alertness. Finally, at the end of the meeting, students are given one minute to complete a final Google Form to indicate their attendance at the end of the meeting. If a student fails to complete a Google Form, we assume that they have left the meeting, in which case they are marked absent.

    If a student arranges to have someone sign in for them or if they sign in for someone else, they may lose up to 5 Attendance points and may receive a zero in the course for academic dishonesty.

    One Attendance point is deducted for each time a student is absent without excuse and 0.5 Attendance points are deducted for each time a student is late without excuse.

    Students begin the semester with 5 Attendance points. Attendance points are deducted from these initial five points as described above. It is very important to note that Attendance points continue to be deducted even after Attendance points reach zero so that a student’s final Attendance points may be negative, which effectively deducts points from other grade categories. (See Team Meetings, Grading and Minimal Grade Requirements below.)

    If a student’s Attendance points are low or negative, their Team Contribution grade may be affected as well, which may have a significant effect on their final grade.

    One or two all-hands meetings may be missed in the case of job interviews. In order to be excused, a student must supply the professor and their teaching assistant in advance with the meeting date to be missed, the name of the company, the name and contact information (email and phone number) of their recruiter.

    Attendance at meetings during which a team makes a presentation is absolutely required. No excuses for absence or lateness are accepted, including but not limited to job interviews. In general, there are multiple meetings for each type of team presentation. If necessary, we work with students and teams to coordinate as much as possible team presentations and job interviews. If a student is absent for any of their team presentations, they may lose up to 5 Attendance points and may also lose Team Contribution points. (See Grading and Minimal Grade Requirements below.)

    We view the final project videos together during the regularly scheduled meeting times on April 14 and April 20 and during the scheduled final exam time, which is Friday, April 30, 7:45 a.m. – 9:45 a.m. ET. Attendance by everyone for viewing all project videos is required. No trips should be scheduled that conflict with these meetings. Job interviews are not accepted as an excuse for missing any of the final project video viewings. If a student is absent for any of these final meetings, they may lose up to 5 Attendance points and may lose Team Contribution points, which may have a significant effect on their final grade.

    On meeting days when teams give team presentatations (Project Plan Presentations, Alpha Presentations and Beta Presentations), and on meeting days when we watch Project Videos, we split into two groups based on teaching assistants and teams. On those days, we meet in two separate Microsoft Teams channels initiated by each team’s teaching assistant.

  15. Microsoft Teams Meetings Computing Requirements

    All of our Capstone meetings are held online using Microsoft Teams or Zoom or some other similar platform. This includes all-hands meetings when we all meet, team triage meetings when teams meet with their TAs, team meetings when teams meet as a team, and project sponsor meetings when teams meet with their project sponsor.

    For all online meetings, students are required to use either a desktop or laptop computer equipped with a camera, microphone and speakers. The device and internet connection must be fast enough to handle receiving and sending clear audio and clear video, which includes screen sharing.

    When teams meet with their TA during triage meetings, students may be asked to demonstrate project software. They must be able to demonstrate their software online when asked to do so, normally by sharing a screen in Microsoft Teams.

    In particular, students cannot use as an excuse that they are not able to demonstrate their software because it does not run on the device with which they are connected to a meeting. As an example, it is not be acceptable for a student to say that they are not able to demonstrate their software because it only works on their laptop, but they are connected to the meeting using a mobile phone or tablet.

    If a student is not able to demonstrate their software, we assume that they have not completed their assigned task and grade them accordingly. To this end, it is important to practice demonstrating software online with teammates in advance of meetings.

  16. Meetings (Microsoft Teams Meetings) Dress Code

    In general, the dress code for meetings is casual. Although the dress code is normally casual, students are expected to look professional.

    As an exception, on the days when teams are making formal presentations, the dress code for the presenting teams is business casual.

    As with most business meetings, hats, hoods (of coats or sweatshirts or hoodies) and coats may not be worn during our meetings.

    Hint. Google “dress code casual” and “dress code business casual.”

  17. All-Hands Meetings (Microsoft Teams Meetings) Eating

    As with most business meetings, eating during our meetings is prohibited.

  18. Team Meetings

    Team meetings include a weekly triage meeting with the teaching assistant, a weekly meeting with the project sponsor, and one or more weekly meetings with the team itself. Meetings are held remotely either by phone or Microsoft Teams or Zoom.

    Attendance by every team member at every team meeting is required.

    Almost no excuses for absences or lateness are accepted.

    If a student is absent from a team triage meeting, one Attendance point is deducted for each occurance. If late, 0.5 Attendance points are deducted.

    As part of the weekly team triage meetings, each student is required to fill out a Google Form and submit Google Slides to show what they and their teammates have completed during the previous week and what their plans are for the coming week. If either task is done late or not at all, 0.5 Attendance points are deducted for each occurance.

    Attendance is a significant factor, comprising at least 5% of the course final grade. If a student has more than five unexcused absences, their attendance grade may be negative, which effectively deducts points from other grade categories. Moreover, if they have more than five unexcused absences, their Team Contribution grade may be affected, which may have a significant effect on the final course grade. (See Grading and Minimal Grade Requirements below.)

    One or two team meetings may be missed in the case of job interviews. In order to be excused, a student must supply the professor and their teaching assistant in advance with the meeting date to be missed, the name of the company, the name and contact information (email and phone number) of their recruiter.

  19. The Capstone Experience Labs Sponsored By Amazon

    The labs include rooms 3322 Engineering Building, 3340 Engineering Building, 3352 Engineering Building and 3358 Engineering Building.

    Each team is assigned two iMacs. In addition to Apple‘s macOS Big Sur, these iMacs have the capacity to run virtual machines with Windows or Linux using VMware Fusion. These iMacs can be used for both software development and as servers.

    Each team is completely responsible for their computers, including building them, maintaining them, securing them (both internally and externally), and backing them up.

    Team members are able to access the iMacs in the labs remotely. Instructions are provided by the teaching assistants.

  20. Scheduled Lab Times

    There are no formal lab sessions. However, teams are expected to meet at least twice weekly, once for triage meetings with the professor and/or teaching assistant and once for team meetings.

  21. Expectations and Workload

    We have high workload expectations for this course. It is one of the most important courses for a student’s resume and portfolio of experiences. It is the capstone of their computer science career at MSU. This course provides each student with the opportunity to showcase their abilities on a significant non-academic software project. In addition, the Capstone Experience provides significant talking points for future job interviews.

  22. Submission of Deliverables

    Project videos are due on the Wednesday of the penultimate week of classes. All deliverables are due on the Wednesday of the last week of classes. All deliverables include all source code (checked out of any repository), the project plan document, all-hands meeting PowerPoint presentations, and the final project video, organized appropriately in folders.

    Instructions for submission of the project videos and all deliverables are given at the appropriate time.

  23. Grading

    A student’s final course grade is based both on a team’s performance and a student’s individual performance. What follows is a list of grading categories along with the point distribution.

    Team Grade (70%)
    Project Plan Presentation & Document 10.0
    Alpha Presentation 10.0
    Beta Presentation 10.0
    Project Video 10.0
    Project Software & Documentation 25.0
    Design Day   5.0
    Team Total 70.0
    Individual Grade (30%)
    Technical Contribution 10.0
    Team Contribution 10.0
    Team Evaluation Form 5.0
    Meeting Attendance and Preparation   5.0
    Individual Total 30.0

    For a final grade, each student earns the sum of their individual grade plus a prorated percentage of their team’s grade based on the corresponding percentage of their Team Contribution grade as follows:

    Prorated Team Total = (Team Total) * (Team Contribution) / 10.0,

    Grand Total = (Individual Total) + (Prorated Team Total).

    Note that the Team Contribution grade has a very significant effect on the final grade.

    For example, if an individual’s Team Contribution grade is 10.0, then they earn 100% of the team grade. If the Team Contribution is 9.0, then they earn 90% of the team grade, and so on.

    So, if a student is not a contributing team member, they run the risk of not passing CSE498, which is required for graduation.

    In other courses, students may have experienced team projects in which one person or a few persons did all of the work, while everyone on the team received the same credit and the same grade for the entire team. This is not the case in CSE498. Each student is evaluated on their individual Technical Contribution and their Team Contribution. If they do not contribute significantly, they risk not passing the course.

    No special consideration is given for final grades including but not limited to status as a CSE major, status in any academic program, financial aid, rank in the armed forces, job while a student a MSU, job after anticipated graduation from MSU, commute to MSU, graduation, mortgage, upcoming weddings, ability to enroll in CSE498 next semester, or visa status.

    We reserve the right to make reasonable changes during the semester with sufficient notice.

    In addition, see Minimal Grade Requirements below.

  24. Minimal Grade Requirements

    In order to be eligible to earn a non-zero final course grade, a student must earn at least 50% in every one of the grading categories given above in Grading. That is, in order to be eligible to earn a non-zero final course grade, a student must earn at least the following required minimal grades.

    Minimal Team Grade Requirements
    Project Plan Presentation & Document 5.0/10.0
    Alpha Presentation 5.0/10.0
    Beta Presentation 5.0/10.0
    Project Video 5.0/10.0
    Project Software & Documentation 12.5/25.0
    Design Day   2.5/5.0
    Minimal Individual Grade Requirements
    Technical Contribution 5.0/10.0
    Team Contribution 5.0/10.0
    Team Evaluation Form 2.5/5.0
    Meeting Attendance and Preparation   2.5/5.0

    If a student fails to meet these minimum grade requirements, they may be assigned a course grade of 0.0.

  25. VISA (Verified Individualized Services and Accommodations) Forms

    Michigan State University is committed to providing equal opportunity for participation in all programs, services and activities. Requests for accommodations by persons with disabilities may be made by contacting the Resource Center for Persons with Disabilities at (517) 884-RCPD or on the web at rcpd.msu.edu. Once a student’s eligibility for an accommodation has been determined, they are issued a Verified Individual Services Accommodation (VISA) form. Please inform the professor at the start of the semester as soon as possible.

  26. Integrity of Scholarship

    The Department of Computer Science and Engineering expects all students to adhere to MSU’s policy on Integrity of Scholarship and Grades, which includes the statement, “...all academic work will be done by the student to whom it is assigned, without unauthorized aid of any kind” (Academic Programs, General Procedures and Regulations). General Student Regulation 1.00 in the student handbook (Spartan Life) also addresses this issue.

    Among other things, providing false information to the professor, teaching assistants or team members about matters related to the course will be considered academic dishonesty.

    Any evidence of academic dishonesty will be grounds for receiving a final grade of 0.0 for the course.

  27. Nota Bene

    In the case of discrepancies between the version of the syllabus posted on the course web site Syllabus page and the downloadable PDF version, the web site version takes precedence.

    We reserve the right to make reasonable changes to this syllabus during the semester with reasonable notice.