+ All Categories
Home > Technology > Pragmatisk softwareinnovation, Ivan Aaen, AAU

Pragmatisk softwareinnovation, Ivan Aaen, AAU

Date post: 30-May-2015
Category:
Upload: infinit-innovationsnetvaerket-for-it
View: 196 times
Download: 1 times
Share this document with a friend
Description:
Oplæg fra 23. oktober 2014: Effektive forretningsprocesser sikres gennem agil it-udvikling?
Popular Tags:
9
IVAN AAEN, DEPARTMENT OF COMPUTER SCIENCE OCTOBER 23 2014 PRAGMATIC SOFTWARE INNOVATION VALUE CREATION IN SOFTWARE TEAMS Pragmatic Software Innovation High-cost development must produce high-value results Software teams need to opportunistically pursue innovation in everyday projects to create value Software innovation is typically a learning process across knowledge areas Software innovation is often accidental – but rarely random Pragmatic software innovation is about inquiring into problem domain needs and ways to meet these needs in a valuable way
Transcript
Page 1: Pragmatisk softwareinnovation, Ivan Aaen, AAU

I VA N A A E N , D E PA R T M E N T O F C O M P U T E R S C I E N C E O C T O B E R 2 3 2 0 1 4

PRAGMATIC SOFTWARE INNOVATION

VA L U E C R E AT I O N I N S O F T WA R E T E A M S

Pragmatic Software Innovation

• High-cost development must produce high-value results

• Software teams need to opportunistically pursue innovation in everyday projects to create value

• Software innovation is typically a learning process across knowledge areas

• Software innovation is often accidental – but rarely random

• Pragmatic software innovation is about inquiring into problem domain needs and ways to meet these needs in a valuable way

Page 2: Pragmatisk softwareinnovation, Ivan Aaen, AAU

Inquiry in traditional Software

Engineering

2 CMU/SEI-2000-SR-008

applications discussed in [Bernstein 00] and [DeMillo 00] use a complementary best practiceas their anchor point milestones: the AT&T/Lucent/Telcordia Architecture Review Board pro-cess [AT&T 93]. Xerox’s Time-to-Market process uses the anchor point milestones as hard-ware-software synchronization points for its printer business line [Hantos 00].

Several successful large aerospace spiral projects were also discussed. The best documentedof these is the CCPDS-R project discussed in [Royce 98]. Its Ada Process Model was thepredecessor of the Rational Unified Process and USC MBASE approach, which have bothbeen used on a number of successful spiral projects [Jacobson 99, Boehm 98], as has the SPCEvolutionary Spiral Process [SPC 94]. Further successful large aerospace spiral projectswere presented by SAIC and TRW [Kitaoka 00, Bostelaar 00].

RQTS PLANLIFE CYCLE PLAN

CONCEPT OFOPERATION

EMULATIONS MODELS BENCHMARKS

REVIEW

COMMITMENTPARTITION

RISK ANALYSIS

RISKANAL.

RISK ANALYSIS

RISK ANALYSIS

PROTO-TYPE1

PROTOTYPE3

OPERATIONALPROTOTYPE

EVALUATEALTERNATIVESIDENTIFY,RESOLVE RISKS

PROGRESSTHROUGHSTEPS

CUMMULATIVECOST

DETERMINEOBJECTIVES,ALTERNATIVES,CONSTRAINTS

DEVELOP-MENT PLAN

INTEGRATIONAND TEST

PLANDESIGN VALIDATIONAND VERIFICATION

REQUIREMENTSVALIDATION

SOFTWAREPRODUCTDESIGN

DEVELOP, VERIFYNEXT LEVEL PRODUCT

SOFTWARERQTS

IMPLEMEN-TATION

ACCEPT-ANCE TEST

INTEGRA-TION AND

TEST

UNITTEST

CODE

DETAILEDDESIGN

PROTOTYPE2

PLAN NEXTPHASES

Figure 1: Original Diagram of Spiral Development

Boehm, B. W. (1988). A spiral model of software development and enhancement. Computer, 21(5), 61-72.

Inquiry in Iterative Development

30 days

24 hours

Product BacklogAs prioritized by Product Owner

Sprint Backlog

Backlog tasksexpandedby team

Potentially ShippableProduct Increment

Daily ScrumMeeting

Page 3: Pragmatisk softwareinnovation, Ivan Aaen, AAU

Software Technologies and Innovation

Level of Detail

Project Time

Low

High

Requirements Elicitation

System Testing

Unit TestingObject Design

Integration Testing

AcceptanceTesting

Analysis

Design

• Object-orientation• Abstractions• Software libraries• Patterns• Refactoring• Automated testing• Integrated Development

Environments (IDEs)• Iterative development• Competent staff• Self-organizing teams• Software-intensive systems• Increasingly emergent

systems• ...

Modern development allows for changes even late in a projectWe no longer should stop innovating once we start building

Requirements Approaches vs Design Activities

Requirement approaches have limitations compared to design activities

Design activities are:

• Flexible rather than rigid

• Reflective rather than prescriptive

• Problem-setting rather than problem-solving

Satisfying all requirements does not ensure a best design

L i m , Y. - K . , S t o l t e r m a n , E . , A n d Te n e n b e r g , J . 2 0 0 8 . T h e A n a t o m y O f P r o t o t y p e s : P r o t o t y p e s A s F i l t e r s , P r o t o t y p e s A s M a n i f e s t a t i o n s O f D e s i g n I d e a s . A c m T r a n s . C o m p u t . - H u m . I n t e r a c t . 1 5 , 2 , 1 – 2 7 .

Page 4: Pragmatisk softwareinnovation, Ivan Aaen, AAU

Pragmatism

"The Covered Wagon of the Great Western Migration. 1886 in Loup Valley, Nebraska"

Learning by doing

• Practical problems demand creative problem solutions

• The pragmatic problem solving process of trial & error

John Dewey (1859-1952): Logic: The Theory of Inquiry (1938)

Expanding cycle of means

Converging cycle of ends-in-views

New means

New ends

Deweyan Pragmatism

Ideas for problem solution

Inquiry Exploration

Experimentation

Means/Ends-in-view

Evaluation & Reflection

Problematic open

indeterminate situation

Stable and determinate

situation

Page 5: Pragmatisk softwareinnovation, Ivan Aaen, AAU

• A system to support physiotherapy for newly operated patients

• Rehabilitation at home under physiotherapist supervision

• Using

• A Microsoft Kinect in combination with a video link, a PC or tablet in the patient’s home

• A cam-equipped PC in the therapist’s office

The Telerehab Case

Ends Change as Means Emerge

Product

Process

Project

Paradigm

1st Use Context Instruction

2nd Learning

3rd Coaching

4th Quality time

1st Prototype Highlight movements

2nd Prototype Classify movements

3rd Prototype Data Integration

4th Aggregate data

1st Vision X-ray

2nd Biofeedback

3rd Trend Analyst

4th Timestretch

1st Evaluation Connection problem

2nd Evaluation Unused data

3rd Evaluation No productivity gain

4th Stress risk

Page 6: Pragmatisk softwareinnovation, Ivan Aaen, AAU

Means and ends are InseparableProduct

Process

Project

Paradigm

Articulated use context

Articulated needs

Alternative use context

Discovered needs

Designed solution

Untapped potential

Design alternative

s

Emerging options

Visiont(relative to the use context known at a given time t)

Evaluationst• Design• Use context• Needs• Experiments(relative to the vision at time t)

Solutions create needs we didn’t know aboutAny solution is a new beginning

Innovation and Iterations

30 days

24 hours

Product BacklogAs prioritized by Product Owner

Sprint Backlog

Backlog tasksexpandedby team

Potentially ShippableProduct Increment

Daily ScrumMeeting

Review, Reflection and Planning

Every iteration is a learning cycleEvery learning cycle offers new opportunities

Possibly major revisions to the Product Backlog

Page 7: Pragmatisk softwareinnovation, Ivan Aaen, AAU

ParadigmWhere customer/user and developer expertise meets

Do we get it right?

New value: Reflection over requirements

Alice Through the Looking Glass - Guildford Castle GardensJeanne Argent

ProductDiscovering new technological options

Can we do more?

New value: Affordance over solution

Marc Capuano electric violin

Page 8: Pragmatisk softwareinnovation, Ivan Aaen, AAU

ProjectImprovisation over a shared theme

Are we on the right track?

New value: Vision over assignments

ProcessWe must be able to improvise and seize opportunities

How do we select and mature ideas on the fly?

New value: Facilitation over structuration

Justitia statue found on burg square of Bruges, BelgiumPhoto: Ivo Berg

Page 9: Pragmatisk softwareinnovation, Ivan Aaen, AAU

Expanding cycle of means

Converging cycle of ends-in-views

New features

New goals

Pragmatic Software

InnovationTechnical platform

Configuration • Use context (Paradigm) • Design + affordance (Product) • Vision (Project) • Criteria (Process)

Needs and constraints

Initial problem and

capabilities

Release Product or

Service

Thank You

Polasek: Man Carving His Own Destiny


Recommended