CS 445Software Requirements Specification and Analysis
- Units
- 0.50
- Faculty
- Mathematics
- Subject
- Computer Science
- Cross-listed
- ECE 451
When it runs
- F24
- W25
- S25
- F25
- W26
- S26
- F26
- W27
- S27
Ran in 7 of the last 7 terms. Winter 2027: scheduled, 2 lecture sections. Spring 2027: schedule not out yet.
Introduces students to the requirements definition phase of software development. Models, notations, and processes for software requirements identification, representation, analysis, and validation. Cost estimation from early documents and specifications.
Prerequisites
- Complete all of the following
- Must have completed at least 1 of the following:
- Enrolled in H-BBA & BCS Double Degree, H-Computer Science (BCS), H-Computer Science (BMath), JH-Computer Science (BCS), JH-Computer Science (BMath), H-Computing & Financial Management, H-Data Science (BCS), or H-Software Engineering
Antirequisites
- Not completed nor concurrently enrolled in any of the following:
- SE463 - Software Project Management, Requirements, and Analysis (0.50)
Leads to
No course lists it as a requisite.
Fall 2026 sections
| Section | Class | Enrolled | Meets |
|---|---|---|---|
| LEC 001 | 6005 | 14 / 20 | M 11:30–14:20 |
| TUT 101 | 6006 | 14 / 20 | M 14:30–15:20 |
Winter 2027 sections
| Section | Class | Enrolled | Meets |
|---|---|---|---|
| LEC 001 | 5612 | 0 / 70 | TTh 13:00–14:20 |
| LEC 701 | 2196 | 18 / 9999 | Online or by arrangement |
| TUT 101 | 5613 | 0 / 70 | Th 14:30–15:50 |
Resources
Around the web
Found by uwloo’s link finder, which checks that each page names CS 445.
- Redirection Course website · student.cs.uwaterloo.ca Remove
Reviewed on UW Flow
20% liked it77% easy23% useful
From 35 ratings and 11 comments on UW Flow. The most helpful comments, quoted as written, without names. Read them all on UW Flow.
Unfortunately, I left this course feeling like I wasted my time. Fairly easy, but the only real take away was "requirements are important", and I'm not sure if I'm convinced.
Nov 2017 · didn’t like it · 1 found this helpfulOn UW FlowRemove this
Victoria was amazing, easily approachable, patient, and kind. I didn't think I would take this course without her. She delivered normal lectures instead of using flipped classes. This helps me learn a lot. I saw a lot of people didn't think it was a useful course. It really depended on how you defined "useful". You learnt how to provide software requirements, including drawing use case diagrams, state machine diagrams, domain model diagrams, sequence diagrams, etc. Basically, you learnt a lot of higher-level knowledge. I do think this inspired me to think more before delivering code. Therefore, this is a 5/5 useful course for me. Additionally, this course is usually a group work course, and…
May 2023 · liked itOn UW FlowRemove this
Victoria was an amazing professor and so kind. But this course content is so boring that no professor in this universe no matter how hard they tried could make it interesting. The only redeeming quality of this course was that I got to work with some of my engineering friends in a project. It is easier in our term when it was cross-listed with the ECE class. It is lots of documentations, charts, and it goes really deep down into the specifics of it. The final exam was LONG HOWEVER, I could tell a bunch of people DID NOT FINISH IT. Overall, easier course don't get me wrong, but VERY BORING. I wish I had took a more interesting and slightly harder course.
Apr 2023 · didn’t like itOn UW FlowRemove this
Do not take this course, it is objectively the worst 4xx CS elective.
marking is total bs and up to the TA, class attendance is mandatory, there are weekly deliverables that can be quite long, and the course is the least interesting and least enjoyable course at UW without a doubt.
I had to suffer through the course, and I wouldn't wish this upon my worst enemy :)Jan 2023 · didn’t like itOn UW FlowRemove this
The course is a deep dive into all the work needed to make a brand new software project from the ground up. You won't have to code in this course, so your imagination is only limited by the amount of work you want to put in. Assignments are weekly, but there is a generous slip day policy and since this is teamwork, it's not all on you.
I would recommend this course if you are interested in management in software at all, whether it be as a developer or as a PM. This gives you all the useful knowledge needed to be successful in these areas.Dec 2021 · liked itOn UW FlowRemove this
Discussed on r/uwaterloo
103 posts and comments in 90 threads mention CS 445, February 2012 to December 2024. Quoted word for word, newest first; each reply sits under the post and the comment that started its branch. Search r/uwaterloo for newer posts.
Fall 2024
Easy 4th year level courses? 1 point, 1 comment
“Preferrably no final exam”
u/YaffaOrange: “No final exam: CS 449, CS 492 Final exam: CS 489 (Software Delivery), CO 487, CS 445 Idk you provided like no other context”
CS 445 final 1 point, 0 comments
u/Ok_Youth1867: “The course outline says I need to pass the cs445 final to pass the course. It’s my final term and I have a very busy workload, need to pass this course to graduate this term. Is it difficult to pass? How much of a time commitment is it?”
which one is easier CS 445 or CS 456 1 point, 0 comments
CS 445 vs CS 456 1 point, 0 comments
Spring 2024
Course Load Opinions with Full-TIme Job 1 point, 2 comments
u/Even_Valuable_5014: “I'm planning on taking CS 445, SPCOM 223 or SPCOM 100 and an bird online elective like CLAS 104. I'll be working full-time as a dev (remote). Is this doable??”
u/ConsequenceNo3618: “I don't think they'll let you take 4 courses on coop CS 445 is easy and the majority of it is groupwork, but even with a group of 5, it's a lot of work near the end of the term. Not sure about the others It's doable but obviously not recommended. …”
easy upper year cs courses 14 points, 12 comments
“pls recommend ez course for aimless hoeless jobless soon-to-be-homeless brainrotted individuals like me tysm!”
u/the-scream-i-scrumpt: “cs 446 🖖”
u/NeighborhoodDizzy831: “In 2B rn, curious about what tech you used and how many hours are spent each week on the course. How does the difficulty and workload compare to CS 445 and 447?”
CS445 2 points, 0 comments
u/growthforever: “how is this course? what's the course difficulty? and does the work require alot of time?”
Winter 2024
Are Cheatsheets Allowed for CS445 Final? 1 point, 2 comments
CS445 Final 1 point, 0 comments
CS445 Final 1 point, 0 comments
Most Useful CS course you took in your undergraduate career. 7 points, 10 comments
“Hello, this question is targeted more towards alumni or graduate/4th/5th year students but I was wondering which CS course in your undergrad you found was the most useful. …”
u/coolk2000: “… CS 445 is an in depth version of 346 when it comes to planning. Truth be told it’s a slog but an easy course and you learn a lot. CS 492 is a course you don’t think will be useful but damn it actually is. Especially in today’s market knowing ethics is extremely essential. …”
CS 445 Final 2 points, 1 comment
u/waterwaterwoo: “What's the CS 445 final usually like? There's a lot of content to memorize and it's worth 50% so I dunno what to expect”
Check it elsewhere for Fall 2026
- Undergraduate Calendar, 2026–27The official entry
- Requirements for Fall 2026Waterloo’s requisite checker
- Schedule of Classes, Fall 2026Instructors, rooms, live seats
- Quest Class SearchWhere you enrol
- Course outlinesSyllabi from past terms (UW login)
- UW FlowStudent ratings and reviews
- WClassesPast sections back to 2004, and who taught them