Birthday+

Document Sample
Birthday+ Powered By Docstoc
					                        Tel Aviv University
               Blavatanik School of Computer Science
        Google Workshop for Web Technologies, 2009-2010




 BIRTHDAY+


Eugene Rozenberg
Olga Vingurt
Irena Letuchaya
Jenia Zilber
What’s Birthday+ all about(1)
 Share your events with your friends.
 Share your wish list with your friends.
 Event reminder.
 If you are looking for a present for your
  friend and don’t know what to buy, just
  look in the friend’s wish list.
What’s Birthday+ all about(2)
   Group Gift - participation management
    ◦ If the present is cheap, you can buy it alone.
    ◦ If the present is valued, you want to
      participate partly in selected present with
      other friends.
Look & Feel (1)
   Events tab
    ◦ Display future events in a list
    ◦ Manage your own events
    ◦ If you click on a friend’s event, you will see his
      wish list
   Wish list tab
    ◦ Manage your wish list
Look & Feel (2)
   I buy tab
    ◦ Presents I chose to give (alone and as a
      group member)
    ◦ You can cancel if you don’t want to give
    ◦ You can see updates for the item you’re
      buying as a group
    ◦ Chat with your group
Existing Features
 View your friends events
 Manage your events
 Manage your wish list
 Reserve and buy a gift for a friend
Architecture
 iGoogle gadget container for the
  application
 GWT
 OpenSocial for retrieving friends
 AppEngine + BigTable (database + site
  repository)
 GQL (work with BigTable)
 RPC Calls
Team work
   Each member have separate area of
    expertise
    ◦ Server side: server logic, GQL, RPC      (1
      members)
    ◦ Client side: GWT, Open Social, RPC       (3
      members)
    ◦ Build class client/server architecture   (2
      members)
Problems(1)
   GWT Gadget has huge bug with RPC
    Calls structure
    ◦ RemoteServiceProxy does a POST to send
      data and iGoogle container seems not to
      support POST anymore.
   Solution
    ◦ Make POST request with OpenSocial
      makeRequest.
Problems(2)
   DAL objects couldn't serialize for
    GWT
    ◦ So we had to separate business object to DB
      objects and data transfer objects.
Problems(3)
   Big Table problem
    ◦ We have a base class and a child class.
    ◦ Persist child items only.
    ◦ Members of base class wasn't saved in the database.
    ◦ We need two classes, one of them aggregated the
      other.
    ◦ The primary key that was suitable for the main class
      was string. But it didn't allow the aggregated classes
      to be connected to father.
   Solution
    ◦ removing inheritance and partially code duplication
    ◦ Change primary key to be of type "Key“
Problems(3)
   Google's JDOQL
    ◦ Implementation (datanucleous) isn't complaint
      to a standard. We had issues with parameters
      passing that work different than in standard.
Problems(4)
   Running in Hosted mode during development -
    debug as Gadget
    o Can’t debug in OpenSocial container iGoogle.
   Solution
    o Haven't found a solution yet
Next Features
   Improve GUI (work with CSS)
   Manage a group of friends that want to buy a
    present together for specific event
   Calendar reminders for events (AppEngine
    Google Calendar API)
   Close group email reminder
   Work with CRON (remove unclosed groups
    from database after the event expired)
   Talkbacks
Nice to have features
 Make virtual money transfer to person
  that will buy a group present, using
  Google Checkout.
 Import friends’ events from other social
  networks.

				
DOCUMENT INFO
Shared By:
Categories:
Stats:
views:18
posted:7/16/2011
language:English
pages:15