Do you need an app custom-made for you? a webapp? a desktop app? an IoT device programmed? Then you might want to become a Client of the CSE Capstone project class. We will have over 30 teams of Senior Computer majors eager to work on good app ideas like yours, starting August 2017.
Watch videos of this year's projects.
How to Apply
If you are interested in being a client for this class then simply email Dr. Vidal a short description of your idea, by August 24. You should include:
- What you want the app to do, and who will use it. A short paragraph is enough.
- Any platform requirements you might have, such as: must be an Android app, must run on Windows, etc.
The students will read all these project descriptions and choose which project they want to work on.
Wow! I am extremely impressed with the work that [the team] has done on the traffic engineering project.
Pat Abrams,Systems Engineer
I’ve worked in and out of the software industry for decades (spend a number of years heading up user interface design, documentation, programmer toolkit documentation, etc), and I can honestly say I’ve never had such a fun & productive development experience. These guys instantly understood my needs, ran with them, and improved upon them. And they were communicative, personable, and professional throughout.
We were VERY pleased with the work of our team. The app looks great and has the functionality that we need.
Executive Director, USC Connect
Because of their clean API, Hayes was able to easily integrate data into our CommandBridge product....I was definitely impressed by the quality of their project considering they had to produce a mobile app, web front-end, and web services, from starting with nearly no experience with the technologies used.
Systems Engineering, Business Development
The Mariner Group, LLC
Client Obligations and Legal Issues
Clients will agree to the following:
There is no implied guarantee that the software provided by a team of students will work, or meet any requirements.
I (the teacher) might ask a team to implement more, or fewer, features than those requested by the client. Ultimately, the requirements for this class are dictated by the teacher. I will try to interfere as little as possible. But, I must ensure that the scope of the project is neither too large or too small. Of course, students are free to implement more features if they want to.
Clients will agree to meet with their student team about once every other week and to be available via email to answer questions about their requirements. The more feedback you give the developers the more likely it is that the final product will meet your needs.
Unless they agree otherwise before the start of the project, students will own all the code and other artifacts they produce for this class (*other arrangements are possible, email me if interested), as per the University's intellectual property policy: ACAF 1.33 IV B. This means that teams are free to release their software under a license of their choosing. I recommend they choose the MIT Open Source License because
- It allows the client, the students, anyone, to get the full source code and continue working on it as they see fit. For example, a client can continue developing and selling the software. The students can also continue developing the code into a closed-source product if desired.
- It allows the students to publish their github repo to show prospective employers their work.
However, that is just my recommendation and students are free to choose as they please.
In the past, students have chosen to give the client exclusive rights to the software they write, sometimes for free, sometimes for a small fee, etc. If you want to keep all, or some, rights to the software you are free to ask for those rights up front. The students are free to choose your project, and your terms, or not. So, if you require a special licensing arrangement simply state it up front when you submit your idea.
Your idea will be posted on a webpage for the whole world to see. The students will pick their projects from this list. So, your idea will be disclosed to the whole world if I accept it. Neither the students nor I will sign an NDA (non-disclosure agreement).
How Students Choose
The assignment process is:
- I post all the project descriptions client have sent me on a webpage the students can see (2015 project proposals), with your email address so they can ask you questions if they want.
- The students submit to me an ordered list of their top-5 projects they want to work on.
- I run a program to find the allocation of projects to students that maximizes happiness, under the constraint that all teams must be of 4 or 5 students.
A few groups might choose to skip the assignment process. These are "startup" teams (always 4 or 5 students) who have their own idea for a project they want to work on.
The projects start in August and end the following May. I accept project proposals from clients during the Summer before classes start, on August 20.