Are You A Service Provider?
Be Ready for Evolution in Professional Java DevelopmentArthur Neudeck Giniality AG 243
AGENDA
> Prologue > Service Management > Reasons Why > First Steps > Experience > Bibliography 2Prologue
> About the Author:
– Founder, Senior Engineer +Architect and CxO at Giniality AG
– ITIL Expert
– Java Pioneer since 1995, former president of JUG-CH (JUGS)
– 40 years old, married, 2 children
> About Giniality AG:
– founded 2001
– 7 employees (08/2011), located in Basel (CH)
– past: education, consulting, and development around Java
– future: evolution to become service oriented
Prologue
> This presentation will not ...
– explain ITIL in detail.
– be a reminding pointer finger.
> This presentation intends ...
– to indicate reasons why you
should consider service management aspects.
– to indicate how you can make
first steps.
– to provoke rethinking your
service providing attitude.
Prologue
> Please fold your hands as you do
normally!
> ... and now try to do it the other way!
Service Management:
Introduction
„Service Management is a set of specialized organizational capabilities
for providing value to customers in the
form of services.“ [ITSM]
Service Management:
Service
„A service is a means of delivering value to customers by facilitating outcomes customers want to achieve without the
ownership of specific cost and
risks.“ [ITSM]
Service Management:
Value = Utility ...
> According to [ITBL]:
– Functionality offered by product
or service to meet a particular need
– Often summarized as “what it
does”
> Quite equivalent to functional
requirements
8
Service Management:
... and Warranty
> According to [ITBL]:
– Promise or guarantee that
product or service will meet its agreed requirements
– Summarized as “how it is done”
> Somehow reminding of
non-functional requirements
9
Service Management:
ITIL v3
> ITIL = IT Infrastructure Library
> Registered Trade Mark, and
Registered Community Trade Mark of
OGC (Office of Government
Commerce), UK
> ITIL v3 defines five life cycle
phases:
– Service Strategy
– Service Design
– Service Transition
– Service Operation
– Continual Service Improvement
> ITIL v3 also defines set of
complementary guides 10
Service Management:
Expectations
> Service Consumer expect:
– IT as commodity
– predictable costs
– low costs
– low risk using services
– well-defined list of features
– tailored to current needs
> Service Provider expect:
– IT as core business
– predictable profit
– large profits
– low risk providing services
– well-defined list of features
– standardized
Service Management:
ITIL Benefits and Promises
> Improved deployment of high-quality
(IT-) services
> Cost-effective (IT-) service quality
> Provide (IT-) services exactly meeting
requirements of business,
customers and end-users
> Follow and adopt integrated and
centralized processes
> All employees know both roles and
responsibilities providing (IT-)
services
> Learn from former experiences
> Gather and use measurable key
performance indicators
Reasons Why
(1/3)
> Improve control over your
„production factory“:
– know dependencies
– provide traceability
– estimate changes and their
impact
– stabilize your environments
– measure and optimize
> Provide appropriate documentation
management:
– adopting best efforts/ standards
– reduce own documentation
– appropriate target audience
Reasons Why
(2/3)
> Increase effectiveness:
– plan changes to your
development platform
– repeat recurring changes
> Concentrate on your core business:
– provide solutions on your specific
market for your specific customers
> Increase efficiency:
– apply to standard procedures
– information maintained/
accessible according target audience
Reasons Why
(3/3)
> Java Community already started
slight approaches with JSR 136: – JAIN
– OSS/J
– withdrawn?
– http://www.jcp.org/en/jsr/detail?id=136
> SOA Governance has plenty of
similar problems to tackle:
– Service Catalog
– Capacity Management
– Change Management
– ...
First Steps:
Overview
•
Start Process Oriented Development•
Development Platform = ServicePlatform
•
Establish a DML (Definitive MediaLibrary)
•
Establish Traceability of Assets•
Manage Knowledge Pragmatically•
Establish Capacity Management•
Accept Continual ServiceImprovement
•
Integrate SOA (Service OrientedArchitecture) with Service Management
•
Be aware of the „HumanFirst Steps:
Start Process Oriented Development ...
„The true, precise point of origin of a requirement is the process the person or
persons participate in.“ [REAR]
Jim Reardan
First Steps:
... Start Process Oriented Development
> Service providing encloses:
– many stakeholders
– many tools
> Start process oriented
development:
– Concentrate/ document business
services
– map business to IT services
> You can derive requirements directly
from processes!
> Use Eclipse Process Framework
Composer [EPFC]
– OMG/ SPEM Standard
– Deploy processes as EARs
First Steps:
Development Platform = Service Platform
> A development platform consists of
many tools/ services in
development-, integration-, and performance-lab-environments
> Treat your development platform as
service platform:
– plan and track changes
– provide release notes
– train own service attitude
– establish incident management
– establish software configuration
management, – ...
> Use OTRS Core and ITSM [OTRS]
First Steps:
Establish a Definitive Media Library
> Your assets consist of many parts:
– EAR, WAR, JAR
– images
– help files
> Ensure that all these parts can be
retrieved at any time in the future for
reasons of:
– defects liability
– support
– maintenance
> Use Software Share
– for all tools, plugins, etc.
> Use Apache Archiva [ARCH]
First Steps:
Establish Traceability of Assets
> Your components, web-services,
libraries ...
– depend on 3rd party libraries
– rely on certain releases of your
own assets
– comply to certain releases of
standards
– are used in customer products
and solutions
> Car manufacturers know where
parts are built-in - we do not!
> Use OTRS ITSM [OTRS]
First Steps:
Manage Knowledge Pragmatically
> Knowledge is not:
– storing documents in document
management systems
– providing a complex system
> Leave it where it comes from:
– Bug Tracking
– Document Management
– Version Control System
– Incidents, Problems, Changes
– CMDB, DML
– Test Results, QA Reports, ...
> Use Apache Solr [SOLR]
– search/ find information
First Steps:
Establish Capacity Management
> Establishing capacity management
throughout complete development
life cycle
> Test modules standalone and also in
realistic scenario (with other
modules) > KPIs: – memory consumption – disk footprint – response times – failures/ errors
> Use Apache jMeter [JMET]:
– measure expected load
– measure stress
First Steps:
Accept Continual Service Improvement
> Improvement can only take place:
– when you know where you are
– when you know where you want
to go
> Define metrics/ KPIs that are:
– relevant for your business
– measurable
> Use APIs:
– Archiva: collect metrics on assets
– Continuum: collect metrics on
builds, failures, etc.
> Start to think about surveys
measuring customer satisfaction:
– http://www.limesurvey.org/
First Steps:
Integrate Service Oriented Architecture with Service Management
> Both worlds deal with:
– IT Services
– Service Life Cycle
– Stakeholders
– Capacity Management
– etc.
> Use OTRS [OTRS]:
– Storage of service catalogue/
portfolio
– Report incidents on services
– Solve problems
– Provide FAQs
– ... 25
First Steps:
Be Aware of the „Human Engine“
> Manage changes [LIND]:
– 5% Whynotter – 15% Yesbutter – 5% NeverNos – 70% Beliver – 5% Cannotter > Provide coaching: – strengthen self-confidence
– reduce private conflicts
> Push education:
– theoretical
Experience:
Overview
> Started in 04/2010
> Started to document all processes
in Eclipse Process Framework Composer
> Evaluated tools which should be:
– open source
– written in Java
– ITIL compliant
> Decided on Core Platform OTRS
> Improved Continuity Management
> Established Service Portfolio
Management
> Combined Java Platform Aspects
> Combined SOA with ITIL
Experience:
Decided on Core Platform OTRS
> OTRS provides (at least):
– Support Desk
– Incident Management
– Problem Management
– Change Management
– Software Asset and Configuration
Management > Knowledge management concentrating on: – development platform – own assets > License management:
– Keys can be easily stored
Experience:
Continuity Management
> Massive enhancements:
– Virtualization of servers
– Virtualization of apps on servers
– UPS against blackouts
> Your job?
– Perhaps not!
> You should know about?
– Oh yes!
Experience:
Service Portfolio Management
> Catalogue of all planned/ productive/
retired services
> Stakeholder orientated
> Outsourcing of non-core services
(e.g. CRM/ time management/ expense management) to external service provider
> Documented on Internet/ Intranet
platform
> Increasing focus on mapping
business to IT services
Experience:
Challenges
> Keeping all platforms, APIs, tools,
etc. up-to-update
> Time/ costs vs. benefits/ earnings
> Missing cockpit to control ITSM
> Being a service consumer is
unusual
> Change management and coaching
from emotional perspective is tough!
> Shifting towards Service
Management means loss!
– Not all employees want it
– Not all employees like it
Experience:
Benefits
> We know dependencies of our
assets
> We stabilized our development
platform
> We can reproduce changes
– anytime
– any person
> Being a service consumer is cool
> Open market - plenty of work left
Experience:
Next Steps
> Put customer services in the service
catalogue on Internet:
– Sell services instead of software
> Move servers to colocation center:
– UPS/ electric generator
– cooling
– access management
> VoIP:
– increase availability
– reduce technical risks
(virtualization)
> Become a service consumer:
– Supplier Management using CRM
Experience:
(2/2) Next Steps
> Enhance knowledge management:
– add internal IMAP mails server
(Apache James)
– add media asset management
platform (i.e. Razuna)
> Develop a service radar:
– Java
– Integrate all backends such as
CMDB, monitoring, etc.
> ISO-20000 certification
> Support swiss made services aka.
swiss made software
– http://www.swissmadesoftware.org/
Bibliography
> [ARCH] Apache Archiva
http://archiva.apache.org/
> [EPFC] Eclipse Process Framework Composer
http://www.eclipse.org/epf/
> [INFO] InfoQ: „Service Oriented Architecture Governance: The Basics“
http://www.infoq.com/articles/soa-governance-basics
> [ITBL] ITIL Blues
sides-of-the-same-coin/
> [ITIL] ITIL.org
http://www.itil.org/en/vomkennen/itil/servicestrategy/ valuecreation.php
> [ITSM] ITIL Service Management
http://itservicemngmt.blogspot.com/2007/10/itil-service-definition.html
> [JMET] Apache jMeter
Bibliography
> [LIND] Lindner, Oliver. „The Human Engine v2“.
Presentation „itSMF-Kongress“, Darmstadt (DE) 07.-08.12.2010.
> [OTRS] OTRS
http://otrs.org/
> [REAR] Reardon, James. „The Credibility Gap in Software Requirements
Traceability“
http://businessprocessjournal.wordpress.com/2011/03/02/
part-1/
> [SOLR] Apache Solr
http://lucene.apache.org/solr/
> [TIBU] tiny buddha
http://tinybuddha.com/blog/5-steps-to-reinvent-yourself/
Bibliography:
Images
> Images are downloaded from http://
www.istockphoto.com/ and licensed to Giniality AG
Provocation - Again
> Try to see your world differently!
> Try your personal headstand - kids do
that every day!
> Five steps to reinvent yourself [TIBU]:
– Create a vision for your future.
– Write about your reinvention.
– Surround yourself with visual reminders of the life you’d like to create.
– Now that you have a vision of your future, break it up into workable tasks.
– Every day, go back to that vision of you walking towards your future.
Questions & Answers
> Who has got the first question?