software innovation course

193
Software Innovation course introduction

Upload: jeremy-rose

Post on 12-May-2015

1.638 views

Category:

Technology


1 download

DESCRIPTION

Download the course text (Software Innovation) at http://www.lulu.com/product/file-download/software-innovation/10889308?productTrackingContext=search_results/search_shelf/center/2

TRANSCRIPT

Page 1: Software Innovation course

Software Innovationcourse introduction

Page 2: Software Innovation course

course content

Intensive ESSENCE Course

Page 3: Software Innovation course

course design

preparation

practice

theory

reflection

IEC mini-project

Page 4: Software Innovation course

• pedagogical style: action learning

• some formal lectures

• some interactive lectures

• some action based activity

• exercises – no formal exercise times, integratedinto 2-day camp and mini-project

• oral exam, graded, based on mini-project

Page 5: Software Innovation course

work-style heuristics

Keep your head upGrow your knowledge community

Target your product’s innovation profileShape your own process

Develop your personal creativityBe a super-team-worker

Bring your toolboxKnow when you are (not) innovative

Page 6: Software Innovation course

the science of innovation

Page 7: Software Innovation course

motivation – why study SWI• macro reasons

• standardisation of software

• industrialisation

• globalisation

• user-developed software

• meso reasons

• creative team

• innovative firm

• micro reasons

• career

Page 8: Software Innovation course

innovation: scientific disciplines

50-60 articles

institute’s research

economics cognitivescience sociology management

science

innovation

others

computerscience

informationsystems

softwareengineering

softwareinnovation

Page 9: Software Innovation course

basic terms• invention - a new algorithm or program

(or software development technique)

• creativity – a state of mind which leads to innovative thinking

• innovation - creative act and invention carried into wider use, leading to substantial kinds of change; thus the successful exploitation of new ideas

Page 10: Software Innovation course

(software) innovation overview

• (software) innovation = invention + exploitation + diffusion

• invention: the creative act or process and its result (e.g. a software program)

• exploitation: commercial development and adaptation to practical situations

• diffusion: adoption by a wider audience

time lag a continuous process

Page 11: Software Innovation course

(software) innovation: consequences

• installed base = starting point

• result of software innovation is experienced as change in

• the way people work

• the way business is carried out

• people’s choice of entertainment

• communication habits and interaction

• governance of communities

• types of (software) innovation

• radical (disruptive, discontinuous)

• incremental

• resistance

Page 12: Software Innovation course

(high-tech) innovation: the motor of the economy (Schumpeter)

• new products

• new methods of production

• new sources of supply

• the exploitation of new markets

• new ways to organise business

• meets resistance (inertia) from established players

• driven by the entrepreneurial function

Page 13: Software Innovation course

(software) innovation: forms

• the inventor and the imitator (Schumpeter)

• technology transfer

• local and global innovation

Page 14: Software Innovation course

(software) innovation: is not a ‘linear model’

• nut a more complex ‘system’ involving users, national and regional actors, inventors, researchers, universities and firms

basic research

applied research

industry application

Page 15: Software Innovation course

(software) innovation: prerequisite

• openness or ‘absorptive capacity’ for outside knowledge

• ability to circumvent established thinking routines and avoid ‘not invented here’ syndrome

Page 16: Software Innovation course

(high tech) innovation: (Pavitt)

• ‘science-based’ (research and development and close contact to organized science)

• ‘special suppliers’ engineering skills and close contact to users

Page 17: Software Innovation course

(software) innovation: product and process

• (software) product innovation – (the creation of novel and useful software programs)

• (software) process innovation – (the introduction of novel and useful ways of developing software)

Page 18: Software Innovation course

innovative processes and products

• complex relationship between software process innovation and innovative software products

• no particular evidence that innovative software processes necessarily result in innovative software products

• some forms of innovative software products may be best developed using traditional methods.

innovative software productinnovative software process

Page 19: Software Innovation course

the innovative software product

iPad review

Page 20: Software Innovation course

innovative software products: characteristics

• novelty - not previously developed• global/local• time dependence• innovation accumulation

• utility - they have some form of application which users value• functional, aesthetic, symbolic• market conditions• utility forms

Page 21: Software Innovation course

social change

in a user community

innovative software products: consequences

impact delay

invention exploitation diffusion

Page 22: Software Innovation course

hierarchies of technical systems (Altshuller)

system subsystem

transportation cars, roads, maps, drivers, service stations

cars power train, brakes, heating, steering, electrical

brakes brake pedal, hydraulic cylinders, fluid, brake pad assembly

brake pad assembly pad, mounting plate, rivets

pad particles a, b, chemical bond

chemical bond molecules a, b

broad

focused

Page 23: Software Innovation course

novelty: levels of innovation (Altshuller)

level 1 - routine design problems solved by methods well known within the specialty - usually no invention needed.

level 2 - minor improvements to an existing system using methods known within the industry.

level 3 - fundamental improvement to an existing system using methods known outside the industry.

level 4 - a new generation of a system that entails a new principle for performing the system's primary functions - solutions are found more often in science than technology.

level 5 - a rare scientific discovery or pioneering invention of an essentially new system

low

high

Page 24: Software Innovation course

incremental and radical innovation

low highlevel of innovation

technical system hierarchy

incrementalinnovation

radicalinnovation

broad

focused

Page 25: Software Innovation course

blue ocean strategies (Kim and Mauborgne, adapted Yarmosh)

• red ocean: where the customers are

• price war: race to the bottom

• blue ocean: where the noncustomers are

• move to uncontested markets

• software value (= utility) innovation through value proposition: focus on customer experience

Page 26: Software Innovation course

blue ocean strategies

• strategy canvas

• competing factors (software features)

• offering level (amount of investment in feature)

Page 27: Software Innovation course

blue ocean strategies

• four actions framework

new value curve

Reduce: which features should be reduced well below

competitors’ standards?

Raise: which features should be raised well abovethe competitors’

standard?

Eliminate: which of the features that competitors take

for granted should be eliminated?

Create: which features should be

created that competitors have

never offered?

Page 28: Software Innovation course

video

Page 29: Software Innovation course

blue ocean strategies

sonic lighter value curve

reduce: cost

raise: flame and flicker

resolution and variety

eliminate:

create: social sharing, gpspositioning,

breath control, sound, ignition

Page 30: Software Innovation course

utility forms

• specify the type of utility that the innovative software product delivers to its users

• computing infrastructural

• technology enabling

• user service

• business change enabling

