0% found this document useful (0 votes)
48 views31 pages

CPE432 - Lecture Notes 4

This document discusses emerging technologies in consumer product engineering including agile methodology, DevOps, continuous delivery, microservices, container orchestration, cloud computing, and serverless computing. It provides brief definitions and explanations of each technology. Agile focuses on collaboration and iterations. DevOps integrates development and operations teams. Continuous delivery automates the release process. Microservices break applications into individual services. Container orchestration automates deployment and management of containers. Cloud computing delivers services over the internet. Serverless computing allows developers to purchase backend services on demand.

Uploaded by

afdsalado113
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views31 pages

CPE432 - Lecture Notes 4

This document discusses emerging technologies in consumer product engineering including agile methodology, DevOps, continuous delivery, microservices, container orchestration, cloud computing, and serverless computing. It provides brief definitions and explanations of each technology. Agile focuses on collaboration and iterations. DevOps integrates development and operations teams. Continuous delivery automates the release process. Microservices break applications into individual services. Container orchestration automates deployment and management of containers. Cloud computing delivers services over the internet. Serverless computing allows developers to purchase backend services on demand.

Uploaded by

afdsalado113
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 31

Emerging Technologies in CPE

Rethinking Product Engineering

Prepared by:
Engr. Stephanie Grace V. Cortes
Sources:
https://www.wrike.com/project-management-guide/faq/what-is-agile-methodology-
in-project-management/
https://www.edureka.co/blog/what-is-devops/
https://continuousdelivery.com/
https://smartbear.com/learn/api-design/microservices/
https://www.redhat.com/en/topics/containers/what-is-container-orchestration
https://www.investopedia.com/terms/c/cloud-computing.asp
https://www.ibm.com/ph-en/topics/serverless
Rethinking Product Engineering

Rethinking product engineering:


• Agile
• DevOps
• Continues Delivery
• Micro-services
• Containers & orchestration
• Cloud
• Serverless
Agile
What Is Agile Methodology in Project Management?

• The Agile methodology is a way to manage a project by breaking it up into several


phases. It involves constant collaboration with stakeholders and continuous
improvement at every stage.

• It’s a process for managing a project that involves constant collaboration and
working in iterations. Agile project management works off the basis that a project
can be continuously improved upon throughout its life cycle, with changes being
made quickly and responsively.
Agile
Agile methodologies frameworks

Agile project management is an umbrella term to include many different


frameworks. Agile project management can refer to terms including:
• Scrum
• Kanban
• Extreme Programming (XP)
• Adaptive Project Framework (APF)
Agile
Agile Process
Agile
DevOps
What Is DevOps Methodology?

• DevOps is a term that refers to the collaboration of software developers (dev)


and operations personnel (ops). It is defined as a software engineering
methodology that aims to integrate the work of software development and
software operations teams by fostering a collaborative and shared responsibility
culture.
DevOps
DevOps
DevOps tools for each phase of the DevOps life cycle:
1. DevOps tools for continuous development (CD): Jira and Git
2. DevOps tools for continuous integration (CI) and continuous delivery (CD): Jenkins
3. DevOps tools for continuous testing: Selenium and Bamboo
4. DevOps tools for continuous deployment:
Container management: Docker
Configuration management: Ansible
5. DevOps tools for continuous feedback: Jira Service Management and Parlor
6. DevOps tools for continuous monitoring: Prometheus
7. DevOps tools for continuous operation: Opsgenie
DevOps
Continuous Delivery
What is Continuous Delivery?

Continuous Delivery is the ability to get changes of all types—including new


features, configuration changes, bug fixes and experiments—into production, or
into the hands of users, safely and quickly in a sustainable way.

Continuous delivery automates the entire software release process. Every revision
that is committed triggers an automated flow that builds, tests, and then stages the
update. The final decision to deploy to a live production environment is triggered
by the developer.
Continuous Delivery
Continuous Delivery vs. Continuous Deployment

