SlideShare uma empresa Scribd logo
1 de 78
Be Agile, Be Happy
     Youssef Chaker
         NDU
     May 21st 2010
Agenda

• Agenda
• My Background
• Things Gone Bad
• The Agile Manifesto
• Scrum
• Best Practices
• Questions
• Contact
• References
My Background
      Born and raised in Lebanon
         Bachelors of Science
         Computer Engineering
           THE University
              May 2008

Thesis: Designing and Building an Energy
        Responsible Data Center

   Software Developer/Consultant
   OpenSource Connections (OSC)
         July 2008 - present
Things Gone Bad (1/3)

Ariane 5 Flight 501
Flight 501, which took place on June 4, 1996, was the first, and unsuccessful, test
flight of the European Ariane 5 expendable launch system. Due to an error in the
software design (inadequate protection from integer overflow),
the rocket veered off its flight path 37 seconds after launch and was destroyed by its
automated self-destruct system when high aerodynamic forces caused the core of the
vehicle to disintegrate. It is one of the most infamous computer bugs in history.
The breakup caused the loss of four Cluster mission spacecraft, resulting in a loss of
more than US$370 million
Things Gone Bad (2/3)
Therac-25
The Therac-25 was a radiation therapy machine produced by Atomic Energy of
Canada Limited (AECL) [...]. It was involved with at least six accidents between 1985
and 1987, in which patients were given massive overdoses of radiation, approximately
100 times the intended dose. Three of the six patients died as a direct consequence.
These accidents highlighted the dangers of software control of safety-critical systems,
and they have become a standard case study in health informatics and software
engineering.
[...]
A commission has concluded that the primary reason should be attributed to the bad
software design and development practices, and not explicitly to several coding errors
that were found. In particular, the software was designed so that it was relatively
impossible to test it in a clean automated way.
Things Gone Bad (3/3)

                    More online:
http://en.wikipedia.org/wiki/List_of_software_bugs
But weren’t these projects
   following some sort of
development or management
          process?
YES!
The
 Waterfall
methodology
= DEVIL
= DEATH
= EPIC FAIL
WHY?
DOZENS of
 requirements
 documents at
THOUSANDS of
  pages each
Turnaround
 time no less
than 3 months
Change of mind
    time?
GUESS?
3 seconds!
Answer?
Better
Managers?
OK, Maybe not
Better Clients?
Definitely NOT!
Better Process
Now we’re
 talking :)
Agile
Agile Manifesto
We are uncovering better ways of developing
   software by doing it and helping others do it.
    Through this work we have come to value:
Individuals and interactions over processes
                      and tools
    Working software over comprehensive
                   documentation
   Customer collaboration over contract
                     negotiation
 Responding to change over following a plan
    That is, while there is value in the items on
  the right, we value the items on the left more.
Thank You
Hunh... ?
wait... what?
manifesto who?
Lets take a
closer look
Working
software over
comprehensive
documentation
Responding
to change over
 following a plan
HOW?
Scrum
iterative, incremental
framework for project
management and agile
software development.
2 - 4 week
  sprints
Some role
  playing
“ScrumMaster”, who
maintains the processes
(typically in lieu of a project
manager)
“Product Owner”,
who represents the
stakeholders, represents
the business
“Team”, a cross-functional
group of about 7 people
who do the actual analysis,
design, implementation,
testing, etc.
A pig and a chicken are walking down a road.
The chicken looks at the pig and says,
“Hey, why don’t we open a restaurant?”
The pig looks back at the chicken and says,
“Good idea, what do you want to call it?”
The chicken thinks about it and says,
“Why don’t we call it ‘Ham and Eggs’?”
“I don’t think so,” says the pig, “I’d be
committed, but you’d only be involved.”
Scrum Planning Poker
Sprint Backlog
Sprint Burndown
Daily Standups
Short: less than
  15 minutes
Answer 3 questions:
•What did I do yesterday?
•What am I doing today?
•Obstacles?
+ more
Flexibility
  (key)
