Jidoka in Software Development



Similar documents
Driving Your Business Forward with Application Life-cycle Management (ALM)

Body of Knowledge for Six Sigma Lean Sensei

Key Benefits of Microsoft Visual Studio Team System

Priyo Lahiri Partner Technical Consultant Microsoft Corporation

Better management through process automation.

Media and Information Provider Unifies Development Processes

The Lego Lean Game. Danilo Sato, Francisco Trindade XP 2009 Sardinia - Italy. 25 th May 2009

Understanding Operations Management The Open University (2011)

TeamCity A Professional Solution for Delivering Quality Software, on Time

VIRGINIA MASON PRODUCTION SYSTEM (VMPS)

Simplifying development through activity-based change management

Chapter 6. Iteration 0: Preparing for the First Iteration

Software Construction

Appendix Lean Glossary Page 1

Total Productive Maintenance. Implementing TPM in Baxter Aibonito

Coverity Services. World-class professional services, technical support and training from the Coverity development testing experts

Transitioning Your Software Process To Agile Jeffery Payne Chief Executive Officer Coveros, Inc.

Toyota Production System. Lecturer: Stanley B. Gershwin

AN INDUSTRIAL APPLICATION OF THE SMED METHODOLOGY AND OTHER LEAN PRODUCTION TOOLS

Sample Emergency Contact Form

Manager Domain Experts. Delivery Team. C h ic a g o

Waterloo Agile Lean P2P Group

Microsoft PPM for Application Administrators using Microsoft Project Online

Software Development In the Cloud Cloud management and ALM

Lean Silver Certification Blueprint

e-gateway SOLUTION OVERVIEW Financials HCM ERP e-gateway Web Applications Mobile Devices SharePoint Portal

Lean Healthcare Online

How To Manage Cloud Management

Realizing business flexibility through integrated SOA policy management.

IBM 2010 校 园 蓝 色 加 油 站 之. 商 业 流 程 分 析 与 优 化 - Business Process Management and Optimization. Please input BU name. Hua Cheng chenghua@cn.ibm.

Continuous Integration Comes to China.

Lean Production with Work Process Management

Misconceived. Misdirected. Mismanaged. Why too many companies miss the real value of Lean. A paper by Mark Hughes & Jonathan Gray, Vice Presidents

ALM2013VS_ACC: Application Lifecycle Management Using Visual Studio 2013

Advanced SharePoint Tools to Enhance Project Management

Integrating gsix Sigma THINKING into Scrum-Based. Darian Rashid Agile Trainer and Coach

Cognizant Accelerates Enterprise Application Development Cycle-time by 10 Percent

The Need for Lean Training

Agile support with Kanban some tips and tricks By Tomas Björkholm

Agile Project Management: Best Practices and Methodologies

Manage Release and Deployment

Maximizing Cross-Platform Application Availability

Nick Ashley TOOLS. The following table lists some additional and possibly more unusual tools used in this paper.

Using the Agile Methodology to Mitigate the Risks of Highly Adaptive Projects

Application Lifecycle Management Using Visual Studio 2013 (SCRUM)

HP Application Lifecycle Management

Best of Everything ITIL, CMMI & Lean Six Sigma

Meister Going Beyond Maven

Enabling Continuous Delivery by Leveraging the Deployment Pipeline

Lean vs. Agile similarities and differences Created by Stephen Barkar -

Using Microsoft SharePoint for Project Management

Operational Excellence in the Pharmaceutical Industry

Change Management Best Practices

DevOps for the Cloud. Achieving agility throughout the application lifecycle. The business imperative of agility

ITIL & The Service Oriented Approach. Vivek Shrivastava

Generating Unit Tests for Checking Refactoring Safety

Scrum vs. Kanban vs. Scrumban

Data Quality Dashboards in Support of Data Governance. White Paper

How To Understand Jidoka

Operational Business Intelligence in Manufacturing

CMTRAC. Application Overview APPLICATION DATASHEET

Multichannel Customer Experience

THE PROJECT MANAGEMENT KNOWLEDGE AREAS

KPiSync. By Larry McGhaw, Chief Technology Officer

NXTware Remote. Advanced Development and Maintenance Environment for OpenVMS and other Strategic Platforms

Continual Readiness Guide Staff in Emergency or Disaster Events Human Resource Questions and Answers

ASSURING SOFTWARE QUALITY USING VISUAL STUDIO 2010

Job Manager for Metal Fabrication

A Simple Guide to Material Master Data Governance. By Keith Boardman, Strategy Principal

Accelerate Software Delivery

Continuous Delivery. Anatomy of the Deployment Pipeline (Free Chapter) by Jez Humble and David Farley

