SlideShare ist ein Scribd-Unternehmen logo
1 von 24
XP AND CONFIGURATION
    MANAGEMENT: CHICKEN-
    AND-EGG
1
WHAT DO CHICKEN AND EGG HAVE IN
COMMON?




                                  2
NOTHING!


           3
EXCEPT THAT WE DO NOT EXACTLY KNOW
HOW ONE THING EMERGE FROM ANOTHER




                               4
THE SAME APPLIES TO XP AND SCM




                             5
MIRACLE OF THE EVOLUTION



   NO CHICKEN              NO XP WITHOUT
  WITHOUT AN EGG                SCM



                           NO NEED IN SCM
 NO EGG WITHOUT
                             WITHOUT XP
     A CHICKEN
                              PRACTICES
ALL BECAUSE OF EVOLUTION!


                            7
SCM IS ABOUT EVOLUTION OF SOFTWARE
PRODUCT …

Version control

Build & deployment management

Continuous integration

Release management

Database integration

Infrastructure management
                                     8
Dependency management
… WHILE XP DESCRIBES MOST COMMON
SOFTWARE DEVELOPMENT PRACTICES




                                   9
COMPLEXITY OF SOFTWARE
 PRODUCT DEPENDS ON…



                         10
CAUSES OF PROJECT COMPLEXITY


 Requested functionality
 Requested quality
 Number of people on the project
 Their qualification
 Used practices and tools


                                    11
SCM   TOOLS
XP PRACTICES

               12
WHILE PROJECT COMPLEXITY IS CAUSED BY
    ITS GOALS, TOOLS AND PEOPLE…




                                   13
CHICKEN COMPLEXITY IS CAUSED BY ITS
             DESTINY!




                                  14
OBSERVING XP PRACTICES



 Pair programming
 Refactoring
 Test-driven development
 Simple design


                            15
OBSERVING XP PRACTICES



 Continuous integration
 Collective code ownership
 Coding standard
 Metaphor
 Sustainable pace
                              16
OBSERVING XP PRACTICES



 Customer tests
 Planning game
 Small releases
 Whole team

                         17
TOOLS + PRACTICES = (SOFTWARE)
    ENGINEERING PRACTICES




                                 18
SOFTWARE ENGINEERING BEST PRACTICES




                                      19
LET’S TAKE CMMI MODEL AS AN EXAMPLE




                                  20
AMONG ALL THE 22 PROCESS AREAS SCM IS
THE MOST APPLICABLE TO ALL SDLC STAGES




                                   21
IN OTHER WORDS, SCM IS THE BASIC SET OF
 ENGINEERING PRACTICES FOR EFFECTIVE
        SOFTWARE DEVELOPMENT.




                                    22
XP

     SCM

           23
END OF THE SECTION



                     24

Weitere ähnliche Inhalte

Ähnlich wie 1.1 introduction to scm - xp and cm are chicken-and-egg

eXtreme programming
eXtreme programmingeXtreme programming
eXtreme programmingJean Pаoli
 
Analysis of the interaction between practices for introducing XP effectively
Analysis of the interaction between practices for introducing XP effectivelyAnalysis of the interaction between practices for introducing XP effectively
Analysis of the interaction between practices for introducing XP effectivelyMakoto SAKAI
 
Introduction to Extreme Programming
Introduction to Extreme ProgrammingIntroduction to Extreme Programming
Introduction to Extreme ProgrammingNaresh Jain
 
Definition of done Making a case for dev ops
Definition of done   Making a case for dev opsDefinition of done   Making a case for dev ops
Definition of done Making a case for dev opsAdetunji Sunmonu
 
Definition of Done Making a case for DevOps
Definition of Done   Making a case for DevOpsDefinition of Done   Making a case for DevOps
Definition of Done Making a case for DevOpsAaron Tushabe
 
1.extreme programming-NCCA
1.extreme programming-NCCA1.extreme programming-NCCA
1.extreme programming-NCCAGTU
 
Continuous Delivery Overview
Continuous Delivery OverviewContinuous Delivery Overview
Continuous Delivery OverviewLuca Minudel
 
UKLUG 2012 - XPages Extensibility API - going deep!
UKLUG 2012 - XPages Extensibility API - going deep!UKLUG 2012 - XPages Extensibility API - going deep!
UKLUG 2012 - XPages Extensibility API - going deep!René Winkelmeyer
 
Don’t Settle for Old-school SCM: Fail Faster? How about Don’t Fail at All?
Don’t Settle for Old-school SCM: Fail Faster? How about Don’t Fail at All?Don’t Settle for Old-school SCM: Fail Faster? How about Don’t Fail at All?
Don’t Settle for Old-school SCM: Fail Faster? How about Don’t Fail at All?Compuware
 