OSC Specific
Implementations
OpenApproach to software development
                                                                                                                                                     Transition
                                            Est                                                                      Est
                                                im
                                            Ra atio                                                                      im                          and
                                 Pla
                                    n         nge n                                                       n          Ra atio
                                                   s                                                   Pla             nge n                         Document
                                                                                                                            s

                                                                  test        Adjust                                                       test
Iteration 0:
                                                                              Backlog                    Iteration N
                      Goals

                                    Iteration 1




                                                                                            Goals
                                                       integrat
Analysis,




                                                                                                                                integrat
                                                                              Priorities,




                                                                         de
                                                                                                           3 weeks




                                                                                                                                                de
Charter                              3 weeks




                                                                     co




                                                                                                                                              co
                                                                              Reassess




                                                         e




                                                                                                                                  e
& Design
                                                                              Risk
                               Ite                                                                                                                   Project
                                   r                 o& e                                            Ite
                                                                                                                              o& e
                              Lau ation          em ectiv
                                               D sp
                                                                                                         r
                                                                                                    Lau ation             em ectiv
                                                                                                                                                     Retrospective
                                  nc                                                                    nc              D sp
                                     h           tro                                                       h              tro
                                              Re                                                                       Re



Setup CI
server, and              Continuous Integration of source code and testing (CI server, unit testing, functional/browser testing)
test server


                     Constant C3:         Constant Collaboration, Communication, and Customer involvement
                                             (stand ups, burndowns, wiki, issue tracking)

Core Principles of the OpenApproach
 • High customer visibility into project status    •       Strong interaction with customers                    •   Best practices in development
    • Full access to code repositories                      • Customers help set iteration goals                     • Automated testing
    • Full access to issue tracking tools                   • Demo to customer & retrospective at the                • Continuous code integration
    • Full visibility into Scrum burndown charts              end of each development iteration                      • Test driven development
    • Customers participate in daily stand ups              • Customers can adjust priority of features              • Iterative deployments
    • Risk factors managed with customer                      after each iteration                                   • Refactoring
    • Collaborative estimation process                      • Co-location when possible                              • Pair programming/training
Lightweight Documentation
emphasis ON
collaboration
Best Practices
Test Driven
 Development
Behavior Driven
 Development
Continuous
Integration
Pair
Programming
Source Control
  SVN or Git
Git
I mean come on!
   Have you
   seen/used
  GitHub.com?
The right tool for the job
Team Building
Hackathon
Rails Rumble
More example practices:
http://railsmaturitymodels.com/practices
Questions?
Comments?
Concerns?
Contact

   www.o19s.com
  www.youhhoo.com
  ychaker@o19s.com
 twitter.com/ychaker
linkedin.com/in/ychaker
References
•   Fowler, Martin. The New Methodology: http://martinfowler.com/articles/newMethodology.html

•   Wikipedia. Agile Software Development: http://en.wikipedia.org/wiki/
    Agile_software_development

•   Manifesto for Agile Software Development: http://agilemanifesto.org/

•   Wikipedia. Scrum (development): http://en.wikipedia.org/wiki/Scrum_(development)

•   Wikipedia. Ariane 5 Flight 501: http://en.wikipedia.org/wiki/Ariane_5_Flight_501

•   Ariane 5 Failure, Full Report: http://sunnyday.mit.edu/accidents/Ariane5accidentreport.html

•   Wikipedia. Tehrac-25: http://en.wikipedia.org/wiki/Therac-25

•   Wikipedia. List of software bugs: http://en.wikipedia.org/wiki/List_of_software_bugs

•   Rails Maturity Models: http://railsmaturitymodels.com/practices

Mais conteúdo relacionado

Mais procurados

DATE 2005 - OpenAccess Migration within Philips Semiconductor
DATE 2005 - OpenAccess Migration within Philips SemiconductorDATE 2005 - OpenAccess Migration within Philips Semiconductor
DATE 2005 - OpenAccess Migration within Philips SemiconductorTim55Ehrler
 
Decision making in management for large medical equipment
Decision making in management for large medical equipmentDecision making in management for large medical equipment
Decision making in management for large medical equipmentHTAi Bilbao 2012
 
