Top Banner
An Investigation into Factors Affecting the Adoption of Software Development Patterns Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009
30

Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Jan 02, 2016

Download

Documents

Felix Bryan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

An Investigation into Factors Affecting the Adoption of Software

Development PatternsMary Lynn Manns

University of North Carolina at AshevilleSMA 2009

November, 2009

Page 2: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Software development patterns

Research study: factors that influence the use of patterns among individuals in organizations

Research design involving quantitative and qualitative methods

Highlights of this Presentation

Page 3: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Facilitate: Knowledge Management

Provide: a structure (and a process) for documenting successful practices in software development and management

Each pattern: describes a verified solution to a common problem

Purpose: to increase productivity through reuse

Software Development Patterns

Page 4: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

The goal of patterns within the software community is to create a body of literature to help software developers resolve recurring problems encountered throughout all of software development. Patterns help create a shared language for communicating insight and experience about these problems and their solutions.

Appleton, 2000

Software Development Patterns

Page 5: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

A Pattern Language: Towns, Buildings, Construction (Alexander, 1977)

Design Patterns: Elements of Reusable Object-Oriented Software (Gamma, Helm, Johnson, & Vlissides, 1994)

The Manager Pool: Patterns for Radical Leadership (Olson & Stimmel, 2001)

Fearless Change: Patterns for Introducing New Ideas (Manns & Rising, 2005)

Pattern examples

Page 6: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

What factors influence theuse of patterns

among individualsin organizations?

Research Question

Page 7: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

A theory-building field study…

Research Design

DOI Initial Model &

Propositions

survey

Factors & General

Guidelines

Member checking

Revised Model

& Operational Guidelines

Page 8: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Diffusion: “the process by which an innovation is communicated through channels over time among members of a social system”

Framework: for predicting the amount of time it will take an innovation to be adopted by individuals in a social system

Focus on: social-communication perspective

Connection between: individual’s perception of an innovation and his/her use of it

DOI: Diffusion of InnovationE.M. Rogers

Page 9: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Variables

Dependent Independent

Pattern Use◦ Use only in own work◦ Use in groups◦ Use by writing

+ relative advantage + compatibility + ease of use + trialability + result demonstrability + visibility + image - voluntariness + champion + opinion leader + change agent + training* + patterns repository* + installed process* + innovativeness

Page 10: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Initial Model

Potential Adopters’ Perceptions of Patterns’ Attributes Relative Advantage (+) Compatibility (+) Ease Of Use (+) Trialability (+) Result Demonstrability (+) Visibility (+) Image (+) Voluntariness (-)

Potential Adopters’ Perceptions of Social System Social influences Champion (+) Opinion Leader (+) Change Agent (+) Situational influences Training (+) Patterns Repository (+) Installed Process (+)

Innovativeness of the Potential Adopter Innovativeness (+)

Pattern Use Use Use only in own work Use in groups Use by writing

Page 11: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Operational definitions of constructs from past studies (e.g. Kishore 1999; Moore 1991; Moore&Benbesat 1991; Green 1999)

7-point Likert scale

Homogenous sampling (Baroudi 1989; Sawyer 1981; Mahmood

1991)

130 respondents @ 130 different locations

Survey

Page 12: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Descriptive statistics

Multiple regression◦ Factor level◦ Construct Group level

Correlation analysis

Quantitative:

Page 13: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Use only in own work◦ + Relative Advantage◦ + Result Demonstrability◦ + Trialability◦ - Voluntariness◦ + Innovativeness◦ - Installed Process

Use in groups◦ + Visibility◦ + Compatibility◦ + Opinion Leader

Use by writing◦ + Patterns Repository◦ + Result Demonstrability◦ + Relative Advantage

Survey Results:

Page 14: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Revised Model

Training +

Innovativeness +

Trialability +

Result demonstrability + Innovativeness +

Trialability + Installed process +

Opinion leader - Visibility -

Change agent - Champion - Voluntariness

-

Installed process - Patterns repository -

Patterns repository + Champion +

Visibility + Opinion leader +

Installed process -

Ease of use + Compatibility + Relative advantage +

Result demonstrability +

Use

Relative advantage +

Compatibility +

Result demonstrability +

Pattern repository +

Opinion leader +

Voluntariness -

Champion +

Change agent +

Installed process +

Visibility +

Ease of use + Relative advantage +

Result demonstrability +

Compatibility +

Change agent + Voluntariness -

Champion + Opinion leader + Patterns repository

+

Installed process +

Visibility +

Champion +

Opinion leader +

Use individually

Use in groups

Write patterns

Page 15: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

A theory-building field study…

Research Design

DOI Initial Model &

Propositions

survey

Factors & General

Guidelines

Member

checking

Revised Model

& Operational Guidelines

Page 16: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Requested feedback on survey findings from the 130 respondents who provided the data:◦ 10 factors in revised model◦ General Guidelines

