SlideShare une entreprise Scribd logo
1  sur  97
Agile Software Development +
DevOps
Ahmed Misbah
Purpose of this session
Put you on the first steps of becoming
Software Engineers by understanding
Agile Software Development
Agenda
• Section 1: Software Engineering
• Section 2: Agile Software Development
• Section 3: SCRUM
• Section 4: Lean and Kanban
• Section 5: DevOps
• Section 6: Conclusion
Before we start……
• Phones silent
• No laptops
• Questions/Discussions at anytime welcome
• 10 minute break every 1 hour
SECTION 1: SOFTWARE
ENGINEERING
Art, Science and Engineering
• Everything starts as Art
• It then becomes a Science
• It then becomes an Engineering
Art
Science
Engineering
• What a cook should wear?
• How the kitchen should be organized?
• Best kitchenware to use
• How to buy and store ingredients
Software Engineering
Is an engineering discipline that is concerned
with all aspects of software production
Difference between Computer Science
and Software Engineering
• Computer Science is concerned with theories,
and methods that underlie computer and
software systems
• Software Engineering is concerned with
practical problems of producing software
Programmer, Software Developer and
Software Engineer
• A Programmer is anyone who can create a program in at
least one programming language, regardless of the use of a
systematic approach
• A Software Developer is a Programmer who doesn’t only
care about simply writing code, but also cares about the
requirement analysis, the functional specification, the
design, the testing, the deployment and the maintenance
of the software product they work on
• A Software Engineer is one who applies Engineering
disciplines and principles to software creation
Software Process
• A Software Process is a set of activities that
produce a software product
1. Software Specification
2. Software Development
3. Software Validation
4. Software Evolution
Software Development Methodologies
• Waterfall Model
• Incremental and Iterative Model
• Prototyping Model
Waterfall Model
Disadvantages of Waterfall
• Equates Software Development to a
production line conveyor belt
• Customer sees the software product too late
• Too much waste
Disadvantages of Waterfall
Incremental and Iterative Model
Incremental and Iterative Model
• An iterative process is one that makes
progress through successive refinement
• An incremental process is one in which
software is built and delivered in pieces. Each
piece, or increment, represents a complete
subset of functionality
Incremental and Iterative Model
Disadvantages of Inc. and It. Model
• Incremental alone is troublesome
Disadvantages of Inc. and It. Model
Prototyping Model
SECTION 2: AGILE SOFTWARE
DEVELOPMENT
Dictionary Definition of Agile
Able to move quickly and easily
Technical Definition of Agile
• A group of software development methods based
on iterative and incremental development
• Requirements and solutions evolve through
collaboration between self-organizing, cross-
functional teams
• Promotes adaptive planning, evolutionary
development and delivery, a time-boxed
iterative approach, and encourages rapid and
flexible response to change
History
• On February 11-13 2001, 17 people met to
find common grounds in software
development methodologies
• What emerged is the Agile Software
Development Manifesto
Layers of Agile Development
N Tools
N Practices
N Methods
12 Principles
4 Values
Agile Values
• Individuals and interactions over processes
and tools
• Working software over comprehensive
documentation
• Customer collaboration over contract
negotiation
• Responding to change over following a plan
12 Principles of Agile Software (1)
1. Our highest priority is to satisfy the customer
through early and continuous delivery
of valuable software.
2. Welcome changing requirements, even late in
development. Agile processes harness change for
the customer's competitive advantage.
3. Deliver working software frequently, from a
couple of weeks to a couple of months, with a
preference to the shorter timescale.
4. Business people and developers must work
together daily throughout the project.
12 Principles of Agile Software (2)
5. Build projects around motivated individuals.
Give them the environment and support they need,
and trust them to get the job done.
6. The most efficient and effective method of
conveying information to and within a development
team is face-to-face conversation.
7. Working software is the primary measure of progress.
8. Agile processes promote sustainable development.
The sponsors, developers, and users should be able
to maintain a constant pace indefinitely.
12 Principles of Agile Software (3)
9. Continuous attention to technical excellence
and good design enhances agility.
10.Simplicity--the art of maximizing the amount
of work not done--is essential.
11.The best architectures, requirements, and
designs emerge from self-organizing teams.
12.At regular intervals, the team reflects on how
to become more effective, then tunes and
adjusts its behavior accordingly.
Agile Methods
• SCRUM
• Kanban
• Scrum ban
• Extreme Programming (XP)
• Lean Software Development
• Crystal Clear Methods
• Feature-driven Development
• Agile Unified Process/Methods (AUP)
• Custom Hybrids
Agile Method Usage
2014
Agile Method Usage
Agile Practices
• Pair Programming
• Test Driven Development
• Automated Test Driven Development
• Behavior Driven Development
• Collective Ownership
• Continuous Deployment
• Continuous Integration
• Version Control
• Definition of Ready
• Definition of Done
Agile Tools
• JIRA
• Trello
• SeeDoNow
• IceScrum
• Redmine
• Git
• SVN
• Jenkins
Biggest Challenge to Agility
• Fixed contracts with Non-Agile clients:
o Fixed Cost
o Fixed Scope
o Fixed Time
SECTION 3: SCRUM
Definition of Scrum
Scrum in the sport of rugby, is a way of
restarting the game, either after an accidental
infringement or (in rugby league only) when the
ball has gone out of play
Official SCRUM
SCRUM Framework
Scrum Values
Focus
Because we focus on only a few things at a time, we
work well together and produce excellent work. We
deliver valuable items sooner.
Courage
Because we work as a team, we feel supported and
have more resources at our disposal. This gives us
the courage to undertake greater challenges.
Scrum Values
Openness
As we work together, we express how we're doing, what's
in our way, and our concerns so they can be addressed.
Commitment
Because we have great control over our own destiny, we
are more committed to success.
Respect
As we work together, sharing successes and failures, we
come to respect each other and to help each other
become worthy of respect.
SCRUM ROLES
Roles in Scrum
• Product Owner
• Development Team
• Scrum Master
Product Owner
• Decides what goes into the product backlog and,
equally important, what does not
• Maintains the product backlog and orders the items in
the backlog to deliver the highest value
• Works with the team and the stakeholders to
continuously improve the quality of the product
backlog and everyone’s understanding of the items it
contains
• Decides which product backlog items to ask the team
deliver in the current sprint
• Decides when to ship the product, with a preference
toward more frequent delivery
Scrum Master
• Coach the team
• Keep the team moving forward
• Help everyone understand Scrum
Development Team
• Product development (Coding, Testing, etc.)
• Work breakdown
• Task assignment
• Process improvement
• Coordination of tasks
• Detail coordination with other technical
groups
• Individual accountability
Three Powers
Dev Team Product Owner Scrum Master
Scrum
Where is the Project Manager?
Chickens and Pigs
Pigs
Chickens
Analyzing Stakeholders
• Two Dimensional Analysis
– Power / Interest Grid
– Power / Influence Grid
– Influence / Impact Grid
– Influence / Attitude Grid
• Three Dimensional Analysis
– Salience Model (Power, Urgency and Legitimacy)
Power / Interest Model
Keep Satisfied
e.g. Functional Manager
HighPower
Low Interest
Monitor
e.g. Backup resources
LowPower
Manage Closely
e.g. Client
Keep Informed
e.g. End-user
High Interest
Salience Model
• Power
The ability the project stakeholder has to influence
outcome of an organization, deliverable or project
• Legitimacy
The authority and level of involvement a project
stakeholder has on a project
• Urgency
The time expected by a project stakeholder for
responses to their expectations
Salience Model
Power
• Latent
Legitimacy
• Discretionary
Urgency
• Demanding
DominantNon-Stakeholder
Dangerous
Dominant
Core
SCRUM ARTIFACTS
Product Backlog
User Stories
• Written in the following notation:
– As who
– I want what
– So that why
• A User Story has three components (3Cs):
o Card
o Conversation
o Confirmation
An example of a User Story
Story Board (Agile Board)
Burn up Charts
Burn down Charts
Story Points and Velocity
• Story Points are used to size stories instead of
hours
• Velocity = Story Points burned by team/ Sprint
SCRUM EVENTS
Scrum Events
• Sprint: 1 – 5 weeks
• Sprint Planning
• Daily Scrum
• Sprint Retrospective
• Sprint Review
Issues with Scrum
• Bugs!
• Maintenance and support
• Large scale and long projects
• Revolutionary change!
SECTION 4: LEAN AND KANBAN
What is Lean?
• Is a systematic method in which the core idea
is to maximize customer value while
minimizing waste (“Muda”)
• Derived mostly from Toyota Production
System (TPS) or “Just-in-time production”
Value and Waste
• Value = What the customer pays money for
• Waste = Everything else!
– Muda ("non-value-adding work")
o Type 1: The non value added activity for end customer but it
is necessary
o Type 2: The non value added activity for end customer which
are not necessary. It is targeted to eliminate this type of
wastage
– Muri ("overburden")
– Mura ("unevenness")
Waste
Waste Types in SWD
1. Inventory
2. Overproduction
3. Extra Processing
4. Transportation
5. Waiting
6. Motion
7. Defects
1. Partially Done Work
2. Extra Features
3. Repeating the
repeated
4. Handoffs
5. Delays
6. Task Switching
7. Defects
Lean Principles in SWD
• Eliminate/Minimize waste
• Amplify learning
• Decide as late as possible
• Deliver as fast as possible
• Empower the team
• Build quality in
• See the whole
Lean Tools
• Continuous Flow-of-Value
• Value Stream Mapping
• Bottleneck Analysis
• Single Minute Exchange of Die (SMED)
• Kanban (Pull System)
• Poka-Yoke (Error-proofing)
• 5 Whys
• Kaizen (Continuous Improvement)
• SMART Goals (Specific, Measurable, Attainable,
Relevant, and Time-Specific)
Lean Machine (Bottleneck Analysis)
3 5
1
4
1
3
3
3
1
2
Kanban
Kanban is a method for visualizing the flow of
work, in order to balance demand with available
capacity and spot bottlenecks. Work items are
visualized to give participants a view of progress
and process, from start to finish. Team
members pull work as capacity permits, rather
than work being pushed into the process when
requested.
Kanban Principles
1. Start with existing process
2. Agree to pursue incremental, evolutionary
change
3. Respect current process, roles, responsibilities
and titles
4. Leadership at all levels
Kanban Core Properties
1. Visualize the Workflow
2. Limit Work In Progress (WIP):
Reduce Batch Size of your Efforts (BASE)
Little’s Law:
Cycle Time = Work-in-progress / Average Completion Time
3. Manage Flows
4. Make Process Policies Explicit
5. Use feedback loops
6. Improve Collaboratively
Kanban Board
SECTION 5: DEVOPS
DevOps – The Problem
DevOps - Definition
is a culture, movement or practice that
emphasizes the collaboration and
communication of both Software Developers
and other Information-Technology
professionals while automating the process of
software delivery and infrastructure changes
DevOps - Definition
It aims at establishing a culture and
environment where building, testing, and
releasing software, can happen rapidly,
frequently, and more reliably
DevOps - Components
1. Collaboration of People
2. Convergence of Process
3. Creation and Exploitation of Tools
DevOps – Toolchain
DevOps – Toolchain
• Plan – Business value and application requirements
• Code (Create)– Code Development and Review, continuous
integration tools
• Build – Version control tools, code merging, Build status
• Verify (Test) – Test and results determine performance
• Package – Artifact repository, Application pre-deployment
staging
• Release – Change management, Release approvals, release
automation
• Configure – Infrastructure configuration and management,
Infrastructure as Code tools
• Monitor – Applications performance monitoring, End user
experience
Jenkins !
SECTION 6: CONCLUSION
Conclusion
• Developing Software is complex!
• There is no Silver Bullet!
• Agility is a journey, not a destination
• If one methodology is a religion, you should not be
religious!
• Learning will always be the #1 bottleneck
• Software Engineering is a key element in Software
Development
Conclusion
There is no single development, in either
technology or management technique, which by
itself promises even one order-of-magnitude
improvement within a decade in productivity, in
reliability, in simplicity.
No Silver Bullet - Essence and Accident in Software
Engineering
Frederick P. Brooks, Jr.
University of North Carolina at Chapel Hill
Thank You!

