Unterstützung der Softwareentwicklungs- und Projektrealisierungsprozesse durch ein Application Lifecycle Management Tool bei Swisslog Erfahrungsbericht Version 1.0 9 September 2008 Philippe Meuli Page 1 / 26 August 2008 / REConf2008
Table of Contents Process support through ALM Tool Swisslog Overview Business, Services and Products Process Support and Improvement Process to Tool Application Lifecycle Management Tool Summary File information: GI_JT2008.ppt Page 2 / 26 August 2008 / GI_JT2008
Swisslog Overview Business, Services and Products Page 3 / 26 August 2008 / GI_JT2008
Introduction to Swisslog Chapter 1 Swisslog Overview Swisslog Warehouse & Distribution Solutions Healthcare Solutions Consulting Services. Headquarters in Buchs/Aarau, Switzerland Public company, listed in Zurich stock exchange (SLOG) 2060 employees Subsidiaries in 20 countries Turnover in 2007: 708 MCHF Focused strategy with core divisions (WDS and HCS) www.swisslog.com Page 4 / 26 August 2008 / GI_JT2008
Swisslog Facilities Chapter 1 Swisslog Overview USA UK Sweden Germany Switzerland Malaysia Australia Project realisation including software application Software product development Page 5 / 26 August 2008 / GI_JT2008
Picture of a Logistics Centre Chapter 1 Swisslog Overview Page 6 / 26 August 2008 / GI_JT2008
WDS Services and Products Chapter 1 Swisslog Overview Supply chain audit Automated Operation assistance Semi-automated Service and support Logistics network design Manual System operation IT concepts & process consulting Modernization Consult Design Deliver Operate Page 7 / 26 August 2008 / GI_JT2008
Warehouse Management Software Chapter 1 Swisslog Overview ERP System Yard Mgmt. Mfg. Single Point of Control (SPOC) WarehouseManager AutomationManager Labor Voice Cockpit RFID AutomationControl Material Handling Systems Page 8 / 26 August 2008 / GI_JT2008
Process Support and Improvement Page 9 / 26 August 2008 / GI_JT2008
A typical sign that Process Improvement is needed Chapter 2 Process Support and Improvement Over commitment Plans and procedures are given up Executable product / project but budget and cost overflow Success heavily depends on competence and heroism of individuals Page 10 / 26 August 2008 / GI_JT2008 Not repeatable
Are you settling for less? Symptoms Chapter 2 Process Support and Improvement Plans are made but not necessarily followed. Work is not tracked against the plan; plans are not adjusted. Requirements are not consistent; changes are not managed. Estimates are way of; over commitment is common. When overruns become apparent, a crisis atmosphere develops. Defects are discovered in tests, or worse yet, by the customer. Success depends on heroic efforts by competent individuals. Repeatability is questionable. Page 11 / 26 August 2008 / GI_JT2008
MONTE ROSA - DUFOURSPITZE Chapter 2 Process Support and Improvement How to reach the top? Dufourspitze The highest peak of the Monte Rosa massif and at 4,634m also the highest peak in Switzerland with the impressive east face, intensely glaciated and some 2,500 meters high. Page 12 / 26 August 2008 / GI_JT2008
OBJECTIVE Chapter 2 Process Support and Improvement Insert picture here: height 8 cm, width 7.2 cm It is not necessary to change. Survival is not mandatory. W. Edwards Deming 1900 1993 To give the Software Improvement Process a world wide and clear direction and measurability Swisslog WDS decided to adopt the CMMI (Capability Maturity Model Integrated) staged model. Reach Maturity Level 2 and later Maturity Level 3 with Software Product Development and Software Project Realisation Units world-wide within 3 to 5 years Page 13 / 26 August 2008 / GI_JT2008
BENEFITS Chapter 2 Process Support and Improvement Selection of benefits cost reduction (less error removal) ensure scalability of resources to business needs (exchangeability of resources world-wide) speed up process cycles reduce developing time / time to market of new products keep project frames (time, scope, cost) intact benefit from synergies between product development and project realisation people becoming more effective by technical, process & management improvements. improve service quality (deliverables) enable continuous improvement (process effectiveness) Page 14 / 26 August 2008 / GI_JT2008
RETURN ON INVESTMENT Chapter 2 Process Support and Improvement Typical SW-Project A Specification & Design Code & Test Integration and Test 40% 20% 40% Question: How long will Integration & Test last if no errors are made during the first two phases? B Specification & Design Code & Test Integration and Test 40% 20% 5% Error removal 35% C Part of the solution: Add reviews in Phase 1 & 2 Specification & Design & Reviews Code & Review & Test Integration and Test 45% 20% 15% Savings 20% Page 15 / 26 August 2008 / GI_JT2008
PLANNING LEVELS PROCESS GRANULARITY Chapter 2 Process Support and Improvement Accurate planning breakdown structure supports agility and predictability Release Planning Course of Iteration Delivery Quality Annual Release Delivery Quality Course of Release Delivery Quality without Iterations Iteration Planning Iteration I07.01 Iteration I07.02 Iteration I07.03 Iteration I07.xx Iteration I07.11 Iteration I07.12 Releases Milestones Time R1 R1a R1.1 R2 Page 16 / 26 August 2008 / GI_JT2008
Process to Tool Page 17 / 26 August 2008 / GI_JT2008
Processes Methods Tools Chapter 3 Process to Tool Tools support, enable and secure: Templates Processes Methods Tools support enable CMMI Maturity Level 2: By-directional traceability REQM (Requirements Management) Product Quality & Integrity (i.e. daily builds) enabled through CM (Configuration Management) Regression Testing (automated Testing) is not possible without tools V&V (Verification & Validation) Page 18 / 26 August 2008 / GI_JT2008
Boundary Conditions Chapter 3 Process to Tool Soft Factors Geography Geographical repartition Language Culture Knowledge (skills, experience) Hard Factors Technical requirements Functional e.g. Tool Coverage Non-functional Connectivity Access (internal / web) Security User rights / restrictions Support of CMMI compliance Page 19 / 26 August 2008 / GI_JT2008
System Borders (in and out of scope) Chapter 3 Process to Tool Others (Marketing, IT, Infrastruktur, Einkauf, QS,...) Community, Legislation & Politics Finance & Controlling Economic Consulting & Sales GU Project Management Systemplanning & Processplanning Ecology Shareholder Los & profit, Project success Software Project Realisation employee (Know-How) Realisation & commissioning Communikation & collaboration Engineering & SW- Development methods SLOG-SWproducts Customer relationship Tools Human Resources Customer Support WDS Management infrastructure Customer Automation Swisslog intern Direct incluence Market Competitor Indirect influence Page 20 / 26 August 2008 / GI_JT2008
Tool Coverage Chapter 3 Process to Tool Project Management POLARION Project Planning, Monitoring & Control Requirements Management Tracker Testing Configuration Management (& Version Control) Application Lifecycle Management Page 21 / 26 August 2008 / GI_JT2008 Automated Test Framework ATF
Polarion Support Concept Server and Virtual Machine Set-Up Chapter 3 Process to Tool Virtual Centre IT- Application Service Team IT Service Teams ESX 1 VMotion ESX 2 set-up, maintenance, upgrades, test, recovery, of Polarion applications Polarion Administration IT- Infrastructure Service Team set-up, maintenance, upgrades, backup of server infrastructure, operating system, network Virtual Machines per Region / Unit Region 1 Region 2 Region 3 Region 4 Region 5 Region 6 SW Dev. Root Users Dev Test Customer Project 1 Polarion Key User (many, per region) supports local users Prod Project n Polarion Administrator (1) configuration, updates, Page 22 / 26 August 2008 / GI_JT2008
Tool Evaluation Steps Chapter 3 Process to Tool 1. Define evaluation process (guidelines) 2. Define evaluation criteria (evaluation spread sheet) 3. Define evaluation method and stakeholders 4. Establish evaluation time frame (evaluation schedule) 5. Perform evaluation (according schedule apply method, criteria) 1. First round 1. Search for solutions (known solutions, literature, web, references, ) 2. List solutions 3. Screen solutions 4. Short list candidates 2. Second round 1. Submit use cases to candidates 2. Validate use case implementation (hearing) 3. Short list final candidates 3. Third round 1. Financial screening of final candidates 2. Pilot project negotiations with final candidates 3. Pricing, ability to execute, support, 6. Decide 7. Pilot / Migration Page 23 / 26 August 2008 / GI_JT2008
Use Case Build scenario Example Chapter 3 Process to Tool Build scenario upgrade Install Baseline Unchanged modules Full Install A new functional release consists of 2 builds Upgrade install (only changes) Full install (all modules) Page 24 / 26 August 2008 / GI_JT2008
Accessibility Chapter 3 Process to Tool Internet alm.sl.com [SSL] Reverse Proxi Firewall Front End Polarion [User / Password] R1 R2 R3 Customer World wide Limited, dedicated access for customers Full access for employees DMZ R4 R5 R6 Page 25 / 26 August 2008 / GI_JT2008
Comparison Elements Chapter 3 Process to Tool Company Facts Founded / Quoted / Revenue / Profitability / HQ, Presence / Customers, Users / Credit Rating / Service (SLA) Product Overview (scope, functions) Technology Integration / web / Open Source / Architecture Pilot Resources Time frame Licence model Finances Total / incremental and running cost per deployment phase Payment schedule Comparison Page 26 / 26 August 2008 / GI_JT2008
Comparison Final Decision Criteria Chapter 3 Process to Tool Company ++ Financial figures Presence Customer base / users Risks + Resources (Assets) Support Product Development Product +++ Tracker REQM CM & VC Planning Technology +++ Architecture Accessibility Extendibility Licence model ++ Price +++ Company +++ Financial figures Presence Customer base / users Risks ++ Resources (Assets) Support Product Development Product ++ Tracker REQM CM & VC Planning Technology ++ Architecture Accessibility Extendibility Licence model +++ Price + Bidder #2 General +++ General ++ Page 27 / 26 August 2008 / GI_JT2008
Application Lifecycle Management with POLARION Chapter 3 Process to Tool For Swisslog Polarion is a unified software development productivity platform which combines requirements, tasks, change requests, process management, planning, metrics and audits. Page 28 / 26 August 2008 / GI_JT2008
Application Lifecycle Management Tool Page 29 / 26 August 2008 / GI_JT2008
Work Breakdown Structure (WBS) and traceability Chapter 3.1 ALM Tool Page 30 / 26 August 2008 / GI_JT2008
WBS for requirements and project work Chapter 3.1 ALM Tool Bug fixing Polarion Tracker Project Polarion Requirements Project Minor enhancements Specification Major enhancements Project work Bug Report Bug Report Enhancement request Enhancement request Feature Feature Use Case Use Case Use Case Use Case User Story User Story User Story User Story Polarion Development Project Group Page 31 / 26 August 2008 / GI_JT2008
Work packages Chapter 3.1 ALM Tool Polarion Tracker Project Polarion Requirements Project Specification Bug Report Bug Report Enhancement request Enhancement request Feature Feature Use Case Use Case Use Case Use Case User Story User Story User Story User Story WP SPOC7 WP WM Polarion Development Project Group Page 32 / 26 August 2008 / GI_JT2008
Bi-directional traceability Chapter 3.1 ALM Tool Impact Traceability Page 33 / 26 August 2008 / GI_JT2008
WBS - Work Breakdown Structure Chapter 3.1 ALM Tool Requirements Bug Report 3 Minor Enhancement 2 Major Enhancement (Roadmap) 1 1 Requirements Specification Feature Feature Feature 1 Project User Story User Story User Story Code Source Docs Test Cases Test Results Page 34 / 26 August 2008 / GI_JT2008
Major Enhancement WBS and traceability to requirements in a Word document Chapter 3.1 ALM Tool [see 1 on page 34] Page 35 / 26 August 2008 / GI_JT2008
Major Enhancement Word requirements document with tags to allow traceability in ALM system Chapter 3.1 ALM Tool [see 1 on page 34] Page 36 / 26 August 2008 / GI_JT2008
Minor Enhancement WBS and traceability to requirements defined directly in the enhancement tracker Chapter 3.1 ALM Tool [see 2 on page 34] Page 37 / 26 August 2008 / GI_JT2008
Bug Fix WBS and traceability to the bug report in the tracker Chapter 3.1 ALM Tool [see 3 on page 34] Page 38 / 26 August 2008 / GI_JT2008
Work item attributes Chapter 3.1 ALM Tool Page 39 / 26 August 2008 / GI_JT2008
Summary Page 40 / 26 August 2008 / GI_JT2008
Summary The development and software team in Malaysia and Switzerland as well as the software project realisation teams world wide are integrated into the very same process: All people are tasked using Polarion They use the same SVN repository no external supply of work products A clear definition of the work break down structure facilitates a common way of working Face-to-face communication on daily basis is crucial tools can just support this: Locally this is not a technical issue Remotely this must be facilitated by suitable tools Video conference (suitable for workshops and meetings) Skype / telephone only (suitable for general conversations) Web Conference / Net Meeting (suitable for joint discussion on work products) Page 41 / 26 August 2008 / GI_JT2008
Thank you Contact Address Swisslog AG Philippe Meuli VP Software Quality & Processes Webereiweg 3 CH - 5033 Buchs / Aarau Tel. +41 62 837 4353 Mobile +41 79 321 7230 Mail: philippe.meuli@swisslog.com Skype: philippemeuli Page 42 / 26 August 2008 / GI_JT2008