Software Design: From Requirements to Release
1h 55mAdvanced2020-04-30
Authors

Neelam Dwivedi
Assistant Teaching Professor at Heinz College
Course details
Follow along with the full life-cycle implementation of a software project. This course takes you from requirements development to modeling, design, coding, and testing. It features a small-scale web application project that realistically depicts the workflow and challenges of a typical software development project. Instructor Neelam Dwivedi brings together the most important concepts, tools, and techniques that developers need to know, including requirements elicitation and validation, proof of concept modeling, best practices for beta deployment, and refactoring. By the end of the course, you'll understand the reality of software engineering—beyond writing code—and know how to effectively structure and manage projects as a team.
Topics include:
Eliciting and specifying requirements
Validating requirements
Deploying POC
Building models and code
Delivering and deploying the beta software
Preparing for final release
Refactoring
Topics include:
Eliciting and specifying requirements
Validating requirements
Deploying POC
Building models and code
Delivering and deploying the beta software
Preparing for final release
Refactoring
Skills covered
Software ArchitectureAdvancedSoftware DevelopmentDeep Dive (X:Y)
Concepts
0. Introduction
- 01 - Going from requirements to release
- 02 - What you should know
- 03 - Case study overview
- 04 - Using the GitHub repo
1. Sprint 1 - Project Kickoff
- 05 - Define problem and vision statements
- 06 - Elicit and specify requirements
- 07 - Requirement validation
- 08 - Technology validation
- 09 - Proof of concept (POC) setup
- 10 - POC implementation
- 11 - POC deployment
- 12 - Challenge - From dev to deploy
- 13 - Solution - From dev to deploy
2. Sprint 2 - Beta
- 14 - Prepare sprint backlog
- 15 - Build models
- 16 - Build code
- 17 - Deliver and deploy
- 18 - Challenge
- 19 - Solution
3. Sprint 3 - Release 1.0
- 20 - Prepare sprint backlog
- 21 - Implement 'included' use case
- 22 - Final release
- 23 - Refactoring
- 24 - Challenge
- 25 - Solution
Conclusion
- 26 - Next steps
Related courses
- Learning Illustrator on the iPad
- Build AI Agents with n8n
- AI Project Coordination for Lead Data Scientists
- Learning the OWASP Top 10 (2025 Version)
- AI Product Development: Secure by Design
- Apache Iceberg: From Zero to Production Data Lakehouse
- Advanced SQL Project: Design and Manage a Database
- Microsoft Cybersecurity Architect (SC-100) Cert Prep: 3 Design Security for Infrastructure
Related learn paths
- Master Digital Transformation
- Develop Your Skills in Agile Software Development
- Become a Certified CAD Designer with SOLIDWORKS
- Become a Technical Program Manager
- Prepare for the PMI-ACP Certification
- Prepare for the Google Cloud Professional Cloud Architect Certification
- Build an iOS Application
- A Developer's Guide to Google Gemini