Contenu connexe

Tendances

The Journey to DevOps #MFSummit2017
The Journey to DevOps #MFSummit2017The Journey to DevOps #MFSummit2017
The Journey to DevOps #MFSummit2017Micro Focus
 
What Does DevOps Culture Feel Like?
What Does DevOps Culture Feel Like?What Does DevOps Culture Feel Like?
What Does DevOps Culture Feel Like?Matthew Skelton
 
5 Best Practices DevOps Culture
5 Best Practices DevOps Culture5 Best Practices DevOps Culture
5 Best Practices DevOps CultureEdureka!
 
When agility meets software quality
When agility meets software qualityWhen agility meets software quality
When agility meets software qualityBabak Khorrami
 
Enterprise DevOps Adoption LinkedIn
Enterprise DevOps Adoption LinkedInEnterprise DevOps Adoption LinkedIn
Enterprise DevOps Adoption LinkedInGary Stafford
 
What is DevOps? - ITSM Academy Webinar
What is DevOps?  - ITSM Academy Webinar What is DevOps?  - ITSM Academy Webinar
What is DevOps? - ITSM Academy Webinar ITSM Academy, Inc.
 
Agile Database Development - SDC2012
Agile Database Development - SDC2012Agile Database Development - SDC2012
Agile Database Development - SDC2012Jose Luis Soria
 
