J. Software Engineering & Applications, 2010, 3, 1131-1140
doi:10.4236/jsea.2010.312132 Published Online December 2010 (http://www.scirp.org/journal/jsea)
Copyright © 2010 SciRes. JSEA
Empirical Research on Critical Success Factors of
Agile Software Process Improvement*
Jiangping Wan1,2, Ruoting Wang1
1School of Business Administration, South China University of Technology, Guangzhou, China; 2Institute of Emerging Industrialization
Development, South China University of Technology, Guangzhou, China.
Email: scutwjp@126.com, mawangrt@gmail.com
Received October 29th, 2010; revised November 20th, 2010; accepted November 29th, 2010.
ABSTRACT
In this paper, we discuss agile software process improvement in P company with their description of process manage-
ment in current level and analysis of problems, design the P Company success factors model in organizational culture,
systems, products, customers, markets, leadership, technology and other key dimensions, which is verified through
questionnaire in P company. In the end, we apply knowledge creation theory to analyze the open source software
community with successful application of the typical agile software method, propose ten principles of know- ledge
creation in open source software community: Self-organizing, Code sharing, Adaptation, Usability, Sustention, Talent,
Interaction, Collaboration , Happiness, and Democracy.
Keywords: Agile Methodology, Software Process Improvement, Critical Success Factor, Knowledge Creation, Open
Source Software Community
1. Introduction
Agile software Development encourages the formation
of collaborative and self-organization teams that will
have a huge competitive advantage over those who hold
the view that a software-development organization is
nothing more than a pile of twisty little people all alike.
A gelled software team is the most powerful software
development force there is. The Agile Manifesto is in the
following: 1) Individuals and interactions over processes
and tools; 2) Working software over comprehensive
documentation; 3) Customer collaboration over contract
negotiation; 4) Responding to change over following a
plan. Twelve principles underlie the Agile Manifesto,
including 1) Our highest priority is to satisfy the cus-
tomer through early and continuous delivery of valuable
software. 2) Welcome changing requirements, even late
in development. Agile processes harness change for the
customer’s competitive advantage. 3) Deliver working
software frequently, from a couple of weeks to a couple
of months, with a preference to the shorter timescale. 4)
Business people and developers must work together daily
throughout the project. 5) Build projects around moti-
vated individuals. Give them the environment and sup-
port they need, and trust them to get the job done. 6) The
most efficient and effective method of conveying infor-
mation to and within a development team is face-to- face
conversation. 7) Working software is the primary mea-
sure of progress. 8) Agile processes promote sustainable
development. 9) The sponsors, developers, and users
should be able to maintain a constant pace indefinitely.
10) Continuous attention to technical excellence and
good design enhances agility. 11) Simplicity. 12) The
best architectures, requirements, and designs emerge
from self-organizing teams [1].
P company is a multi-business company, and its main
business is telecommunications services of Hong Kong.
The P company referred in this paper is software devel-
opment department of IT business division in P com-
pany. The staff in this department are more than 600
people, distributed in Hong Kong, Guangzhou, Beijing,
Shanghai and other places. Department leadership atta-
ches great importance to software process improvement,
and the company has received ISO9001 and CMMI-5
certification. The market situation has changed greatly
after financial crisis, P company has to adjust their soft-
ware development process to meet the challenges of the
*This research was supported by Key Project of Guangdong Province
Education Office (06JDXM63002), NSF of China (70471091), and
QualiPSo (IST- FP6-IP-034763).
Empirical Research on Critical Success Factors of Agile Software Process Improvement
1132
coming business environment. As the agile develop-
ment method is efficient and simple, P company tries to
use it in small area of some projects.
This paper is organized as follows: the first part is
software process analysis before implementation of agile
method, which contains process management and organi-
zational culture; then the second part is to design and
verify the model of critical success factors in P company,
proposing ten principles with the analysis of agile me-
thods typical of the knowledge creation, based on the
results of the increasingly popular open-source software
development; the last part is the conclusion.
2. Analysis on the Process of P Corporation
2.1. Analysis of Process Management
In order to meet the rating requirements of CMMI, P
company design a set of quality management processes,
including quality assurance program, process quality ass-
urance, product quality assurance and evaluation, pro-
duct testing, defect management and other aspects.
P company’s process management tool is mainly used
in the Gantt Chart. First, Project manager and core team
members (each team leader) make the task decompo-
sition, usually at the third level of decomposition to the
WBS. Team leaders should complete a progress report
on the situation to the project manager every week. Fo-
rced to survive pressure many employees often work
overtime for free. When many low-level project staff
have accumulated some project experience, often choose
to leave the company and find another job.
P company usually send one or two senior analyst or
business analyst to IT department of customer, and the
analysts are in the charge of building Workshop with
senior analyst from IT department of customer and com-
munication between project delivery team and users. The
workshop plays an important role: they collect and
collate customer first-hand information, submit to the
project delivery team to do demand analysis; they solve
the problems from the demand analysis in delivery team;
they review the requirements specifications made by
delivery team; As P company usually uses JRP [2] me-
thod in the process of demand analysis, Work Shop is
also responsible for organizing and coordinating the JRP
meeting, including the development agenda, chairing the
meeting, summary report, etc. If certain information has
been misinterpreted or mishandled by some individuals
of Workshop, the entire delivery team will be greatly
affected.
Software development is knowledge-intensive work,
tacit knowledge is more important than explicit know-
ledge in the development process [3]. The main commu-
nication channel of tacit knowledge in P company is that
the staff familiar with each other to communicate pri-
vately. Of course, this mode of transmission is very in-
efficient.
2.2. Analysis of Organizational Culture
Agile software process improvement is not only a simple
process, but also is related to some factors such as orga-
nizational culture [4]. In this paper we analysis some
factors that are related with agile process improvement.
1). The prevalence of overtime culture. Overtime work is
not suggested in the agile methodology, and is contrary
to the principle “offer the employee sustainable deve-
lopment”. 2) the culture of low-level trust. The top lea-
ders in the company doubt the staff’s work capacity and
professionalism, always suspect that the staff can not get
the job done because they don’t have the right attitude. 3)
Lack of the spirit of mutual cooperation. P company pays
little attention to the cultivation of team spirit, and sel-
dom organize activities about team building. However,
once there is something wrong with the project, it’s not a
good thing for each member.
In all, the prominent phenomenon in P company’s
software and organizational culture are: tedious process,
too much documents, formal assessment, serious over-
time work, non-smooth knowledge communication chan-
nels, lack of trust between top leader and employee and
spirit of mutual cooperation.
3. Design of Critical Success Factor Model of
P Corporation
3.1. Analysis of Critical Success Factors
3.1.1. Support from Top Leaders
Paulk, Mark C states that if there is no support from top
leaders, software process improvement support can not
continue for long time [5]. Jarvenppa and Ives state that
the model of information system to support top leaders
should be divided into two dimensions: participation and
recognition [6]. This paper argues that these views also
adapts to the agile process improvement in P company.
Hypothesis (H1): Support from top leaders plays a
positive role in promoting successful implementation of
agile process improvement.
3.1.2. Support from Organization
Sharifi believes that organization that has agile capability
must get the organization support [7]. In this paper we
find that organizational factors that are related to P com-
pany are as follows: creating a clear vision, establishing
agile organizational culture, the establishment of a lear-
ning organization and changing management, etc.
Hypothesis (H2): Support from organization plays a
positive role in promoting successful implementation of
agile process improvement.
C
opyright © 2010 SciRes. JSEA
Empirical Research on Critical Success Factors of Agile Software Process Improvement 1133
3.1.3. Tool and Technology
Sharifi states that if organization wants to get the agile
capacity it must use suitable technology and tools [7]. In
12 principles of agile declaration it states that we should
always pay attention to matching of excellent technology
and design, so that we can improve software the rapid re-
sponse capability [8]. P company mostly develop enter-
prise applications, so some aspects among them are si-
milar, such as security management, document manage-
ment and clients management, etc. Use of software reuse
is appropriate to obtain agility.
Hypothesis (H3): Use of the tools and technology
plays a positive role in promoting successful implement-
tation of agile process improvement.
3.1.4. Suitable Import Method
The number of the software development projects is
more than 10 every year. In small ones it needs ten emp-
loyees, while in larger ones it needs 50 or 100 employees.
Agile methods not only require certain skills, but also
need employee’s self-discipline [9].
Hypothesis (H4): Suitable import method plays a po-
sitive role in promoting successful implementation of
agile process improvement.
3.1.5. Education and Training
Martin Fowler said “Whatever you select some tech-
nology, it’s not easy to make it clear how the specific
implementation. Agile methods are particular, because it
will need you to change the mind! Many people just
focus on specific practices rather than the philosophy
behind them. Is it possible that you ignore the philosophy
of the system and look forward to good results?” [10,11].
Hypothesis (H5): Education and training play a posi-
tive role in promoting successful implementation of agile
process improvement.
3.2. Analysis of Control Variables
Three factors are selected as control variables in suc-
cessful implementation of agile process improvement in
P company: 1) Support from clients. Without their under-
standing, support and cooperation, agile software process
is difficult to successfully implement in P company. 2)
Types of project contract. It’s more difficult to imple-
ment if fixed price contract is used in some project. 3)
Types of clients. Two types of software product are off-
ered by P company. One is E-Government software for
departments of government; the other is enterprise busi-
ness software. In this paper we define the types of clients
as control variable because they do not have enough str-
ength to select customers.
3.3. Successful Agile Implementation
Kieran states that the organizations’ agility is mainly re-
flected in four aspects: 1) Innovation. Agile methods pro-
vide innovation, and better and new method should be
continuously explored to solve the problem. 2) Rapid
response to change. When organizations are in rapidly
changing environment, we should get rapid response to
change and adjust organization to survive. 3) Initiative.
Rapid response is passive, and always after the change.
Organizations should not wait for the appearance of
change, take action before the change, or even create the
change. 4) Learning. Organizations should not only get
response to change and create it, and learning knowledge
from it. Organizations should have a good learning abi-
lity to be creative, in order to adapt to change and create
it. In this paper whether the agile process improvement is
success is determined according to the four aspects ab-
ove. Critical Success Factor Model in agile process im-
provement in P Corporation is shown in Figure 1.
3.4. Questionnaire Design and Development
3.4.1. The Composition of the Questionnaire
The questionnaire includes four parts: 1) The introdu-
ction of questionnaire. Content and basic situation are in-
cluded. 2) Basic information of samples: such as duty,
work experience, and their understanding of agile, etc. 3)
Main part. 46 questions are used to measure critical
success factors. 4) Measurements of success implement-
tation. Four questions are included in it (Table 1). Con-
trol variables are not included in question items, because
they are used to make exploratory research.
3.4.2. Questionnaire Delivery and Data Collection
In this paper we distribute the questionnaires in e-mail in
P company with help of the sector vice president. A total
of 80 questionnaires are distributed, 51 valid question-
naires are recovered. Staff in investigation, including se-
ctor vice president and senior project managers, project
managers, technical specialists (architects and analysts),
programmers, testers and system administrators, covers
almost all the roles related with agile process improve-
ment in company (Table 2).
Table 1. Statistics of positions in investigation.
Positions Number of
Samples Percent
Management (department
vice president, senior project
manager, project manager)
8 15.69%
Technical experts (system
architects, system analysts) 10 19.61%
Programmer 23 45.10%
Testing and system
administrators 10 19.61%
Total 51 100.00%
C
opyright © 2010 SciRes. JSEA
Empirical Research on Critical Success Factors of Agile Software Process Improvement
Copyright © 2010 SciRes. JSEA
1134
Figure 1. Critical success factor model in agile process improvement in P Corporation.
Table 2. Scales table composition.
Research Factors Dimensions References Question Items
Leading 1) Recognition of top leaders
2) Participation of top leaders Jarvenppa etc. Q5-Q9
Organization
1) Creating a clear vision
2) Building the agile organizational culture
3) Changing the way of management
Sharifi
Jim Highsmith
Kruchten etc.
Q10-Q16
Tools and Technology
1) Configuring the necessary tools and infrastructure
2) Using design patterns and other advanced design methods
3) Using software reuse technology
Sharifi
Erich Gamma etc. Q17-Q22
Appropriate import
1) Selecting applicable import project
2) Excellent implementation staff
3) Selecting proper agile method and practice
Scott Ambler
Internal interview Q23-Q25
Training and
Education
1) Correct understanding and mastery of agile methodologies
2) Enhancing the professional capabilities of the employee
Martine Fowler
Boehm
Internal interview
Q26-Q27
Measuring Success
1) Flexible and innovative development method
2) Rapid response to demand, technology, personnel changes
3) Forward-looking response to changing factors
4) Successfully Building learning organization
Kieran Q28-Q31
Empirical Research on Critical Success Factors of Agile Software Process Improvement 1135
4. Validation of Critical Success Factor
Model of P Corporation
4.1. Validity
This paper is validated from face validity, content valid-
ity, construct validity [12].
4.1.1. Face Validity
We make a pre-survey of small sample before the official
release, according to survey results we adjust the ques-
tionnaire to ensure that the contents of the questionnaire
is acceptable for the most. Therefore, this questionnaire
meets the requirements of face validity.
4.1.2. Content Validity
Most of the critical success factors and performance
evaluation indexes are selected in the research results of
experts and scholars, while small part of them are sorted
and classified by the interviews. Therefore, content vali-
dity meets the requirements of research.
4.1.3. Construct Validity
In Table 3, KMO > 0.6, the degree of common variance
among the five variables is “mediocre” bordering on
“middling”. While the significance probability of Bar-
tlett’s Test is 0.000 (< 0.01), statistics is suitable to factor
analysis. Table 4 shows that the extracted principal com-
ponents factors consistent with the hypothesis. But they
are different as follows: 1) Q8 of the leading is divided
into a main component alone, can not be merged into any
other components. 2) Training and education factor and
appropriate import factor are combined into a principal
component factor; it suggests that we should strengthen
training and education at the early stage of agile methods.
3) Q14 (Building the agile organizational culture) of the
organization is included into the factor of
Table 3. Results of KMO and Bartlett’s test.
KMO 0.656
Bartlett’s TestApprox. Chi-Square 1039.763
df 253
Sig. 0.000
Table 4. Component matrix.
Loading Factors
Research
Factors Question Items
Factor 1 Factor 2 Factor 3 Factor 4 Factor 5
Q18 0.921
Q17 0.867
Q21 0.777
Q19 0.752
Q20 0.741
Tools and
Technology
Q22 0.699
Q12 0.882
Q11 0.823
Q15 0.771
Q13 0.755
Q16 0.715
Organization
Q10 0.624
Q27 0.804
Training and
Education Q26 0.759
Q25 0.836
Q23 0.789
Appropriate
Import
Q24 0.607
Organization Q14 0.600
Q9 0.856
Q5 0.841
Q7 0.707
Q6 0.631
Leading
Q8 0.664
C
opyright © 2010 SciRes. JSEA
Empirical Research on Critical Success Factors of Agile Software Process Improvement
1136
training and education, because they are linked closely
with the concepts.
4.2. Reliability
Table 5 shows that the reliability analysis results of crit-
ical success factors and performance evaluation indexes.
Most factors’ Cronbach’s Alpha are around 0.8, the mi-
nimum one is 0.690. So questionnaire has high relia-
bility.
5. Discussion
Through empirical research in this paper, we find that: 1)
Training and education plays a important role in promot-
ing agile process improvement. We must have profes-
sional skills, good professional basic knowledge to ach-
ieve the objective. We suggest that learning organiza-
tions needs to be built in organization. 2) Agile methods
must be established within agile culture, mainly refers to
mutual trust and cooperation of the corporate culture.
This study suggests that we should establish the corpo-
rate culture of mutual trust to improve development effi-
ciency. In addition, collaboration within the development
teams could reduce duplication of effort and greatly im-
prove development efficiency. 3) Attention to the design
and application of advanced technology do not receive
widespread support. Tools and technical factors related
to the question Q18~Q22 scores are generally lower than
other factors, most of them are around 3 to 4. But at least
it shows that too much emphasis on the importance of
design and technology is not correct. Of course, it may
be not suitable in other situations because it’s just a case.
For example, the discipline of the developer is very cri-
tical in the agile methods, but it is not selected as a cri-
tical success factor because of the strict process mana-
gement of P company. This paper argues that the increa-
singly popular open-source software community is ty-
pical model of the successful agile software development,
reflecting the direction of knowledge creation at the In-
ternet age, and it is worthy of deep study and promoting.
6. Knowledge Creation in Open Source
Software Community
In our understanding, software development is know-
ledge innovation process in the nature. Open source
development is both particular bazaar development and
typical agile development, so we can derive knowledge
creation principles of Open source development from
factors of knowledge creation both existing in two type
developments.
6.1. Knowledge Creation Theory
Nonaka states that innovation, which is key form of or-
ganizational knowledge, cannot be explained sufficiently
in terms of information processing. Innovation is a pro-
cess in which the organization creates and defines pro-
blems and then actively develops new knowledge to
solve them [13]. He advanced SECI model and bar
theory, and pointed out that there are two major latitudes
as theory framework of organizational knowledge crea-
tion: knowledge’s ontology and epistemology. The for-
mer includes three levels: individual, group and organi-
zation, and the latter includes the tacit knowledge and the
explicit knowledge. The key of knowledge creation is to
convert tacit knowledge into explicit knowledge. In the
process of organizational knowledge creation, organi-
zation is to provide proper local to benefit individual’s
knowledge creation and accumulations and related group
activities. He also suggested five enabling conditions on
organizational level, which are intention, autonomy,
chaos/fluctuation, redundancy and requisite variety [14].
6.2. Knowledge Creation in Values of Agile
Development
We will analyze factors of knowledge creation in values
of agile development through five enabling conditions of
organization knowledge creation, and then find out
which values can promote knowledge creation. The rela-
tionship between the values of agile development and
five enabling conditions of knowledge creation is illu-
strated in Table 6 we find Individuals and interactions,
Working software, Customer collaboration and respon-
ding to change all involve enabling conditions. Therefore,
we consider they promote knowledge creation.
6.3. Rules of Bazaar Development
Eric Raymongd described open source development style
lively and in detail—release early and often, delegate
everything you can, be open to the point [15]. He consi-
dered that development style seemed to resemble a great
babbling bazaar of different agendas and approaches,
which was quite different from traditional software deve-
Table 5. Cronbach’s Alpha.
Research Factors Question Items Cronbach’s α
Leading Q5~Q9 0.690
Organization Q10~Q16 0.886
Tools and Technology Q17~Q22 0.899
Appropriate import Q23~Q25 0.815
Training and Education Q26~Q27 0.863
Measuring Success Q28~Q31 0.778
Total 0.855
C
opyright © 2010 SciRes. JSEA
Empirical Research on Critical Success Factors of Agile Software Process Improvement 1137
Table 6. Analysis of knowledge creation in values of agile development.
Enabling
value Intention Autonomy
Fluctuation and
Creative ChaosRedundancy Requisite Variety
Individuals and interactions
Working software
Customer collaboration
Responding to change
Individuals and interactions
Working software
Customer collaboration
Responding to change
Note: indicates that corresponding value involves corresponding enabling condition, that is to say, corresponding value can promote knowledge
creation.
lopment. He called it bazaar development and concluded
19 rules as follows: 1) Every good work of software
starts by scratching a developer’s personal itch; 2) Good
programmers know what to write. Great ones know what
to rewrite (and reuse); 3) “Plan to throw one away; you
will, anyhow.”[16]; 4) If you have the right attitude,
interesting problems will find you; 5) When you lose
interest in a program, your last duty to it is to hand it off
to a competent successor; 6) Treating your users as
co-developers is your least-hassle route to rapid code
improvement and effective debugging; 7) Release early.
Release often. And listen to your customers; 8) Given a
large enough beta-tester and co-developer base, almost
every problem will be characterized quickly and the fix
obvious to someone; 9) Smart data structures and dumb
code works a lot better than the other way around; 10) If
you treat your beta-testers as if they’re your most
valuable resource, they will respond by becoming your
most valuable resource; 11) The next best thing to having
good ideas is recognizing good ideas from your users.
Sometimes the latter is better; 12) Often, the most stri-
king and innovative solutions come from realizing that
your concept of the problem was wrong; 13) “Perfection
(in design) is achieved not when there is nothing more to
add, but rather when there is nothing more to take away”;
14) Any tool should be useful in the expected way, but a
truly great tool lends itself to uses you never expected ;
15) When writing gateway software of any kind, take
pains to disturb the data stream as little as possible—and
never throw away information unless the recipient forces
you to; 16) When your language is nowhere near Turing-
complete, syntactic sugar can your friend; 17) A security
system is only as secure as its secret. Beware of pseudo-
secrets; 18) To solve an interesting problem, start by
finding a problem that is interesting to you; 19) Provided
the development coordinator has a communications me-
dium at least as good as the Internet, and knows how to
lead without coercion, many heads are inevitably better
than one.
6.4. Knowledge Creation in Rules of Bazzar
Development
The relationship between rules in bazzar development
and agile development values those promote the know-
ledge creation is illustrated in Table 7.
6.5. Ten Principles for Knowledge Creation in
OSS Development
The principles, including both enabling knowledge fac-
tors and agile development features, are in the follow-
ing: Principle 1. Self-organizing. Open source software
(OSS) project teams are all self-organizing teams, since
team members work together on designing and develop-
ping because of common interest, so it is free to join and
exit. Team members are all in high work enthusiasm,
willing to think and contribute, and can bring best archi-
tectures, requirement and design. Principle 2. Code-
sharing. Demand change is the related bottle-neck am-
ong all the models of individual code, however, code
sharing eliminates the bottle-neck. It accelerates the
speed of development. Open Source community seems
this as one of the most basic principles, as this is the best
form to realize the knowledge sharing. Principle 3. Ada-
ptation. OSS development encourages adaptive plan, not
predictable practice. That is to say, detailed schedule can
not be based on short-term view establishment. What’s
more, at regular intervals, the team reflects on how to
become more effective, then turns and adjusts its be-
havior accordingly. Principle 4. Usability. The soft ware
should be usability. These, including right concept for
software architecture, rational design, information en-
ough and assured security, are important for usability.
Principle 5. Sustention. It is free to join or exit an OSS
project. However, though persons with ability in an OSS
team flow fluently, it still keeps a good successor. The
project leader turns his work over next leader when he
C
opyright © 2010 SciRes. JSEA
Empirical Research on Critical Success Factors of Agile Software Process Improvement
1138
Table 7. Analysis for knowledge creation in bazaar development.
Principles
Va lu e
R
1
R
2
R
3
R
4
R
5
R
6
R
7
R
8
R
9
R
10
R
11
R
12
R
13
R
14
R
15
R
16
R
17
R
18
R
19
Individuals and interactions
Working software
Customer collaboration
Responding to change
Note: indicates that corresponding value involves corresponding enabling condition, that is to say, corresponding value can promote knowledge creation.
exits an OSS project. Principle 6. Talent. The number
of the membership is not restricted. OSS is community-
based model different from firm-based model. This
model won’t be constrained in the organizational boun-
dary. By technology-mediated interaction, it also won’t
be constrained in the geographical boundary. Principle 7.
Interaction. Release early. Release often. Respond quickly.
OSS development take stepwise deliver mode. To release
early and often, and get quick feedback, is one of the
most important parts for Linux development model. It
promotes fast flow of knowledge. Principle 8. Collabo-
ration. OSS development emphasizes teamwork and
collaboration, and its bazaar development model is
collaborative development model. An OSS project asse-
mbles a number of developers and larger areas of co-de-
velopers. If you don’t promote teamwork and collabor-
ation by communication, you can’t make the project go
on smoothly. Principle 9: Happiness. An OSS project is
attractive and challenging. Developers work together on
the OSS project because of common interest. They
generally take pleasure in a task when it falls in a sort of
optimal challenge zone; not so easy as to be boring, not
too hard to achieve. A happy programmer is one who is
neither underutilized nor weighed down with ill-formu-
lated goals and stressful process friction. Principle 10:
Demo cracy. OSS development style cannot be based on
power relationships—and even if they could be, lead-
ership by coercion would not produce the results we see.
The achievement of OSS goal is only simple aggre-
gations of many wishes, and it is exact what OSS needed.
Power relationships won’t work in OSS project volun-
teers set up.
7. Features of Knowledge Creation in Open
Source Community
Knowledge creation in the bazzer and the cathedral is
illustrated in Table 8. It is obvious the advantages in the
bazzar by the ten principles of knowledge creation.
In our understanding, there are three advantages for
OSS development in the following.
First, Knowledge Sharing Intensively. In traditional
software development, most knowledge is stored in the
brains of developers, which belongs to the tacit know-
ledge. Although companies adopt documentation and re-
pository, hoping to convert the tacit knowledge into ex-
plicit knowledge of companies, employees don’t have a
high enthusiasm for knowledge sharing. Therefore, there
is less knowledge sharing. In OSS development, OSS
license provides a legal environment of code sharing, and
OSS itself is the essence of OSS development. Develo-
pers in OSS development are volunteers who are willing
to share the code and communicate with each other and
have spirit of collaborative development and teamwork.
Second, Knowledge Conversion Rapidly. Traditional
software development takes a long period of time to
release a new version. Surely it also takes a long period
time to get feedback. This kind of development environ-
ment fluctuates little, and knowledge flows slowly.
Taking a long time to get feedback means it has a long
cycle to get new information, so it prolongs speed of
conversion. In OSS development, the frequent experi-
mental release assures the quick conversion from tacit
knowledge into explicit knowledge. And feedback thr-
ough quick peer review assures developers gain new use-
ful information fast. Then adaptive feature of develop-
ment team makes the explicit knowledge converse into
tacit knowledge quickly.
Third, Top Talents’ Quality and Quantity. Tradi-
tional software development is almost firm-based model,
and the gaining of developers is constrained by organiza-
tional and geographical boundaries. However, the main
part of knowledge creation is person, so this kind of mo-
del necessary restricts knowledge creation. OSS develop-
ment is community-based model; members are not res-
tricted in organizational and geographical boundaries.
What’s more, open source community does not welcome
poor developers, so members are top talents.
Table 8. Knowledge creation in the bazzer and the
cathedral.
The Bazzar
The
Cathedral
The
Principle
Speed for
Knowledge Quick Slow 3, 5, 7
Knowledge SharingHigh Low 2, 4, 8, 10
Knowledge Talent Wide &
Much
Narrow &
Less
1, 6, 9
C
opyright © 2010 SciRes. JSEA
Empirical Research on Critical Success Factors of Agile Software Process Improvement 1139
Table 9. Knowledge creation principles of open source de-
veloppment emerge in apache server.
Principle Description
Self-organizing
Anyone with an interest in working on Apache
development can join the developer mailing
list, which was archived monthly.
Code sharing It was OSS software.
Adaptation Mailing list ensures that the changes are
appropriate.
Usability
The most widely deployed web server,
Rational software architecture, Good in
reliability and expandability
Sustention
New developers tend to focus on areas where
the former maintainer is no longer interested in
working, or in the development of new
architectures and features that have no
preexisting claims (frontier building).
Talent
The participation in Apache development
overall was quite wide, with almost 400
individuals contributing code that was
incorporated into a comparatively small
product.
Interaction
Since anyone can subscribe to the mailing list,
the changes are reviewed by many people
outside the core development community,
which often results in useful feedback before
the software is formally released as a package.
Collaboration
182 people contributed to 695 PR changes,
while 249 people contributed to 6092 non-PR
changes.
Happiness
Developers tend to work on problems that are
identified with areas of the code they are most
familiar. Some work on the product's core
services, while others work on particular
features that they developed.
Democracy
The Apache software development process is a
result of both the nature of the project and the
backgrounds of the project leaders. It was clear
from the very beginning that a geographically
distributed set of volunteers, without any
traditional organizational ties, would require a
unique development process in order to make
decisions.
8. Case Study
The Apache server [17] is, according to the Netcraft sur-
vey, the most widely deployed web server at the time of
this writing. In fact, the Apache server has grown in
“market share” each year since it first appeared in the
survey in 1996. By any standard, Apache is very suc-
cessful [18]. The knowledge creation principles of Open
Source development emerge in Apache server (Table 9).
9. Conclusions
The conclusions are as follows: 1) Education and train-
ing play a positive role in promoting successful imple-
ment-tation of agile process improvement. 2) Agile me-
thods must be established within agile culture, mainly
refers to mutual trust and cooperation of the corporate
culture. 3) Attention to the design and application of
advanced technology do not receive widespread support.
We suggest that too much emphasis on the importance of
design and technology is not correct in P company. In the
end, we use applications knowledge creation theory to
analyze the open source software community with suc-
cessful application of the typical agile software method,
propose ten principles of knowledge creation in open
source software community, features of knowledge crea-
tion in open source community, case study for Apache
server development, and we hope that more researchers
could join in the study and practice.
10. Acknowledgements
Thanks for helpful discussion with Mr. Yuan Weihua,
Mr. Zhou Zhijun, Mrs. Zou Wei and Mr. Wang Shuwen.
REFERENCES
[1] K. Beck, M. Beedle, et al., “Manifesto for Agile Software
Development,” 2009. http://agilemanifesto.org
[2] S. McConnell, “Rapid Development Taming Wild
Software Schedules,” Microsoft Press, Washington DC,
1996.
[3] C. L. Liu, “The Tutorial of Information Systems Project
Management,” Tsinghua University Press, Beijing, 2005.
[4] M. C. Paulk, “Extreme Programming from a CMM
Perspective,” IEEE Software, Vol. 18, No. 6, 2001. pp.
19- 26. doi:10.1109/52.965798
[5] M. C. Paulk, “Software Process Proverbs,” Crosstalk:
The Journal of Defense Software Engineering, Vol. 10,
No. 1, 1997, pp. 4-7.
[6] Q. F. Min, “The Empirical Study of Critical Success
Factors of ERP Implementation in China,” Doctoral
Dissertation, Dalian University of Technology, Dalian,
2005.
[7] H. Sharifi and Z. Zhang, “A Methodology for Achieving
Agility in Manufacturing Organizations: An Introdu-
ction,” International Journal of Production Economics,
Vol. 62, No. 1-2, May 1999, pp. 7-22. doi:10.1016/
S0925-5273(98)00217-5
[8] J. Z. Zhang, L. Q. Qian and S. Y. Zhu, “An Overview of
Agile Methodology,” Computer Applications and Soft-
ware, Vol. 19, 2002, pp. 1-9.
[9] J. Highsmith, “Agile Project Management: Creating
Innovative Products,” Addison Wesley, Boston, 2004.
C
opyright © 2010 SciRes. JSEA
Empirical Research on Critical Success Factors of Agile Software Process Improvement
Copyright © 2010 SciRes. JSEA
1140
[10] J. Li, “Martin Fowler Talks Scrum Certificate Authority,
Agile Today and Tomorrow,” 2008. http://www.infoq.
com/cn/news/2008/06/martin-agile-scrum
[11] K. Conboy and B. Fitzgerald, “Agile Drivers, Capabilities,
and Value: An Over Arching Assessment Framework for
Systems Development,” In: K. C. Desouza, Ed., Agile
Information Systems; Conceptualization, Construction,
and Management, Butterworth-Heinemann, Burlington,
2007, pp. 207-221.
[12] Z. Y. Lin, “SPSS Operation and Application,” Peking
University Press, Beijing, 2007.
[13] I. Nonaka, “The Knowledge Creating Company,”
Harvard Business Review, Vol. 69, No. 6, 1991, pp.
96-104.
[14] G. von Krogh, et al., “Enabling Knowledge Creation:
How to Unlock the Mystery of Tacit Knowledge and
Release the Power of Innovation,” Oxford University
Press, New York, 2000.
[15] E. Raymond, “The Cathedral and the Bazaar,” Know-
ledge, Technology, and Policy, Vol. 12, No. 3, 1999, pp.
23-49. doi:10.1007/s12130-999-1026-0
[16] F. P. Brooks, Jr., “No Silver Bullet: Essence and
Accidents of Software Engineering,” Computer, Vol. 20,
No. 4, 1987, pp. 10-19. doi:10.1109/MC.1987.1663532
[17] A. Mockus, R. T. Fielding and J. Herbsleb, “A Case
Study of Open Source Software Development: The
Apache Server,” Proceedings of the 22nd International
Conference on Software Engineering, Limerick, 4-11
June 2000, pp. 263-272.
[18] Netcraft Survey. http://www.netcraft.com/survey