• interaction communication

• entertainment

Page 31: Software Innovation course

utility form 1: computing infrastructural

• software innovations can provide underlying improvements for the delivery of other computing services

• programming languages, compilers, translators

• operating systems

• network protocols

• internet browser

• grid computing

Page 32: Software Innovation course

example: TCP/IP (1973-8)

• (data arrives in-order, data has minimal error, duplicate data is discarded, lost/discarded packets are resent, traffic congestion control)

• underpins TCP/IP internet protocol suite

• ARPANET, Cerf, Postel, Crocker, Lelann, Metcalfe

• adopted by American computer manufacturers (80’s)

• value proposition: file transfer by wire

• infrastructure: OS common file systems + porting

• social change: basic building block for internet - network society

Page 33: Software Innovation course

utility form 2:technology enabling

• embedded software can enable innovation in other technology products, such as cars and washing machines

• the software is not necessarily the innovation, but the technology product is innovative

• convergence of software with other technologies

Page 34: Software Innovation course

example: København metro• embedded software enables

driverless train

• the automated train is the innovation: software may also be innovative

• value proposition: automation of driver function

• convergence of rail and computing technologies

• many infrastructural systems need to be in place – also social (acceptance of automation)

Page 35: Software Innovation course

utility form 3: user service

• software innovations can provide new, improved, more efficient or cheaper services for communities of users

• typically takes and existing service and provides some combination of:

• extended functionality

• improved usability

• cost saving

• quality improvement

Page 36: Software Innovation course

example: skype

• development of telephony service

• combines VOIP and peer-to-peer technologies to provide:

• technology trajectory context: digitalization of previously analogue technology

• extended convergent functionality (phone, chat, address book, video conferencing, file exchange)

• value proposition: free telephony

Page 37: Software Innovation course

utility form 4: business change enabling

• innovative software can be an enabler or driver for business change

• new ways of:

• doing business

• internal administration

• reaching, holding, communicating with customers

• developing and manufacturing products

Page 38: Software Innovation course

example: SAP (ERP system)• technology trajectory: automation of manual business processes

• value proposition: integrated support for all conventional business administration, rationalization and efficiency - replaces many function-oriented stand-alone systems

• convergence of database and client server technologies

• common data model and database

• customisable interfaces

• variable implementations

• best practice business models

• integrated management information and data mining

• later: web + eBusiness interface

• later: supply chain connectivity and management

Page 39: Software Innovation course

utility form 5: interaction/communication

• innovative software can change the way people interact and communicate, examples:

• Web 2,0, social networking software, Second Life

• greater reach and range

• time independence

• supported interactions

• varying communication media

• social network building

• identity control

Page 40: Software Innovation course

example: Facebook.

• value proposition: social networking software - partial transfer (or digitalization) of social relations to the net

• convergence of web 2.0 technologies: video streaming, personalization, IM, mail, large scale server farms, user generated content etc.

• timing: Facebook is the long from the first social networking application

Page 41: Software Innovation course

utility form 6: entertainment

• software underpins novel entertainment forms

• leisure activity

• gaming

• media clip distribution

• user-generated content

• sport

• culture e.g. music

Page 42: Software Innovation course

example: WoW

• value proposition: social gaming

• trajectory: digitalization of play

• convergence of gaming, 3D, virtual world, social media

Page 43: Software Innovation course

software product innovation profile

• the software has a particular user community, and the characteristics of that community are understood

• the software is novel – it does something that other software cannot for its user community, adding or combing features in a new way

• the software has a particular utility (or value proposition) for the community, the form of which can be understood

• when the software is in use in the user community their behaviour will be different in certain ways (social change) and it is understood how

• the user community can be understood as a market in an economic sense, and the software has an economic value, price and cost which is understood

• the software is technically innovative, perhaps displaying digitalization or convergence, in the context of a particular technology trajectory

• the necessary infrastructure for the user community to use the product is in place, or will be when the product is released, and is understood.

Page 44: Software Innovation course

work-style heuristic

target your product’s innovation profile

Page 45: Software Innovation course

software innovation timing

trajectorydigitalizationconvergenceinfrastructure

innovation windows

Page 46: Software Innovation course

technology development and economic progress

• technology innovation is a good indicator for economic growth• society• industry

• developed (= rich) societies/companies are• more dependent on innovation• better innovators• early users of innovations

• non-innovative work often performed more cheaply in less developed countries (e.g. outsourcing)

• incremental innovation produces change• radical innovation produces transformation

Page 47: Software Innovation course

technology trajectory

???????

phonograph

gramophone

cd player

mp3 player

vinyl

valve

transistor

optics

music file compression

???????

digitalization

Page 48: Software Innovation course

software technology trajectory

run-timelibraries

monitorprograms

embedded OS

GM-NAA I/OIBM

OS/360IBM

50’s 60’s 70’s 80’s 90’s

SCOPE

BASICPLATO

(proprietary OS)

MCP TOPS-10

UNIX

PICKCP/M

DOS

(portability) (GUI)

apple

windows

LINUX

Page 49: Software Innovation course

technology convergence

DOSapple

windows

pocket windows

typewriter

qwerty keyboard

text recognition

calculator

number pad

telegraph

telephone

mobile

box camera

still camera

video camera

digital camera

phonograph

valve

transistorsilicon chip

gramophone

cd player

mp3 player

Page 50: Software Innovation course

internetcoverage

internet bandwith

skype

infrastructure and innovation timing

• installed base - technical infrastructure• (Skype) improved internet

access• improved bandwidth• many nodes • enables convergence of

VOIP + peer-to-peer• installed base – social

infrastructure• (Skype) improved computer

literacy• widespread internet use• communication intensification

Page 51: Software Innovation course

market (user) demand and innovation timing

• recognise or create demand

• (Skype) increased consumer demand for telephony and related services

• im and sms breakthroughs

• increasing tariffs for broadcasting frequency licenses

• price war amongst mobile companies

Page 52: Software Innovation course

the innovation window

• software technology trajectories

• convergence

• (user) demand (= market) development

• infrastructure development innovation

window

t

user demand

infrastructure development

technologytrajectories

convergence

Page 53: Software Innovation course

head-up software innovation

• software innovators know and understand

• trends, trajectories

• digitalisation, convergence

• social and technical infrastructure development

• user demand (market)

• timing and innovation windows

Page 54: Software Innovation course

work-style heuristic

keep your head up

Page 55: Software Innovation course

the innovative software process6 innovation process strategies (+ 1)