Introduction to Software Engineering Course
Introduction to Software Engineering CourseIntroduction to Software Engineering Course
Introduction to Software Engineering CourseMd. Shafiuzzaman Hira
 
Relieveing the Testing Bottle Neck - Webinar
Relieveing the Testing Bottle Neck - WebinarRelieveing the Testing Bottle Neck - Webinar
Relieveing the Testing Bottle Neck - WebinarCprime
 
DevOps Patterns - Team Topologies
DevOps Patterns -  Team TopologiesDevOps Patterns -  Team Topologies
DevOps Patterns - Team TopologiesMatthew Skelton
 
Agile methodology in cloud computing
Agile methodology in cloud computingAgile methodology in cloud computing
Agile methodology in cloud computingAhmed M. Abed
 
DevOps 101 - an Introduction to DevOps
DevOps 101  - an Introduction to DevOpsDevOps 101  - an Introduction to DevOps
DevOps 101 - an Introduction to DevOpsRed Gate Software
 
DevOps Culture transformation in Modern Software Delivery
DevOps Culture transformation in Modern Software DeliveryDevOps Culture transformation in Modern Software Delivery
DevOps Culture transformation in Modern Software DeliveryNajib Radzuan
 
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...Puppet
 

Tendances (20)

The Journey to DevOps #MFSummit2017
The Journey to DevOps #MFSummit2017The Journey to DevOps #MFSummit2017
The Journey to DevOps #MFSummit2017
 
