SlideShare uma empresa Scribd logo
1 de 21
Funambol: introducing
SCRUM in
software product
development

Edoardo Schepis
Summary
• Funambol
  ► the company
  ► the product
  ► the team

• Releases
  ► one   year and 3 releases to become agile
• Challenges
• Conclusions
Funambol – the company

• #1 mobile open source company
• ~70 employees worldwide
• Headquarted in the US (Silicon Valley)
• Engeneering team in Italy
• Sales presence in the US, Dubai, Beijing and Germany
• http://www.funambol.com
Funambol – the product/1
• Funambol is a product company
  ► i.e.   No consulting
• Push email product
  ► Blackberry    open source
  ► MobileWE

• Client and server components
• Carrier grade server
  ► Many     components
      • Synchronization server
      • Push server
      • Inbox listener
      • PIM listener
      • Connectors
Funambol – the product/2
• Multi platform clients
   ► WindowsMobile    (SmartPhone & pocket PC)
   ► Win32/fat clients (Outlook)
   ► Symbian
   ► JavaME
   ► BlackBerry
   ► iPhone
   ► Android
   ► Mobile Linux

• Online portal (my.funambol.com)
Funambol – Engineering team/1
• Based in Pavia
• 20 developers
  ► 18  in Pavia
  ► 2 in Portugal

• 9 QA
  ►5  in Pavia
  ► 1 in Palermo
  ► 2 in Romania
  ► 1 in the USA

• 1 Technical Writer
• 1 Release Engineer
• 1 Scrum Master
Funambol – Releases
• A major release every 6 months (the islands):
   ► Elba   (v. 6.5): January 2008
      • Waterfall
   ► Capri    (v. 7.0): August 2008
      • Agility introduction
   ► Ischia   (v. 7.1): January 2009
      • Very close to Scrum
• Minor releases aka packs:
   ► phone   packs
   ► client packs

• Customers Projects
• MyFunambol
Elba
• Waterfall and Gantt
• 3 teams around technologies:
  ► Server
  ► C++ Clients
  ► Java Clients

• Teams lead by technical leaders and architects
• Features in some wiki pages
• Pros
  ► teams  were maximising skills and expertise
  ► high focus on software layers and components

• Cons
  ► nobaclkog - no user stories – no priorities
  ► boundaries between components also in process
Capri
• CTO said: “I want SCRUM!”
• Engineering said: “Are you crazy?!?”
   ► Elba  has been perceived as a good release (“why should we
     change something that works?”)
   ► But... it required a patch release just after one month (Pianosa)

• Let's apply some agile methods from Scrum:
   ► Iterative   Development
      • 4 weeks long
      • 4 Iterations for dev
      • 2 for integration and regression testing
   ► Product   Backlog
   ► Planning game
   ► User Stories
   ► Splitting teams around user stories (4 teams)
   ► Scrum Masters (one per team)
Capri Results
• Results...
   ► “Oh my god a release every month!”
   ► “My team leader is also mastering my scrum team...”
   ► Backlog in a spreadsheet not up to date
       • user stories lacking of details
       • business value not properly set
       • no burndown charts
   ► Estimates   made by tech leads and architects and then assigned to
     teams
   ► People still working in waterfall way
   ► Quality not meeting the expectations – many new bugs

• But...
   ► No need of patches
   ► Many new features and software components
   ► Release perceived as a good one by the management (not by the
     developers)
Ischia
• Injecting in a better way agility and Scrum in the process
   ►3   teams with technologies focus
        • no roles
        • no leads
   ►1   Scrum Master
        • just this goal within the company
        • only one for the 3 teams
   ► Backlog    managed in Agile/Scrum way
        • user stories
        • DONE definition
        • estimates performed by the teams
        • right tool for distributed teams (RallyDev)
        • burndown charts always up to date
        • Technical Debt backlog
   ► More    Scrum karma
        • teamwork
        • communication
Ischia Results
• The Highest level of communication and knowledge
  sharing
• People feel the agility
• Teamwork
• Management loves receiving feedback, comments,
  proposals from the teams about user stories and features