Decision making in management for large medical equipment
Decision making in management for large medical equipmentDecision making in management for large medical equipment
Decision making in management for large medical equipmentHTAi Bilbao 2012
 

Mais procurados (6)

DATE 2005 - OpenAccess Migration within Philips Semiconductor
DATE 2005 - OpenAccess Migration within Philips SemiconductorDATE 2005 - OpenAccess Migration within Philips Semiconductor
DATE 2005 - OpenAccess Migration within Philips Semiconductor
 
Decision making in management for large medical equipment
Decision making in management for large medical equipmentDecision making in management for large medical equipment
Decision making in management for large medical equipment
 
Decision making in management for large medical equipment
Decision making in management for large medical equipmentDecision making in management for large medical equipment
Decision making in management for large medical equipment
 
Gclogs jdd
Gclogs jddGclogs jdd
Gclogs jdd
 
Gclogs
GclogsGclogs
Gclogs
 
Evaluation Question (3)
Evaluation Question (3)Evaluation Question (3)
Evaluation Question (3)
 

Destaque

AgileCville: How to sell a traditional client on an Agile project plan
AgileCville:  How to sell a traditional client on an Agile project planAgileCville:  How to sell a traditional client on an Agile project plan
AgileCville: How to sell a traditional client on an Agile project planOpenSource Connections
 
ApacheCon Europe 2012 -Big Search 4 Big Data
ApacheCon Europe 2012 -Big Search 4 Big DataApacheCon Europe 2012 -Big Search 4 Big Data
ApacheCon Europe 2012 -Big Search 4 Big DataOpenSource Connections
 
Lessons Learned with Spark at the US Patent & Trademark Office
Lessons Learned with Spark at the US Patent & Trademark OfficeLessons Learned with Spark at the US Patent & Trademark Office
Lessons Learned with Spark at the US Patent & Trademark OfficeOpenSource Connections
 
Searching Chinese Patents Presentation at Enterprise Data World
Searching Chinese Patents Presentation at Enterprise Data WorldSearching Chinese Patents Presentation at Enterprise Data World
Searching Chinese Patents Presentation at Enterprise Data WorldOpenSource Connections
 

Destaque (7)

AgileCville: How to sell a traditional client on an Agile project plan
AgileCville:  How to sell a traditional client on an Agile project planAgileCville:  How to sell a traditional client on an Agile project plan
AgileCville: How to sell a traditional client on an Agile project plan
 
Core Principles Of Ci
Core Principles Of CiCore Principles Of Ci
Core Principles Of Ci
 
Big Search 4 Big Data War Stories
Big Search 4 Big Data War StoriesBig Search 4 Big Data War Stories
Big Search 4 Big Data War Stories
 
ApacheCon Europe 2012 -Big Search 4 Big Data
ApacheCon Europe 2012 -Big Search 4 Big DataApacheCon Europe 2012 -Big Search 4 Big Data
ApacheCon Europe 2012 -Big Search 4 Big Data
 
Lessons Learned with Spark at the US Patent & Trademark Office
Lessons Learned with Spark at the US Patent & Trademark OfficeLessons Learned with Spark at the US Patent & Trademark Office
Lessons Learned with Spark at the US Patent & Trademark Office
 
Searching Chinese Patents Presentation at Enterprise Data World
Searching Chinese Patents Presentation at Enterprise Data WorldSearching Chinese Patents Presentation at Enterprise Data World
Searching Chinese Patents Presentation at Enterprise Data World
 
Database History From Codd to Brewer
Database History From Codd to BrewerDatabase History From Codd to Brewer
Database History From Codd to Brewer
 

Semelhante a Be Agile, Be Happy

Richmond Spin - How To Sell A Traditional Client
Richmond Spin - How To Sell A Traditional ClientRichmond Spin - How To Sell A Traditional Client
Richmond Spin - How To Sell A Traditional ClientOpenSource Connections
 
Project planning
Project planningProject planning
Project planningESUG
 