What Does DevOps Culture Feel Like?
What Does DevOps Culture Feel Like?What Does DevOps Culture Feel Like?
What Does DevOps Culture Feel Like?
 
DevOps 101
DevOps 101DevOps 101
DevOps 101
 
5 Best Practices DevOps Culture
5 Best Practices DevOps Culture5 Best Practices DevOps Culture
5 Best Practices DevOps Culture
 
When agility meets software quality
When agility meets software qualityWhen agility meets software quality
When agility meets software quality
 
Enterprise DevOps Adoption LinkedIn
Enterprise DevOps Adoption LinkedInEnterprise DevOps Adoption LinkedIn
Enterprise DevOps Adoption LinkedIn
 
What is DevOps? - ITSM Academy Webinar
What is DevOps?  - ITSM Academy Webinar What is DevOps?  - ITSM Academy Webinar
What is DevOps? - ITSM Academy Webinar
 
Agile Database Development - SDC2012
Agile Database Development - SDC2012Agile Database Development - SDC2012
Agile Database Development - SDC2012
 
Devops course content
Devops course contentDevops course content
Devops course content
 
Introduction to Software Engineering Course
Introduction to Software Engineering CourseIntroduction to Software Engineering Course
Introduction to Software Engineering Course
 
Relieveing the Testing Bottle Neck - Webinar
Relieveing the Testing Bottle Neck - WebinarRelieveing the Testing Bottle Neck - Webinar
Relieveing the Testing Bottle Neck - Webinar
 
DevOps Overview
DevOps OverviewDevOps Overview
DevOps Overview
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
DevOps Patterns - Team Topologies
DevOps Patterns -  Team TopologiesDevOps Patterns -  Team Topologies
DevOps Patterns - Team Topologies
 
Agile methodology in cloud computing
Agile methodology in cloud computingAgile methodology in cloud computing
Agile methodology in cloud computing
 
DevOps 101 - an Introduction to DevOps
DevOps 101  - an Introduction to DevOpsDevOps 101  - an Introduction to DevOps
DevOps 101 - an Introduction to DevOps
 
DevOps Culture transformation in Modern Software Delivery
DevOps Culture transformation in Modern Software DeliveryDevOps Culture transformation in Modern Software Delivery
DevOps Culture transformation in Modern Software Delivery
 
DevOps Introduction
DevOps IntroductionDevOps Introduction
DevOps Introduction
 
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
PuppetConf 2016: Successful Puppet Implementation in Large Organizations – Ja...
 
Agile engineering practices
Agile engineering practicesAgile engineering practices
Agile engineering practices
 

Similaire à Agile Software Development and DevOps 21092019

Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software EngineeringPurvik Rana
 
Standardization and strategy in agile
Standardization and strategy in agileStandardization and strategy in agile
Standardization and strategy in agileNaveen Gupta
 
Introduction to Agile Software Development
Introduction to Agile Software DevelopmentIntroduction to Agile Software Development
Introduction to Agile Software Developmentaboulkheir
 
software engineering agile development notes.pptx
software engineering agile development notes.pptxsoftware engineering agile development notes.pptx
software engineering agile development notes.pptxAbhinay93499
 
Fundamentals of agile tntu (2015-04-27)
Fundamentals of agile   tntu (2015-04-27)Fundamentals of agile   tntu (2015-04-27)
Fundamentals of agile tntu (2015-04-27)Oleg Nazarevych
 
Overview of Agile methodology & Scrum
Overview of Agile methodology & ScrumOverview of Agile methodology & Scrum
Overview of Agile methodology & ScrumSrinivasan Ganesan
 
Understanding-Agile &Scrum.pdf
Understanding-Agile &Scrum.pdfUnderstanding-Agile &Scrum.pdf
Understanding-Agile &Scrum.pdfSwapnikaReddy6
 
Bosnia Agile Tuzla Meetup
Bosnia Agile Tuzla MeetupBosnia Agile Tuzla Meetup
Bosnia Agile Tuzla MeetupBosnia Agile
 
Essentials of Scrum
Essentials of ScrumEssentials of Scrum
Essentials of Scrumeikitakeuchi
 
Agile Modeling & Scrum Development.pptx
Agile Modeling & Scrum Development.pptxAgile Modeling & Scrum Development.pptx
Agile Modeling & Scrum Development.pptxSamira AlShahrani
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development ProcessSoftware Park Thailand
 

Similaire à Agile Software Development and DevOps 21092019 (20)

Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software Engineering
 
Agile tutorial
Agile tutorialAgile tutorial
Agile tutorial
 
Standardization and strategy in agile
Standardization and strategy in agileStandardization and strategy in agile
Standardization and strategy in agile
 
