Capstone Guidelines

This page has information for students who would like me to be their faculty advisor for a capstone project, independent study, internship, or research  project. This includes courses like CSS 397, 497, 498, 499, 595, 600, 601, and 700.

I do not micromanage. I will expect you to:

  • Do the work at an appropriate pace.
  • Do high quality work.
  • Effectively manage up, keeping me aware of what you are accomplishing, new questions that arise, progress toward completing, effort expended, etc.
  • Continuously improve in your work.

If you are up for that, great. If not, please find a different faculty advisor.

Choosing a project

Why? Before you decide on a project, think about your goals: what do you really want to get out of the capstone project? Just complete the degree? Better prepare yourself for a job as a software engineer? Move your passion project forward?

Clear request. When you email me about doing a capstone project, tell me about what you want to get out of the project. If you have a project idea, make it clear how much you care about doing that particular project, or are open to other project ideas.

Internship or faculty research >> group project >> individual project. The project you work on will dramatically influence how much you learn. In my experience, students learn far more from doing an internship or working on faculty research than they do on a group project or individual project. Internships and faculty research forces you to work with others and within constraints imposed by external stakeholders, such as actual users and a pre-existing codebase or system. That is what professionals do. Students rarely learn much of any depth from working on an individual project.

Guidelines for all

Read all of the pages on the guideline for the undergraduate capstone course CSS 497Read then in detail. While written for the undergraduate capstones, they apply to good capstone work in general.

Also do the following:

Contract. Be specific and concrete in your contract or description of work.

Grade Option. Select “CR/NC”.

Non-disclosure agreements (NDAs). As a general rule, I do not sign NDAs with organizations that host internships for my students. If a student has to sign a NDA, it is the student’s responsibility to communicate with me in a way that does not violate the NDA. My role as an advisor is to help you get the most of your internship, which rarely (never?) requires me knowing the technical details of your work. I’m interested in you reporting on are things like what kind of mentoring you’re receiving, what you are learning about the process of creating software-enabled systems (e.g., software engineering), what areas do you want to grow in during the internship and the next 5 years, what is your plan for doing so, etc.

Section 6 of your contract: your project plan. Provide a table listing when your reports and meetings will occur, as well as the dates you’ll turn in the other deliverables.

  • NOTE: Your plan will change during the course of your capstone; if it doesn’t change, you aren’t learning. So, expect this. What your plan can be fairly accurate about is your process and the few outputs required by CSS or UW. So, focus your plan on following an iterative, adaptive process of having weekly meetings during which you show the work you have done and have a discussion about it.
  • Include a date and time (e.g., 11:59pm Sunday, June 24) for each item in the plan. That table should include entries for at least the following:
  • Informational interviews.  If you are doing an internship, do at least one informational interview each week with an employee in that or another organization. Ask your manager or onboarding buddy for a list of people to interview. After each interview, spend a few minutes jotting down what you learned in the interview, new questions arose, new ideas about your job and career. Include those notes in your weekly report.
  • Weekly reports. Send me an email report once a week. In your reports, include specific and concrete details to communicate effectively. I’m more interested in the non-technical aspects of your job, than in the technical. What are you learning about the social and organizational dynamics of working in a software development organization? How will you use this internship to help you in your career? What questions do you need answered? How will you seek mentoring? What non-technical skills do you need to develop, and how will you do so?
  • Meetings. Meet with me either in person or via Zoom 3 times per quarter (about once a month).
  • Final report. Submit a final report at the end of your project. This report will be a compilation of your weekly reports plus a 2–3 page (single-spaced) synthetic reflection of what you learned over your internship.
  • CSS requirements. Submit any other materials required by the CSS Division for successful completion of your capstone.

Attend a CSS Capstone Colloquium before the quarter in which you plan to present.

Provide me with drafts of your poster and slides at least 2 weeks before you present. Both poster and slides typically require several iterations to reach my quality bar.

Do a dry-run of your presentation at least 1 week before the Colloquium. Your presentation may require a couple of iterations to reach my quality bar.

Fully attend the Colloquium you will present at. Besides attending the poster session your poster is at, you should listen to all the other talks in the oral session you are presenting at. Please include this expectation in the contract.

When you have a first draft of your contract, please come see me and we’ll iterate on it to get to a final version.

Let me know if you have any questions!

Additional information for CSS Master’s Student Capstones

This information is specific for UW Bothell CSS Master’s students interested in working with me on their CSS Master’s Capstone Project or Master’s Thesis.

Please carefully read the Thesis/Project process site in detail.  My comments below build on top of the ones on that site and do not (in general) replace what that site says.

Me as your faculty advisor?

If you would like me to be your faculty advisor, please contact me to schedule a time so we can talk about your interests and what might work.

Choose a capstone advisor is a two-way street: it has to work well for both the advisor and the student.

My first goal will be to understand your needs and interests, so please come to meeting prepared to discuss what YOU need to get from the capstone, what criteria will help YOU decide what projects are or are not worth your effort to work with.

Creating documents

Clearly name documents: person + title + version

Please name the versions of your documents like this:

  • David Socha Capstone Proposal_ 100.docx
  • David Socha Capstone Proposal_ 101.docx
  • David Socha Capstone Proposal_ 102.docx

This naming convention includes:

  • Your name. I get similar docs from many students.
  • Title or type of document (e.g., “Capstone Proposal”.
  • Version number (e.g., 101). Use three-digit number to ensure that your versions will sort lexicographically in my file browser. It is very common to have more than 9 drafts of key documents.

Writing your thesis / capstone paper

Writing an excellent (or even good) master’s thesis or capstone paper is much more work than most students anticipate. Most students have never written a document like it.

Follow the advice on my Guidance on Master’s Capstone Papers and Theses document. I periodically update this document as I encounter more issues.

  • Keep an annotated bibliography about the sources you read, watch, or listen to.
  • Keep a work journal. Keep a journal in which you write / sketch ideas, thoughts, and reflections upon your work. Make brief notes about challenges, successes, mistakes, confusions, insights, surprises, context, learnings, etc. Write in your journal at least 2-3 times per week. Doing this will help you solidify your learning.
  • Develop and embrace your own unique writer’s voice, so that your academic writing engages the reader.
  • Check out the other resources from the UW Bothell Writing and Communication Center.
  • If you are writing a master’s thesis, use the UW template and make sure you follow the official UW guidance for a master’s thesis. You can download a Word template from that page.