• User stories really done (almost there)
• Continuous Integration
• 3 Iterations for development
  ► velocity   = 180 s.p./iteration (3 teams together)
• 1 for Integration and Regression aka SprintGA
Done Definition
• Changes Log updated
• Unit tests implemented and passed
• Acceptance tests defined and passed
  ► no   new bugs or regression bugs introduced with a new u.s.
• Releasable (installable on a demo server)
  ► documentation
  ► upgrade impact
  ► backward compatibility
  ► performance impact

• No increased technical debt: reduce unreadable,
  duplicated, untestable, undocumented code
Ischia Charts
Ischia Charts
Retrospectives
Improvements
• Committing less and better estimations
  ► iterations 2 weeks long
  ► split user stories and define tasks

• Reduce Impediments level
  ► customers
  ► the   fireman role (?)
• More Agile Methods
  ► Code    review or pair programming?
• QA role in Scrum and agile methodologies
  ► automating    mobile devices testing
• Scrum of Scrum
• Open Source and community contributions
Conclusions/1
• User stories definition
   ► Size of the User Stories
   ► Estimates
   ► Managing inclusions and dependencies

• Iteration planning
   ► Difficult   because of the above
• Cultural switch
   ► From   centralised responsibility to distributed responsibility
   ► Agile is much easier to pronounce than to apply :)
   ► SCRUM requires discipline and teamwork
   ► Human factor is fundamental
Conclusions/2
• Controlling the chaos!
   ► Teams  working in parallel
   ► People shocked by the new process!
   ► Co-ordination challenges
      • Development
      • Building
      • Testing
      • Releasing
      • Overall architecture
   ► How   to fit the “GA” release process
      • Quality assurance
      • Bug fixing
Q&A
References
• http://www.funambol.com


• http://my.funambol.com


• http://pragmatic-agile.net

Mais conteúdo relacionado

Mais procurados

Aws, play! couch db scaling soa in the cloud
Aws, play! couch db  scaling soa in the cloudAws, play! couch db  scaling soa in the cloud
Aws, play! couch db scaling soa in the cloudChristophe Marchal
 
Roadmap to Enterprise Quality
Roadmap to Enterprise QualityRoadmap to Enterprise Quality
Roadmap to Enterprise QualityJeff Bramwell
 
Private Cloud Deployment Automation with XebiaLabs and OpenShift
Private Cloud Deployment Automation with XebiaLabs and OpenShiftPrivate Cloud Deployment Automation with XebiaLabs and OpenShift
Private Cloud Deployment Automation with XebiaLabs and OpenShiftXebiaLabs
 
Software operability and run book collaboration London Feb 2014
Software operability and run book collaboration London Feb 2014Software operability and run book collaboration London Feb 2014
Software operability and run book collaboration London Feb 2014Matthew Skelton
 
DevOps presentation
DevOps presentationDevOps presentation
DevOps presentationAxsh Co. LTD
 
Microsoft Team Foundation Server Build 2015
Microsoft Team Foundation Server Build 2015Microsoft Team Foundation Server Build 2015
Microsoft Team Foundation Server Build 2015Chris Kadel, MBA
 
Leveraging HP Performance Center
Leveraging HP Performance CenterLeveraging HP Performance Center
Leveraging HP Performance CenterMartin Spier
 
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
 
TuleapCon 2019. Tuleap Trackers, when one size does not fit all
TuleapCon 2019. Tuleap Trackers, when one size does not fit allTuleapCon 2019. Tuleap Trackers, when one size does not fit all
TuleapCon 2019. Tuleap Trackers, when one size does not fit allTuleap
 
DevOps Patterns - Team Topologies
DevOps Patterns -  Team TopologiesDevOps Patterns -  Team Topologies
DevOps Patterns - Team TopologiesMatthew Skelton
 
Dev/Test scenarios in DevOps world
Dev/Test scenarios in DevOps worldDev/Test scenarios in DevOps world
Dev/Test scenarios in DevOps worldDavide Benvegnù
 