Uma nova Visao do PMBOK® Guide 2000 - Disponivel Apenas em Ingles
Uma nova Visao do PMBOK® Guide 2000 - Disponivel Apenas em InglesUma nova Visao do PMBOK® Guide 2000 - Disponivel Apenas em Ingles
Uma nova Visao do PMBOK® Guide 2000 - Disponivel Apenas em InglesRicardo Viana Vargas
 
Introduction to Continuous Delivery
Introduction to Continuous DeliveryIntroduction to Continuous Delivery
Introduction to Continuous DeliveryKmanthei
 
Ideation and Design Principles Workshop
Ideation and Design Principles WorkshopIdeation and Design Principles Workshop
Ideation and Design Principles WorkshopDan Saffer
 
Lean sixsigmaasq0604
Lean sixsigmaasq0604Lean sixsigmaasq0604
Lean sixsigmaasq0604Vivek Surya
 
Lean sixsigmaasq0604
Lean sixsigmaasq0604Lean sixsigmaasq0604
Lean sixsigmaasq0604Vivek Surya
 
Short agilefordba
Short agilefordbaShort agilefordba
Short agilefordbaShane Hayes
 
The Science of Guessing - Drupal estimation techniques from project managers
The Science of Guessing - Drupal estimation techniques from project managersThe Science of Guessing - Drupal estimation techniques from project managers
The Science of Guessing - Drupal estimation techniques from project managersJakob Persson
 
IRJET- Public Opinion Analysis on Law Enforcement
IRJET-  	  Public Opinion Analysis on Law EnforcementIRJET-  	  Public Opinion Analysis on Law Enforcement
IRJET- Public Opinion Analysis on Law EnforcementIRJET Journal
 
Integrating Six Sigma Thinking Into Scrum Based Development Environments
Integrating Six Sigma Thinking Into Scrum Based Development EnvironmentsIntegrating Six Sigma Thinking Into Scrum Based Development Environments
Integrating Six Sigma Thinking Into Scrum Based Development Environmentsdrashid
 
SAP Business Objects Planning and Consolidaton, Version for SAP NetWeaver
SAP Business Objects Planning and Consolidaton, Version for SAP NetWeaverSAP Business Objects Planning and Consolidaton, Version for SAP NetWeaver
SAP Business Objects Planning and Consolidaton, Version for SAP NetWeaverIBM India Smarter Computing
 
Reinventing Experience - Fabio Carnevale Maffè
Reinventing Experience - Fabio Carnevale MaffèReinventing Experience - Fabio Carnevale Maffè
Reinventing Experience - Fabio Carnevale MaffèCultura Digitale
 
Oslo Mo Mo 220609
Oslo Mo Mo 220609Oslo Mo Mo 220609
Oslo Mo Mo 220609guest93271e
 
Disruptive processes for creating astonishing user interfaces
Disruptive processes for creating astonishing  user interfacesDisruptive processes for creating astonishing  user interfaces
Disruptive processes for creating astonishing user interfacesMobileMonday Norway
 
Iknow ranking sem_info_v9.0__2012.09.07_anjorin
Iknow ranking sem_info_v9.0__2012.09.07_anjorinIknow ranking sem_info_v9.0__2012.09.07_anjorin
Iknow ranking sem_info_v9.0__2012.09.07_anjorinMojisola Erdt née Anjorin
 

Semelhante a Be Agile, Be Happy (20)

Richmond Spin - How To Sell A Traditional Client
Richmond Spin - How To Sell A Traditional ClientRichmond Spin - How To Sell A Traditional Client
Richmond Spin - How To Sell A Traditional Client
 
Onepmo datasheet
Onepmo datasheetOnepmo datasheet
Onepmo datasheet
 
Project planning
Project planningProject planning
Project planning
 
Focus Mid Term Symposium
Focus Mid Term SymposiumFocus Mid Term Symposium
Focus Mid Term Symposium
 
Uma nova Visao do PMBOK® Guide 2000 - Disponivel Apenas em Ingles
Uma nova Visao do PMBOK® Guide 2000 - Disponivel Apenas em InglesUma nova Visao do PMBOK® Guide 2000 - Disponivel Apenas em Ingles
Uma nova Visao do PMBOK® Guide 2000 - Disponivel Apenas em Ingles
 