Introduction to Agile Software Development
Introduction to Agile Software DevelopmentIntroduction to Agile Software Development
Introduction to Agile Software Development
 
Waterfall Model.pptx
Waterfall Model.pptxWaterfall Model.pptx
Waterfall Model.pptx
 
The Agile Movement
The Agile MovementThe Agile Movement
The Agile Movement
 
software engineering agile development notes.pptx
software engineering agile development notes.pptxsoftware engineering agile development notes.pptx
software engineering agile development notes.pptx
 
Are you Agile enough?
Are you Agile enough?Are you Agile enough?
Are you Agile enough?
 
Introduction to Scrum
Introduction to ScrumIntroduction to Scrum
Introduction to Scrum
 
Agile Fundamentals for Project Managers.pdf
Agile Fundamentals for Project Managers.pdfAgile Fundamentals for Project Managers.pdf
Agile Fundamentals for Project Managers.pdf
 
Agile Project Management
Agile Project ManagementAgile Project Management
Agile Project Management
 
module I.pptx
module I.pptxmodule I.pptx
module I.pptx
 
Fundamentals of agile tntu (2015-04-27)
Fundamentals of agile   tntu (2015-04-27)Fundamentals of agile   tntu (2015-04-27)
Fundamentals of agile tntu (2015-04-27)
 
Agile
AgileAgile
Agile
 
Overview of Agile methodology & Scrum
Overview of Agile methodology & ScrumOverview of Agile methodology & Scrum
Overview of Agile methodology & Scrum
 
Understanding-Agile &Scrum.pdf
Understanding-Agile &Scrum.pdfUnderstanding-Agile &Scrum.pdf
Understanding-Agile &Scrum.pdf
 
Bosnia Agile Tuzla Meetup
Bosnia Agile Tuzla MeetupBosnia Agile Tuzla Meetup
Bosnia Agile Tuzla Meetup
 
Essentials of Scrum
Essentials of ScrumEssentials of Scrum
Essentials of Scrum
 
Agile Modeling & Scrum Development.pptx
Agile Modeling & Scrum Development.pptxAgile Modeling & Scrum Development.pptx
Agile Modeling & Scrum Development.pptx
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development Process
 

Plus de Ahmed Misbah

6+1 Technical Tips for Tech Startups (2023 Edition)
6+1 Technical Tips for Tech Startups (2023 Edition)6+1 Technical Tips for Tech Startups (2023 Edition)
6+1 Technical Tips for Tech Startups (2023 Edition)Ahmed Misbah
 
Migrating to Microservices Patterns and Technologies (edition 2023)
 Migrating to Microservices Patterns and Technologies (edition 2023) Migrating to Microservices Patterns and Technologies (edition 2023)
Migrating to Microservices Patterns and Technologies (edition 2023)Ahmed Misbah
 
Practical Microservice Architecture (edition 2022).pdf
Practical Microservice Architecture (edition 2022).pdfPractical Microservice Architecture (edition 2022).pdf
Practical Microservice Architecture (edition 2022).pdfAhmed Misbah
 
Istio as an enabler for migrating to microservices (edition 2022)
Istio as an enabler for migrating to microservices (edition 2022)Istio as an enabler for migrating to microservices (edition 2022)
Istio as an enabler for migrating to microservices (edition 2022)Ahmed Misbah
 
DevOps for absolute beginners (2022 edition)
DevOps for absolute beginners (2022 edition)DevOps for absolute beginners (2022 edition)
DevOps for absolute beginners (2022 edition)Ahmed Misbah
 
TDD Anti-patterns (2022 edition)
TDD Anti-patterns (2022 edition)TDD Anti-patterns (2022 edition)
TDD Anti-patterns (2022 edition)Ahmed Misbah
 
Implementing FaaS on Kubernetes using Kubeless
Implementing FaaS on Kubernetes using KubelessImplementing FaaS on Kubernetes using Kubeless
Implementing FaaS on Kubernetes using KubelessAhmed Misbah
 
Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3
Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3
Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3Ahmed Misbah
 
Getting Started with DevOps
Getting Started with DevOpsGetting Started with DevOps
Getting Started with DevOpsAhmed Misbah
 
DevOps for absolute beginners
DevOps for absolute beginnersDevOps for absolute beginners
DevOps for absolute beginnersAhmed Misbah
 
Microservice test strategies for applications based on Spring, K8s and Istio
Microservice test strategies for applications based on Spring, K8s and IstioMicroservice test strategies for applications based on Spring, K8s and Istio
Microservice test strategies for applications based on Spring, K8s and IstioAhmed Misbah
 
Cucumber jvm best practices v3
Cucumber jvm best practices v3Cucumber jvm best practices v3
Cucumber jvm best practices v3Ahmed Misbah
 
Welcome to the Professional World
Welcome to the Professional WorldWelcome to the Professional World
Welcome to the Professional WorldAhmed Misbah
 
More topics on Java
More topics on JavaMore topics on Java
More topics on JavaAhmed Misbah
 
