DevOps

Technologies for Tomorrow

 

Rúben Barros, no. 1100667

 

Supervisor: Ângelo Martins, PhD

Co-Supervisor: Tiago Boldt Sousa

 

Summary

 
  • Context

  • Research Question

  • Goals

  • Initial Work

  • Validation

  • Conclusions

 

1

Context

2

IT operations statistics

 

DevOps metrics from 20+ Fortune 1000 organizations:

  • Infrastructure failure costs $100,000 per hour;
  • Critical application failure costs $500,000 to $1 million per hour;
  • The number of deployments per month is expected to double in two years;
  • During an application’s development, testing, deployment, and operations life cycle 25% of spent time is considered wasteful and unnecessary.
  • DevOps-led projects will accelerate the delivery of functionalities to the customer by 15–20%.
 

3

Cloud

 

4

  • Cloud Computing allows companies to consume computing resources as a utility;
  • Companies no longer require  investment in hardware and people operating it;
  • The same server can serve multiple applications depending the work hours of a country or continent.
 

Cloud Providers

 

5

Are we ready?

 

Traditional Software Development

 

Departments:

  • Development;
  • Quality Assurance;
  • Operations.

6

Traditional Software Development

 

Development goals:

  • Faster development.
 

Need for Change

Fear of Change

 

Operations goals:

  • Server uptime;
  • Application response time.

7

DevOps

 

9

DevOps (Development and Operations) describes a culture in which business owners and the development, operations, and quality assurance departments collaborate to deliver software in a continuous manner and encourages practices to evolve to meet that culture focusing on business instead of departmental objectives. [Sharma and Coyne, 2015].

 

DevOps

 

10

Research Question

 

11

What information can we capture and how can we formalize it so that we can improve how software teams practice DevOps?

 

Goals

 
  • Research DevOps and DevOps tools;
  • Identify categories to aggregate DevOps tools in;
  • Identify key functionalities for each category;
  • Discuss forces influencing the adoption of the available tools;
  • Identify requirements when starting a new project which will influence technological decisions;
  • Cooperate with Software Development Teams;
  • Elaborate a DevOps Knowledge Map;
  • Validate the captured information;
  • Publish conclusions. 
2

12

Initial Work

 

13

  • Research Cloud and DevOps;
  • Identify DevOps tool categories;
  • Identify key requirements for each category;
  • Draft Knowledge Map with the relations between DevOps categories.
1

Validation

14

Methodology

 

15

  • Interview companies to ascertain their interest in the Knowledge Map;
  • Provide our Knowledge Map to companies which are not aware of DevOps practices, companies starting new projects and are interested in using DevOps, and companies already using DevOps in their projects;
  • Assist those companies in every step of the way to facilitate their learning of DevOps practices and tools;
  • Observe their improvement.
 

Metrics

 
  • Time to deliver a project;
  • Time on assuring quality;
  • Time to deploy the project;
  • Downtime period;
  • Time to revert a project;
  • Reliability of a project update.
 

16

17

Conclusions

 

With this thesis, we aim at:

  • Improve how software teams practice DevOps;
  • Elaborate a Knowledge Map to help teams adopting DevOps;
  • Analyze a team's improvement with our Knowledge Map.
2

DevOps

Technologies for Tomorrow

 

Rúben Barros, no. 1100667

 

Supervisor: Ângelo Martins, PhD

Co-Supervisor: Tiago Boldt Sousa

 

Thesis - State of the Art

By xumbino

Thesis - State of the Art

  • 1,169