Introduction to Continuous Delivery
Introduction to Continuous DeliveryIntroduction to Continuous Delivery
Introduction to Continuous Delivery
 
Uat
UatUat
Uat
 
Ideation and Design Principles Workshop
Ideation and Design Principles WorkshopIdeation and Design Principles Workshop
Ideation and Design Principles Workshop
 
Lean sixsigmaasq0604
Lean sixsigmaasq0604Lean sixsigmaasq0604
Lean sixsigmaasq0604
 
Lean sixsigmaasq0604
Lean sixsigmaasq0604Lean sixsigmaasq0604
Lean sixsigmaasq0604
 
Short agilefordba
Short agilefordbaShort agilefordba
Short agilefordba
 
The Science of Guessing - Drupal estimation techniques from project managers
The Science of Guessing - Drupal estimation techniques from project managersThe Science of Guessing - Drupal estimation techniques from project managers
The Science of Guessing - Drupal estimation techniques from project managers
 
IRJET- Public Opinion Analysis on Law Enforcement
IRJET-  	  Public Opinion Analysis on Law EnforcementIRJET-  	  Public Opinion Analysis on Law Enforcement
IRJET- Public Opinion Analysis on Law Enforcement
 
Essential Kanban
Essential KanbanEssential Kanban
Essential Kanban
 
Integrating Six Sigma Thinking Into Scrum Based Development Environments
Integrating Six Sigma Thinking Into Scrum Based Development EnvironmentsIntegrating Six Sigma Thinking Into Scrum Based Development Environments
Integrating Six Sigma Thinking Into Scrum Based Development Environments
 
SAP Business Objects Planning and Consolidaton, Version for SAP NetWeaver
SAP Business Objects Planning and Consolidaton, Version for SAP NetWeaverSAP Business Objects Planning and Consolidaton, Version for SAP NetWeaver
SAP Business Objects Planning and Consolidaton, Version for SAP NetWeaver
 
Reinventing Experience - Fabio Carnevale Maffè
Reinventing Experience - Fabio Carnevale MaffèReinventing Experience - Fabio Carnevale Maffè
Reinventing Experience - Fabio Carnevale Maffè
 
Oslo Mo Mo 220609
Oslo Mo Mo 220609Oslo Mo Mo 220609
Oslo Mo Mo 220609
 
Disruptive processes for creating astonishing user interfaces
Disruptive processes for creating astonishing  user interfacesDisruptive processes for creating astonishing  user interfaces
Disruptive processes for creating astonishing user interfaces
 
Iknow ranking sem_info_v9.0__2012.09.07_anjorin
Iknow ranking sem_info_v9.0__2012.09.07_anjorinIknow ranking sem_info_v9.0__2012.09.07_anjorin
Iknow ranking sem_info_v9.0__2012.09.07_anjorin
 

Mais de OpenSource Connections

How To Structure Your Search Team for Success
How To Structure Your Search Team for SuccessHow To Structure Your Search Team for Success
How To Structure Your Search Team for SuccessOpenSource Connections
 
The right path to making search relevant - Taxonomy Bootcamp London 2019
The right path to making search relevant  - Taxonomy Bootcamp London 2019The right path to making search relevant  - Taxonomy Bootcamp London 2019
The right path to making search relevant - Taxonomy Bootcamp London 2019OpenSource Connections
 
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie HullHaystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie HullOpenSource Connections
 
Haystack 2019 Lightning Talk - State of Apache Tika - Tim Allison
Haystack 2019 Lightning Talk - State of Apache Tika - Tim AllisonHaystack 2019 Lightning Talk - State of Apache Tika - Tim Allison
Haystack 2019 Lightning Talk - State of Apache Tika - Tim AllisonOpenSource Connections
 
Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...
Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...
Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...OpenSource Connections
 
Haystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj Bharadwaj
Haystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj BharadwajHaystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj Bharadwaj
Haystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj BharadwajOpenSource Connections
 
Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...
Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...
Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...OpenSource Connections
 