To provide confirmation and further insight on the quantitative data

Contributed to Operational Guidelines

Qualitative: Member Checking

Page 17: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

General Guideline 10: Any of the following is likely to play a part in the organization’s ability to increase the visibility for patterns: a champion, a change agent, an opinion leader for patterns, a patterns repository, an installed process for patterns. However, the visibility of these factors may also play a part in increasing the perception that the use of patterns not voluntary in the organization.

Member Checking: Be cautious about too much “noise” or hype which can prompt a reaction against “overmarketing.” Make patterns visible in meetings, documentation and training.

Operational Guideline: An organization should find effective ways to make patterns visible throughout the organization without creating the impression of pressure or hyperactive marketing.

Visibility

Page 18: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Organizations cannot simply talk about relative advantage--must also demonstrate how patterns help meet individual and organizational goals

Relative Advantage andResult Demonstrability

Page 19: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Challenges in showing compatibility:◦ Belief that there is no need for patterns because software

engineering is a well-defined discipline◦ Patterns descriptions are too obscure◦ Inability of people to see similarities between solutions

captured in patterns and the problems they face

Operational Guideline: An organization should overcome the misperception that there is no need for patterns in software engineering by showing individuals and teams how patterns can apply to the problems they are trying to solve.

Compatibility

Page 20: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Highest correlation with innovativeness and training◦ Profile of the person who is likely to conduct trials

- innovative◦ Training may offer best opportunity for people to

try out patterns

“The fastest way to introduce patterns into a company is for some project to use them, succeed, and offer some credit to the use of patterns.”

Trialability

Page 21: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Innovativeness andOpinion Leader

Innovativeness Opinion Leader

Organizations can widen the influence of “innovators” only if their role as an opinion leader is supported by management.

Those attempting to be opinion leaders claim that it is difficult. The lack of understanding of the benefits of patterns prompts the belief that they are doing something obscure.

Operational Guideline: An organization should encourage managers to support opinion leaders and others who are building the grass roots effort for patterns.

Page 22: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Managers who have too much involvement or who clearly express their preferences create a strong impression that there is a lack of choice.

Too much management control makes developers resentful and resist the effort.

Managers should provide support--remove barriers and provide incentives.

Voluntariness

Operational Guideline: Management in an organization should find an appropriate level of support for patterns that will help the effort rather than give the impression the use of patterns is being mandated.

Page 23: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Lowest mean of all independent variables.

Usually a grass roots effort; management views it as opportunistic, second to product delivery.

Management needs to address: political issues, training, hosting, quality submissions, and the promotion of patterns.

Patterns Repository

Page 24: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

Negative influence on “use only in own work”

Pattern use is seen as something that helps developers become better at their individual jobs.

Installed Process

Page 25: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

An extension of Diffusion of Innovation research applied to the adoption of patterns

An empirically supported model that provides a testable theoretical framework for the use of patterns

A theory-building approach that combines quantitative and qualitative methods

A set of operational guidelines to aid organizations wishing to promote pattern use

Contribution

Page 26: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

An Investigation into Factors Affecting the Adoption of Software Development

Patterns

Mary Lynn MannsUniversity of North Carolina at Asheville

[email protected]://www.cs.unca.edu/~manns

Page 27: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

An organization should demonstrate the relative advantages of patterns to individuals.

An organization should offer opportunities for individuals to try out patterns before using them in their own work.

An organization should show that patterns are useful to innovators.

An organization should allow time for innovative individuals to learn about patterns.

Management in an organization should find an appropriate level of support for patterns that will help the effort rather than give the impression the use of patterns is being mandated.

Operational Guidelines

Page 28: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

An organization should overcome the misperception that there is no need for patterns in software engineering by showing individuals and teams how patterns can apply to the problems they are trying to solve.

An organization should find effective ways to make patterns visible throughout the organization without creating the impression of pressure or hyperactive marketing.

An organization should identify different types of opinion leaders to spread the word to others about patterns.

Operational Guidelines (continued)

Page 29: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

An organization can use a patterns repository to stimulate pattern writing and thus sustain the general adoption process.

An organization should help individuals understand pattern descriptions.

An organization should help individuals to see the costs as well as the benefits of using specific patterns and to understand that a pattern is not used as an “out of the box” solution.

An organization should create ways to help individuals locate the patterns they need for the problems they are trying to solve.

Operational Guidelines (continued)

Page 30: Mary Lynn Manns University of North Carolina at Asheville SMA 2009 November, 2009.

An organization should teach patterns in the context of where they are relevant to the work individuals are doing.

An organization should make managers aware of patterns.

An organization should address the concerns of management that patterns have too much risk and have unknown long-term benefits.

An organization should encourage managers to support opinion leaders and others who are building the grass roots effort for patterns.

An organization should consider establishing a change agent to provide a consistent force in creating and keeping interest in patterns.

Operational Guidelines (continued)