The answer depends on the desired outcomes for your program, as the capstone should accomplish at least some of your program outcomes.
For better or worse, we have a variety of outcomes for our CS program, some of which are college-wide outcomes and others of which are CS-specific. We are unable to accomplish all of these in a single course, so we have our seniors complete two requirements:
- CS 384, Perspectives on Computing, a 3-credit course in which the students read, discuss, and write about the social and ethical issues related various aspects of computing technology (e.g., algorithmic bias, data privacy, software responsibility, etc.). Students take this course during their final Spring semester, so that they have as much experience as possible to bring to the table. We also have our seniors take the ETS CS Major Field Test (CS-MFT) during this course, as one piece of our assessment plan. This course fulfills a college-wide requirement under the college's definition of capstone experience.
- CS 396 (Senior Project I) and 398 (Senior Project II), two 2-credit courses in which the students work either individually or in teams to complete a significant project, usually but not necessarily a software system. Students normally take 396 during their final Fall semester and 398 during their final Spring semester. This 2-course approach spreads the senior project over their entire senior year. Students meet once per week with a faculty mentor for an hour; the faculty member gets an hour of teaching credit for the year for each project they supervise. Students typically do the initial research, background and design work during the Fall semester (396), may build an initial prototype, and give a progress report in December. During the Spring semester (398), the students complete their project, write a final report (usually multiple revisions), and give a public presentation.
At many places, the 396+398 combination would be considered a capstone experience, and so far as technical skills go, they do provide that sort of outcome. But to meet our college-wide outcomes, our program outcomes include this:
Analyze the social and ethical issues surrounding the use of computing
and its effects on society
so we use a 2-pronged approach to achieve both the technical and contextual outcomes. A benefit of this approach is that we don't have to choose between a project-oriented capstone or a non-project capstone; our students effectively get both.
That's one model. It probably isn't for everyone, but it works for us.