Software Product Development (CS2152.01)

Michael Corey

Why are some apps to hard to put down, while others break new ground and then go away? What are the commonalities across the digital surfaces you use everyday? What do you call that menu with three horizontal lines (a hamburger menu!). There are patterns and processes around making digital products that tie your digital life together.

In this class we will examine the process of software and product development using source texts, practical examples, and discussion with product managers and engineering leaders at large and small companies. Modern software development is so much more than a be-hoodied lone genius behind a blinking cursor. Instead it requires contributions in design, research, programming, marketing, customer ops, and many types of engineering. In this course we will do a survey of the multiplicative efforts that it takes to design, build, maintain, and ship software products. We will walk through examples from ideation through design, prototyping, user feedback, release, and feature development both by examining existing software and planning our own projects.


Learning Outcomes:
Upon finishing this course, students will have:
- A firm grasp of major software and product development methodologies,
- An understanding of other roles on product teams, and
- Produced a hypothetical roadmap, user stories, user research, mockups, and an engineering plan to advance a current product of their choice.


Delivery Method: Fully in-person
Course Level: 2000-level
Credits: 4
Tu/F 8:30AM - 10:20AM (Full-term)
Maximum Enrollment: 16
Course Frequency: Every 2-3 years

Categories: 2000 , All courses , Computer Science , Four Credit , Fully In-Person
Tags: