(1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam...

12
1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University of Hawaii http://csdl.ics.hawaii.edu/

Transcript of (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam...

Page 1: (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University.

(1)

Project LEAP:A “Personal Information

Environment”for Software Engineers

Philip JohnsonCam Moore

Collaborative Software Development Laboratory

University of Hawaiihttp://csdl.ics.hawaii.edu/

Page 2: (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University.

(2)

Personal Information Quiz Recreational Sports:•Do you know your handicap?•What is the weakest part of your game?

Personal Finance:•Do you know your yearly income?•What is your weakest financial asset?

Software development:•Do you know your average development rate?

•What defects do you make most frequently?

Page 3: (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University.

(3)

Leap Toolkit Objectives Help the average developer in an average company obtain low-cost answers to software development questions like:•What is my development rate?•How much effort will this project need?•How big do I expect this work product to be? •How much time do I actually spend “working”? •What kinds of errors do I make repeatedly?

The tricky parts:•“average” developer•“average” company•“low-cost” answers

Page 4: (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University.

(4)

Lessons from “Quicken™” Quicken provides average people with low-cost answers to simple financial questions:• How much money do I have?• How fast do I spend it?• Where does my money go?

Access to this information leads naturally to goal-setting and monitoring:• How much money do I want to have in 10 years?• How fast do I want to spend my current income?• What do I want (and not want) to spend it on?• Am I achieving these goals?

Page 5: (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University.

(5)

Quicken supports the classic improvement cycle

Observe the activity•Collect data

Evaluate the activity•Analyze the data

Modify the activity

Observe

Evaluate

Modify

Page 6: (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University.

(6)

If Intuit designed a SE tool...

Quicken “SE” would:• Be useful with partial data• Allow minimal and flexible “process”• Apply to different work products• Automate data collection and analysis• Be portable across jobs• Keep your data private

Quicken “SE” would not require:•Quicken “SE” Maturity Model•Corporate Quicken “SE” Improvement Group

•Personal Quicken “SE” Process •ISO Quicken “SE” 9000 certification

Page 7: (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University.

(7)

Leap Examples: Observation

Collecting time data Collecting defect data using checklists Computing the size of a Java program

Observe

Evaluate

Modify

Page 8: (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University.

(8)

Leap Examples: Evaluation What errors do I make most frequently? What are my direct hours? What is my development rate?

Observe

Evaluate

Modify

Page 9: (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University.

(9)

Leap Examples: Modification

Plan a new project Modify a checklist

Observe

Evaluate

Modify

Page 10: (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University.

(10)

Future Directions Experimentation:•Evaluation of alternative estimation methods

•Adoption case studies

Enhancements:•Voice-based input•Enhanced review support•Web-based, “obfuscated” data repository

Documentation (6 of 15 chapters to go) Open source development model

Page 11: (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University.

(11)

True Confessions Tech Reports:•Average words/hr: 304•Most common defect: Passive voice

•Average planned time error: 35% Lisp code:•Average LOC/hour: 10•Average fns/hour: 0.8•Most costly defect: AND/OR/NOT

Java code:•Average LOC/hour: 13•Average methods/hour: 1.1•Most costly defect: Loop initialization

Page 12: (1) Project LEAP: A “Personal Information Environment” for Software Engineers Philip Johnson Cam Moore Collaborative Software Development Laboratory University.

(12)