SlideShare a Scribd company logo
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

More Related Content

What's hot

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
Christophe Marchal
 
Roadmap to Enterprise Quality
Roadmap to Enterprise QualityRoadmap to Enterprise Quality
Roadmap to Enterprise Quality
Jeff 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 OpenShift
XebiaLabs
 
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
Matthew Skelton
 
DevOps presentation
DevOps presentationDevOps presentation
DevOps presentation
Axsh Co. LTD
 
Leveraging HP Performance Center
Leveraging HP Performance CenterLeveraging HP Performance Center
Leveraging HP Performance Center
Martin 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 Delivery
Ahmed 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 all
Tuleap
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
Pixel Federation
 
DevOps Patterns - Team Topologies
DevOps Patterns -  Team TopologiesDevOps Patterns -  Team Topologies
DevOps Patterns - Team Topologies
Matthew Skelton
 
Dev/Test scenarios in DevOps world
Dev/Test scenarios in DevOps worldDev/Test scenarios in DevOps world
Dev/Test scenarios in DevOps world
Davide Benvegnù
 
Dev ops
Dev opsDev ops
Dev ops
farzanehvar
 
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
Tuleap
 
Boosting Dev and Ops Productivity
Boosting Dev and Ops ProductivityBoosting Dev and Ops Productivity
Boosting Dev and Ops Productivity
XebiaLabs
 
Api360 Summit The Automated Monolith
Api360 Summit  The Automated MonolithApi360 Summit  The Automated Monolith
Api360 Summit The Automated Monolith
Haufe-Lexware GmbH & Co KG
 
Seven deadly wastes
Seven deadly wastesSeven deadly wastes
Seven deadly wastes
Jez Halford
 
TestIstanbul 2015
TestIstanbul 2015TestIstanbul 2015
TestIstanbul 2015
Martin Spier
 
What's new for VSTS & TFS
What's new for VSTS & TFSWhat's new for VSTS & TFS
What's new for VSTS & TFS
Pieter 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 2015
Leandro Prado
 
Going faster with kanban
Going faster with kanbanGoing faster with kanban
Going faster with kanban
Jez Halford
 

What's hot (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
 
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
 
Going faster with kanban
Going faster with kanbanGoing faster with kanban
Going faster with kanban
 

Viewers also liked

5 minutos de vida
5 minutos de vida 5 minutos de vida
5 minutos de vida Luis Roque
 
Яков Любоведский, исполнительный директор Союза органического земледелия
Яков Любоведский, исполнительный директор Союза органического земледелияЯков Любоведский, исполнительный директор Союза органического земледелия
Яков Любоведский, исполнительный директор Союза органического земледелияChernozem21
 
Evidencias fotográficas
Evidencias fotográficasEvidencias fotográficas
Evidencias fotográficas
Natalie Lizarraga
 
Evidencias fotográficas hologram
Evidencias fotográficas hologramEvidencias fotográficas hologram
Evidencias fotográficas hologram
Natalie 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 flops
Zimpapers Group (1980)
 
філологічний клас
філологічний класфілологічний клас
філологічний клас
Adel1na
 
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)
Red Hat Developers
 

Viewers also liked (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)
 

Similar to Funambol: introducing SCRUM in software product development - AgileDay Italia

Lecture3.se.pptx
Lecture3.se.pptxLecture3.se.pptx
Lecture3.se.pptx
Amna Ch
 
Introduction to Scrum
Introduction to ScrumIntroduction to Scrum
Agile methodology and Scrum Framewwork
Agile methodology and Scrum FramewworkAgile methodology and Scrum Framewwork
Agile methodology and Scrum Framewwork
salmanahmed368
 
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzLecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
AhmadSajjad34
 
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 django
Yann Malet
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software Engineering
Purvik Rana
 
Agile by KD
Agile by KDAgile by KD
Agile by KD
Karl Dickman
 
Agile by KD
Agile by KDAgile by KD
Agile by KD
Karl Dickman
 
Scrum toufiq
Scrum toufiqScrum toufiq
Scrum toufiq
Toufiq Mahmud
 
Agile
AgileAgile
Agile
Komal2525
 
fast Introduction scrum
fast Introduction scrumfast Introduction scrum
fast Introduction scrum
Fabien Bataille
 
DevOps: Automate all the things
DevOps: Automate all the thingsDevOps: Automate all the things
DevOps: Automate all the things
Mat Mannion
 
The Agile Mindset
The Agile MindsetThe Agile Mindset
The Agile Mindset
Tony Caniglia
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process Models
Ahsan 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 example
corehard_by
 
Agileand saas davepatterson_armandofox_050813webinar
Agileand saas davepatterson_armandofox_050813webinarAgileand saas davepatterson_armandofox_050813webinar
Agileand saas davepatterson_armandofox_050813webinar
Roberto 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 speed
Svitlana Dubyk
 
Agile Scrum Training Process
Agile Scrum Training ProcessAgile Scrum Training Process
Agile Scrum Training Process
Clarion Marketing
 

Similar to 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
 

More from Edoardo Schepis

Openshift Enterprise
Openshift EnterpriseOpenshift Enterprise
Openshift Enterprise
Edoardo Schepis
 
Joomla in the cloud with Openshift
Joomla in the cloud with OpenshiftJoomla in the cloud with Openshift
Joomla in the cloud with Openshift
Edoardo Schepis
 
Intro jbug milano
Intro jbug milanoIntro jbug milano
Intro jbug milano
Edoardo Schepis
 
Scrumbuts - Italian Agile Day 2010
Scrumbuts - Italian Agile Day 2010Scrumbuts - Italian Agile Day 2010
Scrumbuts - Italian Agile Day 2010
Edoardo 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 2008
Edoardo Schepis
 
JavaME UI - JMDF 2007
JavaME UI - JMDF 2007JavaME UI - JMDF 2007
JavaME UI - JMDF 2007
Edoardo Schepis
 
JavaME Overview - JMDF 2007
JavaME Overview - JMDF 2007JavaME Overview - JMDF 2007
JavaME Overview - JMDF 2007
Edoardo Schepis
 
JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007JavaME Development Workflow - JMDF 2007
JavaME Development Workflow - JMDF 2007
Edoardo 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 2005
Edoardo Schepis
 
Alla ricerca della User Story perduta
Alla ricerca della User Story perdutaAlla ricerca della User Story perduta
Alla ricerca della User Story perduta
Edoardo Schepis
 

More from 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
 

Recently uploaded

Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
Neo4j
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
Antonios Katsarakis
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
Jason Yip
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
FREE A4 Cyber Security Awareness Posters-Social Engineering part 3
FREE A4 Cyber Security Awareness  Posters-Social Engineering part 3FREE A4 Cyber Security Awareness  Posters-Social Engineering part 3
FREE A4 Cyber Security Awareness Posters-Social Engineering part 3
Data Hops
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
Alex Pruden
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
DianaGray10
 

Recently uploaded (20)

Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
FREE A4 Cyber Security Awareness Posters-Social Engineering part 3
FREE A4 Cyber Security Awareness  Posters-Social Engineering part 3FREE A4 Cyber Security Awareness  Posters-Social Engineering part 3
FREE A4 Cyber Security Awareness Posters-Social Engineering part 3
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
 

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