Skip to content

JoeyTatu/ScalableCloudProgramming_Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 

Repository files navigation

M.Sc. / PG Cloud

Scalable Cloud Programming Project

The goal of the assignment is to demonstrate that you are able to critically analyse architectures and develop applications for the public cloud. You will work in teams of 3 or 4 for this project.

Description

Create a cloud application solution which integrates and consumes web application services. The solution is formed from

• A client application which must allow user input. The application has to be composed of/consume at least 2 different web services:

  • One web service must be the one written by you
  • At least one web service must be a publicly available web service

• A services application, the services application functionality must be accessible via a set of APIs (e.g. RESTful API, SOAP). The service application APIs should provide the next workflow:

  • Data is retrieved from an object store and transmitted back to the client
  • The services must use a queue
  • The client must process the data received, and then submit back to the services application the updated data
  • Authentication/authorization is required

• The services application must be hosted on a public cloud platform

• Any programming language can be used for coding

Tasks

  • Describe the functional and non-functional requirements of the application
  • Critically analyse and document the architecture of your application for the integration and composition of cloud application services
  • Ensure that your application take advantage of suitable cloud development patterns
  • Implement the application
  • Test the application
  • Deploy the application to an appropriate public cloud platform

Deliverables

Project Submission Deadline: Please check Moodle.

Three Team deliverables:

  1. A TEAM project report (6-8 pages, every additional page will incur a penalty of 10%, formatted using the IEEE Conference double-column template

1

) which should include:

  • Abstract – a 150-300-word executive summary of the project and the main results
  • Introduction – motivation for your project and its main objectives
  • Project specification and requirements
  • Architecture and design aspects of your application – critically analyse and document the architecture of your cloud-based application
  • Cloud-based services used in the application, which includes critical analysis and justification for the choice of services
  • Implementation
  • Continuous integration, delivery and deployment of your application
  • Conclusions including findings/interpretations – what did you learn and find out? Include a short reflection on developing this project.
  • References – a complete list of academic works and/or online materials used in the project. References should be included as in-text citations using the IEEE referencing style.
  1. The source code artefacts submission (a ZIP file) should include:
  • Source code of the application (including comments)
  • Source code of the library (including comments)
  • A readme.txt file that should contain instructions for installing the application
  1. Project presentation and demonstration video, submission should include the following:
  • A concise presentation of the motivation and high-level description of the idea of the project
  • Demonstration – give a demonstration of your application's highlighting the main features
  • Maximum 4 minutes, every 30 seconds over 4 minutes will incur a penalty of 20%

One individual deliverable:

An Individual report (2-3) pages, every additional page will incur a penalty of 10%, formatted using the IEEE Conference double-column template

2

) which should include:

  • Abstract – a 150-300-word executive summary of your individual module(s)
  • Introduction – the main objectives of your module(s)
  • Detailed architecture and design aspects of your module(s)
  • A table stating in your opinion what percentage of the project work was done by each of the team members.

Notes:

  1. Every team must submit the video of their project presentation and demonstration in order to receive a mark for the Scalable Cloud Programming project, otherwise the project will be marked 0 (zero).
  2. The examiners reserve the right to conduct live mini presentations with a sample of the students, where students will provide answers to questions related to their project. Also, there may be scheduled live mini presentations if further clarifications are needed or if there is a concern with the submission.

Presentation Submission Deadline: Please check Moodle

Assessment Criteria

  • Client Application – 25%
  • Services Application – 25%
  • Team Technical report – 20%
  • Individual Technical report – 20%
  • Presentation – 10%

1https://www.ieee.org/conferences/publishing/templates.html

2https://www.ieee.org/conferences/publishing/templates.html

About

NCI - Scalable Cloud Programming - Project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published