TuleapCon 2019. Tuleap explained by the users
TuleapCon 2019. Tuleap explained by the usersTuleapCon 2019. Tuleap explained by the users
TuleapCon 2019. Tuleap explained by the usersTuleap
 
Boosting Dev and Ops Productivity
Boosting Dev and Ops ProductivityBoosting Dev and Ops Productivity
Boosting Dev and Ops ProductivityXebiaLabs
 
Seven deadly wastes
Seven deadly wastesSeven deadly wastes
Seven deadly wastesJez Halford
 
What's new for VSTS & TFS
What's new for VSTS & TFSWhat's new for VSTS & TFS
What's new for VSTS & TFSPieter Gheysens
 
[Curitiba DEV DAY] - Novidades do TFS 2015
[Curitiba DEV DAY] -  Novidades do TFS 2015[Curitiba DEV DAY] -  Novidades do TFS 2015
[Curitiba DEV DAY] - Novidades do TFS 2015Leandro Prado
 

Mais procurados (20)

Aws, play! couch db scaling soa in the cloud
Aws, play! couch db  scaling soa in the cloudAws, play! couch db  scaling soa in the cloud
Aws, play! couch db scaling soa in the cloud
 
Roadmap to Enterprise Quality
Roadmap to Enterprise QualityRoadmap to Enterprise Quality
Roadmap to Enterprise Quality
 
Private Cloud Deployment Automation with XebiaLabs and OpenShift
Private Cloud Deployment Automation with XebiaLabs and OpenShiftPrivate Cloud Deployment Automation with XebiaLabs and OpenShift
Private Cloud Deployment Automation with XebiaLabs and OpenShift
 
Software operability and run book collaboration London Feb 2014
Software operability and run book collaboration London Feb 2014Software operability and run book collaboration London Feb 2014
Software operability and run book collaboration London Feb 2014
 
DevOps presentation
DevOps presentationDevOps presentation
DevOps presentation
 
Microsoft Team Foundation Server Build 2015
Microsoft Team Foundation Server Build 2015Microsoft Team Foundation Server Build 2015
Microsoft Team Foundation Server Build 2015
 
Leveraging HP Performance Center
Leveraging HP Performance CenterLeveraging HP Performance Center
Leveraging HP Performance Center
 
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
 
TuleapCon 2019. Tuleap Trackers, when one size does not fit all
TuleapCon 2019. Tuleap Trackers, when one size does not fit allTuleapCon 2019. Tuleap Trackers, when one size does not fit all
TuleapCon 2019. Tuleap Trackers, when one size does not fit all
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
DevOps Patterns - Team Topologies
DevOps Patterns -  Team TopologiesDevOps Patterns -  Team Topologies
DevOps Patterns - Team Topologies
 
Dev/Test scenarios in DevOps world
Dev/Test scenarios in DevOps worldDev/Test scenarios in DevOps world
Dev/Test scenarios in DevOps world
 
Dev ops
Dev opsDev ops
Dev ops
 
TuleapCon 2019. Tuleap explained by the users
TuleapCon 2019. Tuleap explained by the usersTuleapCon 2019. Tuleap explained by the users
TuleapCon 2019. Tuleap explained by the users
 
Boosting Dev and Ops Productivity
Boosting Dev and Ops ProductivityBoosting Dev and Ops Productivity
Boosting Dev and Ops Productivity
 
Api360 Summit The Automated Monolith
Api360 Summit  The Automated MonolithApi360 Summit  The Automated Monolith
Api360 Summit The Automated Monolith
 
Seven deadly wastes
Seven deadly wastesSeven deadly wastes
Seven deadly wastes
 
TestIstanbul 2015
TestIstanbul 2015TestIstanbul 2015
TestIstanbul 2015
 
What's new for VSTS & TFS
What's new for VSTS & TFSWhat's new for VSTS & TFS
What's new for VSTS & TFS
 
[Curitiba DEV DAY] - Novidades do TFS 2015
[Curitiba DEV DAY] -  Novidades do TFS 2015[Curitiba DEV DAY] -  Novidades do TFS 2015
[Curitiba DEV DAY] - Novidades do TFS 2015
 

Destaque

