Академический Документы
Профессиональный Документы
Культура Документы
net/publication/221473880
CITATIONS READS
35 1,609
5 authors, including:
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Elena Pirinen on 05 March 2015.
Abstract—The pertinent mission of software project man- [11]. The Kanban method is often presumed to make this
agement is to continuously achieve more and more successful attainable [5], [12].
projects. In the field of software development, the Kanban There is a strong practitioner-driven movement supporting
method has gained momentum recently, mostly due to its linkages
to Lean thinking. However, only a few empirical studies investi- the idea of the use of Kanban in software engineering. It is
gate the dynamics and impacts of Kanban on projects. The aim evident that the outcomes of applying Kanban are expected
of this study is to improve the understanding on how Kanban to be high in software development, as they have been
impacts on software project work. For the purpose of the study, in manufacturing. This is not yet, however, confirmed by
a framework is developed and empirically investigated in an means of empirical studies: only a few studies have explored
experimental software R&D setting called Software Factory. The
impact of Kanban is evaluated from nine theoretically derived empirically the dynamics of Kanban from the viewpoint of
perspectives. The results highlight new findings regarding the software development. This lack serves as an important source
application of Kanban in the software context. This bears man- of motivation for this study.
agerial implications, which is addressed. The key implications This paper investigates how Kanban influences software de-
of the findings suggest that Kanban and its inherent simplicity velopment and, consequently, project work. More specifically,
motivate the workers and control the project activities.
the management-related research question is set as follows:
Keywords-software development, Kanban, project manage- What are the perceived impacts of Kanban on software project
ment, process model work? This is particularly important as projects “are conceived
and completed by people” [13]. Howell et al. [13] argue that
I. I NTRODUCTION we still lack the theoretical foundation that connects leadership
The principles of Lean thinking are grounded the ways and people aspects holistically. Reaching an optimal flowing
to add value for the customer [1]. Such an increase in state in the development process and its tasks means that the
value comes from the features and quality of products to amount of waste, such as unnecessary waiting and non-value-
the ability to deliver and adapt quickly to changes. In brief, adding extra work, has been minimized. Kanban, as a method,
every non-value-adding activity (NVA), variations (in process provides a way to visualize the flow of tasks and, thereby,
quality, cost, delivery), and unreasonableness (overburden) attempts to reveal problems in the flow. Kanban empowers
should be eliminated. In common, these things are considered people with a minimum set of required rules to follow.
waste. Eliminating waste is the most important principle of The study conducts an empirical investigation related to
Lean thinking. Lean thinking requires continuous growth and Kanban software development. Based on the existing litera-
commitment from personnel as well as management. This ture, the paper builds a literature-based framework modeling
is similar to the concept of learning organization [2], [3], effects of Kanban on software project work. This framework
[4] where the organization continuously develops itself by recognizes nine perspectives which are then evaluated by con-
facilitating learning among its members. ducting a case study in an experimental software R&D setting
While Lean thinking has turned out to be a success in that produced a business prototype on a proof-of-concept
manufacturing [1], it has recently been applied to the area of level. The results from the empirical evaluation support some
software engineering, as well [5]. The basis of the repeatable arguments of the literature. In addition, some new findings,
manufacturing process, however, differs from the idea of tra- such as task assigning depending on the different motives of
ditional software projects. Project Management Institute in its workers, are encountered.
PMBOK Guide [6] defines project as “a temporary endeavor
undertaken to create a unique product, service, or result”. II. R ELATED W ORK
Despite this difference, Lean thinking can be applied, among This section reviews the background and related work
other areas, to software development projects [7], [8], [9]. of project management (Section II-A) and Kanban software
In addition to waste elimination, Lean software development development (Section II-B). Moreover, Section II-C develops
principles can be defined as follows: build quality in, create a research framework.
knowledge, defer commitment, deliver fast, respect people,
and optimize the whole [10]. Moreover, the creativeness and A. Software Project Management Challenges
innovativeness of the workers should be utilized [8]. In a wider Since software processes are largely dynamic and coopera-
context, the production should be conceptualized as a flow tive activities, the impact of software process technology with
2
it gives the illusion of an orderly, measurable, and accountable research data automatically (e.g., logs). Moreover, the facility
process [41]. Related to embracing the method, the waterfall enables capturing rich insights into the human-related aspects
method requires deep knowledge of the problem field, process, of software development [45]. The Department of Computer
and software being built in order to be successful [41], [42]. Science hosts an initial reference implementation, with more
Larman [43] agrees and argues that the waterfall method is locations coming up globally.
suitable for producing products in which the process is highly The case project produced a business prototype on a proof-
identical. Agile process models, such as Scrum, typically need of-concept level. This product was a Web application for
some earlier experience from the developers, before reaching an imaginary market. Most of the team members had work
an efficient way of carrying out the progress. Larman [43], for experience in programming and project work from a couple
example, mentions common mistakes and misunderstandings of months to a couple of years. The project contained 13
related to the lack of experience. The Kanban method is persons: 12 Master students including the team leader and one
intuitive to understand and gives rather free hands to the Bachelor student. Excluding the use of Kanban, no particular
developers to do their work [30]: the only rules regarding this development method was insisted upon. The team had close
are that the workflow must be visualized, cycle time measured, to full control within the R&D setting to decide upon the
and work-in-progress limitations enforced. practices used. The team leader was not appointed by external
In the waterfall model, giving feedback may be limited mandate; rather, he took his role as a part of the self-organizing
except between the phases [37]. Feedback is considered to activities of the team. More experienced members (called
be a threat to the predefined plan because corrective actions seniors) took responsibility for designs. They also assisted less
would change the plan. Agile Manifesto [34], as stated above, experienced members (called juniors) in technical and practical
welcomes changing requirements in development. Moreover, issues and gave useful advice. In short, the project team was
it encourages collaborating with the customer rather than ne- self-organized. One of the authors of the paper acted as one
gotiating contracts. In Kanban, feedback from the customer as of the customers of the project but without steering the use
well as from the other developers is frequent and regular [36]. of Kanban in the project while another furnished the other
The approval process is often overly strenuous when using customers, launched, and finished the project.
the waterfall model [36]. After each phase the documentation The team formed the columns (i.e., workflow phases for the
is approved by management. Agile Manifesto [34] stresses tasks) on the Kanban board at the beginning of the project.
the meaning of self-organized teams. In a similar way, Lean Later on, the team altered the columns and set up WIP limits
principles emphasize that the best expertise is at each worksta- in order to get a smoother workflow. The tasks were typically
tion and no massive approval processes need to be performed chunked into ca. half-day size, i.e., three or four hours.
[36]. There is neither need nor time to carry commands and During the 7-week project, the team had one-week iterations
instructions back and forth in the organization. with weekly customer demos and retrospectives. Such a sprint-
Finally, the waterfall model does not give instructions on based, iterative Kanban is called Scrumban [12] and it provides
how the work tasks of work should be selected. Both agile a structured schedule also for the customer. Daily stand-up
and Lean thinking prioritize the satisfaction of the customer meetings (similar to the short (max. 15 minutes) project status
through a valuable product. In the Kanban method, developers meetings in Scrum) were held, as well. The customers were
can select their own work according to Lean thinking [36]. experienced technically and in the customer role. They were
There, the work is self-organizing. also obligated to commit themselves with time and interaction
and they were reachable also outside the demos so the team
III. E MPIRICAL R ESEARCH D ESIGN could check and ask about things. IT support and an external
technical consultant were available throughout the project.
This section describes the research setting for the case study
Excluding the author operations mentioned in this section, the
(Section III-A) and the research methods used (III-B).
team was on their own.
“To me, the most important thing about Kanban was “We did not have each person doing a small piece of
that I could see the board every morning and get an the system but anyone might do anything. Everyone
idea of who is doing what and if there is some- saw the whole system all the time.” [D2]
thing important waiting to be done... If there were According to the evidence, a constant drive to see the whole
many tickets, for example, in the Quality Assurance was also present in our study. The literature, however, does not
column waiting for processing, why don’t we start specify guidelines of how to actually make this happen. In the
working on them so they could flow forward!” [D1] case study, the developers attained seeing the whole by being
“The board functioned very well. If the information present at the customer demos, by being able to carry out
of the Kanban board is only in a computer system, a variety of tasks, and by exploring the market environment
it does not communicate so well.” [D4] by investigating the competitors’ websites. Nevertheless, the
study did not show whether this attempt to see the whole
Visualizing also motivated the team greatly. The developers
relates to Kanban.
could see from the movement of tickets in the Verified column
Communication was informal and free:
of the board what progress had been made.
“We had a pretty good amount of communication
“It was not so motivating to move those tickets within the team; we felt we were a single entity.
but when the Verified column began to pile up, it The communication was extremely flexible.” [D3]
motivated me.” [D2]
“I feel that communication was highly agile, free.
“The board motivated me to work faster. Once, for Everyone could comment on anything they wanted
example, we had a lot of tasks in the Verified column to. As I said, the Kanban board functioned very well
and one single ticket in the former columns on the in communication. An [electrical] information sys-
Kanban board which was my task. So I could look tem may be hidden because it locates somewhere and
and see... oh, everyone has finished the tasks... and then it does not communicate with anyone.” [D4]
you are in the Working column, so go on and do it. Such an atmosphere is a signal of trust in the team. In these
So that was a motivating thing.” [D3] positive circumstances, visualized problems on the Kanban
The visualization also helped the team to select features for board launched some discussion inside the team as we found
the customer demos, as a member stated: in the observation: A task had been in the Working column
“Selecting things for the demos was easy. You just for two days. Then the team found a way to slice it into
picked up the appropriate ones from the right side smaller tasks. Note the communication: if your task is too
of the Kanban board [i.e., the Verified column into big, someone else can find a way to slice it up.
which the tickets were accumulating].” [D1] Visualizing problems does not solve them without the
team’s communication ability so the team used communication
Altogether, the visualization of Kanban was supported in the
in order to find ways for improvements in the flow. Seeing a
case study. The Kanban board helped the developers to become
problem typically encourages motivated people to solve it on
aware of the state of the product, especially the existence of
their path to good results, as occurred in the case project. On
problems. In addition, visualization helped the developers to
the other hand, following the idea of communication and rapid
understand their work process, motivated them, and helped
feedback, as the team did, prevented errors and mistakes from
them in preparing the customer demos.
accumulating and growing to be more serious.
Understanding the whole. The team found some ways for Embracing the method. The Kanban method was found to
understanding the whole according to the corresponding Lean be intuitive. After only a short briefing the developers found
principle; the developers tried to use the competitors’ websites they understood the basics of how to use Kanban.
and everyone was present at the customer demonstrations.
“At the beginning, they [more experienced members]
Using the competitors’ websites helped the developers to bring
explained how to use the Kanban board briefly. It
new ideas to the project.
was clear to me and everything could be seen on
“The team had to pick up a website, make an the Kanban board.” [D6]
analysis of it. Otherwise people come across a set At the beginning of the observation it was found that the
of ideas, but then again, the ideas are one and the team leader used the Kanban board to teach the process: A
same all the time. Certain things impressed me on developer was doing something else than what was shown on
those websites. I made a list of them and then I the board. The team leader then called the developer over to
thought, how can I get this into my project. So I the board and told him that the board must show what he is
had suggestions and after the approval we thought, actually doing. If something is finished, he must move it to
ok, this can satisfy the customer.” [D3] the next column and take a new task.
“I think the best way was to attend the demo. The Structuring the Kanban board is not prescribed in the
customer raised a lot of questions, you knew what literature (Section II-B). This encourages thinking:
they really want, and you got a general, a big idea “You must proactively think of how the workflow is
of the project.” [D6] going.” [D4]
Moreover, everyone in the team could take any of the tasks, The columns changed during the project: the To Do list was
which eased seeing the whole: removed from the board during the second week of the project
7
but on the third week most important tasks were added to the review phase was a significant source of feedback. As stated
Right-now column. At the beginning, the team did not limit the above, the atmosphere was positive and Kanban launched
work-in-progress but during the second week the WIPs were some communication. This contained feedback, as well.
added. A member confirmed our observation that the method The approval process was lightweight. The expertise was
and altering the Kanban board was felt to be useful: within the team: there were no higher-level or external au-
“The Kanban method fitted into this project. The thorities to tell the team what they could or should do (in the
columns were altered appropriately during the sense described in Section III-A). As for single tasks, the team
project.” [D8] itself made rules for approving the task to be ready to move
Overall, the developers found Kanban to be a very intuitive to the next column. A developer had to find another developer
method as advocated in the literature. However, adjusting the to approve his or her tasks.
actual Kanban board correctly for the project took time. As “When you thought it [the task] was ready, you
an advantage, the team was itself forced to think about how moved it to the Code Review column and found a
to best adjust Kanban for the project. We found that at the reviewer for your task. Then, when he said that it
beginning it was well worth the time to address the structure was ok, the task moved to the Quality Assurance
of the board properly: adding the Code Review column (see column and you got someone to perform the quality
“Feedback” below), e.g., increased feedback and setting the assurance and when he said that it was ok then it
WIPs prevented task switching and made the flow smoother. was ready.” [D4]
Feedback from the team was constant and abundant. The This statement emphasizes how Kanban enables keeping the
team itself had defined some possibilities for feedback in their flow smooth: First, the work phases for the tickets are clear
development process; there was Code Review and Quality and logical. Second, if all other members are busy, the tickets
Assurance columns for every task. In those phases, a junior cannot pass the phase of code review or quality assurance.
found a senior to go through his or her work and give If the tickets continue accumulating in these columns, e.g., it
comments. forces the team to smooth the flow.
“Our code review phase was a significant source of The customer liked the approach, wherein the features were
feedback.” [D1] asked to be approved in the customer demonstrations:
Kanban encourages keeping plausible iterations short so the “The leader asked what they should concentrate on
feedback is expected to be instant. The team met with a during the next week... I felt it was actually a good
customer approximately once a week to get customer feedback thing to do. It makes you summarize the thematics
but the feedback from the customer would have been needed into a couple of sentences.” [C]
more often: If the customer wanted changes to the working feature, the
“The demos gave us feedback from the customer changes were sent to the To Do column.
about whether we are going in the right direction but “Everything that was in the demos was basically a
we would have needed the customer more.” [D1] working product. Sometimes, some tickets came to
“The demos were unfortunately the only chances for be corrected during the next week.” [D4]
us to actually talk with the customer... When we got Since the best expertise lay within the current reviewers and
something done we had to wait for the next demo implementers of the tasks, getting approvals from management
to get feedback from the customer.” [D4] was not needed. Kanban supported also, at least to some
During the seventh week, the progress was accelerated since extent, the final approval process made by the customer since
the customer was present daily. The customer stated: approvals were made in the demonstrations weekly.
“When in the last week I was present all the time Selecting work assignments. The developers could choose
and visited there many times a day, many things that their work tickets independently as long as they followed the
could have waited a few days more for the traditional priority order.
customer demo, were solved there.” [C] “We selected the tickets ourselves but we always
This indicates that communication with the customer and asked the team if there is something that is more
getting more feedback from the customer were not up to important if the priority is the same. There can
Kanban but the team. After all, the customer agreed about be some dependencies that you cannot see, maybe
the importance of the demonstrations: something needs to be done to get something else
working. So we asked for a lot of opinions but it
“We had these customer demos that became critical
was self-organizing.” [D4]
communication points... What is the direction and
have they done what critically was supposed to be The developers had their own motives for taking the tickets
done?... In this kind of initiative the goal is crystal due to Kanban’s liberty:
clear but still extremely movable.” [C] “You took the most important ticket that you were
However, the Kanban method did not offer any guidelines interested in.” [D1]
for feedback according to our findings. On the other hand, “You could take an easy ticket to get into the system
Kanban did encourage the team to chop tasks into small pieces, and then some more different stuff so you learn all
which enabled short feedback cycles. As it turned out, the code the time.” [D2]
8
“Something was related to my previous tasks so I we can additionally infer that the most significant influences
took it.” [D6] stem from the inherent visualization of Kanban. Besides, in
“If I picked up a task, how could it help another order to function well, Kanban, in contrast to Scrum, requires
individual so that it could reduce the massive coding visualizing the progress. This visualization was found to
part or something?” [D3] motivate people and to help in controlling the project activities
Overall, while Kanban did not offer tools for prioritization in flexible yet coherent ways by relying on the intuition of
of the tasks, the interview answers revealed that selecting work the team members and emergence. Work assignments, e.g.,
assignments can be done differently depending on the motives were found to be appropriate to select differently depending
of the workers. This is an example of how motivation can be on the motives of the workers. Apparently, such a motive-
supported by Kanban which allows carrying tasks out freely. based assigning has not been discussed in the literature. It is
also argued that motivation improves the results [55]. While
V. D ISCUSSION Kanban is not seen as a people-oriented approach, the elements
of empowerment, trust, self-organization, and setting (includ-
Table III summarizes the case study findings presented
ing Kanban) were found to function as motivators for the case
in Section IV with respect to the expected influences of
team. Whether this attributes to Kanban can be questioned.
the Kanban process model as hypothesized in the research Another supporting trait is that the non-prescribed structure
framework (Table I). Since the research data collection is of the Kanban board encouraged the team members proactively
qualitative, the summary table categorizes the evaluation by to think of what kind of workflow it should be. The simplicity
coarse-level ordinal factors. of the Kanban model allows situational adaptation, which is
crucial in today’s dynamic environment of continuously and
A. Implications rapidly changing software development.
The case study evidence (Section IV), summarized in Ta- However, we can also see that Kanban is not sufficient
ble III, supports the research framework (Table I) quite well. In for managing all the dimensions of software projects. For
total, seven of the nine team-related aspects were supported. instance, while the Kanban board helps to detect potential
This raises the question why Kanban was able to influence problems and bottlenecks early, it requires additional practices
these aspects in software development. to actually solve them. Moreover, “seeing the whole” may still
One explanation is the team’s autonomy. Self-organizing be difficult in particular with larger, complex system projects
teams have been reported to bring advantages to organizations with a simple Kanban board alone. That is, Kanban needs
[49], [50], [51]. Positive outcomes are often related to per- supportive practices and contextual linking, for example, to
formance effectiveness and members’ attitudes and behavior incorporate customer feedback. Middleton and Joyce [56] re-
[52]. The decision-making in the problem level (not, e.g., in port supportive information radiators, such as ideation pipeline
the upper management level of the organization) enables the and team performance indicators.
quick reaction ability of self-organizing teams [53]. Instead of
waiting for a manager’s approval, the team has the authority B. Validity of the Study
to take necessary actions by itself [54]. Our model (Table I) of the work of a software project is
Another is that Kanban seems to support four practices not necessarily sufficient to cover all aspects of work; there
explaining successful implementation of projects. These are are probably other perspectives than what we selected for the
goals, resources, structures, and controls [20] that guide the model. It covers only part of the work a software developer
focus on (1) ensuring agreement with goals, (2) obtaining does by describing nine aspects based on the literature.
resources, (3) monitoring and learning, (4) exercising influence Even though our results may not be directly generalizable,
(using individual initiative and creating appropriate struc- they may give hints on how Kanban can be used in real-life
tures), and (5) ensuring effective communication [21]. Kanban software projects. The project was of reasonable size and we
encourages people to use each of these except obtaining were able to collect a lot of material to conduct our study.
resources that does not relate to daily team practices. Altogether, the results of the study provide a base for further
Finally, Kanban takes into account the dynamic nature studies and applications in industrial settings.
of software development including unrealistic schedules and The Kanban method was new to every member of the case
continuous requirement changes. Through decades, these two study project. Therefore the methods of work as well as the
factors have been ranked up to the most frequent factors Kanban board evolved during the project. However, Kanban
explaining why software projects fail [16], [26]. as a method is flexible and does not require strict ways to
The Kanban-related literature recommends an approach work. Moreover, three of the developers we interviewed did
wherein the problems are surfaced immediately in order to not have much experience in developing software systems.
solve them quickly [12], [36]. Self-organizing teams have such Their opinions of the impacts of work were based only on
a quick reaction ability [53]. Regarding Lean thinking, Liker this project. However, in addition to interviews, we also used
[8] suggests that problems should always be solved at the root the direct and video observation that were compared with
cause. The root cause is then eliminated in order to prevent the interviews to confirm our understanding of the project.
problems in the future. Besides, one of the interviewees had over two years of
Our study supports the literature that assumes Kanban to experience and had used both the waterfall model and agile
be an intuitive method. Based on the empirical evidence, process models several times.
9
We did not find any ready-made model from the literature or guarantee success. Nevertheless, being a relatively basic
to test empirically. Regardless, the existing research about control tool, Kanban needs to be supported with additional
software process models enabled us to build our own model practices and connections.
(Table I) about the work of a software project based on the This study leads to some further research work: refining the
established groundings. Now, when the laboratory results are research instrument (tables I and II), conducting more empir-
available, further research can compare the obtained results ical investigations also in industrial settings, and elaborating
with similar projects where other methods are used. the research model to capture quantitative performance effects
Regarding the use of students as study objects, it is quite of the Kanban development. More generally, there could also
well established that when one seeks to establish a trend, their be some potential for more cross-disciplinary learning since
use is quite acceptable. Tichy [57] uses a method compari- Kanban has been used for decades in the manufacturing
son as a specific target of study where the use of students environment. Despite this, the knowledge-intensive nature of
is a valid approach. Others have made similar suggestions. software development work must now be taken into account.
Höst et al. [58], for example, conclude that students are Altogether, the more Kanban is being studied in the field of
indeed relevant when considering experimentation in software software development, the more evidence seems to be found of
engineering. Kitchenham et al. [59] remind us not to look its adaptability into software engineering projects. Impacts of
down on studies focusing on gathering empirical data from Kanban on software development work is an area of research
student experimentation or projects. Madeyski [60] also argues wherein the potential still lies without having utilized it widely.
strongly for the benefit of using students as study objects. That
specific study focused on test-driven development and pair ACKNOWLEDGMENTS
programming. In addition, Arisholm and Sjøberg [61] argue This work was supported by TEKES as a part of the
that the programming skills of Master students and senior Cloud Software program of Tivit (Finnish Strategic Centre for
programmers in the industry can be considered equal. Science, Technology and Innovation in the field of ICT). The
authors would also like to thank the case project team members
VI. C ONCLUSIONS for their cooperation, Henri Karhatsu for his contribution,
There is not much empirical research about Kanban as a reviewers for their comments, and the staff of the computing
software process method. Although Kanban is well known in facilities at the Department of Computer Science, University
production fields, it has not yet been widely investigated in of Helsinki and Helsinki Institute of Information Technology,
software development processes. Moreover, the impacts of the who operate the Software Factory technical environment.
process model on the work of a software project itself have
R EFERENCES
not been studied much. In this paper, we proposed a research
framework for those purposes. In the empirical case study, we [1] J. Womack and D. Jones, “From lean production to the lean enterprise,”
Harward Business Review, 1994.
then tested this model in practice. [2] P. M. Senge, The fifth discipline: The art and practise of the learning
The investigation indicated considerable benefits of the organization. New York, NY, USA: Doupleday Currency, 1990.
Kanban process model including motivation and control over [3] M. Pedler, J. Bourgoyne, and T. Boydell, The learning company: A
strategy for sustainable development. London, UK: Mcgraw-Hill, 1991.
the project activities. These, on their parts, benefit software [4] J. Redding and R. F. Catalanello, Strategic readiness: The making of the
project management. This is an advantage for practitioners: learning organisation. San Fransisco, CA, USA: Jossey-Bass, 1994.
by being aware of the nine aspects of work suggested in the [5] C. Shinkle, “Applying the Dreyfus model of skill acquisition to the
adoption of Kanban systems at software engineering professionals
study, management can use them as lenses to concretize the (SEP),” in Agile Conference (AGILE) ’09., August 2009, pp. 186–191.
basically abstract environment of the software development [6] A Guide to the Project Management Body of Knowledge, 4th ed.
process. For industry, the great value of Kanban lies in its Pennsylvania, USA: Project Management Institute, Inc., 2008.
[7] S. Raman, “Lean software development: Is it feasible?” in Proceedigns
real-time visualization. However, it is important to remember of the 17th Digital Avionics Systems Conference (DASC) ’98, vol. 1.
that visualization alone does not replace concrete actions The AIAA/IEEE/SAE, 1998, pp. C13/1–C13/8 vol.1.
10
[8] J. Liker, The Toyota Way. New York, NY, USA: McGraw-Hill, 2004. [35] P. Abrahamsson, O. Salo, J. Ronkainen, and J. Warsta, Agile Software
[9] P. Middleton, “Lean software development: Two case studies,” Software Development Methods: Review and Analysis, ser. VTT Publications.
Quality Journal, vol. 9, pp. 241–252, 2001. Espoo, Finland: VTT Technical Research Centre of Finland, 2002, no.
[10] M. Poppendieck and T. Poppendieck, Implementing Lean Software 478.
Development: From Concept to Cash. Addison-Wesley, 2007. [36] M. Poppendieck and T. Poppendieck, Lean software development: An
[11] D. G. Reinertsen, The Principles of Product Development Flow: Second agile toolkit. Boston, Massachusetts, USA: Addison Wesley, 2003.
Generation Lean Product Development. Redondo Beach, CA, USA: [37] I. Sommerville, Software Engineering, 8th ed. Addison-Wesley, 2007.
Celeritas Publishing, 2009. [38] K. Schwaber, “Scrum development process,” in Business object design
[12] C. Ladas, Scrumban: Essays on Kanban Systems for Lean software and implementation workshop, ser. OOPSLA ’95. New York, NY, USA:
development. Seattle, WA, USA: Modus Cooperandi Press, 2009. ACM, 1995.
[13] G. A. Howell, H. Macomber, L. Koskela, and J. Draper, “Leadership [39] K. Petersen, Implementing Lean and Agile software development in
and project management: Time for a shift from fayol to flores,” in industry, ser. Doctoral Thesis No 2010:04. Sweden: Blekinge Institute
Proceedings of the 12th Annual Conference of the International Group of Technology, School of Computing, 2010.
for Lean Construction (IGLC-12), August 2004, pp. 22–29. [40] V. Kajaste and T. Liukko, Lean-toiminta. Tampere, Finland: Metalli-
[14] R. Conradi and A. Fuggetta, “Improving software process improvement,” teollisuuden Kustannus Oy, 1994.
IEEE Software, vol. 19, no. 4, pp. 92–99, Jul/Aug 2002. [41] C. Larman and V. Basili, “Iterative and incremental developments: A
[15] B. Curtis, H. Krasner, and N. Iscoe, “A field study of the software design brief history,” IEEE Computer, vol. 36, no. 6, pp. 47–56, June 2003.
process for large systems,” Communications of the ACM, vol. 31, no. 11, [42] V. Basili and A. Turner, “Iterative enhancement: A practical technique
pp. 1268–1287, 1988. for software development,” IEEE Transactions on Software Engineering,
[16] B. Boehm, “Software risk management: Principles and practices,” IEEE vol. 1, no. 4, pp. 390–396, 1975.
Software, vol. 8, no. 1, pp. 32–41, 1991. [43] C. Larman, Agile & iterative development: A manager’s guide, 9th ed.
[17] D. Phan, D. Vogel, and J. Nunamaker, “The search for perfect project Westford, Massachusetts, USA: Addison-Wesley, 2007.
management,” Computerworld, vol. 22, no. 39, pp. 95–100, 1998. [44] P. Abrahamsson, “Unique infrastructure investment: Introducing the
[18] J. Jurison, “Software project management: the manager’s view,” Com- Software Factory concept,” Software Factory Magazine, vol. 1, no. 1,
munications of the AIS, vol. 2, no. September, 1999. pp. 2–3, 2010.
[19] J. Gunson, J.-P. de Blasis, and M. Neary, Leadership in real time: [45] F. Fagerholm, “Psychometric measurements in software development,”
A model of five levels of attributes needed by a project manager in Software Factory Magazine, vol. 1, no. 1, pp. 12–13, 2010.
ERP implementations, ser. UG-HEC-CR. Geneva, Switzerland: HEC [46] R. Yin, Case study research: Design and methods. CA, USA: Sage
Geneva, University of Geneva, 2003, no. 03-15. Publications, 1991.
[47] M. Q. Patton, Qualitative evaluation and research methods, 2nd ed.
[20] D. Boddy and D. Macbeth, “Prescriptions for managing change: A
Sage, 1990.
survey of their effects in projects to implement collaborative working
[48] H. Karhatsu, M. Ikonen, P. Kettunen, F. Fagerholm, and P. Abrahamsson,
between organizations,” International Journal of Project Management,
“Building blocks for self-organizing software development teams: A
vol. 18, no. 5, pp. 297–306, 2000.
framework model and empirical pilot study,” in Proceedings of the
[21] D. Boddy, Managing Projects: Building and Leading the Team. Prentice
2nd International Conference on Software Technology and Engineering
Hall International UK Limited / Pearson Education, 2002.
(ICSTE ’10), vol. 1. IEEE, October 2010, pp. V1–297–V1–304.
[22] T. Hutchings, M. G. Hyde, D. Marca, and L. Cohen, “Process im-
[49] L. Behnke, R. Hamlin, and B. Smoak, “The evolution of employee
provement that lasts: An integrated training and consulting method,”
empowerment,” IEEE Transactions on Semiconductor Manufacturing,
Communications of the ACM, vol. 36, no. 10, pp. 105–113, 1993.
vol. 6, no. 2, pp. 143–155, may 1993.
[23] N. B. Moe, T. Dingsøyr, and E. Røyrvik, “Putting agile teamwork to the [50] R. Guzzo and M. Dickson, “Teams in organizations: Recent research on
test: An preliminary instrument for empirically assessing and improving performance and effectiveness,” Annual Review of Psychology, vol. 47,
agile software development,” in XP 2009. Springer, 2009, pp. 114–123. no. 1, pp. 307–338, 1996.
[24] V. Bullen and J. Rockart, A Primer on Critical Success Factors. [51] B. D. Janz, “The best and worst of teams: Self-directed work teams as
Homewood, Illinois, USA: Dow Jones-Irwin, 1986. an information systems development workforce strategy,” in SIGCPR
[25] S. Teasley, L. Covi, M. S. Krishnan, and J. S. Olson, “How does radical ’98: Proceedings of the 1998 ACM SIGCPR conference on Computer
collocation help a team succeed?” in CSCW ’00: Proceedings of the personnel research. New York, NY, USA: ACM, 1998, pp. 59–67.
2000 ACM conference on Computer supported cooperative work. New [52] S. Cohen and D. Bailey, “What makes teams work: Group effectiveness
York, NY, USA: ACM, 2000, pp. 339–346. research from the shop floor to the executive suite,” Jounal of Manage-
[26] T. Addison and S. Vallabh, “Controlling software project risks: An ment, vol. 23, no. 3, pp. 239–290, 1997.
empirical study of methods used by experienced project managers,” in [53] J. Tata and S. Prasad, “Team self-management, organizational structure,
Proceedings of the SAICSIT’02. South African Institute for Computer and judgments of team effectiveness,” Jounal of Managerial Issues, vol.
Scientists and Information Technologists, 2002, pp. 128–140. XVI, no. 2, pp. 248–265, 2004.
[27] K. Hiranabe, “Kanban applied to software development: From ag- [54] N. Moe, T. Dingsøyr, and T. Dybå, “Overcoming barriers to self-
ile to lean,” 2008, http://www.infoq.com/articles/hiranabe-lean-agile- management in software teams,” IEEE Software, vol. 26, no. 6, pp.
kanban [28-Mar-2010]. 20–26, 2009.
[28] M. Becker and H. Szczerbicka, “Modeling and optimization of Kan- [55] S. P. Robbins, Essentials of organizational behavior. San Diego State
ban controlled manufacturing systems with GSPN including QN,” in University, Prentice Hall, 2002.
International Conference on Systems, Man, and Cybernetics ’98, vol. 1. [56] P. Middleton and D. Joyce, “Lean software management: BBC World-
IEEE, October 1998, pp. 570–575 vol.1. wide case study,” IEEE Transactions on Engineering Management,
[29] L. Chai, “E-based inter-enterprise supply chain Kanban for demand and accepted Sept 2010, to be published.
order fulfilment management,” in International Conference on Emerging [57] W. Tichy, “Hints for reviewing empirical work in software engineering,”
Technologies and Factory Automation EFTA ’08. IEEE, September Journal of Empirical Software Engineering, vol. 5, no. 4, pp. 309–312,
2008, pp. 33–35. 2000.
[30] H. Kniberg, “Kanban vs. Scrum: How to make the most of both,” 2009, [58] M. Höst, B. Regnell, and C. Wohlin, “Using students as subjects: A
http://www.crisp.se/henrik.kniberg/Kanban-vs-Scrum.pdf [18-Jan-2010]. comparative study of students and professionals in lead-time impact
[31] J. M. Gross and K. R. McInnis, Kanban made simple: Demystifying and assessments,” Journal of Empirical Software Engineering, vol. 5, no. 3,
applying Toyota’s legendary manufacturing process. New York, NY, pp. 201–214, 2000.
USA: AMACOM, 2003. [59] B. Kitchenham, S. Pfleeger, L. Pickard, P. Jones, D. Hoaglin, K. Emam,
[32] A. Alwardt, N. Mikeska, R. Pandorf, and P. Tarpley, “A lean approach and J. Rosenberg, “Preliminary guidelines for empirical research for
to designing for software testability,” in AUTOTESTCON ’09. IEEE, empirical research in software engineering,” IEEE Transactions on
2009, pp. 178–183. Software Engineering, vol. 28, no. 8, pp. 721–734, 2002.
[33] W. W. Royce, “Managing the development of large software systems: [60] L. Madeyski, Test-driven development: An empirical evaluation of agile
Concepts and techniques,” in ICSE ’87: Proceedings of the 9th interna- practice. Berlin Heidelberg: Springer–Verlag, 2010.
tional conference on Software Engineering. Los Alamitos, CA, USA: [61] E. Arisholm and D. Sjøberg, “Evaluating the effect of a delegated
IEEE Computer Society Press, 1987, pp. 328–338. versus centralized control style on the maintainability of object-oriented
[34] K. Beck et al., “Manifesto for agile software development,” 2001, software,” IEEE Transactions on Software Engineering, vol. 30, no. 8,
http://agilemanifesto.org/ [26-Oct-2010]. pp. 521–534, August 2004.