Plataformas de Desenvolvimento

Base Knowledge

Computer science knowledge and use of virtual machines to create the setup for the course.

Teaching Methodologies

The classes will be mostly practical.

The initial part of the class will be mostly informative, with the presentation of documents and practical examples.
The remaining part of the class will be practical, with the students being incentivized to put into practice the knowledge previously acquired.

Learning Results

To provide students with concepts, practices and tools about continuous development and continuous delivery, including the construction of the supporting pipelines. To provide concepts on cloud computing architectures and topics on their implementation, serving as a cloud provider AWS services.

 

At the end of the course students shall be able to

– Know, understand and apply the concepts of continuous development and continuous delivery.

– Know, choose and apply the supporting tools for continuous development and continuous delivery.

– Plan and implement pipelines for continuous development and continuous delivery.

– Know and understand architectures based on cloud computing

– Understand AWS Cloud, services, and terminology

– Plan and implement systems according to cloud computing architecture, using AWS services.

Program

The program of this course will be divided into two distinct parts:

CI/CD:

  • Introduction to concepts of CI/CD
  • Docker (concepts, image use, image creation)
  • Ansible (concepts, use of ansible and creation of macros for several environments)
  • Jenkins (concepts and practical exercises)
  • NetLify ( pipeline CI/CD para Frontend)

Cloud Computing:

  • Overview and Introduction to AWS
  • AWS Security, Networking and Storage
  • AWS Compute, Databases and IoT

There will be 2 classes dedicated to finish and present the practical work at the end of the semester.

Curricular Unit Teachers

Ricardo Ângelo dos Santos Filipe

Grading Methods

Written examination – 25%.
Practical work – 75 %.

 

The practical works includes a development component about CI/CD, AWS and labs related about AWS services.

 

Development component:

Assignment#1- The student will have to propose, plan and develop a continuous integration/delivery pipeline with a small application.

Assignment#2- The student will have to plan and develop a cloud native application using AWS services.

Assignment#3- The student will have to do some labs related with AWS content.

Assignment#4- The student will do a small CICD pipline using Github Action

 


    Internship(s)

    NAO

    Bibliography

    Josh Stella . (2015) .An introduction to immutable infrastructure, Retrieved at 02 feb. 2024. Available at https://www.oreilly.com/radar/an-introduction-to-immutable-infrastructure/

    CNCF. (2021). Could Native Landscape. Retrieved at 02 feb. 2024. Available at https://landscape.cncf.io/

    Jenkins(2021). Jenkins Build great things at any scale. Retrieved at 02 feb. 2024. Available at https://www.jenkins.io

    Red hat Ansible (2021). Red hat Ansible. Retrieved at 02 feb. 2024. Available at https://www.ansible.com/

    Miell, I. & HbsonSayers A. (2019). Docker in Practice (2ª ed.). Manning Publications

    AWS Certified Cloud Practitioner, Consultado em 02 fev. 2024, Available at https://aws.amazon.com/certification/certified-cloud-practitioner/?ch=tile&tile=getstarted 

    Learning GitHub Actions: Automation and Integration of CI/CD with GitHub 1st Edition Available at https://www.amazon.com/Learning-GitHub-Actions-Automation-Integration/dp/109813107X