how do you develop an innovative software product?

Page 56: Software Innovation course

goal method type explanationcomplexity management traditional organisation of large development efforts

with many developers, requirements, lines of code, complex architectures

uncertainty management agile, prototyping management of development where requirements, costs, technology, people, time scales are unknown or cannot be reliably predicted

project management traditional, agile planning; disposition and monitoring of tasks, people, time and resources

rational analysis and modelling traditional, contextual design

understanding a work situation or user environment through models

communication through documentation

traditional providing explanations for colleague developers, future developers and users

design through modelling traditional structuring design and programming work

automation of manual work processes

traditional, agile providing computerised support for manual work processes in the work situation

working code agile focusing on programming workspeed rapid development, agile producing a working system in a reasonable

time periodclose relationships with customers and users

agile, participatory development

improving interactions between people

innovation: not normally a goal

Page 57: Software Innovation course

linear innovationin industry

• Roberts, E.B., Managing invention and innovation.Research Technology Management, 1988. 31(1): p. 11-27.

Page 58: Software Innovation course

the light bulb model• a sequence of stages or phases each of which is

dependent upon the successful completion of the first (waterfall)

• conventional product innovation from technology-based industries

• focus is on the software product• conceptualized early in the process• developed to be a marketable software system

idea

productspecification

prototyping

commercial build

release

review

Page 59: Software Innovation course

iterative innovation in industry-Boeing’s innovation model

• Lind, J., Boeing's Global Enterprise Technology Process. IEEE Engineering Management Review, 2007. 35(1): p. 38-52.

Page 60: Software Innovation course

iterative models - also for software development

Page 61: Software Innovation course

iterative or agile software innovation process model

• process–oriented (reflecting agile system development methods)

• does not necessarily start with an ’idea’ - a fully-formed software concept at the beginning of development

• innovation takes place through highly focused and creative bursts of development activity – e.g. storming

• focus on intense communication, room for experimentation

• innovation takes pace through the life of the project, and is not confined to an idea generation phase

• the creativity and energy of the process offers the conditions for innovative programming and development.

Page 62: Software Innovation course

agility and innovation

• some aspects of agile methods resemble innovation techniques elsewhere in industry (the iterative model)

• the introduction of agile methods to a software firm can be a process innovation

• some theoretical reasons to believe that they should be helpful for innovation (e.g. flexibility, freedom from bureaucracy, interaction with customers…………………..)

but• agile methods developed in response to

perceived need for more effective, programmer-friendly development methods - not innovation

• no studies or evidence to support the idea• agility probably necessary but not sufficient

Page 63: Software Innovation course

market-led and technology-led software innovation

market

• user communities have sets of needs which develop over time

• those needs can be analyzed and, to some extent predicted

• innovative software development process is targeted at utility -responding to perceptions of future user needs (=the market)

technology

• software technologies develop in particular directions at various speeds

• some software firms are at the leading edges of those developments

• leading edge software technologies enable new products which will create their own demand in the market

• innovative software development process is targeted at novelty -products which have not previously been possible

Page 64: Software Innovation course

process, instantiation, improvisation, bricolage

• improvisation• deliberate, not a series of accidents• (locally) extemporaneous – without prior plan or method• occurs during action• implies the pre-existence of a set of resources (plans, tools,

knowledge, social structure) as the basis for variation• bricolage

• ’to use whatever resources and repertoire one has to perform whatever task one faces’

• Improvisation and bricolage are not ‘muddling through’

the generic process

instantiation

improvisation, bricolage

Page 65: Software Innovation course

software process innovation

software development process (routines, norms, standards, behaviours, resources, tools,

techniques, procedures, written and unwritten rules)

novel software development process

innovation

local global

Page 66: Software Innovation course

the global picture• traditional norms = waterfall, prototyping models + variants

• many hundreds of development models representing incremental innovations on these norms

• some development styles in reaction to the norm (agile, open-source, context-oriented, business-focused)

• = a complex picture of both incremental and radical innovation in software methods, techniques tools and processes

• distinguish from Software Process Improvement

Page 67: Software Innovation course

the local picture

• many software firms with method departments, process improvement initiatives

• the innovative software developer takes control of process

• its then natural to want to improve the way you work

• the developer drives the process, the process does not drive the developer

Page 68: Software Innovation course

six innovation process strategies

• creative requirements analysis• designed process framework• low tech prototyping• user-driven innovation• community development• research prototype

Page 69: Software Innovation course

innovation process strategy 1:creative requirements analysis

• integrate light bulb thinking into a conventional development cycle

• replace requirements engineering techniques with more imaginative interaction and creativity techniques

• work with users who are primarily responsible for new ideas

• (for example) RESCUE, soft systems methodology

• rationale: help users to innovate

RESCUE • conventional requirements analysis

techniques (activity modeling, system goal modeling, use cases, requirements management)

• creativity techniques (creativity modes – exploratory, combinatorial, transformational)

• analogical reasoning• facilitated workshops

Page 70: Software Innovation course

innovation process strategy 2:designed process framework

• in the agile tradition - process framework rather than development method

• tools, techniques, practices, roles

• integrated creativity techniques• instantiated at use• developers take responsibility

for idea generation

• rationale: help developers to innovate

ESSENCE• views: product, people, project, process• roles: challenger, responder, anchor

child• modes: idea generation, planning,

growth• in our case: used with creativity

techniques

Page 71: Software Innovation course

innovation process strategy 3:low tech prototyping

low tech

high tech

• paper prototypes: wireframe, storyboard, card, wizard-of oz,

• low-fi mockups: foam and cardboard models, drawing tool, video, powerpoint, html

• mashup, patchwork, open source components

• code prototypes

• rationale: low cost experimentation, rapid learning

Page 72: Software Innovation course
Page 73: Software Innovation course
Page 74: Software Innovation course

innovation process strategy 4:user-driven innovation

• users need to innovate• need is emerging and is therefore not

(yet) recognized by software firms• user need is specific• market niche is not yet attractive for

software firms• difficult and costly to transfer

information from users to manufacturers (sticky information)