5 minutos de vida
5 minutos de vida 5 minutos de vida
5 minutos de vida Luis Roque
 
Яков Любоведский, исполнительный директор Союза органического земледелия
Яков Любоведский, исполнительный директор Союза органического земледелияЯков Любоведский, исполнительный директор Союза органического земледелия
Яков Любоведский, исполнительный директор Союза органического земледелияChernozem21
 
Evidencias fotográficas hologram
Evidencias fotográficas hologramEvidencias fotográficas hologram
Evidencias fotográficas hologramNatalie Lizarraga
 
NSSA’s bad investments under spotlight as Beitbridge Hotel flops
NSSA’s bad investments under spotlight as Beitbridge Hotel flopsNSSA’s bad investments under spotlight as Beitbridge Hotel flops
NSSA’s bad investments under spotlight as Beitbridge Hotel flopsZimpapers Group (1980)
 
філологічний клас
філологічний класфілологічний клас
філологічний класAdel1na
 
CDK 2.0: Docker, Kubernetes, And OSE On Your Desk (Langdon White)
CDK 2.0: Docker, Kubernetes, And OSE On Your Desk (Langdon White)CDK 2.0: Docker, Kubernetes, And OSE On Your Desk (Langdon White)
CDK 2.0: Docker, Kubernetes, And OSE On Your Desk (Langdon White)Red Hat Developers
 

Destaque (8)

5 minutos de vida
5 minutos de vida 5 minutos de vida
5 minutos de vida
 
Яков Любоведский, исполнительный директор Союза органического земледелия
Яков Любоведский, исполнительный директор Союза органического земледелияЯков Любоведский, исполнительный директор Союза органического земледелия
Яков Любоведский, исполнительный директор Союза органического земледелия
 
Evidencias fotográficas
Evidencias fotográficasEvidencias fotográficas
Evidencias fotográficas
 
Evidencias fotográficas hologram
Evidencias fotográficas hologramEvidencias fotográficas hologram
Evidencias fotográficas hologram
 
NSSA’s bad investments under spotlight as Beitbridge Hotel flops
NSSA’s bad investments under spotlight as Beitbridge Hotel flopsNSSA’s bad investments under spotlight as Beitbridge Hotel flops
NSSA’s bad investments under spotlight as Beitbridge Hotel flops
 
філологічний клас
філологічний класфілологічний клас
філологічний клас
 
Prezi (2)
Prezi (2)Prezi (2)
Prezi (2)
 
CDK 2.0: Docker, Kubernetes, And OSE On Your Desk (Langdon White)
CDK 2.0: Docker, Kubernetes, And OSE On Your Desk (Langdon White)CDK 2.0: Docker, Kubernetes, And OSE On Your Desk (Langdon White)
CDK 2.0: Docker, Kubernetes, And OSE On Your Desk (Langdon White)
 

Semelhante a Funambol: introducing SCRUM in software product development - AgileDay Italia

Lecture3.se.pptx
Lecture3.se.pptxLecture3.se.pptx
Lecture3.se.pptxAmna Ch
 
Agile methodology and Scrum Framewwork
Agile methodology and Scrum FramewworkAgile methodology and Scrum Framewwork
Agile methodology and Scrum Framewworksalmanahmed368
 
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzLecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzAhmadSajjad34
 
FALLSEM2022-23_SWE2029_TH_VL2022230101289_Reference_Material_I_26-09-2022_Scr...
FALLSEM2022-23_SWE2029_TH_VL2022230101289_Reference_Material_I_26-09-2022_Scr...FALLSEM2022-23_SWE2029_TH_VL2022230101289_Reference_Material_I_26-09-2022_Scr...
FALLSEM2022-23_SWE2029_TH_VL2022230101289_Reference_Material_I_26-09-2022_Scr...duhitha2
 
Building a custom cms with django
Building a custom cms with djangoBuilding a custom cms with django
Building a custom cms with djangoYann Malet
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software EngineeringPurvik Rana
 
DevOps: Automate all the things
DevOps: Automate all the thingsDevOps: Automate all the things
DevOps: Automate all the thingsMat Mannion
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process ModelsAhsan Rahim
 
