Nothing Special   »   [go: up one dir, main page]

Chapter 1

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 12

Introduction

Overview the module and introduce the


development value stream

Cloud System DevOps (CIS3003-N) 1


Objectives
• Discuss the nature of enterprise apps
• Outline the objectives for our software developments
• Introduce the agile development value stream
• Introduce the various environments that form the deployment pipeline
• Inform you of the tools and technologies we will be using
• Inform you of the format of the teaching and assessment of the module
• Compare the development method of the Agile Developer module to that of
the Cloud System DevOps module

Cloud System DevOps (CIS3003-N) 2


Our Goal
Build better enterprise-standard applications and systems
• Cloud-ready
• Well architectured
• Developed using professional practices

Cloud System DevOps (CIS3003-N) 3


What is an Enterprise Application?
• Lots of persistent and distributed data
• Data spread over multiple servers (choices of replication or sharding)
• Choosing the best database technology (relational, aggregate or graph) to use
• Concurrent manipulation of data
• Many, many simultaneous clients
• Choosing between consistency and availability for handling concurrent user operations
• Integrate with other systems (various ages, technologies)
• Mass aggregation of many legacy systems with new ones to add further value
• Components in languages not natural to the development team
• Contain (immutable) legacy clients that must remain supported
• Domain (business) models and logic that can be contradictory (e.g. multiple uses of
the same name, rules that conflict)
• Examples: payroll, online retail, travel reservations, health records, airlines
Cloud System DevOps (CIS3003-N) 4
Our Software Should Be …
Engineered: verified and extendable

Secure: authority and authentication

Distributed: availability vs. consistency

Resilient: continues in the event of failure

Elastic: scalable horizontally or vertically

These principles are roughly in alignment with the Reactive Manifesto: http://www.reactivemanifesto.org/

Cloud System DevOps (CIS3003-N) 5


Sequence of activities
Development Value Stream undertaken to deliver
upon a customer request

Development Team Operations Team

Feature
request
submitted
Accept User
feature Development Testing Deployment Acceptance
request Testing Delivered
Successfully

Task Time

Lead Time

Cloud System DevOps (CIS3003-N) 6


Deployment Environments

Build Staging Production


Local Test

Many local Few (probably Possibly several One staging One production
development one) build test environments, environment to environment
environments, each environment per one for each represent the next hosting the live
configured very team (product / supported platform release of the product
differently, which is service / product
the cause of “it component).
worked on my
machine.” Coding must be environment aware so the app can work correctly as it is moved about

Cloud System DevOps (CIS3003-N) 7


Tools and Technology Stack
• Microsoft Visual Studio 2019 is our Integrated Development Environment
• We will usually program using C# with the Microsoft .NET (Core 2.2) framework
• Persistence technologies:
• Microsoft Sql Server will be our Relational Database tool – but Express and LocalDb are fine
• Other frameworks that we will be using:
• Microsoft ASP.NET Core MVC (https://dotnet.microsoft.com/apps/aspnet/mvc)
• Microsoft Entity Framework Core (https://docs.microsoft.com/en-us/ef/core/)
• Microsoft ASP.NET Core Web API (https://dotnet.microsoft.com/apps/aspnet/apis)
• Deployment environments:
• Microsoft Azure cloud platform
• Docker containers

Cloud System DevOps (CIS3003-N) 8


Module Guide
Available on Blackboard

Cloud System DevOps (CIS3003-N) 9


Building on Previous Studies

What…
Design Construct Test Deploy

How…
Lone Pair Agile DevOps

Progression of studies

Cloud System DevOps (CIS3003-N) 10


Agile Developer vs. Cloud System DevOps

DEV DEV TEST STAGING

VCS TEST VCS STAGING PROD

DEV DEV TEST STAGING

VCS You will not be working on shared


source code in this module, all
coding is your own

Cloud System DevOps (CIS3003-N) 11


Help and Support
• Having difficulty – ask ASAP!
• You are expected to attend all classes and be prepared for them; identify in
advance appropriate questions where possible
• Email: t.p.davison@tees.ac.uk, z.khan@tees.ac.uk, j.fairbairn@tees.ac.uk
• Don’t send code to debug!
• Address team-related problems as soon as possible; be professional

Cloud System DevOps (CIS3003-N) 12

You might also like