Jidoka in Software Development Emanuele Danovaro, Andrea Janes, Giancarlo Succi Center for Applied Software Engineering Free University of Bolzano/Bozen,

Slides:



Advertisements
Similar presentations
Configuration Management
Advertisements

Automated Evaluation of Runtime Object States Against Model-Level States for State-Based Test Execution Frank(Weifeng) Xu, Gannon University Dianxiang.
Automated Software Testing: Test Execution and Review Amritha Muralidharan (axm16u)
Validata Release Coordinator Accelerated application delivery through automated end-to-end release management.
The Transforming Power of the ITIL Framework for the Project Manager Patrick von Schlag Deep Creek Center November 10, 2010.
RIT Software Engineering
SIM5102 Software Evaluation
SE 450 Software Processes & Product Metrics 1 Defect Removal.
©© 2013 SAP AG. All rights reserved. Scenario/Processes Make-to-Stock Scenario Overview Planning Supply Initiating Production Executing Production Processing.
Business process management (BPM) Petra Popovičová.
Chapter : Software Process
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
QWise software engineering – refactored! Testing, testing A first-look at the new testing capabilities in Visual Studio 2010 Mathias Olausson.
Software testing techniques Software testing techniques Testing based on specifications Presentation on the seminar Kaunas University of Technology.
Unified Software Development Process (UP) Also known as software engineering process SEP describes how requirements are turned into software Defines who,
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Michael Ernst, page 1 Collaborative Learning for Security and Repair in Application Communities Performers: MIT and Determina Michael Ernst MIT Computer.
VALUE BASED SYSTEMS ENGINEERING THE VALUE ADDED PATH FORWARD Joseph Maley October 8, 2015.
Chapter 11 An Introduction to Visual Basic 2008 Why Windows and Why Visual Basic How You Develop a Visual Basic Application The Different Versions of Visual.
Software Measurement & Metrics
Rev. 0 CONFIDENTIAL Mod.19 02/00 Rev.2 Mobile Terminals S.p.A. Trieste Author: M.Fragiacomo, D.Protti, M.Torelli 31 Project Idea Feasibility.
Testing Workflow In the Unified Process and Agile/Scrum processes.
Software Metrics – part 2 Mehran Rezaei. Software Metrics Objectives – Provide State-of-art measurement of software products, processes and projects Why.
Rational Unified Process Fundamentals Module 5: Implementing RUP.
Freeleansite.com Kaizen (What is it ?) Lean Foundations Continuous Improvement Training Lean Foundations Continuous Improvement Training.
CSSE Software Engineering Process and Practice Lecture 5 Q UALITY A SSURANCE.
Chapter 8 Testing. Principles of Object-Oriented Testing Å Object-oriented systems are built out of two or more interrelated objects Å Determining the.
Infrastructure as code. “Enable the reconstruction of the business from nothing but a source code repository, an application data backup, and bare metal.
Developing a Project Management Standard for Your Organization Francine DiMicele, PMP June 08, 2015 NC Piedmont Triad Chapter.
Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts.
A way to develop software that emphasizes communication, collaboration, and integration between development and IT operations teams.
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
TEAM FOUNDATION VERSION CONTROL AN OVERVIEW AND WALKTHROUGH By: Michael Mallar.
Rational Unified Process Fundamentals Module 5: Implementing Rational Unified Process Rational Unified Process Fundamentals Module 5: Implementing Rational.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
Software Engineering Process - II 7.1 Unit 7: Quality Management Software Engineering Process - II.
Verification vs. Validation Verification: "Are we building the product right?" The software should conform to its specification.The software should conform.
CS223: Software Engineering Lecture 25: Software Testing.
UC Marco Vieira University of Coimbra
SOFTWARE TESTING TRAINING TOOLS SUPPORT FOR SOFTWARE TESTING Chapter 6 immaculateres 1.
Building Enterprise Applications Using Visual Studio®
Configuration Management
Business process management (BPM)
ICS 3UI - Introduction to Computer Science
Make-to-Stock Scenario Overview
Continuous Delivery- Complete Guide
Software Quality Engineering
Software Verification and Validation
Cisco Data Virtualization
Testing Process Roman Yagodka ISS Test Leader.
Software Quality Engineering
Unified Modeling Language
Configuration Management
Business process management (BPM)
Design Process Overview
Software Process Models
Make-to-Stock Scenario Overview
Software engineering – 1
Applied Software Implementation & Testing
Lecture Software Process Definition and Management Chapter 3: Descriptive Process Models Dr. Jürgen Münch Fall
Automation Of Software Test
Software life cycle models
Fundamental Test Process
Chapter 13 Quality Management
Software Verification and Validation
Software Verification and Validation
Metrics for Process and Projects
Software Verification and Validation
PSS verification and validation
3. Software Quality Management
Presentation transcript:

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,

2 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering Agenda Lean Thinking A Jidoka Framework Overview Components Conclusions

3 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 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.

Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 4 The starting point Time

Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 5 Lean Thinking Strategy 1: Removing Muda Time Set-up JIT delivery Stock

6 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering Lean Thinking Strategy 2: Use Jidoka to ensure quality to ensure quality Machines that can detect a problem with the produced output and interrupt production automatically ("Quality at the source")

Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 7 Examples for Lean Thinking in Software Engineering ?Agility Automatic Testing Refactoring

Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 8 Jidoka Framework Plan Do Check Act

Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 9 Part 1: Notifying stakeholders

10 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering Interrupting software production Alerts shown in the development environment shown in the tray area Deny check-in Level of seriousness

Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 11 Part 2: Identifying problems

12 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering Stopping software production We need rules to decide whether a software artifact is ready to proceed to the next production step Rules use collected measurements to evaluate if a situation is critical or not evaluate which kind of alert to fire Define data collection needs

13 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering Finding good rules 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 GQM

14 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 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

Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 15 Part 3: Collecting data

Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 16 Measurement Probes Inputs Activitie s Outputs

17 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 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

18 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering Outputs Output consists of artifacts like code and documentation Properties can be observed to determine the quality: dynamically or statically dynamically: execute and report problems statically: verify source code quality using size, complexity, and object oriented metrics and report problems CruiseControl Source code metric tools

19 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering Activities Identifying activities is not straightforward, it depends on the specific problem

20 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 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.

21 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 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 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 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 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering 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 Emanuele Danovaro, Andrea Janes, Giancarlo Succi: Jidoka in Software Engineering Conclusions Further research is needed to Which types of knowledge can be build into the process in the Jidoka way Which are the best ways to interrupt software production

Thank you for you attention!