• lead users (identified users who are at the leading edge of their profession and have software or computer (super-user) competences

• user communities• toolkits

• rationale: access to use domain expertise

Page 75: Software Innovation course

The brain• Computer “brain” within Lego brick

Movement• 3 stepper motors

Sensors• Light• Touch• Temperature

Teaching• Kid-friendly, graphical

programming environment• Programs downloaded from

PC via infrared

Price ~ $200

Mindstorms robot kit

The Case of Lego Mindstorms

Page 76: Software Innovation course

Lego mindstorms user communities grew rapidly- without company involvement

Robots become widely available

August 1998

800

700

600

500

400

300

200

900

Nov1997

Jun1998

Feb1999

Oct1999

Jun2000

Jan2001

Aug2001

Apr2002

100

Lego robots announced

January 1998

Members

Page 77: Software Innovation course

Within 3 weeks of commercial introduction users had improved it significantly

The rules

Robots follow 7 meter “track” of tape• Light sensors detect tape • Internal software tells robot how to

move

Fastest time around track wins

About one dozen participants

The results

Winner (below left)• Used hacker-developed LegOS software• Time under 10 seconds (73 cm/s)

Second place (below right)• Used program based on LEGO firmware• Time of 25 seconds (28 cm/s)

Ability to rapidly sample sensors was the key

Source: Italian Lego Users Group(http://www.itlug.org/) Contact Mario Ferrari [[email protected]]

Page 78: Software Innovation course

innovation process strategy 5:community development – the open

source model

example: Apache

founder: Robert McCool

• private collective model

• rapid iterative development

• developer=user expertise

• virtual collaboration• peering, sharing, openness, acting globally

• rationale: many expert hands

Page 79: Software Innovation course

innovation process strategy 6:research prototype

• external funding• groupings of organizations• cross-functional expertise

integration• researchers understand

scientific boundaries• developers understand

commercial applications

• rationale: collaboration with researchers at knowledge boundaries

• speciale project on a larger scale

example: KIWI (Knowledge in a Wiki)• funded by European Union• universities, Logica, Sun

Microsystems, Semantic Web Company

• convergence of wiki + tagging + database + social sharing technologies

Page 80: Software Innovation course

six innovation process strategies

• creative requirements analysis• designed process framework• low tech prototyping• user-driven innovation• community development• research prototype

Page 81: Software Innovation course

not a process strategy:the designed work environment

• physical surroundings• tool support• integrated media• working and management

conditions

Software Innovation Research Laboratory

Page 82: Software Innovation course

software atelier concept

Page 83: Software Innovation course

work-style heuristic

shape your own process

Page 84: Software Innovation course

eight perspectives on personal creativity in software development

Page 85: Software Innovation course

1. creativity as the developer’s mental process (Wallas 1926)

preparation (preparatory work on a problem that focuses the individual's mind on the problem and explores the problem's dimensions),

incubation (where the problem is internalized into the unconscious mind and nothing appears externally to be happening),

intimation (the creative person gets a 'feeling' that a solution is on its way),

illumination or insight (where the creative idea bursts forth from its preconscious processing into conscious awareness); and

verification (where the idea is consciously verified, elaborated, and then applied).

discovery point

Page 86: Software Innovation course

2. creativity as a set of personal development competences

• concerned with both solving problems and recognising opportunities

• the creative software professional can:

• cope with poorly-defined problems

• exhibits:

• novel and unconventional thinking

• self-motivation

• persistence

• heuristic, rather than algorithmic thinking

Page 87: Software Innovation course

2. creativity as a set of personal development competences (continued)

• creative problem solving:

• is experience- and expertise-based:

• developer knows the programming environment and application area extremely well, and has worked on comparable types of problems before

• requires

• good overview - the ability to keep many aspects of a problem in play simultaneously

• well-developed mental modelling capacities - the ability to understand the relationship between many complex facets of a development task, and to express them in appropriate modelling forms

• can be learned

Page 88: Software Innovation course

3. creativity as a style of thinking(Miller: Innovation Styles Profile)

• visioning: to envision the ideal future (e.g. a user-group with an improved work-process supported by innovative software)

• modifying: to refine and optimize what has come before (e.g. take an agile development process and focus it on innovation)

• exploring: to discover new and novel possibilities (e.g applying table top computing to the development process)

• experimenting: to combine and test many unique combinations: (e.g. use a paper prototype to explore interaction paths for a large database interface)

Page 89: Software Innovation course

4. creativity as meta (divergent)-thinking: recognising unconscious pre-dispositions

• mindset: • ‘a set of assumptions, methods or

notations held by one or more people or groups of people which is so established that it creates a powerful incentive within these people or groups to continue to adopt or accept prior behaviours, choices, or tools’ (Wikipedia)

• recognising and challenging your own mindset

• thinking ‘out-of the-box,’ lateral thinking, divergent thinking• beyond conventional linear logical

thinking and generally held assumptions

• challenging the mindset of others, provoking uncharacteristic reactions

Page 90: Software Innovation course

5. creativity as whole-brain thinking: beyond rationality

• the conscious, the pre-conscious, the unconscious

• right and left brain thinking

In the conceptual age, we will need to foster and encourage right-directed thinking (representing creativity and emotion) over left-directed thinking(representing logical, analytical thought) -Pink (2005)

LEFT BRAIN FUNCTIONSuses logic detail oriented facts rule words and language present and past math and science can comprehend knowing acknowledges order/pattern perception knows object name reality based forms strategies practical safe 

RIGHT BRAIN FUNCTIONSuses feeling "big picture" oriented imagination rules symbols and images present and future philosophy & religion can "get it" (i.e. meaning) believes appreciates spatial perception knows object function fantasy based presents possibilities impetuous risk taking

Page 91: Software Innovation course

6. creativity as a relationship between the developer and the outside world

• the systems model (Csiksentmihalyi)

• domain: a set of symbolic rules and procedures

• field: the people who act as gatekeepers to that domain

Page 92: Software Innovation course

7. creativity as a state of mind:

• flow (Csiksentmihalyi)

• clear goals at every stage

• immediate feedback

• challenge/skill balance

• action and awareness merged

• distractions excluded from consciousness

• no worry of failure

• self-consciousness absent

• time distortion

• activity becomes autotelic (an end in itself)

Page 93: Software Innovation course

8. creativity as a universal mental skill -to be enhanced (Csiksentmihalyi)

• acquisition of creative energy

• curiosity

• cultivating flow

• habits of strength

• internal traits

• problem finding

• divergent thinking

• choosing a special domain

Page 94: Software Innovation course

eight perspectives on personal creativity in software development:

creativity as:the developer’s mental process: recognising and exploiting

discovery points

a set of personal development competences concerned with both solving problems and recognising opportunities

a style of thinking associated with different strengths in individual’s development personalities

meta-thinking: recognising predispositions and tendencies in one’s own (and others’ ) thinking and coming beyond them

Page 95: Software Innovation course

eight perspectives on personal creativity in software development: (continued)

creativity as:whole-brain thinking: beyond rationality

a relationship between the individual developer and communities of people and ideas (domain, field)

a state of mind: the way the developer’s mind is disposed when being creative (flow)

a universal mental skill to be enhanced

Page 96: Software Innovation course

work-style heuristic

develop your personal creativity

Page 97: Software Innovation course

the innovative software team

Page 98: Software Innovation course

team functiondys-functional team

innovative team

functional team

Page 99: Software Innovation course

types of software teams

• co-located small project team (AAU project group) versus:

• geographically distributed

• supported by co-operative work systems

• bureaucratic

• self-organising/non-commercial

• facilitated by the internet

Page 100: Software Innovation course

software team innovation/creativity

factors

• negative factors

• creativity barriers

• group dysfunction

• positive factors

• software team roles

• communicative interactions

• the accommodation of divergent thinking

• team learning

• overview (common purpose)

• expertise integration

• social practice patterns

• environmental scanning

Page 101: Software Innovation course

negative: creativity barriers

• workload/time pressure

• rigid work practices, bureaucracy

• stress

• inappropriate evaluation systems

• reward systems that penalise mistakes

• routine work

• poor project management

• resource shortage

Page 102: Software Innovation course

negative: group dysfunction

• destructive dominance

• freeloading

• conformance

• conflict avoidance

• destructive conflict

• anchoring: digression

• search behaviour (premature solution seeking)

• groupthink

Page 103: Software Innovation course

positive: innovation team roles

• conventional: idea generators, entrepreneur/product champion, program manager/leader, gatekeepers/boundary communicators, sponsor/coach

• research oriented: plant, resource investigator, co-ordinator, shaper, monitor evaluator, teamworker, implementer, completer finisher, specialist (Belbin)

• descriptive: patron, solo virtuoso, gatekeeper, matron, mercenary analyst, surrogate customer, legend, wise fool, peace maker, sacrificial lamb, guru, producer, supporter, deadbeat (Coplien)

• formative: XP: coach, programmer, tester, tracker, consultant, big boss on-site customer. SCRUM: product owner, scrum master, chicken (observer)

• innovative: ESSENCE: challenger, responder, anchor, child

Page 104: Software Innovation course

positive: innovation team interaction

• process choices:• free interaction

• facilitated

• technique-determined (e.g. brainstorming, nominal group technique, …………)

• communicative interaction: from discussion to dialogue

1. participants independently and silently generate a list of ideas

2. the facilitator records one idea at a time going round the group

3. group members discuss each idea for clarification only, without considering its merit

4. participants independently rate and rank the ideas

5. the group prioritizes the suggestions by voting

Nominal Group Technique

Page 105: Software Innovation course

positive: team learning

• project domain: organisation and management of the development project, its process, structuring, management, tool support, financing, project members and customers.

• technology domain: the hardware, software environment, programming languages, design techniques, architectures and algorithms.

• use domain: the application area that the software is intended to be used in, the habits and work (or entertainment) patterns of the users, their way of interacting, the purpose and function of the software product in its use context.

project domain

use domain

technology domain

dysfunctional team

functional team

innovative team

Page 106: Software Innovation course

positive: innovative social patterns (work habits)

• a social pattern of interaction

• a work habit or routine

• a way of organizing a software project

• innovative patterns?

• unity of purpose

• engage customers

• domain expertise in roles

• architect controls product

• distribute work evenly

• function owner and component owner

• mercenary analyst

• architect also implements

• firewalls

• developer controls process

Coplien’s top ten patterns

Page 107: Software Innovation course

• positive: accomodation of divergent thinking

• positive: expertise integration

• positive: overview, vision, common purpose, shared learning

• positive: environmental scanning

• positive: tool support

Page 108: Software Innovation course

an innovative team displays:

• good understanding and exploitation of roles, especially those which promote creativity

• highly functional dialogue-based communicative interactions, including accommodation of divergent thinking

• high levels of team learning leading to flexible response to challenges (agility)

• good shared understanding of common purpose (overview) even in the situation of rapid change

• constructive software practice patterns – that is productive work practices

• diverse and deep expertise, well integrated

• intense awareness of their environment

Page 109: Software Innovation course

some defining teamwork questions:• which people would you want in your innovative team?

• which roles should be filled in an innovative team process?

• how structured should the team process be (tools and techniques versus free interaction)?

• what is the creativity environment for a your team and how can you improve it?

• what are the innovative work habits (patterns) of your teams?

• how does the team promote team learning and dialogue?

• how does the team develop a shared purpose and overview?

• what kind of automated tool support does an innovative team need?

• what learning do you need from outside the project and when do you need it?

• how do you know when the team is working innovatively?

Page 110: Software Innovation course

overview

Page 111: Software Innovation course

work-style heuristics

keep your head uptarget your product’s innovation profile

shape your own processdevelop your personal creativity

be a super-team-workergrow your knowledge community

bring your toolboxknow when you are (not) innovative

Page 112: Software Innovation course

work-style heuristic

be a super team worker

Page 113: Software Innovation course

1

creativity tools and techniques

(article review)

research questions:what kind of software tool support can underpin innovative software projects?

what kinds of techniques can underpin innovative software projects?

Page 114: Software Innovation course

2

creativity tools and techniques

tools

software support for the creative development process

techniques

ways of accomplishing tasks in the creative development process

e.g. mind mapping (ideas organised hierarchically as nodes and edges)

Page 115: Software Innovation course

repertoire and situation

toolbox (repertoire) situation: (project, development)

Page 116: Software Innovation course

tool support – some literature

Adamides, E. D. and N. Karacapilidis (2006). "Information Technology Support for the Knowledge and Social Processes of Innovation Management." Technovation 26(1): 50-59.

Greene, S. L. (2002). "Characteristics of applications that support creativity." Communications of the ACM 45(10): 100-104.

Shneiderman, B. (2000). "Creating creativity: user interfaces for supporting innovation." ACM Transactions on Computer-Human Interaction (TOCHI) 7(1): 114-138.

Shneiderman, B. (2002). "Creativity support tools." Communications of the ACM 45(10): 116-120.

Shneiderman, B. (2007). "Creativity Support Tools." Communications of the ACM 50(12): 20-32.

Page 117: Software Innovation course

research style

• two types of article• general frameworks (inspirational, structural, situational)

(collect, relate, create, donate) • tool development report

• purposes• generalized advice• tool promotion• lessons learned

• methods• literature review• (anecdotal) eclectic examples• (under-theorised) tool development

Page 118: Software Innovation course

problems for SWI

• not software developer (domain area) specific

• eclectic examples

• frameworks too generalized to be operationalised

• many aspects of SWI potentially to be supported

• many potential use situations

Page 119: Software Innovation course

characteristics of applications supporting creativity (Greene)

• applications support:• (pain free) exploration and experimentation (sandbox

mode)• engagement with content to promote active learning and

discovery• search, retrieval and classification• collaboration• iteration• instructive mistakes• domain-specific actions

Page 120: Software Innovation course

creativity support tool tasks: (Shneiderman)

(1) searching and browsing digital libraries, the web, and other resources

(2) visualizing data and processes to understand and discover relationships

(3) consulting with peers and mentors for intellectual and emotional support

(4) thinking by free associations to make new combinations of ideas(5) exploring solutions—what-if tools and simulation models(6) composing artefacts and performances step-by-step(7) reviewing and replaying session histories to support reflection(8) disseminating results to gain recognition and add to the

searchable resources

Page 121: Software Innovation course

9

Page 122: Software Innovation course

10

Page 123: Software Innovation course

11

Page 124: Software Innovation course

12

Page 125: Software Innovation course

13

Page 126: Software Innovation course

14

Page 127: Software Innovation course

15

Page 128: Software Innovation course

Commercial Creativity Support Tools ACTA Advantage Axon Idea Processor Brainstorm BrainStormer Brainstorming 1.0.1 Brainstorming Toolbox CK Modeller CM/1 ComedyWriter Concept Draw Corkboard/Three by Five CreaPro Creative Whack Pack Creative Studio Decision Explorer Dramatica DynoNotePad Genius Handbook GroupSystems II Grouputer Idea Generator Plus IdeaFisher IDEGEN++ In Control InfoDepot Innovation Toolbox Inspiration Invention Machine MaxThink MicMac Microsoft Word (Outlining Feature) Microsoft Word (Thesaurus Module)

Mind Mapper MindMan MoonLite MORE Paramind Personal Best 3.1 Plot Prompt Plots Unlimited Powerpoint Scriptware Serious Creativity Simplex Sirius StoryBuilder StoryCraft StoryCraftNet for Writers SuperMemo The Creativity Machine The Electric Brain The Electric Mind The Solution Machine Thoughtline Thoughtpath TreePad Turbo Thought Visimap / InfoMap VisionQuest Visual Outliner WinGrid WordPerfect Yeahwrite Ref: Creativity Web

Page 129: Software Innovation course

a proposed software support toolbox• support for escaping routine work

• programming editors, visual editors, case tools and diagrammers, project management tools, code management and versioning

• sandbox tools• prototyping tools, screen painters, demo makers, animation and slide-show

software, visual RAD tools

• knowledge tools• search tools, technical problem solving and coding documentation sites,

knowledge base, wiki, experience exchange, idea repository

• collaboration tools• internal and external collaboration, communication tools, collaborative writing, social

network support, dialogue support

• visualisation and overview support• simple diagrammatic support for visualising and agreeing common purpose in the face

of complexity: mind maps, Microsoft Visio

• creativity technique support• support for particular creativity techniques used in the project

Page 130: Software Innovation course

creativity tools and techniques

tools

software support for the creative development process

techniques

ways of accomplishing tasks in the creative development process

e.g. mind mapping (ideas organised hierarchically as nodes and edges)

Page 131: Software Innovation course

creativity techniques (Mycoted wiki)

Page 132: Software Innovation course

conceptual schemas

Mycoted

• Process

• Problem Definition

• Idea Generation

• Idea Selection

• Idea Implementation

Martin Leith

• Worldview 1 - The World is a Machine (based on rational cause and effect thinking, and first order change - emphasis on producing many ideas and selecting the brilliant one)

• Worldview 1 Plus - The World is a Network of Relationships

• Worldview 2 - The World is a System (complex issues are addressed through context manipulation, pattern analysis and constraint removal)

• Worldview 3 - The World is a Field of Energy and Consciousness (involves heightening the perception of the idea generator)

Page 133: Software Innovation course

creativity techniques and innovation styles

Page 134: Software Innovation course

a starting repertoire

technique description use

Brainstorming well-known technique for idea generation first software product and its feature ideas

Backward mapping visioning the software product in use understanding the desired user experience

SCAMPER substitute, combine, adapt, magnify, put to other uses, eliminate and rearrange

improve a software concept

Six Serving Men what why when how where who fill out and interrogate initialconcept

Six thinking hats facts, emotion, caution, logical positive, ideas, control

project review

Vision box design the box that the product will be shipped in

understand the essential selling points of the software

Elevator test who (statement of the need or opportunity) the (product name) is a (product category) that (key benefit, compelling reason to buy) unlike (primary competitive alternative) our product (statement of primary differentiation)

describe the product effectively to others outside the project

Page 135: Software Innovation course

23

work-style heuristic

bring your own toolbox

Page 136: Software Innovation course

• A man lives on the twelfth floor of an apartment building. Every morning he takes the elevator down to the lobby and leaves the building. In the evening, he gets into the elevator, and, if there is someone else in the elevator -- or if it was raining that day -- he goes back to his floor directly. Otherwise, he goes to the tenth floor and walks up two flights of stairs to his apartment.

Page 137: Software Innovation course

• A rope breaks. A bell rings. A man dies.

Page 138: Software Innovation course

• You live in an poorly developed African county and are responsible for developing the central phone service. The program is going slowly, cable installation is expensive and only the major towns have acceptable service

Page 139: Software Innovation course

• you work for SAP – you need to understand requirements for the next generation of your ERP system in order to continue to be a market leader – but you have many different installations in diverse countries, industries and firms

Page 140: Software Innovation course

software innovation:network and community

Page 141: Software Innovation course

network (community) model: practice

• the conjunction of people, ideas and expertise• physical: Silicon Valley, Bangalore,

Zhongguancun Science Park, Hsin-Chu ………………

• virtual (e.g. open source)

Page 142: Software Innovation course

innovation networks: theory

• invisible college, thought community, community of practice (Wenger), practice network

• field, domain (Csiksentmihalyi)

• reflective practice

• knowledge as social process, social construction of meaning, knowledge creation space (“ba” - Nonaka)

• knowledge exchange

Page 143: Software Innovation course

open source community indicators

• Free Software Foundation, Linux, Freenet, Apache, Fetchmail

• hero/legend (Richard Stallman, Linus Torvalds, Ian Clarke, Rob McCool, Eric Raymond)

• joining ritual, high entry threshold, start with bug-reporting and fixing

• specialists and generalists (core developers, architects)• copyleft (GPL)• Sourceforge.net• 50,000+ projects• 500,000+ registered users

Page 144: Software Innovation course

open-source community principlesvirtual net-enabled community

communities of programmers set the norms for practice and provide a wider sense of contributing and belonging. The community is often enabled by the internet and the products of the community are free and open to all its members.

the software challenge

the focus of the community is the software it builds: the software solution, characterised as a challenge to be collectively overcome.

self-organisation in networks

work is self-organised by independent and equal peers in networks across traditional organisational boundaries, rather than managed in the traditional sense. Networks merge, change and dissolve in response to evolving technical challenges.

technical mastery programmers aspire to technical excellence – mastery of their craft - where the ability to create innovative or elegant programming solutions is the primary measure of success.

self-realisation in the technological meritocracy

the community sets the scene for personal expression, creativity, heroism and championing innovation. Membership of, and status in the technological elite is the primary reward, not commercial success.

code sharing, peer feedback, improvisation

improvement of the software solution takes place through code sharing and code revision by other programmers. The process is iterative and improvisatory.

technology leadership

programmer communities aspire to and attain technology leadership through technical mastery applied to the production of software solutions. The techno-elite do not follow markets or technology trends – they lead the markets and set the trends through innovation.

code quality the engineering quality of the resultant code is the measure of success.

programming competence development

programming competence development is the motivating factor for improvement.

Page 145: Software Innovation course

open source community principles

• virtual net-enabled community

• the software challenge

• self-organisation in networks

• technical mastery

• self-realisation in the technological meritocracy

• code sharing, peer feedback, improvisation

• technology leadership

• code quality

• programming competence development

Page 146: Software Innovation course

private collective model (von Hippel and von Krogh)

• existing economic innovation models:• private investment (industry)

• innovation supported by private investors (typically companies) who expect private returns

• intellectual property law, copyright, patent (=knowledge/innovation loss to society)

• collective action model (science)• innovators relinquish control of new knowledge to a common pool for the

common good• typically supported by the state

• new model (open source)• private collective

• Developer-users invest their own resources• free revealing of knowledge (code)

Page 147: Software Innovation course
Page 148: Software Innovation course

work-style heuristic

grow your knowledge community

Page 149: Software Innovation course

software innovation – assessment and evaluation

personal and group creativityproduct assessmentwork environment inventorysummary

Page 150: Software Innovation course

personal creativity: psycho-metric testingbased on the innovation styles profile (ISP), http://www.creativeadvantage.com/profile.htm

facts insightdecision perceivingmodifying exploringvisioning experimenting

innovation styles:•modifying•exploring•experimenting•visioning

Page 151: Software Innovation course

innovative software product assessment(Lobert, B. M. and D. G. Dologite (1994). Measuring creativity of information system ideas:

an exploratory investigation.)

software innovation

Page 152: Software Innovation course

innovative software product assessment(Lobert, B. M. and D. G. Dologite (1994). Measuring creativity of information system ideas:

an exploratory investigation.)

software innovation

Page 153: Software Innovation course

work environment inventory (WEI)

• six parameters:

• freedom

• challenging work

• sufficient resources

• supervisory encouragement

• work group support

• organizational encouragement

Page 154: Software Innovation course

problems for SWI

• eclectic examples

• no systematic framework

• many sides of SWI to be evaluated

• many conventional assessment techniques are long term measures

• highly situation dependent

Page 155: Software Innovation course

software innovation measures

formal informal

here and now

long term

•return on investment•market value•market share•scientific citations

•goodwill•developer or firm reputation•scientific reputation

•copyright•patent

•psychometric testing•product assessment•market assessment•work environment assessment

•flow•team performance•technical challenge•customer relations•user responses•project status•challenge/response level

Page 156: Software Innovation course

work-style heuristic

know when you are (not) innovative

Page 157: Software Innovation course

the work heuristic here-and-now informal project evaluator tool

keep your head upgrow your knowledge community

target your product’s innovation profileshape your own process

develop your personal creativitybe a super-team-worker

bring your toolboxknow when you are (not) innovative

Page 158: Software Innovation course

keep your head up

do you know the latest technical development in the field you are working on?do you know the rival products that other companies are working on?do you understand the emerging technology potential?what infrastructure do you need and is it in place?what is the potential market for your product?

grow your knowledge community

are you in contact with leaders in the field, researchers, universities, lead users?can you import necessary expertise for the project when you need it?do you get valuable external feedback?

Page 159: Software Innovation course

shape your own process

target your product’s innovation profile

what is the added value (utility) for the user?why is your product new and original?do you understand your user community?how will their lives change when they use your product?

is the development process suitable for the task?are there techniques and practices which stimulate the creativity of the team?does it allow space for creativity and innovation?do you adapt it to the current needs of the project?can you improvise your way out of the difficulties?

Page 160: Software Innovation course

develop your personal creativity

are you learning fast?does your role suit you?can you bring your expertise and experience to bear on the problem?are you challenged by the tasks you have without feeling chronic stress?are you often in flow?

be a super-team-worker

does the team have a shared vision and know where it is going?does the team have effective communication (dialogue)?how does the team accommodate divergent thinking?does the team communicate its experience and expertise and learn fast?

Page 161: Software Innovation course

bring your toolbox

do you have creativity techniques that help you to move forward?do you have the right tool support to maximise progress and minimise drudge work?

know when you are (not) innovative

does the team recognise when it is not moving forward and do something differently?

Page 162: Software Innovation course

Software Innovation Design Game

with valuable prize

Page 163: Software Innovation course

rules of the design game

1. tasks: first come first served

2. design proposal must be viewable by all and presented in five minutes

3. design proposal must be theoretically based

4. evaluation criteria

• novelty, utility, elaboration

• theoretical justification

5. judges’ decision final

Page 164: Software Innovation course

presentation

1. slide(s) (mockup, demonstration) explaining the design proposal

2. slide explaining the theoretical connection

Page 165: Software Innovation course

design task: sketch an innovative software product (not IEC product)

task describe a innovative software product

task description sketch an idea for a software product which displays novelty and utility with a defined innovation profile (SI p.54) for a particular user community

task objective develop a coherent and defensible idea for a new software product

suggested work method brainstorm, refine idea, apply innovation profile thinking (consider IEC techniques)

background theory SI ch. 1,3

output slide(s)/mockup showing an overview of the product,perhaps communicated in several different ways

other resources your IEC experience

success criteria well-communicated overview of product with clear innovation profile

Page 166: Software Innovation course

design task: sketch an innovative software process

task design a software process targeted at innovation

task description the process should provide a lightweight, adaptable process framework which would guide a student project team through a semester project with a focus on innovation

task objective software process innovation in the department’s development work

suggested work method brainstorm, sketch process, include agile practices, creativity techniques

background theory IEC material and experience, SI ch 4

output process steps, tools techniques, practices

other resources lecture 11 slides, creativity techniques, mind map

success criteria good communication of well-argued process

Page 167: Software Innovation course

design task: sketch the ideal work space for an innovative software

teamtask outline a physical and/or psychological environment

which maximises the creativity of the software development team

task description revolutionalize your group room and project conditions and provide a vision for how they could be in the future with a focus on innovation

task objective developing understandings of stimulating work environments for software developers

suggested work method brainstorm, visit SIRL, low tech prototypes

background theory SI ch. 5-7, SIRL

output architectural sketches of work-space, descriptions of work practice and management conditions

other resources SIRL

success criteria work conditions that are practical, imaginative and stimulating

Page 168: Software Innovation course

design task: innovative team tool support

task specify ideal tool support for an innovative software development team

task description a creative software team needs software tool support for its work -envision the suite of tools that might be necessary and choose, specify or design them

task objective develop understandings of appropriate tool support in innovative development context

suggested work method brainstorm, low tech prototypes, sketches of screen dumps

background theory SI ch. 7 (maybe 5, 6)

output a model of the team member’s desktop

other resources

success criteria well-argued tool support collection that underpins the innovative software development task

Page 169: Software Innovation course

design task: software developer personal creativity short course

task design a creativity short course

task description design a short course (e.g. 2 days) which challenges and stimulates the ability of the individual software developer to generate and develop innovative ideas in the software field

task objective support and develop personal creativity in the individual software developer

suggested work method brainstorm, determine objectives, design supporting activities

background theory SI ch. 5, 7

output outline of course with explanations of activities

other resources IEC experience

success criteria well-explained course outline with clear goals and suitable activities

Page 170: Software Innovation course

design task: online software development innovation community

task innovation through virtual software community

task description devise a strategy for establishing an online community (and its online home) which develops innovative software in a given field

task objective understand virtual user-community led software innovation

suggested work method brainstorm, select field, research SourceForge, target community members, sketch portal

background theory SI ch. 2

output community and portal design, community growth strategy, software development strategy

other resources SourceForge.net

success criteria clearly-articulated strategies

Page 171: Software Innovation course

design task:

task

task description

task objective

suggested work method

background theory

output

other resources

success criteria

Page 172: Software Innovation course

software innovationcourse summary

Page 173: Software Innovation course

course design

preparation

practice

theory

reflection

IEC mini-project

Page 174: Software Innovation course

learning strategies

Kolb’s learning cycle

Argyris: double loop learning

Page 175: Software Innovation course

content overview

Intensive ESSENCE Course

Page 176: Software Innovation course

infrastructure and trajectory

• market and technology trajectories

• hardware and software convergence

• market (user demand)• infrastructure

development• innovation windows

Page 177: Software Innovation course

work-style heuristic

keep your head up

Page 178: Software Innovation course

innovation networks/community• innovation networks: theory

• the social character of knowledge

• extending knowledge boundaries

• open source community

• private collective model

Page 179: Software Innovation course

work-style heuristic

grow your knowledge community

Page 180: Software Innovation course

the innovative software product• invention v. innovation• novelty and utility• consequence = social change• incremental v. radical• technical system hierarchies/levels of

innovation• utility forms

• computing infrastructural• technology enabling• user service• business change enabling• interaction/communication• entertainment

• innovation profile

innovation profile:•novelty

•utility

•user community

•social change

•market

•technical innovation

•infrastructure dependence

Page 181: Software Innovation course

work-style heuristic

target your product’s innovation profile

Page 182: Software Innovation course

the innovative software process• IEC experience• linear and iterative innovation models• linear: the light bulb model• agility: necessary, not sufficient• market-led and technology-led software innovation • improvisation, bricolage• six innovation process strategies

• creative requirements analysis• designed process framework• low tech prototyping• user-driven innovation• community development• research prototype

Page 183: Software Innovation course

work-style heuristic

shape your own process

Page 184: Software Innovation course

the creative software developer

• the developer’s mental process: recognising and exploiting discovery points

• a set of personal development competences concerned with both solving problems and recognising opportunities

• a style of thinking associated with different strengths in individual’s development personalities

• meta-thinking: recognising predispositions and tendencies in one’s own (and others’ ) thinking and coming beyond them

• whole-brain thinking: beyond rationality• a relationship between the individual developer and communities

of people and ideas (domain, field)• a state of mind: the way the developer’s mind is disposed when

being creative (flow)• a universal mental skill to be enhanced

Page 185: Software Innovation course

work-style heuristic

develop your personal creativity

Page 186: Software Innovation course

the innovative software team• negative

• creativity barriers• negative: group dysfunction

• positive• innovation team roles• positive: innovation team interaction• positive: team learning• positive: innovative social patterns• positive: accommodation of divergent thinking• positive: expertise integration• positive: overview, vision, common purpose, shared learning• positive: environmental scanning

Page 187: Software Innovation course

work-style heuristic

be a super-team-worker

Page 188: Software Innovation course

tools and techniques for innovative development

• creativity techniques• brainstorming• backward mapping• SCAMPER • six serving men • six thinking hats• vision box• elevator test

• tools for:• support for escaping routine

work• sandbox tools• knowledge tools• collaboration tools• visualization and overview

support• creativity technique support

• repertoire

• situational choice

Page 189: Software Innovation course

work-style heuristic

bring your toolbox

Page 190: Software Innovation course

evaluating software innovation

Page 191: Software Innovation course

work-style heuristic

know when you are (not) innovative

Page 192: Software Innovation course

overview

Page 193: Software Innovation course

work-style heuristics

keep your head upgrow your knowledge community

target your product’s innovation profileshape your own process

develop your personal creativitybe a super-team-worker

bring your toolboxknow when you are (not) innovative