Schedule
Check-Ins
Logistics
Projects
Hack-a-thing DB
Technigala Schedule
Join CS98 Figma Team
About
Participation in a software engineering group project to meet a real-world need. Group members are responsible for all aspects of a software system, including iterative requirements analysis, design, implementation, and testing. The course also stresses customer interactions, documentation, process, and teamwork. The result is a software product of significant scope and significant benefit to a user base.

Open only to students pursuing a major in Computer Science or a modified major with Computer Science as the primary part. 98.01 and 98.02 constitute a two course sequence, and they must be taken in consecutive terms, either fall/winter or winter/spring, normally in the senior year.
At least two courses from COSC 50-69 or at least three courses from COSC 50-89, or permission of instructor.
In this course you will have the freedom to pitch and develop your own project idea. It is your time to spend two terms to create your own startup product. The first class meetings will be devoted to short technology hackathons, brainstorming sessions, and choosing your product teams. You will be encouraged to be creative and push yourselves technically, but simultaneously to keep your project scope feasible. Often the most successful projects start out as a small, clever idea, while projects that are overly ambitious will prevent you from thoroughly investigating the concept.
Some things to consider while thinking about project ideas:
- ๐ Novelty: The purpose of this course is to broaden your experience as a developer. It is an opportunity to investigate a novel idea in a team environment, from initial concept, through all stages of design & development, to delivery of a functional final product. Your project must be a fresh idea, introduced solely for this course. It should not be a continuation of an internship, previous course project, or existing startup.
- ๐ฑ Format: You may choose any format relevant to software design & implementation. For example, your team may choose to develop a game, a web or mobile app, or even experiment with IoT.
- ๐จ Impact: Your project should demonstrate a positive impact and offer clear benefit to a user base. Consider themes such as education, research, health care, or environmental protection and improvement. Think outside of what is useful to Dartmouth students - new event apps, social network clones, and marketplaces have been attempted before and you might find it more rewarding to build something that challenges you.
๐ This class will be an adventure and requires active participation both inside and outside of class.
By the end of the second term of this course, you will:
- ๐๏ธ experiment with various technologies and push your coding limits to new heights
- ๐๏ธ conceptualize, pitch, and design a software product that is interesting, impactful, and fun to build
- ๐ฉโ๐ฉโ๐งโ๐ฆ use software development and design best practices to work collaboratively on a tight-knit and smoothly operating team
- ๐ป use your knowledge of the fundamental concepts and best practices of software development to design a software project from the ground up
- ๐จ utilize state-of-the-art tools and frameworks to build a complex system
- ๐ demo your work to hundreds of people for fame and fortune
Groups