The document discusses increasing complexity in IT applications and how to address it. It proposes that professional services can help with software quality management and governance. Specifically, professional services can help implement quality programs and platforms, assess maturity levels, and provide application quality assessments, continuous integration/improvement, and management of technical debt. The goal is to reduce defects and costs while improving maintainability and control over outsourcers.
1. “Half of my budget is wasted … I just don’t know which half”
Qualilogy – Professional services
Pour le post sur LinkedIn, utiliser le post sur Working productively at home.
September 2014
2. 2
Jean-Pierre FAYOLLE
•Freelance Consultant
Application Quality
Customer Success Management
Experience of international projects
•Blogger
www.qualilogy.com
Strong knowledge of the Quality ecosystem (software vendors, open-source solutions, partners, products, etc.)
Skype jpfayolle
Tweet @jpfayolle
contact@qualilogy.com
3. 3
1.More and more complexity
2.How do we face complexity?
3.Professional Services
Agenda
5. 5
Mainframe
AS400 IBM 36
MVS
Unix
1965-1985
More and more complexity
1985-2000
2000-2015
2015
ASM
Cobol RPG
C Pascal
PC Mac Windows Client-Server DBMS
Virtualization Cloud
SOA SaaS PaaS
Open Source
Android iOS
L4G SQL Java PHP C++ VB Frameworks ERP
Mobile devices
Cloud
Internet of all things
Big data Analytics
Java C# .NET
Ruby Groovy Scala Grails
CRM
Java
Objective C
APIs
Accounting
HR
Stocks
Manufacturing
Sales
Intranet / Extranet
Front-end / Back- end
IT Consumerization
2017 : 270 000 million apps downloads
6. 6
More and more complexity
•Applications are at the heart of IT
A differentiating factor of business success
Time to market / Costs
•Applications complexity increases
More applications
More layers, more dependencies
More incidents, less maintainability
•Impacts on business
Complex, heavy, tangled, expensive SI
Reduce business agility
Increase operational risks
7. 7
•Better toolkit
CASE tools, OO programming
Reusability, Frameworks
•Better processes
Automatization (SCM, Builds, Tests, …)
Continuous Integration, DevOps
•Better methodologies
Waterfall, RAD
Agile, Scrum, TDD
CMMI, ITIL
How do we face complexity?
8. 8
•Outsourcing
At the expense of quality
"There is always someone who says that they can do it cheaper"
How do we face complexity?
9. 9
How do we face complexity?
•How to improve application Quality?
Produce less = less defects
More people, more machines
Better governance of applications
•Governance
Business orientation = creation of value
Best practices = improve IT performance
Risk control = more success, less failure
Cost control = profitability
•Monitoring
Governance KPIs to measure processes and get feedback
less with less more with more more with less
10. 10
How do we face complexity?
•Objectives are always the same
Reduce defects
Reduce costs
Improve application maintainability
Improve outsourcers control
•Tooling is not enough
Tools guide human analysis
Skills are needed to optimize tools
•Proposition of value
Limit the costs of tools
Invest in the most pertinent: human analysis
12. 12
Professional Services
Governance
Governance
IT Management
Application portfolio management
IT Management
Application portfolio cartography
IT Management
Control of outsourcers
IT Management / Project
Software Quality Management
Implementation of a Software Quality Center
Quality consultants
Implementation of a Software Quality program
Quality consultants
Implementation of a Software Quality platform
Quality consultants
Assessment of the level of maturity of Software Quality
Quality consultants
Application Quality
Application Quality Assessment
Project / Developer
Continuous Integration / Continuous Improvement
Project / Developer
Technical debt management
Project / Developer
Quality Gate
Project / Developer
Security
Project / Developer
Performance
Project / Developer
13. 13
Governance
•Governance
Aligning application management with business
Definition of KPIs (performance, value, SLAs)
Actions plan – IT services catalog
Monitor and control
•Application portfolio management
Definition of criteria (business value, €, size, etc.)
Cartography
Analysis of portfolio
Assets & Risks
Decision support
« Ensuring that value is obtained from investment in TI is an essential component of IT Governance »
(IT Governance Institute)
« 48% of CIOs recognize that their organization has more applications than it needs. 25% of applications may be withdrawn »
(Application Landscape Report 2014, Cap Gemini)
14. 14
Governance
•Outsourcers management
Definition of performance metrics
Benchmarking of outsourcers
Definition of SLAs
Support in the choice of an outsourcer (RFP)
Support in the Knowledge Transfer phase
Establishing a win- win relationship with providers, based on objective data
« Let’s not do it your way or my way. Let’s do it the best way »
15. 15
Software Quality Management
•Implementation of a Software Quality Center
Objectives, missions and actors
Definition of the catalog of services
Infrastructure (internal/external, SaaS/PaaS)
Communication: inform and publish
•Implementation of a Software Quality program
Help your projects (trainings, assessments, etc.)
Ensure non regression of the quality of your application portfolio
Monitor and control your own Technical Debt (Sqale method)
« We offer a Quality approach completely integrated into the processes of project management, from the RFP to the validation of deliveries and the deployment in Production »
(Gaz de France – Quality Center)
16. 16
Software Quality Management
•Implementation of a Software Quality platform
Specifications
Support to the choice of a solution (open source or software vendor)
Personalization of the technical platform
Documentation
•Audit of the level of maturity of Software Quality
« The tooling market should be a mass market , affordable , for every stakeholder, and in the lean culture . We need to bring out Quality measurement out of its expert's world »
(SonarSource)
18. 18
Software Quality Maturity Assessment
Software Configuration management
Version control
Build Automation
Source Code Analysis
Unit testing
Continuous Integration
Automated Integration tests
QA Automation
Code review
Security & Architecture review
Automated deployment
Maturity Assessment of a french Telco company
19. 19
Quality Management
•Application Quality assessment
Anybody can do a source code analysis
The Quality consultant provides answers
oWhat: metrics, issues, tendencies
oWhy: investigate the origins of bad quality
oHow: to remediate, with proposals of action plans …
oHow much: … on different cost/time scales
« Most CIOs don't know what to do when an outsourcer delivers bad code. Where to begin? What actions to take? »
20. 20
Quality Management
•Continuous Integration / Improvement
Definition of processes and tools
Support to the choice of a solution (open source or software vendor)
Personalization of the technical platform
Documentation
•Performance / Security assessments
Control programming best practices (zero tolerance)
Identify issues
« Working in Continuous Integration is like going from the far west to travelling to the moon»
(Responsable Qualité & Méthodes of a french bank)
21. 21
Quality Management
•Quality Gate
Go/NoGo before QA / Production
On demand / Independent of the team
SLAs compliance / Control of outsourcers
•Technical Debt management
Reduce your debt / invest in the future
Benchmark projects / outsourcers / technologies
Golden Nugget approach
Método Sqale (www.sqale.org)
22. www.qualilogy.com.
Qualilogy assists companies in their efforts to implement and manage Software Quality
Anybody can analyze code
Qualilogy answers your questions
Qualilogy is not a tools reseller
Qualilogy is independent