Haystack 2019 - Search-based recommendations at Politico - Ryan Kohl
Haystack 2019 - Search-based recommendations at Politico - Ryan KohlHaystack 2019 - Search-based recommendations at Politico - Ryan Kohl
Haystack 2019 - Search-based recommendations at Politico - Ryan KohlOpenSource Connections
 
Haystack 2019 - Search with Vectors - Simon Hughes
Haystack 2019 - Search with Vectors - Simon HughesHaystack 2019 - Search with Vectors - Simon Hughes
Haystack 2019 - Search with Vectors - Simon HughesOpenSource Connections
 
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey GraingerHaystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey GraingerOpenSource Connections
 
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...OpenSource Connections
 
Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...
Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...
Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...OpenSource Connections
 
Haystack 2019 - Architectural considerations on search relevancy in the conte...
Haystack 2019 - Architectural considerations on search relevancy in the conte...Haystack 2019 - Architectural considerations on search relevancy in the conte...
Haystack 2019 - Architectural considerations on search relevancy in the conte...OpenSource Connections
 
Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...
Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...
Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...OpenSource Connections
 
Haystack 2019 - Establishing a relevance focused culture in a large organizat...
Haystack 2019 - Establishing a relevance focused culture in a large organizat...Haystack 2019 - Establishing a relevance focused culture in a large organizat...
Haystack 2019 - Establishing a relevance focused culture in a large organizat...OpenSource Connections
 
Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...
Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...
Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...OpenSource Connections
 
2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via
2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via
2019 Haystack - How The New York Times Tackles Relevance - Jeremiah ViaOpenSource Connections
 

Mais de OpenSource Connections (20)

Encores
EncoresEncores
Encores
 
Test driven relevancy
Test driven relevancyTest driven relevancy
Test driven relevancy
 
How To Structure Your Search Team for Success
How To Structure Your Search Team for SuccessHow To Structure Your Search Team for Success
How To Structure Your Search Team for Success
 
The right path to making search relevant - Taxonomy Bootcamp London 2019
The right path to making search relevant  - Taxonomy Bootcamp London 2019The right path to making search relevant  - Taxonomy Bootcamp London 2019
The right path to making search relevant - Taxonomy Bootcamp London 2019
 
Payloads and OCR with Solr
Payloads and OCR with SolrPayloads and OCR with Solr
Payloads and OCR with Solr
 
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie HullHaystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull
 
Haystack 2019 Lightning Talk - State of Apache Tika - Tim Allison
Haystack 2019 Lightning Talk - State of Apache Tika - Tim AllisonHaystack 2019 Lightning Talk - State of Apache Tika - Tim Allison
Haystack 2019 Lightning Talk - State of Apache Tika - Tim Allison
 
Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...
Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...
Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...
 
Haystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj Bharadwaj
Haystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj BharadwajHaystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj Bharadwaj
Haystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj Bharadwaj
 
Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...
Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...
Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...
 
Haystack 2019 - Search-based recommendations at Politico - Ryan Kohl
Haystack 2019 - Search-based recommendations at Politico - Ryan KohlHaystack 2019 - Search-based recommendations at Politico - Ryan Kohl
Haystack 2019 - Search-based recommendations at Politico - Ryan Kohl
 
Haystack 2019 - Search with Vectors - Simon Hughes
Haystack 2019 - Search with Vectors - Simon HughesHaystack 2019 - Search with Vectors - Simon Hughes
Haystack 2019 - Search with Vectors - Simon Hughes
 
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey GraingerHaystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
 
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
 
Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...
Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...
Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...
 
Haystack 2019 - Architectural considerations on search relevancy in the conte...
Haystack 2019 - Architectural considerations on search relevancy in the conte...Haystack 2019 - Architectural considerations on search relevancy in the conte...
Haystack 2019 - Architectural considerations on search relevancy in the conte...
 
Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...
Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...
Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...
 
Haystack 2019 - Establishing a relevance focused culture in a large organizat...
Haystack 2019 - Establishing a relevance focused culture in a large organizat...Haystack 2019 - Establishing a relevance focused culture in a large organizat...
Haystack 2019 - Establishing a relevance focused culture in a large organizat...
 
Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...
Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...
Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...
 
2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via
2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via
2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via
 

