RD06 - Requirements, Architectures & Specifications
Preparation
Review the expectations for preparation for the Readings and Class Discussions.
Assigned Readings
- Chapter 6: Requirements in Collaborative Software Development by Amy Ko.
- Chapter 7: Architecture in Collaborative Software Development by Amy Ko.
- Chapter 8: Specifications in Collaborative Software Development by Amy Ko.
Discussion Questions
- What are requirements, architecture, specifications? What are the differences between them? How do they relate to each other?
- What makes a set of requirements good? What does it mean for requirements to be legal, ethical and just? How might those create tension with other goals?
- Why is architecture important? Which architectures you have seen/used? Which architectures seem to be used in your projects?
- What are refactoring, information hiding, encapsulation, static/dynamic typing, cowboy coding, formal specifications?
- Prepare at least one question of your own related to the readings that you would like to raise for class discussion. This may be a question:
- seeking factual clarification of something in the readings.
- that you would like to hear your classmates thoughts and opinions on.
All textual materials used in this course are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License
All executable code used in this course is licensed under the GNU General Public License Version 3 or later