Effective User Story Writing
Effective User Story WritingEffective User Story Writing
Effective User Story WritingAhmed Misbah
 
Software Architecture
Software ArchitectureSoftware Architecture
Software ArchitectureAhmed Misbah
 
How Spinnaker helped us achieve real Continuous Delivery
How Spinnaker helped us achieve real Continuous DeliveryHow Spinnaker helped us achieve real Continuous Delivery
How Spinnaker helped us achieve real Continuous DeliveryAhmed Misbah
 
Theory of alienation in the software industry
Theory of alienation in the software industryTheory of alienation in the software industry
Theory of alienation in the software industryAhmed Misbah
 

Plus de Ahmed Misbah (19)

6+1 Technical Tips for Tech Startups (2023 Edition)
6+1 Technical Tips for Tech Startups (2023 Edition)6+1 Technical Tips for Tech Startups (2023 Edition)
6+1 Technical Tips for Tech Startups (2023 Edition)
 
Migrating to Microservices Patterns and Technologies (edition 2023)
 Migrating to Microservices Patterns and Technologies (edition 2023) Migrating to Microservices Patterns and Technologies (edition 2023)
Migrating to Microservices Patterns and Technologies (edition 2023)
 
Practical Microservice Architecture (edition 2022).pdf
Practical Microservice Architecture (edition 2022).pdfPractical Microservice Architecture (edition 2022).pdf
Practical Microservice Architecture (edition 2022).pdf
 
Istio as an enabler for migrating to microservices (edition 2022)
Istio as an enabler for migrating to microservices (edition 2022)Istio as an enabler for migrating to microservices (edition 2022)
Istio as an enabler for migrating to microservices (edition 2022)
 
DevOps for absolute beginners (2022 edition)
DevOps for absolute beginners (2022 edition)DevOps for absolute beginners (2022 edition)
DevOps for absolute beginners (2022 edition)
 
TDD Anti-patterns (2022 edition)
TDD Anti-patterns (2022 edition)TDD Anti-patterns (2022 edition)
TDD Anti-patterns (2022 edition)
 
Implementing FaaS on Kubernetes using Kubeless
Implementing FaaS on Kubernetes using KubelessImplementing FaaS on Kubernetes using Kubeless
Implementing FaaS on Kubernetes using Kubeless
 
Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3
Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3
Istio as an Enabler for Migrating Monolithic Applications to Microservices v1.3
 
Getting Started with DevOps
Getting Started with DevOpsGetting Started with DevOps
Getting Started with DevOps
 
DevOps for absolute beginners
DevOps for absolute beginnersDevOps for absolute beginners
DevOps for absolute beginners
 
Microservice test strategies for applications based on Spring, K8s and Istio
Microservice test strategies for applications based on Spring, K8s and IstioMicroservice test strategies for applications based on Spring, K8s and Istio
Microservice test strategies for applications based on Spring, K8s and Istio
 
Cucumber jvm best practices v3
Cucumber jvm best practices v3Cucumber jvm best practices v3
Cucumber jvm best practices v3
 
Welcome to the Professional World
Welcome to the Professional WorldWelcome to the Professional World
Welcome to the Professional World
 
More topics on Java
More topics on JavaMore topics on Java
More topics on Java
 
Effective User Story Writing
Effective User Story WritingEffective User Story Writing
Effective User Story Writing
 
Big Data for QAs
Big Data for QAsBig Data for QAs
Big Data for QAs
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
How Spinnaker helped us achieve real Continuous Delivery
How Spinnaker helped us achieve real Continuous DeliveryHow Spinnaker helped us achieve real Continuous Delivery
How Spinnaker helped us achieve real Continuous Delivery
 
Theory of alienation in the software industry
Theory of alienation in the software industryTheory of alienation in the software industry
Theory of alienation in the software industry
 

Dernier

%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...masabamasaba
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...masabamasaba
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benonimasabamasaba
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationJuha-Pekka Tolvanen
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 

Dernier (20)

%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 