Mixing d ps building architecture on the cross cutting example
Mixing d ps building architecture on the cross cutting exampleMixing d ps building architecture on the cross cutting example
Mixing d ps building architecture on the cross cutting examplecorehard_by
 
Agileand saas davepatterson_armandofox_050813webinar
Agileand saas davepatterson_armandofox_050813webinarAgileand saas davepatterson_armandofox_050813webinar
Agileand saas davepatterson_armandofox_050813webinarRoberto Jr. Figueroa
 
What do making cars and writing software have in common?
What do making cars and writing software have in common?What do making cars and writing software have in common?
What do making cars and writing software have in common?PayPerks
 
How to organize qa process in agile speed
How to organize qa process in agile speedHow to organize qa process in agile speed
How to organize qa process in agile speedSvitlana Dubyk
 
Agile Scrum Training Process
Agile Scrum Training ProcessAgile Scrum Training Process
Agile Scrum Training ProcessClarion Marketing
 

Semelhante a Funambol: introducing SCRUM in software product development - AgileDay Italia (20)

Lecture3.se.pptx
Lecture3.se.pptxLecture3.se.pptx
Lecture3.se.pptx
 
Introduction to Scrum
Introduction to ScrumIntroduction to Scrum
Introduction to Scrum
 
Agile methodology and Scrum Framewwork
Agile methodology and Scrum FramewworkAgile methodology and Scrum Framewwork
Agile methodology and Scrum Framewwork
 
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzLecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
 
FALLSEM2022-23_SWE2029_TH_VL2022230101289_Reference_Material_I_26-09-2022_Scr...
FALLSEM2022-23_SWE2029_TH_VL2022230101289_Reference_Material_I_26-09-2022_Scr...FALLSEM2022-23_SWE2029_TH_VL2022230101289_Reference_Material_I_26-09-2022_Scr...
FALLSEM2022-23_SWE2029_TH_VL2022230101289_Reference_Material_I_26-09-2022_Scr...
 
Building a custom cms with django
Building a custom cms with djangoBuilding a custom cms with django
Building a custom cms with django
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software Engineering
 
Agile by KD
Agile by KDAgile by KD
Agile by KD
 
Agile by KD
Agile by KDAgile by KD
Agile by KD
 
Scrum toufiq
Scrum toufiqScrum toufiq
Scrum toufiq
 
Agile
AgileAgile
Agile
 
fast Introduction scrum
fast Introduction scrumfast Introduction scrum
fast Introduction scrum
 
DevOps: Automate all the things
DevOps: Automate all the thingsDevOps: Automate all the things
DevOps: Automate all the things
 
The Agile Mindset
The Agile MindsetThe Agile Mindset
The Agile Mindset
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process Models
 
Mixing d ps building architecture on the cross cutting example
Mixing d ps building architecture on the cross cutting exampleMixing d ps building architecture on the cross cutting example
Mixing d ps building architecture on the cross cutting example
 
Agileand saas davepatterson_armandofox_050813webinar
Agileand saas davepatterson_armandofox_050813webinarAgileand saas davepatterson_armandofox_050813webinar
Agileand saas davepatterson_armandofox_050813webinar
 
What do making cars and writing software have in common?
What do making cars and writing software have in common?What do making cars and writing software have in common?
What do making cars and writing software have in common?
 
How to organize qa process in agile speed
How to organize qa process in agile speedHow to organize qa process in agile speed
How to organize qa process in agile speed
 
Agile Scrum Training Process
Agile Scrum Training ProcessAgile Scrum Training Process
Agile Scrum Training Process
 

Mais de Edoardo Schepis

Joomla in the cloud with Openshift
Joomla in the cloud with OpenshiftJoomla in the cloud with Openshift
Joomla in the cloud with OpenshiftEdoardo Schepis
 
Scrumbuts - Italian Agile Day 2010
Scrumbuts - Italian Agile Day 2010Scrumbuts - Italian Agile Day 2010
Scrumbuts - Italian Agile Day 2010Edoardo Schepis
 
