Primary Objectives:

  1. Be able to write a complex MVC web application and deploy to the cloud
  2. Learn how to provision and deploy a database to the cloud

Overall Requirements:

  • Use Azure for both the web application and the database
  • Must build the database from script files that are maintained in your project under Git
  • Your database password cannot appear in your Git repository

"As a developer in this new world of cloud applications I want to write a database backed web application and deploy it in the cloud so I can prove my cloud skills and show I can do more than just local development/deployment."

Questions/Tasks:

  1. [Setup] Begin with your finished HW 8.
  2. [Setup] Create the database remotely on Azure. For this and the next task you may find Chapter 13: Deployment to be especially helpful. We will also cover this during class in Week 9.
  3. [Setup] Deploy the web application on Azure. It must use the database you deployed on Azure.
  4. [Setup] You'll need an account on Azure. If you haven't done this before, you get a free account with $200 credit. This is more than plenty to cover this class for free. Do use this resource wisely and remember, if something is provisioned or running you'll have to pay for it. If it takes up storage or bandwidth the cloud provider will charge you for it somehow. Part of this homework and tasks you'll do next term involve learning how to use cloud services properly. Hint: when you're finished with something and don't need it anymore -- delete it. If you'll need it in the future then just make sure it isn't running. Databases cost money just by existing. Delete them if not needed.

    Many students last year used their Microsoft Imagine (DreamSpark) account on Azure. They got free databases (otherwise they're $5/month. If you need an account let me know.

  5. [Portfolio Content] To show how you did all this, take screenshots of all significant phases of setting this up and of your running site and put them in your Portfolio. (Make sure you don't use a screenshot of your database password!) In addition, leave this web app running online until the end of finals week so it can be graded live. Include a link to it in your Portfolio.