1. Instructors
a. Wayne Dyksen, 3149 EB, 353-5573, dyksen@msu.edu
b. Brian Loomis, 3147 EB, 432-5169, bloomis@msu.edu
2. Meeting Times
a. Lecture: MW, 3:00–3:50pm (1257 AN)
b. Labs: TT, 3:00–3:50pm ; WF, 8:00–9:50am; WF, 12:40–2:30pm (3358 EB)
3. Web Site
a. URL: www.cse.msu.edu/~cse498
b. Username: cse498
c. Password: 040498
4. 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.
5. 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.
6. Team Projects Generalities
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.
7. Team Project Specifics
The team clients and projects for this semester include the following.
a. The Boeing Company: F/A-18 Memory Unit (MU) Data Visualization
b. DaimlerChrysler 1: Trucking On Board Computer Replacement
c. DaimlerChrysler 2: Sales Executive Information System
d. Image Space, Inc: Gaming Graphics Enhancements
e. MATRIX: XML Implementation of American Voices
f. MSU Men's Basketball: Real-Time Game Stats System
g. Motorola: Video Control System
8. 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.
9. 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.
10. 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
b. Technical Specification Presentation
c. Software Packaging
d. Users Guide
e. Mid Term Demonstration
f. Final Demonstration
g. Project Poster or Video
h. Project Web Site
i. Final Presentation
Specific deliverables will be determined and scheduled by each team.
Dates for general deliverables will be announced soon.
11. Class Meetings
The format of class meetings will include lectures, peer reviews, team progress reports, and formal team presentations. Attendance is required. Almost no excuses for absences will be accepted. Attendance will be a factor in your grade.
12. Laboratory
The CSE498 laboratory is 3358 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.
13. 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.
14. 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.
15. Grading
Your final grade will be based both on your team performance and your individual performance. What follows is an initial (i.e., not yet finalized) estimate of point distribution. We reserve the right to make changes during the semester with sufficient notice.
Team (75%)
a. Technical Specification Document 10
b. Technical Specification Presentation 5
c. Software Packaging 5
d. Administration and Users Guide 10
e. Mid Term Demonstration 10
f. Final Demonstration 10
g. Project Poster and/or Video 5
h. Project Web Site 5
i. Final Presentation 5
j. Project Management 10
Individual (25%)
k. Technical Contribution 10
l. Team Contribution 10
m. Team Evaluation 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, marriage, or visa status.
16. 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.
17. 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.
18. Nota Bene
We reserve the right to make changes to this syllabus during the semester with reasonable notice.