Thursday 14 April 2016

1.5 New Technology Justification (AMP vs Asp.net, Azure, Sql Server)

So in my panic after the first iteration, I jumped into Google and began researching which back-end approach would be best for my project.

For AMP, the fact that it is all open source seemed very appealing. There is also a large community that use this approach when creating a back-end, so it was very easy to find a forum or video of some description that would describe in detail how to set up such an architecture. However, what it came down to was a battle between PHP or Asp.net.

After researching, I decided to adopt Asp.net for the reason that it comes with an extensive library of tools to use along side a web application such as LINQ, Visual Studio along side a wide library of Frameworks such as Entity. Furthermore, Asp.net utilizes C#, a powerful OOP language that is compiled and not interpreted such as PHP.

References:

http://www.bayt.com/en/specialties/q/1427/what-are-the-advantages-of-using-asp-net-over-php/


1.4 First Iteration

For the first iteration I had to:

  • Decide what the core functionality is of the project.
  • Identify risks.
  • Why I am using the technologies I am using.
  • Design core fucntionality.
My core functionality for my project was is swapping a shift. Therefore, the first iteration towards developing my core functionality was establishing a back-end.

What I initially started to use was an online cloud service that provides back-end functionality for an application. This service is called Firebase. I successful connected to Firebase (after setting up and account), and designed a very basic app that could push and pull data from my android app. 

The only risks associated with Firebase was that it is a relatively new service provided by Google. Therefore the Firebase community is quite small and therefore there is a lack of online content for support and referencing. Furthermore, as it is relatively a new service, it may not be compatible with every technology out on the market or possible a core technology that I require in my project.

Iteration one Issues:

 As I began to dig a little deeper into Firebase, it became apparent that Firebase at its current development state, is not very established for other technologies other then android. This is where I began to run into issues. For my project, I need a website that acts as an entry point for my admin users to add "Roster" data to a database. However, with Firebase this is not possible as I am not able to connect my website (asp.net) to the Firebase database. As this project is under time constraints I did not think it was wise to invest more time trying to find an API that could incorporate my website with Firebase. Therefore, at the end of iteration one, I have decided to redesign my back-end. So AMP vs asp.net running on Azure using SQL Server?