Enterprise Development on a Shoestring Budget
Enterprise Development on a Shoestring BudgetEnterprise Development on a Shoestring Budget
Enterprise Development on a Shoestring BudgetChris Tankersley
 
Madrid devops forward devops is not what you think
Madrid devops forward devops is not what you thinkMadrid devops forward devops is not what you think
Madrid devops forward devops is not what you thinkEduardo Ferro Aldama
 
ContainerCon- Cloud Native Applications, Containers, Microservices, Platforms...
ContainerCon- Cloud Native Applications, Containers, Microservices, Platforms...ContainerCon- Cloud Native Applications, Containers, Microservices, Platforms...
ContainerCon- Cloud Native Applications, Containers, Microservices, Platforms...Fabio Chiodini
 
程序员实践之路
程序员实践之路程序员实践之路
程序员实践之路Horky Chen
 
.conf21 - The Best of
.conf21 - The Best of.conf21 - The Best of
.conf21 - The Best ofSplunk
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile MethodologySapna Sood
 
Introduction to Agile by David Draper
Introduction to Agile by David DraperIntroduction to Agile by David Draper
Introduction to Agile by David DraperValtech UK
 
Automated Processes for Even Better APIs
Automated Processes for Even Better APIsAutomated Processes for Even Better APIs
Automated Processes for Even Better APIsPostman
 
Journey from Monolith to a Modularized Application - Approach and Key Learnin...
Journey from Monolith to a Modularized Application - Approach and Key Learnin...Journey from Monolith to a Modularized Application - Approach and Key Learnin...
Journey from Monolith to a Modularized Application - Approach and Key Learnin...mfrancis
 
PureApplication: Devops and Urbancode
PureApplication: Devops and UrbancodePureApplication: Devops and Urbancode
PureApplication: Devops and UrbancodeJohn Hawkins
 

Ähnlich wie 1.1 introduction to scm - xp and cm are chicken-and-egg (20)

eXtreme programming
eXtreme programmingeXtreme programming
eXtreme programming
 
Fdd presentation
Fdd presentationFdd presentation
Fdd presentation
 
Analysis of the interaction between practices for introducing XP effectively
Analysis of the interaction between practices for introducing XP effectivelyAnalysis of the interaction between practices for introducing XP effectively
Analysis of the interaction between practices for introducing XP effectively
 
Introduction to Extreme Programming
Introduction to Extreme ProgrammingIntroduction to Extreme Programming
Introduction to Extreme Programming
 
Definition of done Making a case for dev ops
Definition of done   Making a case for dev opsDefinition of done   Making a case for dev ops
Definition of done Making a case for dev ops
 
Definition of Done Making a case for DevOps
Definition of Done   Making a case for DevOpsDefinition of Done   Making a case for DevOps
Definition of Done Making a case for DevOps
 
1.extreme programming-NCCA
1.extreme programming-NCCA1.extreme programming-NCCA
1.extreme programming-NCCA
 
Continuous Delivery Overview
Continuous Delivery OverviewContinuous Delivery Overview
Continuous Delivery Overview
 
UKLUG 2012 - XPages Extensibility API - going deep!
UKLUG 2012 - XPages Extensibility API - going deep!UKLUG 2012 - XPages Extensibility API - going deep!
UKLUG 2012 - XPages Extensibility API - going deep!
 
Don’t Settle for Old-school SCM: Fail Faster? How about Don’t Fail at All?
Don’t Settle for Old-school SCM: Fail Faster? How about Don’t Fail at All?Don’t Settle for Old-school SCM: Fail Faster? How about Don’t Fail at All?
Don’t Settle for Old-school SCM: Fail Faster? How about Don’t Fail at All?
 
Enterprise Development on a Shoestring Budget
Enterprise Development on a Shoestring BudgetEnterprise Development on a Shoestring Budget
Enterprise Development on a Shoestring Budget
 
Madrid devops forward devops is not what you think
Madrid devops forward devops is not what you thinkMadrid devops forward devops is not what you think
Madrid devops forward devops is not what you think
 
ContainerCon- Cloud Native Applications, Containers, Microservices, Platforms...
ContainerCon- Cloud Native Applications, Containers, Microservices, Platforms...ContainerCon- Cloud Native Applications, Containers, Microservices, Platforms...
ContainerCon- Cloud Native Applications, Containers, Microservices, Platforms...
 
程序员实践之路
程序员实践之路程序员实践之路
程序员实践之路
 
.conf21 - The Best of
.conf21 - The Best of.conf21 - The Best of
.conf21 - The Best of
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Introduction to Agile by David Draper
Introduction to Agile by David DraperIntroduction to Agile by David Draper
Introduction to Agile by David Draper
 
