Assignments
- Some future dates are placeholder only and subject to change.
- All dates are in the format of MM/DD where MM is the month and DD is the day.
- Assignment descriptions are on CUNY Blackboard if not found in the lecture notes or on the class schedule page.
- This list is periodically updated based on the progression of the class
Overview of Assignments by Type
Individual Assignments
-
In-Class/Homework Exercise 1 (on Software Processes and Process Models): assigned on 01/31 and due on 02/04
-
In-Class/Homework Exercise 2 (on Git): assigned on 02/04 and due on 02/11
-
Lab/Homework Exercise 3 Experimenting with Git (on Git and GitHub): assigned on 02/06 and due on 02/13
-
In-Class Exercise 4 (on User Stories): assigned on 02/11 and due on 02/18
-
In-Class Exercise 5 (on User Story Scenarios): assigned on 02/13 and due on 02/18
-
In-Class Exericse 6 (on Velocity and UI Sketches) : assigned and due on 02/27
-
In-Class/Homework Exercise 3 (on Android): assigned on 02/09 and due on 02/16
-
Building Your First Android App: assigned on 02/09 and due on 02/23
-
Building Your Second Android App: assigned on 02/23 and due on 03/02
-
In-Class Exericse 7 (on QC/QA and TDD): assigned and due on 03/16
-
In-Class Exericse 8 (on TDD) (Due: 11:59pm, Tuesday, March 21, 2023) : assigned and due on
-
In-Class Exericse 9 (on Unit Testing and JUnit) (Due: 11:59pm, Thursday, March 23, 2023 by group) : assigned and due on
-
In-Class Exericse 10 (on Android Instrumented Tests) (Due: 11:59pm, Tuesday, March 28, 2023 by group) : assigned and due on
-
In-Class Exericse 11 (on Architectural Design) : assigned and due on 04/04
-
In-Class Exericse 12 (on Objected-Oriented Design and UML) : assigned and due on 04/04
-
In-Class Exericse 13 (on Observer Design Pattern): assigned and due on 04/25
-
Extra Credit Exercise (Observer Design Pattern on Android) – talk to the instructor: assigned and due on 04/25
-
In-Class Exericse 14 (on Class Design Principle): assigned on 04/20 and due on 04/27
-
In-Class Exericse 15 (on Interface Separation Principle): assigned on 04/25 and due on 05/02
-
In-Class Exericse 16 (on Strategy Design Principle): assigned on 04/27 and due on 05/04
-
In-Class Exericse 17 (on Iterator Design Pattern): assigned on 05/02 and due on 05/09
-
In-Class Exericse 18 (on Singleton Design Pattern): assigned on 05/04 and due on 05/11
-
In-Class Exericse 19 (on Implementation): assigned on 05/09 and due on 05/16
-
In-Class Exericse 20 (on Software Metrics): assigned on 05/09 and due on 05/18
Group Project
-
Team Project. Phase 0. Teams and Application Ideas: assigned on 02/04 and due by 02/11
-
Team Project. Phase 1. Proposal Presentation and Project Setup (Presentation on Thursday, February 20): assigned on 02/11 and due by 02/25
-
Team Project. Phase 2. Requirement Engineering - Use Cases (on Blackboard): assigned on 02/20 and due by 03/06
-
Team Project. Phase 3. Requirement Engineering - User Interface (Lo-Fi Prototype): assigned on 03/13 and due by 03/30
-
Team Project. Phase 4. Design Iteration 1 – Applying TDD to develop app features : assigned on 04/03 and due by 04/20
-
Team Project. Phase 5. Design Iteration 2 – Applying TDD and Design Patterns to develop app features : assigned on 04/22 and due by 05/04
-
Team Project. Phase 6. Design Iteration 3 – Design Pattern and Lint and Project Closure: assigned on 05/06 and due by 05/16
Reading
-
Chapters 1, 2, and 3: assigned on 01/28
-
Sections 4.1 - 4.4 and Chapter 5: assigned on 01/30
-
Chapter 2 and Sections 11.1 and 11.5: assigned on 02/04
-
Chapter 6: assigned on 02/11
-
Sections 7.1 and 7.2 in the SaaS book: assigned on 02/11
-
User story and scenario examples linked in the resouces page: assigned on 02/11
-
Chapter 7 in the SAAS Book: assigned on 02/20
-
From Storyboarding to Drawing Wireframes (Google UX Design Certificate): assigned on 02/20
-
How to Design Low-Fidelity Prototypes (Google UX Design Certificate): assigned on 02/20
-
Android Developer Resources: assigned on 02/27
-
Android tutorial by Lars Vogel: assigned on 02/27
-
Chapter 10: assigned on 03/13
-
Chapter 4 of The Art of Software Testing, 3rd Edition: assigned on 03/18
-
all chapters and sections discussed: assigned on 03/20
-
JUnit 5 tutorial - Learn how to write unit tests by vogella : assigned on 03/27
-
Test apps on Android by Android: assigned on 03/27
-
Sections 7.1 and 7.2: assigned on 04/03
-
Sections 7.3 and 7.4 and Appendix C (of the textook): assigned on 04/08
-
Chapter 1 in “Introduction to Software Design with Java” by Robillard: assigned on 04/08
-
Chapters 8, 9: assigned on 04/10
-
Module 6 of Martin P. Robillard: assigned on 04/10
-
Example Code for Module 6 of Martin P Robillard (convert it to Android app?): assigned on 04/10
-
Chapter 7.3.4: assigned on 04/22
-
Module 1 of Martin P. Robillard: assigned on 04/22
-
Module 2 of Martin P. Robillard: assigned on 04/22
-
Chapters 8, 9: assigned on 04/29
-
Module 2 of Martin P. Robillard (Strategy and Iterator Patterns): assigned on 04/29
-
Module 3 of Martin P. Robillard (Singleton Pattern): assigned on 04/29
-
Code Examples by Martin P. Robillard (Chapter 3): assigned on 04/29
-
Iterator Pattern from Wikipedia: assigned on 04/29
-
Chapters 9 and 10: assigned on 05/06
-
Chapters 8, 9: assigned on 05/08
-
Module 6 of Martin P. Robillard: assigned on 05/08
-
All reading assignments: assigned on 05/13
-
Chapters 9 and 10: assigned on 05/15
Overview of Assignments by Due Date
Due by 02/04
- Individual Assignment: assigned on 02/04
Due by 02/11
-
Individual Assignment: assigned on 02/11
-
Group project: assigned on 02/04
Due by 02/13
- Individual Assignment: assigned on 02/13
Due by 02/16
- Individual Assignment: assigned on 02/16
Due by 02/18
-
Individual Assignment: assigned on 02/18
-
Individual Assignment: assigned on 02/18
Due by 02/23
- Individual Assignment: assigned on 02/23
Due by 02/25
- Group project: assigned on 02/11
Due by 02/27
- Individual Assignment: assigned on 02/27
Due by 03/02
- Individual Assignment: assigned on 03/02
Due by 03/06
- Group project: assigned on 02/20
Due by 03/16
- Individual Assignment: assigned on 03/16
Due by 03/30
- Group project: assigned on 03/13
Due by 04/04
-
Individual Assignment: assigned on 04/04
-
Individual Assignment: assigned on 04/04
Due by 04/20
- Group project: assigned on 04/03
Due by 04/25
-
Individual Assignment: assigned on 04/25
-
Individual Assignment: assigned on 04/25
Due by 04/27
- Individual Assignment: assigned on 04/27
Due by 05/02
- Individual Assignment: assigned on 05/02
Due by 05/04
-
Individual Assignment: assigned on 05/04
-
Group project: assigned on 04/22
Due by 05/09
- Individual Assignment: assigned on 05/09
Due by 05/11
- Individual Assignment: assigned on 05/11
Due by 05/16
-
Individual Assignment: assigned on 05/16
-
Group project: assigned on 05/06
Due by 05/18
- Individual Assignment: assigned on 05/18