Register
Submit a solution
The challenge is finished.

Challenge Overview

Project Overview

Client requires an application to replicate current functionality to book video conferencing (VC) rooms through a calendar.

The new system will track events created through Google Calendar which have the vc room resources attached. When such events are created, an email needs to be generated and sent to Orange with the relevant details so they can action the VC booking request on their side.

Competition Task Overview

This challenge should design the architecture of this project.

The architecture should include following deliverables:

  • UML Diagram (Class Diagram, Sequence Diagram, etc.)
  • Appliation Design Specification
  • Assembly Challenge Specification

Detailed Requirements

Functional Requirements

  • Track when events are created on specified resource calendars.
  • When an event is created, updated or deleted with 2 or more of specified resource calendars, an email should be generated with the format defined below, and sent to a predefined address (Orange), and then an acknowledgement sent to the user. (https://developers.google.com/appengine/docs/java/mail/)
  • If an event has less than 2 resources included, no emails should be generated.
  • If there are any errors in sending the emails, keep track and retry after a delay.
  • If a created event is set to recur, the application will uncheck the "recurring" checkbox, and only the first event should remain. The user is emailed notifying them of this, and advising them that recurring events are not supported at this time.

Non-Functional Requirements

Application Flow

  1. A user creates, edits or deletes an event in Google Calendar which includes 2 or more VC room resources. 
  2. The web application monitors changes on Google Calendar, and picks up an event change on this event. 
  3. The web application generates an email with the relevant details and sends it to Orange (see format below). 
  4. Once the email has been successfully sent to Orange, an acknowledgment email should be sent to the user (see format below). 

Email Format

see attached email format file.

Open Source Library

Google App Enging SDK:  https://developers.google.com/appengine/downloads

Google APIs Client Library: https://developers.google.com/discovery/libraries

Technology Overview

  • Google App Engine
  • Java
  • Google APIs


Final Submission Guidelines

Submission Deliverables

  • TCUML
  • Application Design Specification
  • Assembly Challenge Specification

ELIGIBLE EVENTS:

2015 topcoder Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30045549