Archive‎ > ‎Fall 2009‎ > ‎2009‎ > ‎

Tentative Project

    The Project will consist of building a program that will run on the Android OS ( http://developer.android.com/guide/index.html )
    The project will have three parts:
    • GPS application that tracks the positions of the smartphone and of the friends of the phone's owner. The application is called GPSFriendFinder.
    • A chess game client. The client will connect to a chess server on the Internet. The chess server used will be the best one developed during last year's sweng class. The application is called ChessGame.
      • ChessGame comprises three parts:
        • ChessGameUI: the UI of the chess client
        • ChessGameLogic: validation of chess moves
        • ChessGameConnect: talking to the Chess server
    • A chat client. The user will be able to initiate a conversation with another person and play a chess game with the respective person. This application is called SmartChat.
    • In the end, we will have an application that allows a user to select friends (or other people) from a map, start a chess game and be able to chat with the opponent while playing the game. 
    Each of the applications will be developed independently and can be used independently.
    Each student will develop his/her own project.
    Collaboration is not allowed for functionality development.

    Collaboration will be permitted at specified moments.

Project Structure

 Date     Topic
 September 15
TUTORIAL1
 September 22
TUTORIAL2
 September 29
HOMEWORK1 - GPSFriendFinder
 October 6
DELIVERABLE1 - GPSFriendFinder
TUTORIAL3
HOMEWORK2 - ChessGameUI
 October 13
HOMEWORK2
 October 20
DELIVERABLE2 - ChessGameUI
TUTORIAL4
HOMEWORK3 - ChessGameLogic
 October 27
HOMEWORK3
 November 3
DELIVERABLE3 - ChessGameLogic
HOMEWORK4 - ChessGameConnect

 November 10
HOMEWORK4
 November 17
DELIVERABLE4 - ChessGameConnect
  • ChessGame = ChessGameUI + ChessGameLogic + ChessGameConnect
HOMEWORK5 - SmartChat
 November 24
HOMEWORK5
 December 1
DELIVERABLE5 - SmartChat
HOMEWORK6 - Integration

 December 8
HOMEWORK6
 December 15
DELIVERABLE6 - Integration
COMPETITION

Time to implement (estimate)

 Homework     Duration ( in person-days )
Responsible
 GPSFriendFinder  1 Vitaly
 ChessGameUI  3 Silviu
 ChessGameLogic  3 Laurent
 ChessGameConnect  2 Cristi
 SmartChat  2
Horatiu and Vitaly
 Chess Server
 2
Etienne
 TOTAL 12
 
 TOTAL + 33% (buffer)
16
 
 DEADLINE September 10
 

 

Evaluation

The assignments will be evaluated against these requirements
  • must compile and build an android application
  • must install on an android phone
  • must pass student's own written test cases
  • must pass TA written test cases
  • code review done by TA
    • IDEA: It will be a nightmare to read 60 submissions.
      • What about splitting the total number of projects into 5/6 depends on everybody's availability. Every one will get 10-12 projects
      • We will rotate so as to make sure we do not correct the same person's project twice.
      • 6 Homeworks and 6 of us makes this possible.

Grading

  • Each of the Homeworks 1 through 6 account for 15% of the project final grade
    • Homeworks 5 and 6 are considered without the integration with another student's project
  • Integration with another student's project accounts for 10% of the project final grade.
    • 5% for Homework5
    • 5% for Homework6
  • Late homeworks (Homework 1-5): strict deadline. If the homework is late, the student gets 0%.

Tools

  • Eclipse
  • Android DSK
  • Eclipse Android Plug-in

Competition


The competition will find the best application developed by the students.
Criteria for evaluating projects are:
  • code coverage achieved by unit testing
  • inter-operability
    • students will be asked to start multiple games with multiple people
  • user testing
    • independent reviewers will interact with the developed projects
  • crash testing
    • projects will be tested against failure inducing scenarios
  • battery life
    • if we get Android phones, than we will test how fast each application drains the battery.
    • Methodology:
      • student developed apps will be ran for 10 minutes and the amount of battery used is computed.
      • the lower the amount of battery, the better the app is.
Comments