With continuous delivery, every code change is built, tested, and then pushed to a
non-production testing or staging environment. There can be multiple, parallel test
stages before a production deployment. The difference between continuous
delivery and continuous deployment is the presence of a manual approval to
update to production. With continuous deployment, production happens
automatically without explicit approval.
Continuous Delivery
Continuous Delivery vs. Continuous Deployment
Continuous Delivery

Examples of Continuous Delivery Software:

1. GitHub 5. Gearset
2. GitLab 6. LaunchDarkly
3. CloudBees 7. Azure DevOps Projects
4. CircleCI 8. Flosum
Microservices
What are Microservices?

Microservice architecture is a distinctive method of developing


software systems that tries to focus on building single-function
modules with well-defined interfaces and operations.

Microservice architecture, also known as ‘microservices,’ is a


development method that breaks down software into modules with
specialized functions and detailed interfaces.
Microservices
Difference Between Microservices and Monolithic Architectures

The monolithic architecture consists of applications built as large,


autonomous units. Such applications cannot be changed easily
because the entire system is heavily interconnected.

Microservices reimagine applications as a combination of multiple


individual, interconnected services. Each service runs a specialized
process and is deployed independently.
Microservices
Difference Between Microservices and Monolithic Architectures
Microservices
Container Orchestration
What are containers?

Containers are a method of building, packaging and deploying


software. In the simplest terms, a container includes both an
application’s code and everything that code needs to run properly.

Container orchestration automates the deployment, management,


scaling, and networking of containers.
Container Orchestration
What is container orchestration used for?

Use container orchestration to automate and manage tasks such as:


• Provisioning and deployment
• Configuration and scheduling
• Resource allocation
• Container availability
• Scaling or removing containers based on balancing workloads across your
infrastructure
Container Orchestration
What is container orchestration used for?

Use container orchestration to automate and manage tasks such as:


• Load balancing and traffic routing
• Monitoring container health
• Configuring applications based on the container in which they will run
• Keeping interactions between containers secure
Container Orchestration
What is Kubernetes container orchestration?

Kubernetes is a popular open source platform for container


orchestration. It enables developers to easily build containerized
applications and services, as well as scale, schedule and monitor
those containers.
Cloud Computing
What is Cloud Computing?

Cloud computing is the delivery of different services through the


Internet. These resources include tools and applications like data
storage, servers, databases, networking, and software.
Cloud Computing
Types of Cloud Computing

1. Software-as-a-service (SaaS) involves the licensure of a software


application to customers. Licenses are typically provided through a pay-as-
you-go model or on-demand. This type of system can be found in Microsoft
Office's 365.

2. Infrastructure-as-a-service (IaaS) involves a method for delivering


everything from operating systems to servers and storage through IP-based
connectivity as part of an on-demand service. Popular examples of the IaaS
system include IBM Cloud and Microsoft Azure.
Cloud Computing
Types of Cloud Computing

3. Platform-as-a-service (PaaS) is considered the most complex of the three


layers of cloud-based computing. PaaS shares some similarities with SaaS, the
primary difference being that instead of delivering software online, it is actually
a platform for creating software that is delivered via the Internet. This model
includes platforms like Salesforce.com and Heroku.
Cloud Computing
Serverless Computing
What is Serverless Computing?

Serverless is a cloud computing application development and


execution model that enables developers to build and run application
code without provisioning or managing servers or backend
infrastructure.

'Serverless' describes the developer’s experience with those


servers—they are are invisible to the developer, who doesn't see
them, manage them, or interact with them in any way.
Serverless Computing
What is Serverless Computing?

Serverless computing is a method of providing backend services on an as-


used basis.

Serverless computing allows developers to purchase backend services on a


flexible ‘pay-as-you-go’ basis, meaning that developers only have to pay
for the services they use.
Serverless Computing

Examples of serverless services offered by the cloud providers:

• AWS Lambda
• Microsoft Azure Functions
• Google Cloud Functions
• IBM OpenWhisk
Emerging Technologies in CPE

THE END

You might also like