Continuous Improvement From Incremental Changes to Monumental Leaps

Agile Delivery Framework Automation & Deployment With Puppet

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into

Unleash Competitive Advantage through Software Lifecycle Integration

Using WebLOAD to Monitor Your Production Environment

Applying the DMAIC Steps to Process Improvement Projects

USAGE OF KANBAN METHODOLOGY AT SOFTWARE DEVELOPMENT TEAMS

ORACLE HYPERION DATA RELATIONSHIP MANAGEMENT

Continuous???? Copyright 2015 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti

A Path from Windows Desktop to HTML5

Answers to Top BRMS Questions

Agile methods. Objectives

TRANSFORMING TO NEXT-GEN APP DELIVERY FOR COMPETITIVE DIFFERENTIATION

Mature Agile with a twist of CMMI

Koen Aers JBoss, a division of Red Hat jbpm GPD Lead

Transcription:

Jidoka in Software Development Emanuele Danovaro, Andrea Janes, Giancarlo Succi Center for Applied Software Engineering Free University of Bolzano/Bozen, Italy {emanuele.danovaro, andrea.janes, giancarlo.succi}@unibz.it http://www.case.unibz.it

Agenda Lean Thinking A Jidoka Framework Overview Components Conclusions 2

Lean Thinking Initiated by Toyota when Ford was dominating the market using mass production. Initial idea: produce cars of different type on the same production line with similar costs and quality as obtained using mass production. 3

The starting point Time Time 4

Lean Thinking Strategy 1: Removing Muda Set-up JIT delivery Time Stock 5

Lean Thinking Strategy 2: Use Jidoka to ensure quality Machines that can detect a problem with the produced output and interrupt production automatically ("Quality at the source") http://sese.hpu.edu.cn/ie/mirror/leanword.htm 6

Examples for Lean Thinking in Software Engineering Product Muda Refactoring Jidoka Automatic Testing Process Agility? 7

Jidoka Framework Do Plan Check Act 8

Part 1: Notifying stakeholders 9

Interrupting software production Alerts shown in the development environment shown in the tray area E-mail Deny check-in Level of importance 10

Part 2: Identifying problems 11

Stopping software production We need rules to decide whether a software artifact is ready to proceed to the Define data next production step collection needs Rules use collected measurements to evaluate if a situation is critical or not evaluate which kind of alert to fire 12

Finding good rules GQM Align rules to busines goals Create rules that are understood as useful by stakeholders Alignment involving stakeholders in setting the goals before actual implementation has been found to improve organizational performance 13

Examples for rules Bad smells in code Shotgun surgery (on a development level or also across the team) Workflow conformance Verify if software is developed test-first Verify if software is released within a maximum time frame 14

Part 3: Collecting data 15

Measurement Probes Inputs Activities Outputs 16

Inputs Main cost driver typically effort Time spent editing artifacts like code or documentation We built probes that track the time spent within IDEs like Eclipse, Microsoft Visual Studio, Sun NetBeans, etc., and personal productivity suites like OpenOffice and Microsoft Office. We allow users also to enter effort manually 17

Outputs Output consists of artifacts like code and documentation Properties can be observed to determine the quality: dynamically or CruiseControl statically dynamically: execute and report problems Source statically: verify source code quality using code metric size, complexity, and object oriented tools metrics and report problems 18

Activities Identifying activities is not straightforward, it depends on the specific problem Activity example Testing Test first Possible identification strategy Editing of files with filename like "test*.java" Editing of file with filename like "testx.java" AND subsequent editing of file "X.java" 19

Activities We adopt a rule based approach to decide if an activity took place or not Rules can be updated "a posteriori" and all events can be re-evaluated again The output of this component is the sequence of identified activities, the respective timestamps and users. 20

Jidoka Framework 21

Conclusions The idea to continuously monitor software artifacts and to alert the developer of possible mistakes or problems is not new Which are the novelties? 22

Conclusions Novelties We measure not only the artifacts produced but also the resources used as well as the activities performed We use rules to build quality into the process, i.e., to enforce these rules without the need of a person to constantly check them 23

Conclusions Novelties (continued) We see a dominance of the "pull" paradigm (stakeholder uses tool to analyze software development process) We want to promote a "push" paradigm (tool autonomously analyzes software development process according to predefined rules and notifies stykeholders) 24

Limitations Probes should not slow down machine Amount of data that is collected Not every analysis can be automated Finding purposeful rules is hard Involves different stakeholders with different priorities 25

Further research Which types of knowledge can be build into the process in the Jidoka way? Which are the best ways to interrupt software production? Validation Does Jidoka work in software production? Impact? 26

Thank you for your attention! andrea.janes@unibz.it