CS 461 / 462 / 463: CS Capstone Experience

Fall-Winter-Spring Quarters 2011-2012

How to Propose a CS Capstone Project

"Given the uncertain and changing character of the world in which 2020 engineers will work, engineers will need something that cannot be described in a single word. It involves dynamism, agility, resilience, and flexibility. Not only will technology change quickly, the social-political-economic world in which engineers work will change continuously. In this context it will not be this or that particular knowledge that engineers will need but rather the ability to learn new things quickly and the ability to apply knowledge to new problems and new contexts."  
  -- National Academy of Engineering's "The Engineer of 2020" report

What is this course all about?

Oregon State University's CS Capstone class is all about career preparation. Part of the class is learning project management skills, communication skills, presentation skills, and hearing guest speakers. The other part of this class is doing a major project -- this is where you come in.

The project will last roughly from mid-November to mid-May. We use the time from the start of the school year until November for project selection and developing a Requirements Document. We use the time from mid-May until the end of the academic year for project documentation and deployment.

What is the project sponsor's role in this process?

Above all, this is meant to be an excellent educational experience for our students. As part of proposing a project, we expect you to be willing to really work with the student team. They "report" to me as their "supervisor", but you are their "client", just as if they were in a real work environment. In the same way that you would interact, mentor, coach, and evaluate a contractor doing a job for you, you are expected to interact, mentor, and coach your team, and assist me with assigning grades.

You are expected to meet with them regularly, no less often than every two weeks.

What is expected of the project that I propose?

Above all, this is meant to be an excellent educational experience for our students. A project for this class is expected to be enough of a project that 2-4 students can stay busy for ~6 months of working on it. It is also expected that it will actually be doable in that time frame.

Above all, this is meant to be an excellent educational experience for our students. I am hoping that each project "stretches" the students some. Please don't propose something that exactly matches an assignment they might have already done for a class. I want each team to have to go do some research and learn some new information or skillsets in order to accomplish the tasks. This is the environment of uncertainty that they will face after graduation. It might as well start here.

What a project is not

Above all, this is meant to be an excellent educational experience for our students. These projects are not meant to be "grunt work", that is, please don't propose something that is so repetitive, dull, and odious that you can't get anyone else to do it. The projects are meant to be creative and interesting.

Also, don't propose a project that is already totally spec'ed out. Part of this process is having the students work with you to develop the requirements document.

Do remember, too, that these are seniors. They have taken the core classes so far, but most have not taken some of the electives that would be especially useful in some projects, such as graphics, AI, etc. That doesn't mean that you can't propose such projects, but the students will require some learning time to come up to speed.

Also, be careful about proposing a project that has some critical time or security constraints. Students, being what they are, manage conflicting schedules. We expect this of them. Besides your project, they also have other classes, midterms, finals, required trips to visit parents, dating, extracurricular projects, sports, etc. If the entire U.S. banking system will collapse if certain deadlines are not met, this is perhaps not a good project for this course.

Intellectual Property

Oregon State University has no desire to retain any IP for undergraduate student projects. After all, we're not paying them to do this. But, then again, neither are you. Thus, the IP of this project, if any, needs to be negotiated (up front!) between you and your team. In the past, most projects have agreed on a joint-sharing of the IP rights between the students on the team and the client. This seems to work well, and leaves everyone with something they can use.

What is the rest of the process?

Using the web links below, you can propose a new project or edit a proposal you have already started. You can edit and re-edit as much as you'd like. This list will be given to the students after the class starts in September. They will have the opportunity to "bid" on one or more projects. In that process, they will tell me what their top three project choices are, and why.

I make the final selections, but I try to take into account their preferences. I find I get better results this way. There will likely be more projects proposed than student teams to do them. Thus, some projects will not get staffed. So, it is a good idea to not underplay the cool-ness of your project.

Can students propose their own projects?

No, students cannot propose their own capstone project. They must be proposed by a real client who is anxious to see this project done and will work with you on it. (I.e., your Mom can't propose the project for you...)

Scenes from previous year Engineering Expos:

Questions? Comments?

If you have any questions or comments on the process, don't hesitate to contact me:

Prof. Mike Bailey
Computer Science, Oregon State University