Último

Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Último (20)

Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Be Agile, Be Happy

  • 1. Be Agile, Be Happy Youssef Chaker NDU May 21st 2010
  • 2. Agenda • Agenda • My Background • Things Gone Bad • The Agile Manifesto • Scrum • Best Practices • Questions • Contact • References
  • 3. My Background Born and raised in Lebanon Bachelors of Science Computer Engineering THE University May 2008 Thesis: Designing and Building an Energy Responsible Data Center Software Developer/Consultant OpenSource Connections (OSC) July 2008 - present
  • 4. Things Gone Bad (1/3) Ariane 5 Flight 501 Flight 501, which took place on June 4, 1996, was the first, and unsuccessful, test flight of the European Ariane 5 expendable launch system. Due to an error in the software design (inadequate protection from integer overflow), the rocket veered off its flight path 37 seconds after launch and was destroyed by its automated self-destruct system when high aerodynamic forces caused the core of the vehicle to disintegrate. It is one of the most infamous computer bugs in history. The breakup caused the loss of four Cluster mission spacecraft, resulting in a loss of more than US$370 million
  • 5. Things Gone Bad (2/3) Therac-25 The Therac-25 was a radiation therapy machine produced by Atomic Energy of Canada Limited (AECL) [...]. It was involved with at least six accidents between 1985 and 1987, in which patients were given massive overdoses of radiation, approximately 100 times the intended dose. Three of the six patients died as a direct consequence. These accidents highlighted the dangers of software control of safety-critical systems, and they have become a standard case study in health informatics and software engineering. [...] A commission has concluded that the primary reason should be attributed to the bad software design and development practices, and not explicitly to several coding errors that were found. In particular, the software was designed so that it was relatively impossible to test it in a clean automated way.
  • 6. Things Gone Bad (3/3) More online: http://en.wikipedia.org/wiki/List_of_software_bugs
  • 7. But weren’t these projects following some sort of development or management process?
  • 13. WHY?
  • 14. DOZENS of requirements documents at THOUSANDS of pages each
  • 15. Turnaround time no less than 3 months
  • 16. Change of mind time?
  • 26. Agile
  • 28. We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more.
  • 35. Responding to change over following a plan
  • 36. HOW?
  • 37. Scrum
  • 38.
  • 39. iterative, incremental framework for project management and agile software development.
  • 40.
  • 41. 2 - 4 week sprints
  • 42. Some role playing
  • 43. “ScrumMaster”, who maintains the processes (typically in lieu of a project manager)
  • 44. “Product Owner”, who represents the stakeholders, represents the business
  • 45. “Team”, a cross-functional group of about 7 people who do the actual analysis, design, implementation, testing, etc.
  • 46. A pig and a chicken are walking down a road. The chicken looks at the pig and says, “Hey, why don’t we open a restaurant?” The pig looks back at the chicken and says, “Good idea, what do you want to call it?” The chicken thinks about it and says, “Why don’t we call it ‘Ham and Eggs’?” “I don’t think so,” says the pig, “I’d be committed, but you’d only be involved.”
  • 51. Short: less than 15 minutes
  • 52. Answer 3 questions: •What did I do yesterday? •What am I doing today? •Obstacles?
  • 53.
  • 54.
  • 58. OpenApproach to software development Transition Est Est im Ra atio im and Pla n nge n n Ra atio s Pla nge n Document s test Adjust test Iteration 0: Backlog Iteration N Goals Iteration 1 Goals integrat Analysis, integrat Priorities, de 3 weeks de Charter 3 weeks co co Reassess e e & Design Risk Ite Project r o& e Ite o& e Lau ation em ectiv D sp r Lau ation em ectiv Retrospective nc nc D sp h tro h tro Re Re Setup CI server, and Continuous Integration of source code and testing (CI server, unit testing, functional/browser testing) test server Constant C3: Constant Collaboration, Communication, and Customer involvement (stand ups, burndowns, wiki, issue tracking) Core Principles of the OpenApproach • High customer visibility into project status • Strong interaction with customers • Best practices in development • Full access to code repositories • Customers help set iteration goals • Automated testing • Full access to issue tracking tools • Demo to customer & retrospective at the • Continuous code integration • Full visibility into Scrum burndown charts end of each development iteration • Test driven development • Customers participate in daily stand ups • Customers can adjust priority of features • Iterative deployments • Risk factors managed with customer after each iteration • Refactoring • Collaborative estimation process • Co-location when possible • Pair programming/training
  • 59.
  • 63. Test Driven Development Behavior Driven Development
  • 65.
  • 67.
  • 68. Source Control SVN or Git
  • 69. Git
  • 70. I mean come on! Have you seen/used GitHub.com?
  • 71. The right tool for the job
  • 77. Contact www.o19s.com www.youhhoo.com ychaker@o19s.com twitter.com/ychaker linkedin.com/in/ychaker
  • 78. References • Fowler, Martin. The New Methodology: http://martinfowler.com/articles/newMethodology.html • Wikipedia. Agile Software Development: http://en.wikipedia.org/wiki/ Agile_software_development • Manifesto for Agile Software Development: http://agilemanifesto.org/ • Wikipedia. Scrum (development): http://en.wikipedia.org/wiki/Scrum_(development) • Wikipedia. Ariane 5 Flight 501: http://en.wikipedia.org/wiki/Ariane_5_Flight_501 • Ariane 5 Failure, Full Report: http://sunnyday.mit.edu/accidents/Ariane5accidentreport.html • Wikipedia. Tehrac-25: http://en.wikipedia.org/wiki/Therac-25 • Wikipedia. List of software bugs: http://en.wikipedia.org/wiki/List_of_software_bugs • Rails Maturity Models: http://railsmaturitymodels.com/practices

