INTEGRATING CREATIVITY INTO EXTREME
PROGRAMMING PROCESS
Broderick Crawford
Pontificia Universidad Cat´olica de Valpara´ıso, Universidad T´ecnica Federico Santa Mar´ıa, Valparıso, Chile
Claudio Le´on de la Barra
Pontificia Universidad Cat´olica de Valpara´ıso, Valpara´ıso, Chile
Keywords:
Creativity, Software Development, Agile Methodologies, eXtreme Programming.
Abstract:
Human and social factors are very important in developing software and the development of new software
requires the generation of novel ideas. In this paper, the Agile method called eXtreme Programming (XP) is
analyzed and evaluated from the perspective of the creativity. The conclusion is that XP can be fostered from
a creativity perspective.
1 INTRODUCTION
Software engineering research is technical and de-
emphasizes the human and social aspects, although
Software is developed for people and by people(John
et al., 2005). By other hand, the traditional devel-
opment process of new products has been recently
criticized by Kotler and Tras de Bes (Kotler and
TıasdeBes, 2004), they point out that fundamental
creative aspects are not considered at all and as a con-
sequence this development is not useful, viable or in-
novative. In this context, it is interesting to consider
the new proposals of agile methodologiesfor software
development in order to analyse and evaluate them at
the light of the existing creative expositions, mainly
considering the teamwork practices.
The agile principles and values have emphasized
the importance of collaboration and interaction in the
software development and, by other hand, creative
work commonly involves collaboration in some form
and it can be understood as an interaction between
an individual and a sociocultural context. We believe
that the innovation and development of new products
is an interdisciplinary issue (Takeuchi and Nonaka,
1986), we are interested in the study of the potential
of new concepts and techniques to foster creativity in
software engineering (Gu and Tong, 2004).
2 CREATIVITY
Considering the object of analysis: a software devel-
opment teamwork, that must respond to the require-
ments of a specific client for a particular problem, a
suitable definition of creativity is the one raised by
Welsch (Welsh, 1967):
Creativity is the process of generating unique
products by transformation of existing products.
These products, tangible and intangible, must be
unique only to the creator, and must meet the crite-
ria of purpose and value established by the creator.
More specifically, and from an eminently creative
perspective, it is possible to distinguish three aspects
at the interior of a group developing new products:
a) The purposes that the team tries to reach, which de-
mand two scopes of results (Csikszentmihalyi, 1998;
Guilford, 1968; Hallman, 1963; Hallman, 1966a;
Hallman, 1966b):
Those related to the creative result that must be
original, elaborated, productive and flexible.
Those related to the creative team, so that it
reaches its goals, developing cognitive abilities
and presenting an improved disposition to the
change. All this in order to obtain a better cre-
ative team performance in the future.
b) The performance shown by the team in connection
with the main aspects of the complex dynamics that
the persons build inside a team. We describe three
216
Crawford B. and León de la Barra C. (2008).
INTEGRATING CREATIVITY INTO EXTREME PROGRAMMING PROCESS.
In Proceedings of the Tenth International Conference on Enterprise Information Systems - ISAS, pages 216-219
DOI: 10.5220/0001687402160219
Copyright
c
SciTePress
aspects:
The personal conditions of the members of the
team, in terms of the styles and cognitives abil-
ities, the personality, their intrinsic motivation
and knowledge (Woodman et al., 1993; Amabile,
1998; Amabile et al., ; Csikszentmihalyi, 1998).
The organizational conditions in which the cre-
ative team is inserted, and that determines, at least
partly, its functioning. These conditions, in the
extent that present/display certain necessary par-
ticular characteristics - although non sufficient -
for the creative performance. They emphasize
in special the culture (communication, collabo-
ration, trust, conflict handle, pressure and learn-
ing) (Woodman et al., 1993; Kotler and Arm-
strong, 2003; Isaksen et al., ); the internal struc-
ture (formalization, autonomy and evaluation of
the performance) (Woodman et al., 1993; Kotler
and Armstrong, 2003; Isaksen et al., ; Amabile,
1998); the team available resources (time dispo-
sition) (Woodman et al., 1993; Kotler and Arm-
strong, 2003; Amabile et al., ) and the physical
atmosphere of work (Leonard and Swap, 1999).
The conditions of performance of the creative
team, mainly the creative process realized, which
supposes the set of specific phases that allow to
assure the obtaining of a concrete result (cre-
ative product) (Leonard and Swap, 1999; Wallas,
1926).
c) The structure of the creative team, particularly
the group characteristics, such as norms, cohesive-
ness, size, diversity, roles, task and problem-solving
approaches (Woodman et al., 1993).
Of the mentioned aspects, here we are interested
in the team for the development of new products, spe-
cially considering: the creative process and the roles
surrounding this process.
2.1 The Creative Team
Lumsdaine and Lumsdaine (Lumsdaine and Lums-
daine, 1995) raise the subject of the required cogni-
tives abilities (mindsets) for creative problem resolu-
tion. Their tipology is excellent for the creative team,
and the different roles to consider. These roles are:
Detective, Explorer, Artist, Engineer, Judge and Pro-
ducer. Leonard and Swap (Leonard and Swap, 1999)
have mentioned additional roles, possible to be in-
tegrated with the previous ones, because they try to
make more fruitful the divergence and the conver-
gence in the creative process: provoker, think tank,
facilitator and manager.
Kelley and Littman (Kelley and Littman, 2005),
on the other hand, have raised a role tipology similar
to Lumsdaine and Lumsdaine (Lumsdaine and Lums-
daine, 1995), being interesting that they group the
roles in three categories: those directed to the learn-
ing of the creative team (susceptible of corresponding
with the detective, explorer, artist, provoker and think
tank roles), others directed to the internal organization
and success of the team (similar to the judge, facilita-
tor and manager roles) and, finally, roles whose pur-
pose is to construct the innovation (possibly related to
the role of the engineer and judge).
3 SOFTWARE CREATIVITY
Since human creativity is thought as the source to re-
solve complex problem or create innovative products,
one possibility to improve the software development
process is to design a process which can stimulate the
creativity of the developers. There are few studies re-
ported on the importance of creativity in software de-
velopment. In management and business, researchers
have done much work about creativity and obtained
evidence that the employees who had appropriate cre-
ativity characteristics, worked on complex, challeng-
ing jobs, and were supervised in a supportive,noncon-
trolling fashion, produced more creative work. Then,
according to the previous ideas the use of creativity
in software development is undeniable, but require-
ments engineering is not recognized as a creative pro-
cess in all the cases (Maiden et al., 2004). In a few
publications the importance of creativity has been in-
vestigated in all the phases of software development
process (Glass, 1995; Gu and Tong, 2004; Crawford
and de la Barra, 2007) and mostly focused in the
requirements engineering (Robertson, 2005; Maiden
and Robertson, 2005; Mich et al., 2005). Neverthe-
less, the use of techniques to foster creativity in re-
quirements engineering is still shortly investigated.
It is not surprising that the role of communication
and interaction is central in many of the creativity
techniques. The most popular creativity technique
used for requirements identification is the classical
brainstorming and more recently, role-playing-based
scenarios, storyboard-illustrated scenarios, simulat-
ing and visualizing have been applied as an attempt
to bring more creativity to requirements elicitation.
These techniques try to address the problem of iden-
tifying the viewpoints of all the stakeholders (Mich
et al., 2005).
However, in requirements engineering the an-
swers do not arrive by themselves, it is necessary
to ask, observe, discover, and increasingly create re-
INTEGRATING CREATIVITY INTO EXTREME PROGRAMMING PROCESS
217
quirements. If the goal is to build competitive and
imaginative products, we must make creativity part of
the requirements process. Indeed, the importance of
creative thinking is expected to increase over the next
decade (Maiden and Gizikis, 2001).
4 XP: EXTREME
PROGRAMMING
Extreme Programming is an iterative approach to
software development (Beck, 2000). The methodol-
ogy is designed to deliver the software that customer
needs when it’s needed. This methodology empha-
sizes team work. Managers, customers, and develop-
ers are all part of a team dedicated to deliver quality
software. XP implements a simple, yet effective way
to enable groupware style development. XP improves
a software project in four essential ways; communi-
cation, simplicity, feedback, and courage. XP defines
the following roles for a software development pro-
cess (Beck, 2000): Programmer, Customer, Tester,
Tracker, Coach, Consultant and Big boss or Manager.
5 CREATIVITY IN XP
Regarding to the structure dimension of a new prod-
uct development team (in particular software), it is
possible to relate the roles in creativity to the roles
defined in the XP methodology distinguishing: base
roles, that is, those directly related to the creative pro-
cesses and software development, and support roles,
whose function is to support or lead the other roles for
a better performance.
In relation with the structure dimension it’s impor-
tant to considerate how the team can operate. In order
to implement the functionality of each role, we must
considerate two aspects: basic organizational condi-
tions and the pertinent creative process.
5.1 The Correspondence between
Creative and XP Roles
The following is the correlation between creative and
XP roles:
The detective function consisting in collecting in-
formation related to a problem is made by the
client himself in XP, because this one generates
the first contact with the software development
team.
The function of explorer consisting in defining
completely the problem is made in XP as much
by the client as the manager of the team, all to-
gether they appreciate the reach of the identified
problem, as well as of the possible solutions. The
function of the artist consisting in transforming
the information, creating new relations, and there-
fore generating interesting solutions is made by
the developer, that in XP methodologyis in charge
of the analysis, design and programming of soft-
ware.
The function of the engineer referred to clarify
and to evaluate the new ideas, in terms of its feasi-
bility is made in XP by the tester and the tracker.
The function of the judge, understood as the
definitive selection of the solutions to implant, is
made in XP by the tracker and the client.
The function of the producer, referred to the im-
plementation of the selected ideas (strictly speak-
ing it is working software) is made in XP by the
client in his organization, including the processes
and procedures that this function implies.
The supporting roles considered are:
The provoker; creativity demands that the diver-
gence as well as convergence in the solutions be
maximum and complete. There is not explicit ref-
erence in XP methodology about divergent think-
ing.
The think tank who helps the team work ”from
outside” is equivalent completely to the role of the
consultant.
The facilitator whose function is helping the team,
corresponds in XP to the coach role.
The manager whose function is to lead to the team
in terms of its general efficiency and its effective-
ness corresponds with XP’s big boss or manager.
6 CONCLUSIONS AND FUTURE
RESEARCH
The Extreme Programming methodology includes
implicitly central aspects of a creative teamwork.
These aspects can be organizedaccording to the struc-
ture that the team adopts and the performance that
characterizes to the team.
The structure that the team adopts and specially
the different roles that the methodology advises to de-
fine, nearly correspond with the roles at the interior of
a creative team. The performance that characterizes
the team through certain advisable practices, from the
perspective of creativity, constitutes the necessary ba-
sic conditions, although nonsufficient, in order to fa-
vor the group creative performance. These conditions
ICEIS 2008 - International Conference on Enterprise Information Systems
218
- called practices in XP methodology - are accompa-
nied by concrete phases of constituent activities of an
agile software development process, which is possi-
ble to correspond with the creative process, which is
fundamental to the creative performance.
In spite of the previous comments, we think that
XP methodology should have a more explicit refer-
ence to:
The provoker role that is thoroughly described in
creativity as a fundamental factor to generate in-
novation. This can be explained because, in gen-
eral, agile methodologies do not aim, as a central
element, to generate an original software, but an
effective one.
The distinction and formalization of the creative
phases to generate options incubation and option
choices (that are fundamental in creativity). It is
assumed that they take place in the iterative and
production process. Again, XP is not focused in
”originality”, resulting that the divergence is not
so fundamental in XP.
A more direct mention to the physical atmosphere
of work, that in creativity are considered as highly
relevant to enhance the performance. These as-
pects should have a greater consideration since
software development is a special case of pro-duct
development.
REFERENCES
Amabile, T. (1998). How to kill creativity. Harvard Busi-
ness Review, Sept-Oct:77–87.
Amabile, T., Conti, R., Coon, H., Lazenby, J., and Herron,
M. Assessing the work environment for creativity.
Academy of Management Journal, 39(5):1154–1184.
Beck, K. (2000). Extreme programming explained: em-
brace change. Addison-Wesley Longman Publishing
Co., Inc., Boston, MA, USA.
Crawford, B. and de la Barra, C. L. (2007). Enhancing cre-
ativity in agile software teams. In Concas, G., Dami-
ani, E., Scotto, M., and Succi, G., editors, XP, volume
4536 of Lecture Notes in Computer Science, pages
161–162. Springer.
Csikszentmihalyi, M. (1998). Creativity : Flow and the
Psychology of Discovery and Invention. Harper Peren-
nial, New York.
Glass, R. L. (1995). Software creativity. Prentice-Hall, Inc.,
Upper Saddle River, NJ, USA.
Gu, M. and Tong, X. (2004). Towards hypotheses on cre-
ativity in software development. In Bomarius, F. and
Iida, H., editors, PROFES, volume 3009 of Lecture
Notes in Computer Science, pages 47–61. Springer.
Guilford, J. P. (1968). Intelligence, Creativity and Their
Educational Implications. Edits Pub.
Hallman, R. (1963). The necessary and sufficient conditions
of creativity. Journal of Humanistic Psychology, 3(1).
Also reprinted in J. C. Gowan et al., Creativity: Its
Educational Implications. New York: John Wiley and
Co., 1967.
Hallman, R. (1966a). Aesthetic pleasure and the cre-
ative process. Journal of Humanistic Psychology,
6(2):141–148.
Hallman, R. (1966b). Techniques of creative teaching. Jour-
nal of Creative Behavior, I(Sept).
Isaksen, S. G., Lauer, K. J., and Ekvall, G. Situational out-
look questionnaire: A measure of the climate for cre-
ativity and change. Psychological Reports, (85):665–
674.
John, M., Maurer, F., and Tessem, B. (2005). Human and
social factors of software engineering: workshop sum-
mary. SIGSOFT Softw. Eng. Notes, 30(4):1–6.
Kelley, T. and Littman, J. (2005). The Ten Faces of Inno-
vation: IDEOs Strategies for Defeating the Devil’s
Advocate and Driving Creativity Throughout Your Or-
ganization. Currency.
Kotler, P. and Armstrong, G. (2003). Principles of Market-
ing, 10th Edition. Prentice Hall.
Kotler, P. and Tr´ıasdeBes, F. (2004). Marketing Lateral.
Editorial Pearson/Prentice Hall, Spain.
Leonard, D. A. and Swap, W. C. (1999). When Sparks
Fly: Igniting Creativity in Groups. Harvard Business
School Press, Boston.
Lumsdaine, E. and Lumsdaine, M. (1995). Creative Prob-
lem Solving: Thinking Skills for a Changing World.
McGraw-Hill, Inc, New York.
Maiden, N. and Gizikis, A. (2001). Where do requirements
come from? IEEE Softw., 18(5):10–12.
Maiden, N., Gizikis, A., and Robertson, S. (2004). Provok-
ing creativity: Imagine what your requirements could
be like. IEEE Software, 21(5):68–75.
Maiden, N. and Robertson, S. (2005). Integrating creativ-
ity into requirements processes: Experiences with an
air traffic management system. In 13th IEEE Interna-
tional Conference on Requirements Engineering (RE
2005), 29 August - 2 September 2005, Paris, France,
pages 105–116. IEEE Computer Society.
Mich, L., Anesi, C., and Berry, D. M. (2005). Applying a
pragmatics-based creativity-fostering technique to re-
quirements elicitation. Requir. Eng., 10(4):262–275.
Robertson, J. (2005). Requirements analysts must also be
inventors. Software, IEEE, 22(1):48–50.
Takeuchi, H. and Nonaka, I. (1986). The new new product
development game. Harvard Business Review.
Wallas, G. (1926). The art of thought. New York: Harcourt
Brace.
Welsh, G. (1967). Personality and Creativity: A Study of
Talented High School Students. Unpub. doctoral dis-
sertation, Chapel Hill, University of North Carolina.
Woodman, R. W., Sawyer, J. E., and Griffin, R. W. (1993).
Toward a theory of organizational creativity. The
Academy of Management Review, 18(2):293–321.
INTEGRATING CREATIVITY INTO EXTREME PROGRAMMING PROCESS
219