Project Overview

Atlanta is the capital and most-populous city in the U.S. state of Georgia. It is the cultural and economic center of the Atlanta metropolitan area and the ninth-largest metropolitan area in the United States.

In 2017, Wintellect worked in partnership with Microsoft Field Sales to win a massive opportunity with the City of Atlanta to bring their Hybrid Cloud platform, IoT platform, Enterprise Data platform, and Situational Awareness platform to the Azure cloud. Winning the business required multiple teams working together to demonstrate a host of cloud services and abilities. For Wintellect, this included POC components related to Azure PaaS, Cosmos DB, Xamarin, and the Bot Framework (used to create a chatbot utilizing QnA Maker and the Azure Bot Service). The Bot used a FAQ from the City of Atlanta to create an interactive chatbot capable of answering common questions about the City of Atlanta and the services provided. The resulting Bot was deployed as a Web Chat and as a Skype Bot, providing two channels for reviewing the results. This then led directly to the first new set of Azure based applications for the City, working under the umbrella of the City’s “SmartATL” initiative.

SmartATL is an ongoing initiative to enable the city, citizens, and businesses of Atlanta to gain actionable insights to improving the livability of the city and to foster economic growth by leveraging IoT and Big Data analytics capabilities.

In conjunction with Microsoft, the City of Atlanta wanted to demonstrate a next generation, public-facing data visualization application at the Smart City event hosted by the City in September 2017. The application – called MapATL and showcased at the event – includes a front-end user interface, supporting APIs, and a CosmosDB database that provides users the ability to query and view openly available city data on an interactive map, and receive personalized notifications.


Figure 1: Atlanta’s Smart City event in 2017

Details

The City of Atlanta wanted a solution that was forward-thinking in the design and technology stack. The new platform needed to provide information not only to data scientists and researchers, but also to broadly support the citizens of Atlanta. The City provided the vision along with the initial requirements for the application. The Wintellect team was selected to refine those requirements and implement the solution.

The core vision was to provide users with the ability to find data that is important to them, in the areas of the city that matter to them. Not only would users have the ability to browse data, but they could also register with the application to receive notifications that keep them up-to-date. Conceptually, the functionality to achieve this vision involves a web application, an API, and a database. However, the technology, infrastructure and architecture for the system required the ability to scale to the needs of a city. For that reason, Microsoft’s Azure cloud platform was selected as the perfect fit to provide the flexibility, services, and scale the project needed.  MapATL 2.0 utilizes a variety of Azure services:

  • The web application and web API both use the Azure App Service Platform-as-a-Service (PaaS) offering.
  • Data for MapATL 2.0 is stored in Azure Cosmos DB, a hyperscale data storage solution.
  • DocumentDB API was selected for its ease of use and GeoSpatial querying ability.
  • Azure Resource Management (ARM) templates were used to help automate and deploy both the App Services and Cosmos DB instances.
  • An Azure Function integrated with the Send Grid mailing API manages the task of sending notifications to users.
  • Finally, MapATL 2.0 relies on Azure AD B2C to handle user authentication and management.

A core requirement was that the client-facing web application provide a rich user experience. Angular and ASP.NET Core, along with JavaScriptService and Web API, were selected for their combined ability to quickly produce rich web applications.

Figure 2: Home Page

Figure 3: Search Query Builder

Figure 4: Search Results Grid

Why Wintellect?

The City of Atlanta needed a partner that was an expert at providing the right combination of project guidance, as well as selecting both application and cloud technologies, to realize a project in a short time-frame using the latest technology. The City preferred the project use Microsoft Azure for the cloud implementation and Angular for the web front end.

  • Wintellect has experience in developing and deploying Azure solutions
  • Wintellect is a Microsoft Gold Cloud Partner.
  • Wintellect has deep expertise in Angular for Modern Web Development.
  • Wintellect is a recognized leader in software architecture and implementation on the web, mobile, and cloud platforms.

Strategy

The City of Atlanta requested a set of features which they felt would bring the most value to their citizens. Wintellect provided guidance and helped to groom and prioritize features to deliver a minimum viable product in time for Atlanta's SmartATL event. The final requirements focused on the functionality users would immediately utilize, and an intuitive user interface experience.

Building the infrastructure involved designing Azure Resource Manager (ARM) templates to create the necessary cloud resources, building a continuous integration and delivery (CI/CD) pipeline in Visual Studio Team Services, creating a data import tool, setting up the web projects, and preparing other project needs. With this infrastructure in place, the focus shifted to implementing the prioritized feature list. Combining Azure services such as Azure Active Directory B2C and Cosmos DB (using the DocumentDB API) with Angular and ASP.NET Core Web API made it possible to complete the implementation quickly and resulted in a tight feedback loop for the City of Atlanta.

Conclusion

The solution was developed and implemented on a short timeline to meet the delivery requirements of the Experience SmartATL launch and to provide a foundation for continued development. The MapATL 2.0 project successfully combines many different technologies and services to build a single cohesive solution that delivers on the vision of the client and provides the flexibility needed for the future.