Notas do Editor

  1. Leb: That is a big part of my being and my identity and the one thing about me that I am most proud of. Uni: some of the best moments of my life graduated from Mr Jefferson’s institution in May 2008 spent half of my time bragging about Lebanon OSC: small consultancy. we build custom software for clients using open source technologies. we specialize in web apps. we consult on software/project management using agile and open approach Member of the AgileCville group
  2. cases of american/british companies writing software that uses the british numbering system (inches, feet, miles) in collaboration with german/french/dutch companies writing programs using the metric system without proper documentation or conversions
  3. btw, i belong to the open source community and the agile community, which means i’m opinionated so i will say some things that will make you cringe or say something like ‘i can’t believe he just said that’ type of thing.
  4. btw, i belong to the open source community and the agile community, which means i’m opinionated so i will say some things that will make you cringe or say something like ‘i can’t believe he just said that’ type of thing.
  5. software developers go down to their dungeons, and start manically coding
  6. product owners (managers, clients, biz dev) do not see any results for at least 3 months
  7. how long does it take clients/managers to change their mind?
  8. btw, i belong to the open source community and the agile community, which means i’m opinionated so i will say some things that will make you cringe or say something like ‘i can’t believe he just said that’ type of thing.
  9. In 2001, 17 prominent figures[6] in the field of agile development (then called "light-weight methods") came together at the Snowbird ski resort in Utah to discuss ways of creating software in a lighter, faster, more people-centric way. They coined the terms "Agile Software Development" and "agile methods", and they created the Agile Manifesto, widely regarded as the canonical definition of agile development and accompanying agile principles.
  10. how to implement these ideas in practice?
  11. Agile is the umbrella ideology and many frameworks exist to support it. XP (extreme programming) is one example Scrum is another. our choice at OSC
  12. removing obstacles help not control sometimes a buffer between the devs and the client
  13. Scrum enables the creation of self-organizing teams by encouraging co-location of all team members, and verbal communication across all team members and disciplines that are involved in the project. A key principle of Scrum is its recognition that during a project the customers can change their minds about what they want and need (often called requirements churn), and that unpredicted challenges cannot be easily addressed in a traditional predictive or planned manner. As such, Scrum adopts an empirical approach—accepting that the problem cannot be fully understood or defined, focusing instead on maximizing the team’s ability to deliver quickly and respond to emerging requirements. trading skills between dev
  14. scrum of scrums sprint review sprint retrospective etc...
  15. other examples include: ping pong book club company provided food