COMP 313 Project 2
An understanding of the following concepts and techniques:
- algorithmic complexity
- runtime performance
- how to measure
- how it relates to algorithmic complexity
- abstract data types (ADT)
- array-based versus linked lists
- getting started with iterators
- automated unit testing using JUnit
- testing for exceptions
- test fixtures and assertions
The key idea is to think about this lab like a physics experiment! You will set it up and then take measurements.
- Import this GitHub repository into your Bitbucket account - see online course website for how to name it
- Review the code.
- Fix the syntax errors (if any, though there probably aren't any).
- Run the code for various inputs to gain an understanding of what it does.
- Using Android Studio, complete the items marked TODO in the code and get the tests to pass.
- Run the tests in a Terminal window using gradlew test on Windows or ./gradlew test on Mac or Linux/Unix.
- Conduct the performance measurements: you will find the running times in the test report.
- Create a text document called README.txt in the project folder and answer the various questions embedded in the code.
Deliverables and submission
Please submit the following deliverables:
- Shared Bitbucket Project 2 repository
- Individual Sakai submission under "Project 2" Assignment:
- URL of shared Bitbucket repository
- 1 submission via Bitbucket repo (should still show the Commit history before your import into Bitbucket and clone into Android Studio)
- 1 completing the parts marked as TODO (View > Tool Windows > TODO)
- 1 adding the README.txt file answering questions embedded in the code
3 points TOTAL