Agile Software Development and DevOps 21092019

  • 1. Agile Software Development + DevOps Ahmed Misbah
  • 2. Purpose of this session Put you on the first steps of becoming Software Engineers by understanding Agile Software Development
  • 3. Agenda • Section 1: Software Engineering • Section 2: Agile Software Development • Section 3: SCRUM • Section 4: Lean and Kanban • Section 5: DevOps • Section 6: Conclusion
  • 4. Before we start…… • Phones silent • No laptops • Questions/Discussions at anytime welcome • 10 minute break every 1 hour
  • 6. Art, Science and Engineering • Everything starts as Art • It then becomes a Science • It then becomes an Engineering
  • 7. Art
  • 9. Engineering • What a cook should wear? • How the kitchen should be organized? • Best kitchenware to use • How to buy and store ingredients
  • 10. Software Engineering Is an engineering discipline that is concerned with all aspects of software production
  • 11. Difference between Computer Science and Software Engineering • Computer Science is concerned with theories, and methods that underlie computer and software systems • Software Engineering is concerned with practical problems of producing software
  • 12. Programmer, Software Developer and Software Engineer • A Programmer is anyone who can create a program in at least one programming language, regardless of the use of a systematic approach • A Software Developer is a Programmer who doesn’t only care about simply writing code, but also cares about the requirement analysis, the functional specification, the design, the testing, the deployment and the maintenance of the software product they work on • A Software Engineer is one who applies Engineering disciplines and principles to software creation
  • 13. Software Process • A Software Process is a set of activities that produce a software product 1. Software Specification 2. Software Development 3. Software Validation 4. Software Evolution
  • 14. Software Development Methodologies • Waterfall Model • Incremental and Iterative Model • Prototyping Model
  • 16. Disadvantages of Waterfall • Equates Software Development to a production line conveyor belt • Customer sees the software product too late • Too much waste
  • 19. Incremental and Iterative Model • An iterative process is one that makes progress through successive refinement • An incremental process is one in which software is built and delivered in pieces. Each piece, or increment, represents a complete subset of functionality
  • 21. Disadvantages of Inc. and It. Model • Incremental alone is troublesome
  • 22. Disadvantages of Inc. and It. Model
  • 24. SECTION 2: AGILE SOFTWARE DEVELOPMENT
  • 25. Dictionary Definition of Agile Able to move quickly and easily
  • 26. Technical Definition of Agile • A group of software development methods based on iterative and incremental development • Requirements and solutions evolve through collaboration between self-organizing, cross- functional teams • Promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change
  • 27. History • On February 11-13 2001, 17 people met to find common grounds in software development methodologies • What emerged is the Agile Software Development Manifesto
  • 28.
  • 29.
  • 30. Layers of Agile Development N Tools N Practices N Methods 12 Principles 4 Values
  • 31. Agile Values • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan
  • 32. 12 Principles of Agile Software (1) 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. 2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. 3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. 4. Business people and developers must work together daily throughout the project.
  • 33. 12 Principles of Agile Software (2) 5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. 6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. 7. Working software is the primary measure of progress. 8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
  • 34. 12 Principles of Agile Software (3) 9. Continuous attention to technical excellence and good design enhances agility. 10.Simplicity--the art of maximizing the amount of work not done--is essential. 11.The best architectures, requirements, and designs emerge from self-organizing teams. 12.At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
  • 35. Agile Methods • SCRUM • Kanban • Scrum ban • Extreme Programming (XP) • Lean Software Development • Crystal Clear Methods • Feature-driven Development • Agile Unified Process/Methods (AUP) • Custom Hybrids
  • 38. Agile Practices • Pair Programming • Test Driven Development • Automated Test Driven Development • Behavior Driven Development • Collective Ownership • Continuous Deployment • Continuous Integration • Version Control • Definition of Ready • Definition of Done
  • 39. Agile Tools • JIRA • Trello • SeeDoNow • IceScrum • Redmine • Git • SVN • Jenkins
  • 40. Biggest Challenge to Agility • Fixed contracts with Non-Agile clients: o Fixed Cost o Fixed Scope o Fixed Time
  • 42. Definition of Scrum Scrum in the sport of rugby, is a way of restarting the game, either after an accidental infringement or (in rugby league only) when the ball has gone out of play
  • 45. Scrum Values Focus Because we focus on only a few things at a time, we work well together and produce excellent work. We deliver valuable items sooner. Courage Because we work as a team, we feel supported and have more resources at our disposal. This gives us the courage to undertake greater challenges.
  • 46. Scrum Values Openness As we work together, we express how we're doing, what's in our way, and our concerns so they can be addressed. Commitment Because we have great control over our own destiny, we are more committed to success. Respect As we work together, sharing successes and failures, we come to respect each other and to help each other become worthy of respect.
  • 48. Roles in Scrum • Product Owner • Development Team • Scrum Master
  • 49. Product Owner • Decides what goes into the product backlog and, equally important, what does not • Maintains the product backlog and orders the items in the backlog to deliver the highest value • Works with the team and the stakeholders to continuously improve the quality of the product backlog and everyone’s understanding of the items it contains • Decides which product backlog items to ask the team deliver in the current sprint • Decides when to ship the product, with a preference toward more frequent delivery
  • 50. Scrum Master • Coach the team • Keep the team moving forward • Help everyone understand Scrum
  • 51. Development Team • Product development (Coding, Testing, etc.) • Work breakdown • Task assignment • Process improvement • Coordination of tasks • Detail coordination with other technical groups • Individual accountability
  • 52. Three Powers Dev Team Product Owner Scrum Master Scrum
  • 53. Where is the Project Manager?
  • 55. Pigs
  • 57. Analyzing Stakeholders • Two Dimensional Analysis – Power / Interest Grid – Power / Influence Grid – Influence / Impact Grid – Influence / Attitude Grid • Three Dimensional Analysis – Salience Model (Power, Urgency and Legitimacy)
  • 58. Power / Interest Model Keep Satisfied e.g. Functional Manager HighPower Low Interest Monitor e.g. Backup resources LowPower Manage Closely e.g. Client Keep Informed e.g. End-user High Interest
  • 59. Salience Model • Power The ability the project stakeholder has to influence outcome of an organization, deliverable or project • Legitimacy The authority and level of involvement a project stakeholder has on a project • Urgency The time expected by a project stakeholder for responses to their expectations
  • 60. Salience Model Power • Latent Legitimacy • Discretionary Urgency • Demanding DominantNon-Stakeholder Dangerous Dominant Core
  • 63. User Stories • Written in the following notation: – As who – I want what – So that why • A User Story has three components (3Cs): o Card o Conversation o Confirmation
  • 64. An example of a User Story
  • 68. Story Points and Velocity • Story Points are used to size stories instead of hours • Velocity = Story Points burned by team/ Sprint
  • 70. Scrum Events • Sprint: 1 – 5 weeks • Sprint Planning • Daily Scrum • Sprint Retrospective • Sprint Review
  • 71. Issues with Scrum • Bugs! • Maintenance and support • Large scale and long projects • Revolutionary change!
  • 72. SECTION 4: LEAN AND KANBAN
  • 73. What is Lean? • Is a systematic method in which the core idea is to maximize customer value while minimizing waste (“Muda”) • Derived mostly from Toyota Production System (TPS) or “Just-in-time production”
  • 74. Value and Waste • Value = What the customer pays money for • Waste = Everything else! – Muda ("non-value-adding work") o Type 1: The non value added activity for end customer but it is necessary o Type 2: The non value added activity for end customer which are not necessary. It is targeted to eliminate this type of wastage – Muri ("overburden") – Mura ("unevenness")
  • 75. Waste
  • 76. Waste Types in SWD 1. Inventory 2. Overproduction 3. Extra Processing 4. Transportation 5. Waiting 6. Motion 7. Defects 1. Partially Done Work 2. Extra Features 3. Repeating the repeated 4. Handoffs 5. Delays 6. Task Switching 7. Defects
  • 77. Lean Principles in SWD • Eliminate/Minimize waste • Amplify learning • Decide as late as possible • Deliver as fast as possible • Empower the team • Build quality in • See the whole
  • 78. Lean Tools • Continuous Flow-of-Value • Value Stream Mapping • Bottleneck Analysis • Single Minute Exchange of Die (SMED) • Kanban (Pull System) • Poka-Yoke (Error-proofing) • 5 Whys • Kaizen (Continuous Improvement) • SMART Goals (Specific, Measurable, Attainable, Relevant, and Time-Specific)
  • 79. Lean Machine (Bottleneck Analysis) 3 5 1 4 1 3 3 3 1 2
  • 80. Kanban Kanban is a method for visualizing the flow of work, in order to balance demand with available capacity and spot bottlenecks. Work items are visualized to give participants a view of progress and process, from start to finish. Team members pull work as capacity permits, rather than work being pushed into the process when requested.
  • 81. Kanban Principles 1. Start with existing process 2. Agree to pursue incremental, evolutionary change 3. Respect current process, roles, responsibilities and titles 4. Leadership at all levels
  • 82. Kanban Core Properties 1. Visualize the Workflow 2. Limit Work In Progress (WIP): Reduce Batch Size of your Efforts (BASE) Little’s Law: Cycle Time = Work-in-progress / Average Completion Time 3. Manage Flows 4. Make Process Policies Explicit 5. Use feedback loops 6. Improve Collaboratively
  • 84.
  • 86. DevOps – The Problem
  • 87. DevOps - Definition is a culture, movement or practice that emphasizes the collaboration and communication of both Software Developers and other Information-Technology professionals while automating the process of software delivery and infrastructure changes
  • 88. DevOps - Definition It aims at establishing a culture and environment where building, testing, and releasing software, can happen rapidly, frequently, and more reliably
  • 89. DevOps - Components 1. Collaboration of People 2. Convergence of Process 3. Creation and Exploitation of Tools
  • 91. DevOps – Toolchain • Plan – Business value and application requirements • Code (Create)– Code Development and Review, continuous integration tools • Build – Version control tools, code merging, Build status • Verify (Test) – Test and results determine performance • Package – Artifact repository, Application pre-deployment staging • Release – Change management, Release approvals, release automation • Configure – Infrastructure configuration and management, Infrastructure as Code tools • Monitor – Applications performance monitoring, End user experience
  • 92.
  • 95. Conclusion • Developing Software is complex! • There is no Silver Bullet! • Agility is a journey, not a destination • If one methodology is a religion, you should not be religious! • Learning will always be the #1 bottleneck • Software Engineering is a key element in Software Development
  • 96. Conclusion There is no single development, in either technology or management technique, which by itself promises even one order-of-magnitude improvement within a decade in productivity, in reliability, in simplicity. No Silver Bullet - Essence and Accident in Software Engineering Frederick P. Brooks, Jr. University of North Carolina at Chapel Hill