Difference between revisions of "DPS924 Projects Fall 2014"

From CDOT Wiki
Jump to: navigation, search
(Project Milestones)
(Project Milestones)
Line 28: Line 28:
 
** Due: 11:59 pm, October 7.
 
** Due: 11:59 pm, October 7.
 
** Task: Revise the draft according to the professor's feedback.
 
** Task: Revise the draft according to the professor's feedback.
*2.0    Design and Implementation of Essential Features. '''[STARTED]'''
+
*2.0    Design and Implementation of '''Essential Features'''. '''[STARTED]'''
 
** Due (Design Report): 11:59 pm, October 21.  '''[DONE]'''
 
** Due (Design Report): 11:59 pm, October 21.  '''[DONE]'''
 
** '''Design Requirements:  posted below.'''
 
** '''Design Requirements:  posted below.'''

Revision as of 08:46, 29 October 2014

Overview

  • Learning Objectives
    • Build a useful and interesting Android app by the end of the semester.
      • real users/clients
    • Have a sense of accomplishment after building an operational Android app with feedback from real users (including me).
    • Develop applied research skills as you need to search for additional knowledge to complete the project.
  • Be innovative.
    • market research
    • start-up companies and career opportunities
      • seven Canadian tech startups (2014) [1]
      • 1000 startups [2]
      • startup companies in Toronto [3]
    • startup career in Toronto [4]
    • entrepreneurs and start-ups (Ontario Centers of Excellence) [5]
  • Demonstrate your potentials, creativity, and technical skills.

Project Milestones

Note: All milestones will be used to evaluate your performance and contributions in the project.

  • 1.0 [DONE]
    • Due: 11:59 pm, September 9 (Tuesday).
    • Task: Identify 1-3 application domains or user/client groups for your project.
    • Example: application domain: Guide for International Students, user group: international students at Seneca.
  • 1.1 Project Proposal (Draft) [DONE]
    • Due: 11:59 pm, September 23 (Tuesday).
    • Requirements: posted below.
  • 1.2 Project Proposal (Revised) [DONE]
    • Due: 11:59 pm, October 7.
    • Task: Revise the draft according to the professor's feedback.
  • 2.0 Design and Implementation of Essential Features. [STARTED]
    • Due (Design Report): 11:59 pm, October 21. [DONE]
    • Design Requirements: posted below.
    • Submission Requirements: You must submit a design report that has design diagrams (e.g. mock-ups, system diagrams, information flow diagrams) and a list of essential features. In the report, you should also mention briefly the design principles that you have used. The cover page of the report should include your name(s) and the name of your Android application. No late submission will be accepted.
    • Weekly Scrum Meeting (every Friday, starting from Oct. 31) [6]
      • What have you done since last week?
      • What are you planning to do this week?
      • Any impediments/stumbling blocks?
  • 2.1 User Feedback & Evaluation.
    • Collect feedback from real users and submit a one-page progress report.
    • Due: Nov. 9 (Sunday)
  • 2.2 Rework the design and implementation.
  • 3.0 Design and Implementation of Additional Features.
  • 3.1 User Feedback & Evaluation.
    • Submit a one-page progress report.
    • Due: Nov.23 (Sunday)
  • 3.2 Rework the design and implementation.
  • 4.0
    • Due: December 3, 2014.
    • Project Presentation & Final Evaluation

Project Proposal: Requirements

Imagine that you are submitting a proposal to a group of investors who may fund your project.

  1. What is the business value or possible impact of your project?
  2. Who are your users/clients? (You should have at least 3 users and only one of them may be your classmate.)
  3. What are the use cases of your Android app? (Include some diagrams if possible.) This should be the core section of your proposal. You should provide enough details for each use case.
  4. What is your Testing Environment?
    • configuration of emulators
      • Note: An emulator does not support Google Maps unless you do additional configuration. Check out the Discovery Zone on the course wiki.
    • configuration of real Android devices (if available)
    • Read the Dashboards to support your choice of the API level. [7]
  5. What is the timeline for your project?
  6. What resources do you need to complete the project?
    • 1 or 2 developers (names), specific Android device, other devices,...
  7. What is the description of your Android app?
    • Read "App Developer Best Practices", especially the section on creating "a great app listing page"! [8]
    • Draft a concise description of your Android app.
  8. Submit your project proposal (Word document or PDF) at Blackboard. Give a name to your project and it should also be the name of your Word document. If you are working as a team of 2 people, one submission is sufficient. Note: If you want to receive A or A+, your proposal must be free of spelling errors and address all the questions listed above.

Proposed Project: Design Requirements

  • Design Objectives: a user-friendly AND responsive Android application.
  • Design Tasks (based on use cases)
    • Design the flows (e.g. user/UI flow, information flow) of your app.
      • include the design of any back-end components (e.g. download data from a server, saving of data to a database)
    • Identify a list of essential features that you are going to implement on a weekly basis. The list will be used as a checklist when we go through SCRUM exercises.
    • It is understood that your design and the list of essential features may be refined and modified as we go through the iterations of development.
  • Adoption of relevant design principles
    • relevant UI design principles from Dr. Olivier St-Cyr's course
    • relevant Android Design Principles and Patterns on the Android Developer website
  • References
    • Android Design Patterns: Interaction Design Solutions for Developers by Greg Nudelman. John Wiley & Sons, 2013. (Available as eBook from Seneca Library.)
    • Building Mobile Experiences by Frank Bentley and Edward Barrett. MIT Press, 2012. (Available as eBook from Seneca Library.)
      • Figure 2.1

Android Design Principles and Patterns

  • "Design apps that behave in a consistent, predictable fashion."

Android Best Practices

  • Interaction and Engagement, User Interface, User Input, Background Jobs, and Performance

The Android Platform