ESIROI · Maquettes Connexion
AccueilITS9 · UE9-Ressources
DEV901

Introduction to Research

FR EN ⬇ PDF
RéférentFanilo HARIVELO
ECTS2
CM / TD / TP5 / 11 / 6
Typematiere

Complète
Viable100%
Complète100%
Fiche complète ✓

But du cours

  • Understand how to create cloud-based applications and use cloud automation tools in the DevOps process.
  • Understand the theoretical context of DevOps and cloud automation techniques.
  • Demonstrate the application of these techniques to a series of software applications and development scenarios/processes.
  • Understand the features offered by popular DevOps and cloud automation tools such as Chef, Puppet, Ansible, and SlipStream.
  • Gain practical experience with one of these tools through a project.

Acquis d'apprentissage visés

  • Master fundamental programming paradigms, languages, and algorithms to design and develop applications for any environment (1,4)-(2,4)
  • Apply and master integration engineering, interoperability, deployment, and testing (1,4)-(2,4)
  • Apply and master methodologies, tools, and formalisms to design, implement, and maintain high-quality and secure software (1,5)-(2,4)

Prérequis

Advanced system administration, Software engineering

Programme

  • Fundamental principles of DevOps, continuous integration, continuous delivery, continuous testing. Relationship with other agile development technologies: Lean, CAMS, and ITSM.
  • Organizational impact of DevOps, digital transformation, and DevOps; structure and operation of the DevOps team, leadership, collaboration, and structured problem-solving; success factors and key performance indicators.
  • Agile software development: Scrum, Kanban, Kaizen; Scrum Agile process and team management; role of multidisciplinary teams. Agile Manifesto.
  • DevOps tools and processes: CI/CD pipeline; DevOps Toolchain; coding, versioning, collaboration, and testing. Version control and team development, Git, automated testing.
  • DevOps practices and platforms: Software packaging, containerization. Container technologies, Kubernetes, tools.
  • Cloud computing architectures, service and deployment models, Cloud IaaS and Infrastructure as Code, cloud economics.
  • Cloud-powered software development: Example and AWS tools.
  • Cloud monitoring tools and operational concepts for development.
  • Overview of cloud automation: Cloud-based tools (e.g., AWS CloudFormation, Azure ARM); multicloud tools such as Chef, Puppet, Ansible, Terraform, others.
  • Popular cloud automation tools: Chef, Puppet, Ansible (depending on available platform).
  • Cloud security architecture and models, cloud compliance, CSA Consensus Assessment Initiative questionnaire and certification.
  • DevSecOps; secure software development lifecycle; cloud-based tools for secure software development.

Modalités d'évaluation

A knowledge assessment, a lab report, and an oral presentation.

Bibliographie

  • Teaching DevOps and Cloud based Software Engineering in University Curricula
  • P. Bourque and R.E. Fairley, eds., Guide to the Software Engineering Body of Knowledge, Version 3.0, IEEE Computer Society, 2014;
  • DevOps Institute: The Association for DevOps Professionals [online] https://devopsinstitute.com/ DevOps Agile Skills Association (DASA) [online]: https://www.devopsagileskills.org/certifications/dasa-devopsfundamentals/

Supports

Slides and practical work sheets.