Optimizing costs – Enterprise Design Considerations

Cloud solutions can be built with incredible flexibility around the resources they consume. We can create systems that dynamically respond to usage so that they scale automatically as needed. Serverless options also allow for solutions that cost near zero when not being used. By way of an example, services such as Azure functions are billed …

Optimizing costs – Enterprise Design ConsiderationsRead More

Mapping requirements – Engaging with Real-World Customers

It may seem obvious, but we need to ensure requirements are recorded and referred to during the projects life cycle. Especially with agile projects, requirements can change through the project, and any such decisions need to be logged and updated along with the reasons why they were changed. There are specialist tools available to help …

Mapping requirements – Engaging with Real-World CustomersRead More

Understanding performance requirements – Engaging with Real-World Customers

Performance is not just your solution’s ability to respond in a timely manner, but its ability to change in response to varying levels of demand. Cloud solutions provide the ability to scale out and up dynamically, but this of course comes at a cost. If demand is directly related to generating revenue, then we may …

Understanding performance requirements – Engaging with Real-World CustomersRead More

Exploring common goals – Engaging with Real-World Customers

Microsoft Azure advises following what is known as the Well-Architected Framework, which covers the five key pillars that need to be considered when designing solutions. Following these areas is a great way to ensure that your design has captured the main points and provide a starting point for your requirements gathering. As a refresher, the …

Exploring common goals – Engaging with Real-World CustomersRead More

Gathering requirements – Engaging with Real-World Customers

There are many examples of projects that have overrun budgets and timeframes, and quite often this is because of a lack of, or at least understanding of, requirements. The choice of an agile delivery method over a waterfall approach is sometimes driven by the fact that it is difficult for customers to know what they …

Gathering requirements – Engaging with Real-World CustomersRead More

Looking at Azure DevOps – Scripted Deployments and DevOps Automation

Throughout this chapter, we have been looking at how we can encode infrastructure in script files and ARM templates that then allow us to automate deployments using those artifacts. This process is often referred to as Infrastructure as Code (IaC) and fits well with agile-based delivery mechanisms as it provides the ability to build solutions …

Looking at Azure DevOps – Scripted Deployments and DevOps AutomationRead More

Understanding ARM templates – Scripted Deployments and DevOps Automation-1

Just as other tools are simply wrappers for the Azure REST APIs, everything that is built in Azure is defined as an ARM template. Whether you create a service through the Azure portal, PowerShell, REST APIs, or the CLI, ultimately that service is described within an ARM template. An ARM template is a JSON-based text …

Understanding ARM templates – Scripted Deployments and DevOps Automation-1Read More

Looking at the Azure REST API – Scripted Deployments and DevOps Automation

The first option we will consider is the Azure REST API. All actions on Azure resources are managed through ARM, and this is exposed by a set of APIs. When we perform actions in the Azure portal, we are actually making HTTP calls to the REST APIs. Information Note Representational State Transfer (REST) is an …

Looking at the Azure REST API – Scripted Deployments and DevOps AutomationRead More

Exploring provisioning options – Scripted Deployments and DevOps Automation

In Chapter 16, Developing Business Continuity, we looked at how to ensure our solutions have adequate backups in the event that the unexpected happens. In this chapter, we continue the operational theme, looking at how we can deploy components into Azure, specifically using scripts, templates, and automation tools. We will begin by exploring what options …

Exploring provisioning options – Scripted Deployments and DevOps AutomationRead More

Understanding Cosmos DB backups – Developing Business Continuity

Azure Cosmos DB, as a managed service, also manages your backups, and by default provides a default level of frequency and retention. Backups are managed through the Backup & Restore view of your Cosmos DB and are configured for the entire account. The options are relatively straightforward, as we can see in the following screenshot: …

Understanding Cosmos DB backups – Developing Business ContinuityRead More