React Native vs Ionic - The Best Mobile App Framework
Key items for a digital enterprise
1. Key items for a Digital enterprise
build the Team
build the Agile Iteration
build the Code Factory
To successfully deliver your IT project …
Code factory
2. Key items for a Digital enterprise
• Create transversal/product team (Spotify)
• Build trust & solidarity
• Review the development process from the request initiation to production
• onshore-offshore & RA(CI)
• Review roles: the Team, Scrum Master, Product Owner , manager, Tech Lead
• others on offshore side
Review project & team management with Agile key concepts (events & roles)
• Implement the product incrementally with MVP & Story Map
• adjust the meeting cascade (hoshin-kanri)
• Implement an electronic dashboard for splitted team
Review development factory with Lean key concepts
• easily control your code: code management & coder community (GitHub)
• easily deploy technical environment (PaaS/IaaS)
• easily deploy the code: automated package building & deployment (DevOps)
• prove your code is working:
• test methodology & strategy
• continuous integration (build & automated test)
• improve continuously your Code & Factory: architecture & refactoring (SaaS)
3 main steps
the key methodologies: Lean, Agile, DevOps
1. Build the team: empower people
2. Build the Agile iteration: try & adapt in short iteration
3. Build the Code Factory: ensure code quality & fluidity in the process
the Goal:
Capacity to deliver Business Project with Agility and offer a great User eXperience
Code factory
3. Build the team: empower people
the key methodologies: Lean, Agile, DevOps, matrixial organization
The Spotify organization: minimize at maximum the component teams
• 80% feature team: small autonomous teams product oriented, mixing the key roles of the enterprise
• 20% component team: not autonomous to develop one product but specialized in component requesting high expertise
From the BCG Lean Summit 2016
4. Build the team: empower people
the key methodologies: Lean, Agile, DevOps, matrixial organization
Key point to break silos : some key meetings should not be aligned on the org chart
• vertical communication: hierarchy chart meetings
• transversal communication: transversal/horizontal meetings
Whatever the organisation you choose, setup a few key meetings transversally to
your organisation chart to ensure porosity of your ‘silos’.
Example: around 30 people with 2 team leaders and 1 Domain manager dealing with 2 main activities: maintenance
of the core engine & business projects development
Meetings aligned on the org chart are
‘rigidifying’ silos
Meetings transversal to the org chart
are ‘breaking’ silos
N+2
N+1
Project
BA
+
IT
N+1
Core
BA
+
IT
Daily
Stand-up
weekly Daily
Stand-up
weekly
• Just 1 person has the global vision: the N+2 &
furthermore, he’s focused on other subjects
• Consequence: difficult to do capacity management
between the 2 teams due to a lack of transversal vision.
Each team focus on his own functional perimeter
N+2
N+1
BA
Project
+
Core
N+1
IT
Project
+
Core
Daily Stand-up
weekly
• All the team has the global vision
• 3 managers are accountable of the capacity
management between ‘Project’ & ‘Core’ subjects
• Daily stand-up based on a ‘Project’ & ‘Core’ subjects
ensures a daily communication between BA & IT
• Weekly meeting: you can do 2, 1 BA & 1 IT but the
preparation should be done in common by the 2 N+1
Daily Stand-up
5. Build the Agile iteration: try & adapt in short iteration
the key methodologies: LEAN, SCRUM, KANBAN, SCRUMBAN, family of stories, limit WIP
• Empower the team: give clear objectives and make them autonomous
• Build quality first: setup regular feedback loop & learn from the failure
• How: through short iterations• Goal: build Quality first … is cheaper!
• How: make the team build their solution
• How: visualize your process & problems!
do
Better to deliver Faster
Safer
Visual Management
Man records 90% of his information through
• 50 to 70% : Vision, Hearing
• 90%: Interaction
E = Q * A
• E = efficiency of the solution
• Q = quality of the solution
• A = acceptance of the solution by operational team
Cheaper
6. Build the Code Factory: ensure code quality & fluidity in the process
the key concepts: DevOps, open source community, discussion directly on the code
easily control & share your code:
• manage your code efficiently
• build your community around your code (share expertise)
Code factory
7. Build the Code Factory: ensure code quality & fluidity in the process
Code factory
the key concepts: cloud, virtualization of machines, database, network
easily deploy technical environment (PaaS/IaaS)
As a developer, I can easily ask new environment, (re)configures them to match my
current needs (take advantage of the virtualisation of the ‘hardware’, cloud, …)
8. Build the Code Factory: ensure code quality & fluidity in the process
Code factory
the key concepts: DevOps, automation
• easily deploy the code: from craftsman to industry
• automated package building & deployment (DevOps)
DevOps: a cultural & professional movement
DevOps: the maturity of new techno & tools allows industrialisation to easily deploy
Source: conference
Netapsys, actifio)
from a clash of interest …
DEV
Quickly deliver
new features
CHANGE!
VS
OPS
Ensure availability
& responsiveness
of the service
STABILITY!
… to a collaboration
DEV
Inside the container
• Code
• Libraries
• Data
• applications
OPS
Outside the container
• orchestration
• Logging
• Remote access
• Network configuration
• monitoring
• Same goal
• Same tools
• But different roles
9. Build the Code Factory: ensure code quality & fluidity in the process
Code factory
the key concepts & tools: continuous integration, TDD, test methodology, AML
prove your code is working:
• continuous integration (build & automated test)
• test methodology & strategy
➢ Test Strategy: be smart & lazy but keep the control!
➢ Think methodology before tools!
• Test is related to renunciation: what is mandatory, what is not?
• Think also on what is the best way to do it (which data, who, when, automated, …?)
➢ ‘Continuous Integration’: regularly build, deploy & test regression (automation)
10. Build the Code Factory: ensure code quality & fluidity in the process
Code factory
the key concepts & tools: continuous integration, TDD, test methodology, AML, NPS (Net Promoter Score)
KPI to measure the evolution of Lean, Agile & DevOps 'practices’
• Measure the ‘Value Added’! (the finalized product, better the benefits, leadtime)
• Measure items of End-to-End process related to this VA. not individual productivity
Question: Is individual productivity really the final goal of your firm? No.
Customer
satisfaction
• priority
• time to market
• quality
Code Factory
Efficiency
• time to market
• Quality
• Cost
How to measure them?Key Activities & key themes we want monitor
Quality: delivery matches client’s priority (1 to 4) NPS
Quality: delivery matches client expectation (1 to 4) NPS
• retrieve code version X: frequency, time & % automation
• Already in production
• In development
• Manage your code:
• # versions maintained in parallel
• Code merge: freq, time, easy or not
• deploy technical environment: freq, time & % automation
• deploy your code version: freq, time & % automation
• prove your code is working: freq, time & % automation
• Build
• test code coverage (unit testing, regression, UAT
• prove your code is maintainable:
• # Bug/Release/Sprint
• Cost of maintenance per component
# Release per year/month
Time between 2 Releases into Production
Time to market: from prioritised to setup in production
# critical interruption of services per month/week
Time to restore service compared to SLA
Quality: service matches client expectation (1 to 4)
List of most repetitive & heavy tasks
# of deployment/week,~workload, ~time, % automation
For Standard & Urgent
Already in production
Critical interruption
Deliver
new feature
How long the
customer has
to wait?
measure how easy it is to …
• control your code
• deploy technical environment
• deploy your code: automated package
building & deployment
• prove your code is working:
• test methodology & strategy
• continuous integration
• prove your code is maintainable
• improve continuously: architecture &
refactoring
Standard release
Urgent release
Frequency
Time to market
Deliver first high VA
velocity: #SP/Release/Sprint
Is velocity used to forecast future delivery with Client?
Per Release, US with major Gap forecast/realised, rationale
Capacity of the team to forecast from its
current productivity
Forecast
planning
11. Appendix
Sources by theme
➢ Digital
➢ Digital transformation: BCG Summit 2015 & 2016
➢ ING applies Spotify organisation
➢ Atelier BNP Paribas (AWS conference) The BBVA case
➢ Digital meeting: iObeya, Smartech, Hitachi, U-Touch, Epson
➢ Lean
➢ Lean (Womack, Jones)
➢ McKinsey
➢ Agile
➢ Lean Software Development (Poppendieck)
➢ Scrum (Jeff Sutherland)
➢ Kanban (David J. Anderson)
➢ key subjects not discussed here
➢ Story families & Release Cycles
➢ Test
➢ Architecture
➢ Documentation
13. Appendix
What is DevOps?
What are the standard and major problems and goals the IT department is requested to fulfill?
• Be Agile
• Be reactive
• Deliver quality
• Reduce its cost
DevOps
Ability to implement & deliver
quickly
Ability to manage several
versions in parallel
(not required if just one)
Ability to deploy into production
as a non-event
Ability to deploy/configure
quickly any environment
(SMED in manufacturing)