Funambol JavaME Messaging Client: Lessons Learned - JavaONE 2008
Funambol  JavaME Messaging Client: Lessons Learned - JavaONE 2008Funambol  JavaME Messaging Client: Lessons Learned - JavaONE 2008
Funambol JavaME Messaging Client: Lessons Learned - JavaONE 2008Edoardo Schepis
 
JavaME Overview - JMDF 2007
JavaME Overview - JMDF 2007JavaME Overview - JMDF 2007
JavaME Overview - JMDF 2007Edoardo Schepis
 
JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007Edoardo Schepis
 
JMDF Introduction - JMDF 2005
JMDF Introduction - JMDF 2005JMDF Introduction - JMDF 2005
JMDF Introduction - JMDF 2005Edoardo Schepis
 
JavaME Deploy and Test - JMDF 2005
JavaME Deploy and Test - JMDF 2005JavaME Deploy and Test - JMDF 2005
JavaME Deploy and Test - JMDF 2005Edoardo Schepis
 
Alla ricerca della User Story perduta
Alla ricerca della User Story perdutaAlla ricerca della User Story perduta
Alla ricerca della User Story perdutaEdoardo Schepis
 

Mais de Edoardo Schepis (11)

Openshift Enterprise
Openshift EnterpriseOpenshift Enterprise
Openshift Enterprise
 
Joomla in the cloud with Openshift
Joomla in the cloud with OpenshiftJoomla in the cloud with Openshift
Joomla in the cloud with Openshift
 
Intro jbug milano
Intro jbug milanoIntro jbug milano
Intro jbug milano
 
Scrumbuts - Italian Agile Day 2010
Scrumbuts - Italian Agile Day 2010Scrumbuts - Italian Agile Day 2010
Scrumbuts - Italian Agile Day 2010
 
Funambol JavaME Messaging Client: Lessons Learned - JavaONE 2008
Funambol  JavaME Messaging Client: Lessons Learned - JavaONE 2008Funambol  JavaME Messaging Client: Lessons Learned - JavaONE 2008
Funambol JavaME Messaging Client: Lessons Learned - JavaONE 2008
 
JavaME UI - JMDF 2007
JavaME UI - JMDF 2007JavaME UI - JMDF 2007
JavaME UI - JMDF 2007
 
JavaME Overview - JMDF 2007
JavaME Overview - JMDF 2007JavaME Overview - JMDF 2007
JavaME Overview - JMDF 2007
 
JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007
 
JMDF Introduction - JMDF 2005
JMDF Introduction - JMDF 2005JMDF Introduction - JMDF 2005
JMDF Introduction - JMDF 2005
 
JavaME Deploy and Test - JMDF 2005
JavaME Deploy and Test - JMDF 2005JavaME Deploy and Test - JMDF 2005
JavaME Deploy and Test - JMDF 2005
 
Alla ricerca della User Story perduta
Alla ricerca della User Story perdutaAlla ricerca della User Story perduta
Alla ricerca della User Story perduta
 

Último

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 

Último (20)

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 

