In: Computer Science
Deliverable 2 - Implementation of an Enterprise Architecture
Outline a plan to create an enterprise architecture for a cloud-based web application server and SQL Database Sever. Including the necessary development environment, production environment, and implementation schedule including a critical path.
Competency
Summarize the common elements of enterprise architectures.
Scenario
You work as a developer for Solutions Inc. Your client, Universal Widgets, is planning to implement a cloud-based solution for their IoT(Internet of Things) connected devices. These devices are designed to monitor air quality in a home for the homeowner's heating and air system. These devices also are able to detect the carbon dioxide levels, presence of smoke, and notify homeowner's when to change the air filters.
The majority of Universal Widgets' customers will use this new solution. This is predicted to increase their sales and their customer base. However, because of the public safety features that are offered by this application, up-time for customers will need to be no less than 99.999% each month. Therefore, any implementation that occurs to the production environment needs to be properly tested prior to implementation.
Instructions
Develop an implementation plan for this cloud-based solution. This plan must include the following elements:
Since the overall infrastructure is going to be hosted in a cloud based environment. Here are few of the common elements that you need to consider to be hosted in a cloud based platform.
For creating the Dev environment, you need to create a network subnet inside cloud platform where individual VM will be hosted and can able to communicate with each other. Secondly, host your VMs in that network and choose a moderate configured VM which will serve the purpose of the DEV environment. Also needed a database where you can store the test data to for testing purpose.You also require a monitoring tool which will monitor the performance of your server. But importantly make sure your Dev environment does not have a public IP address because that is not required.
For full production environment, all the above mentaioned resources are required but their configuration should be high as they have to serve lots of requests from customer at the same time. Secondly, for your Prod environment you have to ensure proper security. So, firewall rules should be set, Access Control List permission should be enabled as because the whole environment can be accessed via internet. These implementation are quite critical and may require a lot of expertise.
These are all actually the cons when you are hosting your environment on a cloud platform. But there are lot of pros based on all is the cloud service provider can easily help in fixing the issues and even help in resolving the critical things. Secondly, the flexibility option is very effective you can anytime switch back to your previous state if the new state is not working fine. Thirdly data availability provided by cloud services is another biggest pros of moving your infrastructure to cloud based platform. As they ensures 99.9999999% data availability that means 0.0000001% chance of loosing data when your infrastructure is hosted on cloud.