Automated Processes for Even Better APIs
Automated Processes for Even Better APIsAutomated Processes for Even Better APIs
Automated Processes for Even Better APIs
 
Journey from Monolith to a Modularized Application - Approach and Key Learnin...
Journey from Monolith to a Modularized Application - Approach and Key Learnin...Journey from Monolith to a Modularized Application - Approach and Key Learnin...
Journey from Monolith to a Modularized Application - Approach and Key Learnin...
 
PureApplication: Devops and Urbancode
PureApplication: Devops and UrbancodePureApplication: Devops and Urbancode
PureApplication: Devops and Urbancode
 

Mehr von Sergii Shmarkatiuk

CS519 - Visual Software Evolution Reconstruction
CS519 - Visual Software Evolution ReconstructionCS519 - Visual Software Evolution Reconstruction
CS519 - Visual Software Evolution ReconstructionSergii Shmarkatiuk
 
CS519 - Cloud Twin: Native Execution of Android Applications on the Windows P...
CS519 - Cloud Twin: Native Execution of Android Applications on the Windows P...CS519 - Cloud Twin: Native Execution of Android Applications on the Windows P...
CS519 - Cloud Twin: Native Execution of Android Applications on the Windows P...Sergii Shmarkatiuk
 
CS519 - homework project presentation
CS519 - homework project presentationCS519 - homework project presentation
CS519 - homework project presentationSergii Shmarkatiuk
 
CS519 - project idea presentation
CS519 - project idea presentationCS519 - project idea presentation
CS519 - project idea presentationSergii Shmarkatiuk
 
CS519 - Cloud Types for Eventual Consistency
CS519 - Cloud Types for Eventual ConsistencyCS519 - Cloud Types for Eventual Consistency
CS519 - Cloud Types for Eventual ConsistencySergii Shmarkatiuk
 
02 - Build and Deployment Management
02 - Build and Deployment Management02 - Build and Deployment Management
02 - Build and Deployment ManagementSergii Shmarkatiuk
 
1.2 introduction to scm - what does version number tell us
1.2   introduction to scm - what does version number tell us1.2   introduction to scm - what does version number tell us
1.2 introduction to scm - what does version number tell usSergii Shmarkatiuk
 
04 - Agile Software Configuration Management
04 - Agile Software Configuration Management04 - Agile Software Configuration Management
04 - Agile Software Configuration ManagementSergii Shmarkatiuk
 
Agile software configuration management
Agile software configuration managementAgile software configuration management
Agile software configuration managementSergii Shmarkatiuk
 
управление сборками и развертыванием веб приложений
управление сборками и развертыванием веб приложенийуправление сборками и развертыванием веб приложений
управление сборками и развертыванием веб приложенийSergii Shmarkatiuk
 
Организуй свой репозиторий
Организуй свой репозиторийОрганизуй свой репозиторий
Организуй свой репозиторийSergii Shmarkatiuk
 
метод организации репозитория исходного кода
метод организации репозитория исходного кодаметод организации репозитория исходного кода
метод организации репозитория исходного кодаSergii Shmarkatiuk
 

Mehr von Sergii Shmarkatiuk (13)

CS519 - Visual Software Evolution Reconstruction
CS519 - Visual Software Evolution ReconstructionCS519 - Visual Software Evolution Reconstruction
CS519 - Visual Software Evolution Reconstruction
 
CS519 - Cloud Twin: Native Execution of Android Applications on the Windows P...
CS519 - Cloud Twin: Native Execution of Android Applications on the Windows P...CS519 - Cloud Twin: Native Execution of Android Applications on the Windows P...
CS519 - Cloud Twin: Native Execution of Android Applications on the Windows P...
 
CS519 - homework project presentation
CS519 - homework project presentationCS519 - homework project presentation
CS519 - homework project presentation
 
CS519 - project idea presentation
CS519 - project idea presentationCS519 - project idea presentation
CS519 - project idea presentation
 
CS519 - Cloud Types for Eventual Consistency
CS519 - Cloud Types for Eventual ConsistencyCS519 - Cloud Types for Eventual Consistency
CS519 - Cloud Types for Eventual Consistency
 
02 - Build and Deployment Management
02 - Build and Deployment Management02 - Build and Deployment Management
02 - Build and Deployment Management
 
1.2 introduction to scm - what does version number tell us
1.2   introduction to scm - what does version number tell us1.2   introduction to scm - what does version number tell us
1.2 introduction to scm - what does version number tell us
 
04 - Agile Software Configuration Management
04 - Agile Software Configuration Management04 - Agile Software Configuration Management
04 - Agile Software Configuration Management
 
