- Location: remote
- Time: Virtual, Wed 6:00 - 8:40pm
- Dates: 9/29/2021 - 12/16/2021
- Instructor: Brenden West | [email protected]
- Credits: 5
- Prerequisites: AD 340 & acceptance into AD-BAS program or instructor permission
Note: Students should be familiar with Java, Android application development, source control with git & Github, and agile software project practices.
This class introduces students to skills and best practices for mobile application development through a real-world client project.
In the process, students will:
- Work in teams to build a mobile application
- Exercise agile development team practices
- Document an application architecture
- Coordinate with clients to define work requirements and obtain necessary resources/approvals
- Conduct peer code reviews
- Develop a functional mobile application prototype with supporting quality assurance tests -Deliver final work to the client with accompanying source code & documentation
There is no required textbook for this course. We will make use of articles and online resources such as:
- https://developer.android.com/index.html
- http://itmgr.org/project-management/sow-statement-of-work/
- https://blog.trello.com/beginners-guide-scrum-and-agile-project-management
- https://thebhwgroup.com/blog/mobile-app-development-process
- https://facebook.github.io/react-native/
Students will need the following development resources:
- A computer w/ Android Studio 4 installed
- A Google Play developer account ($25 one-time fee)
- A github.com account
- A Google Drive account
Course instruction will be fully online with a weekly Zoom conference on Wednesday to review new material, answer questions, and resolve any issues with completing client tasks.
Throughout the week, students can reach out to me directly in the NSC:AD slack team with questions.
Students will have assigned reading, tutorials and/or video lectures early in the quarter covering topics such as:
- Software project lifecycle
- Agile software project management best practices
- Mobile application UX & technical design
- Peer code reviews & source control
- Mobile application quality assurance
- React Native cross-platform mobile application development
Students will be assigned randomly to project teams of approx. 4 students each to balance skills across projects and approximate a real working environment. Students must stay engaged with their assigned client throughout the course, and may change teams only with instructor permission.
Students should establish mutually agreed communication & work practices with their respective clients.
Students should plan to meet with clients directly (e.g. via Zoom) at least once per week, and should attend team ‘standups’ at least twice weekly to coordinate work.
Grades will be based on group assignments (70%), individual assignments and quizzes (15%), and peer/client evaluations (15%)
Quizzes will be administered via Canvas and must be completed during the specified time frame to receive credit.