Funambol: introducing SCRUM in software product development - AgileDay Italia

  • 1. Funambol: introducing SCRUM in software product development Edoardo Schepis
  • 2. Summary • Funambol ► the company ► the product ► the team • Releases ► one year and 3 releases to become agile • Challenges • Conclusions
  • 3. Funambol – the company • #1 mobile open source company • ~70 employees worldwide • Headquarted in the US (Silicon Valley) • Engeneering team in Italy • Sales presence in the US, Dubai, Beijing and Germany • http://www.funambol.com
  • 4. Funambol – the product/1 • Funambol is a product company ► i.e. No consulting • Push email product ► Blackberry open source ► MobileWE • Client and server components • Carrier grade server ► Many components • Synchronization server • Push server • Inbox listener • PIM listener • Connectors
  • 5. Funambol – the product/2 • Multi platform clients ► WindowsMobile (SmartPhone & pocket PC) ► Win32/fat clients (Outlook) ► Symbian ► JavaME ► BlackBerry ► iPhone ► Android ► Mobile Linux • Online portal (my.funambol.com)
  • 6. Funambol – Engineering team/1 • Based in Pavia • 20 developers ► 18 in Pavia ► 2 in Portugal • 9 QA ►5 in Pavia ► 1 in Palermo ► 2 in Romania ► 1 in the USA • 1 Technical Writer • 1 Release Engineer • 1 Scrum Master
  • 7. Funambol – Releases • A major release every 6 months (the islands): ► Elba (v. 6.5): January 2008 • Waterfall ► Capri (v. 7.0): August 2008 • Agility introduction ► Ischia (v. 7.1): January 2009 • Very close to Scrum • Minor releases aka packs: ► phone packs ► client packs • Customers Projects • MyFunambol
  • 8. Elba • Waterfall and Gantt • 3 teams around technologies: ► Server ► C++ Clients ► Java Clients • Teams lead by technical leaders and architects • Features in some wiki pages • Pros ► teams were maximising skills and expertise ► high focus on software layers and components • Cons ► nobaclkog - no user stories – no priorities ► boundaries between components also in process
  • 9. Capri • CTO said: “I want SCRUM!” • Engineering said: “Are you crazy?!?” ► Elba has been perceived as a good release (“why should we change something that works?”) ► But... it required a patch release just after one month (Pianosa) • Let's apply some agile methods from Scrum: ► Iterative Development • 4 weeks long • 4 Iterations for dev • 2 for integration and regression testing ► Product Backlog ► Planning game ► User Stories ► Splitting teams around user stories (4 teams) ► Scrum Masters (one per team)
  • 10. Capri Results • Results... ► “Oh my god a release every month!” ► “My team leader is also mastering my scrum team...” ► Backlog in a spreadsheet not up to date • user stories lacking of details • business value not properly set • no burndown charts ► Estimates made by tech leads and architects and then assigned to teams ► People still working in waterfall way ► Quality not meeting the expectations – many new bugs • But... ► No need of patches ► Many new features and software components ► Release perceived as a good one by the management (not by the developers)
  • 11. Ischia • Injecting in a better way agility and Scrum in the process ►3 teams with technologies focus • no roles • no leads ►1 Scrum Master • just this goal within the company • only one for the 3 teams ► Backlog managed in Agile/Scrum way • user stories • DONE definition • estimates performed by the teams • right tool for distributed teams (RallyDev) • burndown charts always up to date • Technical Debt backlog ► More Scrum karma • teamwork • communication
  • 12. Ischia Results • The Highest level of communication and knowledge sharing • People feel the agility • Teamwork • Management loves receiving feedback, comments, proposals from the teams about user stories and features • User stories really done (almost there) • Continuous Integration • 3 Iterations for development ► velocity = 180 s.p./iteration (3 teams together) • 1 for Integration and Regression aka SprintGA
  • 13. Done Definition • Changes Log updated • Unit tests implemented and passed • Acceptance tests defined and passed ► no new bugs or regression bugs introduced with a new u.s. • Releasable (installable on a demo server) ► documentation ► upgrade impact ► backward compatibility ► performance impact • No increased technical debt: reduce unreadable, duplicated, untestable, undocumented code
  • 17. Improvements • Committing less and better estimations ► iterations 2 weeks long ► split user stories and define tasks • Reduce Impediments level ► customers ► the fireman role (?) • More Agile Methods ► Code review or pair programming? • QA role in Scrum and agile methodologies ► automating mobile devices testing • Scrum of Scrum • Open Source and community contributions
  • 18. Conclusions/1 • User stories definition ► Size of the User Stories ► Estimates ► Managing inclusions and dependencies • Iteration planning ► Difficult because of the above • Cultural switch ► From centralised responsibility to distributed responsibility ► Agile is much easier to pronounce than to apply :) ► SCRUM requires discipline and teamwork ► Human factor is fundamental
  • 19. Conclusions/2 • Controlling the chaos! ► Teams working in parallel ► People shocked by the new process! ► Co-ordination challenges • Development • Building • Testing • Releasing • Overall architecture ► How to fit the “GA” release process • Quality assurance • Bug fixing
  • 20. Q&A