Breath of life
Breath of lifeBreath of life
Breath of life
 
Agile software configuration management
Agile software configuration managementAgile software configuration management
Agile software configuration management
 
управление сборками и развертыванием веб приложений
управление сборками и развертыванием веб приложенийуправление сборками и развертыванием веб приложений
управление сборками и развертыванием веб приложений
 
Организуй свой репозиторий
Организуй свой репозиторийОрганизуй свой репозиторий
Организуй свой репозиторий
 
метод организации репозитория исходного кода
метод организации репозитория исходного кодаметод организации репозитория исходного кода
метод организации репозитория исходного кода
 

Kürzlich hochgeladen

Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 

Kürzlich hochgeladen (20)

Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 

1.1 introduction to scm - xp and cm are chicken-and-egg

Hinweis der Redaktion

  1. Данная презентация направлена на то, чтобы показать взаимосвязь экстремального программирования и конфигурационного менеджмента взяв на вооружение аналогию курицы и яйца. Экстремальное программирование было выбрано не случайно, так как связь между ХР и СМ наиболее крепка.
  2. Что общего между курицей и яйцом?
  3. Ничего
  4. Кроме того, что одно получается из другого совершенно неведомым образом.Всё утро в зеркало яйцо Глядело в зеркало уныло«Так где же начинается лицоИ где кончается затылок?»
  5. То же противоречиеприменимо и к взаимосвязи экстремального программирования и конфигурационного менеджмента
  6. Без яйца курицы не получится, курицы не получится из яйца.Аналогично:Экстремальное программирование не существует без конфигурационного менеджмента, и наоборот – практики конфигурационного менеджмента оказываются совершенно ненужными без практик экстремального программирования.
  7. Всё из-за эволюции.Цель эволюции вообще (согласно братьям Стругацким) – рюмка коньяка с лимономЦель эволюции ПО – работающий программный продукт.
  8. И конфигурационный менеджмент как раз напрямую связан с эволюцией ПО
  9. Тогда как ХР описывает общепринятые практики разработки ПО. Безотносительно эволюции
  10. От чего зависит сложность программного продукта? Наверное, отсоотношения сторон железного треугольника: time, resources, scope. А если детальнее, то от…
  11. Выдвигаемых требований к функциональности (scope)КачествоКоличество людей, занятых на проектеИ их квалификацииИ, что немаловажно, от используемых подходов, инструментов. Другими словами, процессов. А это уже коррелирует со вторым пунктом - качеством.
  12. Scmи XPкак раз призваны помочь в решении проблем, возникающих в больших сложных проектах.Конфигурационныйменеджмент – со стороны инструментов. Тогда как экстремальное программирование – со стороны общепринятых практик.
  13. Продолжая аналогию курицы и яйца… Для любого проекта, будь это fixed cost или time & material важны его бизнес цели, или vision. От этого зависит то, насколько он будет сложным, сколько в нем будет участвовать людей, какие навороченные инструменты будут использоваться. И всё – ради того, чтобы эти бизнес цели были достигнуты. Проект вырастает для того, чтобы быть реализованным и стать достойной частью истории.
  14. Похоже на то, когда вот курица вырастает для того, чтобы быть съеденной!
  15. Давайте рассмотрим то, как практики хр связаны с конфигурационным менеджментом.
  16. Кроме ХР существует большое множество других практик разработки ПО.
  17. Давайте возьмем модель CMMI как пример. Опрос на тему «что такое CMMI?»
  18. УпоминаниеCMвстречается практически в каждой другой процессной области. Это значит, что любой результат деятельности подлежит контролю конфигураций в том, или ином виде. И оказывается что без знания основных принципов управления конфигурациями качественная разработка ПО оказывается невозможной, так как контроль конфигураций применим ко всем этапам жизненного цикла разработки. Конфигурационный менеджмент везде неявно присутствует, хотим мы этого или нет. CMMI модель нам это демонстрирует.
  19. Лучших практик много, можно использовать любую из них как основополагающую. Но лично я утверждаю, что именно конфигурационный менеджмент – это тот самый базовый набор инженерных практик для эффективной и качественной разработки программного обеспечения.
  20. И для того, чтобы проиллюстрироватьэтот аспект, наиболее удачной аналогией для меня показались именно курица и яйцо. Эта аналогия иллюстрирует следующее:СМ чаще всего оказывается недооцененнымПрактики ХР и СМ – взаимозаменяемы и не могут существовать друг без другаПрактики ХР и СМ тесно связаны между собой. ХР и СМ это идеализированные подходы к разработке ПО. ХР и СМ тесно связаны с эволюцией проекта.