Course Syllabus - Spring - 2008
Dr. Wayne Dyksen, 3149 EB, 353-5573, 310 AUD, 355-9300, firstname.lastname@example.org
2. Teaching Assistant
Matthew Luciw, 2335 EB, 432-9475,
3. Meeting Times
a. Lecture: MW, 3:00-3:50pm (2243 EB)
b. Labs: TT, 3:00-3:50pm ; WF, 8:00-9:50am; WF, 12:40-2:30pm (3352 EB)
4. Web Site
a. URL: www.cse.msu.edu/~cse498
b. Username: cse498
c. Password: TBD
5. Catalog Description
a. Credits: 4 (2-4), Lecture/Recitation/Discussion Hours: 2, Lab Hours: 4.
b. Prerequisites: (CSE 335 and CSE 410) and (CSE 420 or CSE 422 or CSE 435 or CSE 440 or CSE 450 or CSE 452 or CSE 460 or CSE 471 or CSE 472 or CSE480) and completion of Tier I writing requirement.
c. Restrictions: Open only to majors in the Department of Computer Science and Engineering.
d. Description: Development of a comprehensive software and/or hardware solution to a problem in a team setting with emphasis on working with a client. Participation in a design cycle including specification, design, implementation, testing, maintenance, and documentation. Issues of professionalism, ethics, and communication.
6. Course Objectives
The course objectives for CSE498 include (but are not limited to) the following.
a. Learning to architect, develop, and deliver a complete software application to a client.
b. Learning to work effectively in a team environment.
c. Developing your written and oral communication skills.
d. Becoming proficient with software development tools and environments.
e. Learning about system building and system administration.
f. Integrating everything you have learned in your other computer science courses.
7. Team Projects
Each team will architect, develop, and deliver a complete software application for a "client". The client organizations range in type from industry to non-profits to academia and in size from very small to very large.
a. Client contacts are busy professionals. With respect to CSE498, they are "volunteers" who are doing you and your team a favor. You must work with them in a respectful manner. If you have problems getting responses from your client contacts, let us know and we will handle it.
b. Each team will have a particular person or persons who will be the main contact for the client organization. The computing sophistication of your client organizations and client contacts will vary widely from experienced developers to novice users.
c. For most of your academic experiences, you have been handed a complete system architecture with detailed specifications, and asked to implement it. For this course, architecting the system and designing the specifications may be you most difficult challenge, particular when talking with users who are not exactly sure what they want.
d. Each project must be of 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. On the other, it must be simple enough to be doable in one semester. What constitutes the "right level of difficulty" will be something that each team will work out with the client and with us. As you design your projects, consider doing so with levels of deliverables where the first level is clearly doable, the second is likely doable, and the third is possibly doable.
e. You must deliver a completed project to your client. Period. There will be no exceptions. No excuses will be considered or accepted. Thus, it is in your team's best interest to propose something that is workable in conjunction with your client.
f. Each project will be turned over to the client after completion. Thus, one important aspect of each project will be the supporting documentation.
8. Course Materials
There are no required or recommended textbooks, software or course packets to be purchased for this course. You will be provided with any and all software, hardware, and documentation required to complete your team project.
9. Course Environment
One goal of this course is to give you a non-academic experience. Hence, we will run this course as "business-like" as possible. We will view each team as a small company attempting to deliver a product to a client. We will assign students to teams so as to best distribute the variety of skills and experiences. We will serve as each "company's" board of directors.
10. Team Dynamics
One goal of this course it so give you a significant experience working on a team. You will be working with people whom you do not know and whose experiences and abilities may be very different from yours. The challenge is to take your disparate group of individuals and form a real team. Each team may organize itself as it sees fit; we will offer advice and counsel.
As the Board of Directors for each company, we do the "hiring" by making the initial team assignments. If necessary, we will also do the "firing" if a particular team member is not performing up to the levels of the rest of his or her team. If there are such problems, we will meet with teams and individual team members to help resolve them. Be forewarned, if you are removed from a team for poor performance, your grade will be reduced significantly with the strong possibility of failing.
11. Project Management and Deliverables Dates
Each team will be expected to manage its own project using Microsoft Project Manger. Each project will be 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 milestones will be considered important. Meeting the deliverable deadlines will factor significantly into your grades.
General "deliverables" will include the following.
a. Technical Specification Document & Presentation
b. Alpha Demonstration
c. Beta Demonstration
d. Project Video
e. Project Software & Documentation
f. Design Day
g. Team Web Site
Specific deliverables will be determined and scheduled by each team.
Dates for general deliverables will be announced soon.
12. All-Hands Meetings (Class Meetings)
The format of all-hands meetings will include lectures, team status reports, and team formal presentations. On-time attendance is required. Team members who are late will be marked absent. Almost no excuses for absences will be accepted. Attendance will be a factor in your grade.
One or two all-hands meetings may be missed in the case of job interviews. In order to be excused, you must supply the instructor and the 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 your recruiter.
Attendance at meetings during which your team makes a presentation is absolutely required. No excuses for absence will be accepted, including job interviews. In general, there will be multiple meetings for each type of team presentation. If necessary, we will work with you to attempt to coordinate as much as possible team presentations and job interviews.
We will be viewing the final project videos together during the regularly scheduled meeting times on April 21 and April 23 and during the scheduled final exam time, which is Wednesday, April 30, 3:00pm to 5:00pm. Attendance by everyone for viewing all project videos is required. Do not schedule any trips during these times. Interviews will not be accepted as an excuse for missing any of the final project video viewings.
13. Use of Laptops During All-Hands Meetings
Except when giving presentations and demonstrations, laptops are not required and are not be used during all-hands meetings. In particular, reading email, IM-ing, etc. is prohibited.
14. Triage Meetings
Each team will hold a weekly triage meeting with the instructor and/or the teaching assistant. Attendance by every team member is required. Almost no excuses for absences will be accepted. Attendance will be a factor in your grade as part of your "Team Contribution" (see below).
One or two triage meetings may be missed in the case of job interviews. In order to be excused, you must supply the instructor and the 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 your recruiter.
The CSE498 laboratory is 3352 EB. The lab has a key code lock, which we will give to you. Each team will be assigned two PC's, one to be used as a server and one to be used as a development machine. The choice of operating system-most likely Windows or Linux-will be up to the team and depend on the needs of the client and the experience of the team. Each team will be completely responsible for its machines, including building them, maintaining them, securing them (both internally and externally), and backing them up.
The CSE498 laboratory includes a conference area that can be used for team meetings and for conference calls with clients. Use of the conference area is scheduled via a shared Google calendar. Follow the Calendar link on the course web site to access the calendar. Follow the Calendar Help and Policies link for instructions on using the calendar.
The lab also includes a small refrigerator, a microwave, and a coffee maker. You are welcome to use all three. These are shared resources. Please keep these appliances along with the entire lab clean.
16. Scheduled Lab Times
There will be no formal lab sessions. The scheduled lab times are intended as placeholders for team meeting times. Each team may meet whenever it wants. However, teams may find that the only common meeting time is the lab time. And, you are expected to be able to meet during your scheduled lab times.
17. Design Day
The College of Engineering sponsors Design Day on which student teams demonstrate their projects to the public. We will be participating in Design Day, which will be held on Friday, April 25. You will be involved on Thursday, April 24 doing setup and on Friday, April 25 doing presentations and tear-down.
Everyone is required to attend and participate in Design Day on both April 24 and April 25. Do not schedule any trips during these times. Interviews will not be accepted as an excuse for missing any of the Design Day activities.
18. Expectations and Workload
We have high workload expectations for this course. It is one of your most important courses for your resume and your portfolio of experiences. It will be the capstone of your computer science career at MSU. This course will provide each of you the opportunity to showcase your abilities on a significant non-academic software project. Your capstone experience can provide you with some significant talking points for future job interviews.
Your final grade will be based both on your team performance and your individual performance. What follows is the point distribution. We reserve the right to make reasonable changes during the semester with sufficient notice.
Technical Specification Document & Presentation 10
Prototype Demonstration 10
Beta Demonstration 10
Project Video 15
Project Software & Documentation 15
Design Day 5
Team Web Site 5
Technical Contribution 10
Team Contribution 10
Team Evaluation 5
All-Hands Meeting Attendance 5
No special consideration will be 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, graduation, mortgage, upcoming weddings, or visa status.
20. VISA (Verified Individualized Services and Accommodations)
If you have a VISA document, contact one of the instructors as soon as possible. We are committed to working with you.
21. 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.
Individuals and/or teams who violate these policies will be referred to the appropriate deans and may be given a grade of F in the course.
22. Nota Bene
We reserve the right to make changes to this syllabus during the semester with reasonable notice.