Вы находитесь на странице: 1из 11

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/221473880

On the Impact of Kanban on Software Project Work An Empirical Case Study


Investigation

Conference Paper · April 2011


DOI: 10.1109/ICECCS.2011.37 · Source: DBLP

CITATIONS READS
35 1,609

5 authors, including:

Elena Pirinen Fabian Fagerholm


Aalto University University of Helsinki
3 PUBLICATIONS   35 CITATIONS    56 PUBLICATIONS   498 CITATIONS   

SEE PROFILE SEE PROFILE

Petri Kettunen Pekka Abrahamsson


University of Helsinki University of Jyväskylä
36 PUBLICATIONS   433 CITATIONS    224 PUBLICATIONS   5,332 CITATIONS   

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Personal Software Process View project

Bolzano Raspberry Pi Experiment View project

All content following this page was uploaded by Elena Pirinen on 05 March 2015.

The user has requested enhancement of the downloaded file.


1

On the Impact of Kanban on Software Project Work


An Empirical Case Study Investigation
Marko Ikonen1 Elena Pirinen2 Fabian Fagerholm1 Petri Kettunen1 Pekka Abrahamsson1
1) Department of Computer Science 2) Project Management Office

University of Helsinki, Finland Aalto University, Finland


firstname.lastname@cs.helsinki.fi firstname.lastname@aalto.fi

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

its modeling languages, editors, and interpreters has only been


small [14]. In the 1980s, crucial support processes, such as
learning, technical communication, requirements negotiation,
and customer interaction, were poorly described in software
process models [15]. The reasons for most project failures
were seen in the managerial, not in the technical sector [16],
[17] and can often be traced to poor team performance. This
is caused by inadequate attention to people and teamwork
issues [18] since people have a tendency to concentrate on
the technical aspects (hardware and software) rather than the
Fig. 1. An example of one implementation of the Kanban board used in a
peopleware and impermanence [19]. software development project.
Boddy and Macbeth [20] address four practices explaining
successful implementation of projects: goals, resources, struc-
tures, and controls. These practices create the need for man-
It is claimed that Kanban is one of the important elements
agers to focus on the following five areas: (1) ensuring agree-
that executes Lean thinking in practice [28], [29]. Kanban
ment with goals, (2) obtaining resources, (3) monitoring and
is also one of the key operation management tools in Lean
learning, (4) exercising influence (using individual initiative
manufacturing [8]. It drives project teams to visualize the
and creating appropriate structures), and (5) ensuring effective
workflow, limit work in progress (WIP) at each workflow
communication [21]. Regarding the group formation, the key
stage, and measure the cycle time (i.e., average time to
elements are team-based learning, group behavior, and ways
complete one task) [30].
in which people create purposes and communicate [22]. In
software development, Moe et al. [23] address five dimensions Despite the demand to visualize the workflow, there are
in order to improve the teamwork: shared leadership, team no particular rules concerning how to implement the content
orientation, redundancy, learning, and autonomy. The most of the Kanban board. In their basic form in production
salient problems reported in projects concerning additional environments, Kanban controls are typically implemented with
efforts or mistakes include communication and coordination physical index cards (usually called tickets) moving along with
breakdowns [15], [18], [24]. Teasley et al. [25] even show the material. The cards then act as the flow-control tickets
that the productivity in teams can be doubled by easing their between the different work stations or processes. Figure 1
access to each other and by making work artifacts visible to all. illustrates one realization of Kanban as a table (such as a wall-
Moreover, Addison and Vallabh [26] identify that two of the paper with sticky notes). Each project task (card) flows from
most frequent risk factors in software projects are unrealistic one state to another (from left to right) as it progresses. Hence,
schedules and budgets, and continuous requirement changes. the overall project situation can be seen at a glance while
Even 11 years before this identification, Boehm [16] ranked the dynamic moving of the task cards indicates the project
these two factors among the top six of the software risk factors. progress (or blocking) over time.
In Kanban-driven software development, the threat of these Benefits of Kanban scheduling are reduced inventory (si-
risks is lower: Related to the schedule risk, once the duration multaneous WIP), improved flow, prevented overproduction,
of a project has been determined, the customer of the project operations-level control, visualized schedule and management
prioritizes (typically in cooperation with the developers) the of the process, improved responsiveness to changes in demand,
goals. Due to the smooth task flow and short feedback loops minimized risks of inventory obsolescence, and increased
(ensuring that tasks are kept small), the schedule and budget ability to manage the supply change [31]. As a result, Kanban
can be specified based on facts, not on guesses. Regarding the attempts to lower production costs, increase quality, and ac-
scope risk, Kanban has been designed for continuous require- celerate cycle time [8]. Meanwhile, inventories and problems
ment changes. At the beginning of a project, determining all caused by sudden changes will become more apparent.
the requirements precisely would be hard or even impossible. However, while Kanban attempts to clarify workers’ aware-
Thereby, one principle of Lean thinking, “defer commitment” ness of the current production issues and forthcoming tasks, it
meaning “decide as late as possible”, is to make the decisions does not recommend any particular project phases, milestones,
with more fact-based information and with less guessing [10]. or partitioning tasks. Due to this liberty, it is up to a project
When a project moves on, more knowledge is attained, which team to build and customize the appropriate practices for
helps the customer decide on current, true needs instead of its project. Some such practices have been suggested in the
“just-in-case” features. When the tasks are small, the task literature. Ladas [12], for example, suggests that the amount
assignments can be reorganized faster, which increases control of tasks in progress simultaneously should be adjusted to the
in requirement change management. reasonable capacity in use. Middleton [9] claims that this
amount should be minimized in order to keep quality high.
Shinkle [5], instead, argues that minimizing this amount is
B. Kanban Software Development not the best solution.
The Japanese word kanban refers to a signboard. When Project flow stages wherein the tasks progress from stage to
the term is used in manufacturing, it means a scheduling stage have been suggested as well. If each stage, such as to do,
system that hints what, when, and how much to produce [27]. design, and coding, gets its own “ready” stage, the blockages
3

Aspect of Work Expected Influences of Kanban


Documentation Only if the customer needs and favors it The first aspect of work is the amount and type of
Problem solving Unexpected problems are found quickly on documentation. Software domain and criticality have a great
the Kanban board; they are thus tackled influence on what needs to be documented in software de-
immediately
Visualization The work is visualized on the Kanban board
velopment. The waterfall model typically implies a lot of
Understanding the One of the Lean key principles; documentation [36] since every phase produces documents for
whole Kanban does not offer tools though the next phase. Agile Manifesto [34], instead, prefers “working
Communication Rapid and plenty software over comprehensive documentation”. This implies in
Embracing the method An intuitive method (e.g., visualization)
Feedback Rapid and plenty; practice that the documentation needs are identified in close
Supports also regular meetings with the collaboration with the customer. In Kanban, the customer pulls
customer results from the software developers rather than the developers
Approval process Best expertise is at each workstation or
developer; pushing results to the customer [36]. Therefore, it could be
no complex approval processes expected that documents are not produced in Kanban without
Selecting work assign- Developers select and pull their work vol- the need. Yet, good practice in software development expects
ments untary and individually
at least the documentation of critical system design aspects
TABLE I alongside the architectural issues as well as the following of
R ESEARCH FRAMEWORK : N INE ASPECTS OF PROJECT WORK .
coding conventions including code commenting guidelines.
Regarding problem solving, Sommerville [37] suggests that
the waterfall model may hide problems. Problems surface
late in the development process and they are dealt with by a
in the workflow become more visible [12]. Alwardt et al. [32] workaround or even ignored. In contrast, agile principles [34]
state that tasks should be prioritized. Moreover, laborious tasks refer to delivering working software and to “welcome chang-
should be partitioned before setting them as assigned [5]. ing requirements, even late in development”. Lean thinking is
While the operations management field has investigated even more concrete since problems are required to be solved
Kanban-based production for years, not much empirical evi- immediately and completely in order to prevent the same kinds
dence has been published in software development. It follows of problems in the future [8]. Using Kanban, problems can be
that the presumed advantages and suggested control rules, such found almost immediately after their occurrence [12].
as WIP sizes, remain largely anecdotal and not necessarily Visualizing the development process helps the developers to
generally applicable. see the state of the development process: how much work has
Figure 1 demonstrates the meaning of WIPs. In the “Code already been done and how much is yet to be done [36]. The
Review” column, the WIP number has been set at two. This waterfall model is visual because after each phase a tangible
limit means that no more than two tickets are allowed to be document is made which shows the amount of work [37]. The
in the column simultaneously. If a task being code reviewed agile principles do not emphasize visualization. Even though
were problematic, carrying it out without the assistance of the agile Scrum process model [38], e.g, asks to monitor and
others would restrain the flow. Other people, once they have update the progress, its visualization focuses on the time-
finished their tasks, cannot put another ticket into the column limited sprints. The Kanban method, instead, visualizes all
because it is already full (due to the WIP limit). They rather work flowing through work stages on the Kanban board [36].
have to help with the problematic ticket in order to free some By looking at this board, everyone can see how a single task
space in the column for new tickets. In this way, the flow is as well as the whole project as a whole is progressing.
supposed to be smooth and bottlenecks avoidable. The waterfall model supports understanding the whole
since the system is known after the specification phase [33].
Again, the agile principles explicitly ignore this despite that
C. Research Framework customer satisfaction, one key of Agile Manifesto [34], is a
In order to analyze the effects of Kanban upon software part of seeing the whole [39]. On the other hand, the Lean
project management, we develop a research framework. This principle of “optimize (or see) the whole” has been noticed in
framework (Table I) comprises nine literature-based aspects Kanban since the Kanban board shows the work in progress,
of project work. It is expected, based on the literature, that what needs to be done, and what has been done already.
the use of the Kanban process model influences all aspects However, the board does not tell us how much work there
of the project work. Next, the influence of the nine aspects is altogether [36].
is reflected on the Kanban process model. In order to ground The waterfall model does not encourage informal commu-
them, the aspects are additionally contrasted with the waterfall nication [36]. Each phase, instead, produces explicit doc-
model baseline [33]. This is because of its historically strong umentation which the developers follow in the next phase.
and long-term impact on software development projects. In Agile Manifesto [34], instead, emphasizes communication. In
addition to the waterfall model, the values of agile approach Kanban, communication is important and it should be free and
(see Agile Manifesto [34]) is taken into account. The reason open, which follows Lean thinking [40].
for this additional viewpoint is that agile methods [35] have Poppendieck and Poppendieck [36] suggest that if a process
been considered to provide a solution for many problems de- model being used is not easy to adopt, the developers will
rived from the plan-driven, conventional software development do their work in their own way and ignore the method. The
method, such as the waterfall model. waterfall model is considered simple to explain and recall but
4

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.

A. Research Environment and Case Project B. Research Methods


Software Factory is a novel software engineering research After constructing the research framework (Table I) based
and education setting at the University of Helsinki [44]. on the literature, the case project data were used for its empir-
It is basically an industry-oriented R&D laboratory envi- ical evaluation. The research methods in the case study were
ronment for conducting software business projects. It also both video and direct observation [46], and thematic interviews
has an educational purpose and provides computer science [47]. The direct observation that was performed by being
students with an opportunity to put software engineering physically present in the Factory but without participating in
and project management theory into practice. The concept the project work, lasted eight days. The video observation,
comprises a physical laboratory environment coupled with a in its turn, was focused on a particular session involving the
novel operational model. The laboratory room is equipped development team and the customer representative working
with sophisticated computer and monitoring equipment and together including the Kanban board.
equipment for software development, such as a Smartboard After the project, 8 software developers including the team
and configurable visualization screens. These high-end facil- leader were interviewed. The case study focused on the team
ities make it possible not only to conduct actual software level because the work aspects (Table I), such as communica-
engineering work in a modern fashion but also to collect online tion or feedback, relate mostly to the team level and are part of
5

Aspect of Work Questions


Documentation How would you describe the documents that were view recordings. For identification the developers have been
made? How many documents? Why so little? numbered from D1 (developer #1) to D8 (developer #8). D1
Problem solving What caused problems in the development? was the team leader. The customer representatives have been
How did the problems occur?
How did you deal with them?
marked C.
What unexpected things did you face? Documentation for the customer was minimal; the cus-
How did you deal with them? tomer was not interested in documents so the team only
Visualization How would you describe your understanding of the
work process?
did the documents they needed for their own work, such as
How would you describe the workflow? instructions for the developers to install the local software
What do you think about the workflow being on the environment. A member of the project stated:
board?
Did you watch the board? “The customer was not interested in reading any
Why did the board change? documents so we had no need to make them.” [D2]
Understanding How did you try to understand the whole picture,
the whole the whole domain? Documentation in Kanban should be used only for produc-
What made it easier to understand the whole? ing value. This need for documentation was not noticed in
What made it more difficult? customer demonstrations either. Nevertheless, our observation
Communication How much opportunities did you have for discus-
sions with others?
revealed that the team wrote necessary documents for internal
Why was there a lot of communication? use but did not waste its time in preparing, e.g., massive
Embracing the How did you learn the development method? requirement documents.
method What have you learnt about it?
Does the board help you to learn the method? Why?
Problem solving. Problems were solved as soon as they
How do you think everyone was interested in de- occurred, as the observation revealed: A developer came to
veloping and using the method? work at 8:45 AM and asked right away: “Why are the
Feedback How much support and encouragement did you get? tests failing?” Then, another developer started to help him
By whom?
How did the team members support each other? immediately since this task had a high priority and delaying
Did you get feedback? When? the tests would have restrained the ticket flow on the Kanban
Approval How did things get approved? board. Comprehensive integration testing that was performed
process Who approved taking the next task?
Who approved that the task is done? during the last week of the project detected only a few defects,
Selecting work How would you describe selection of the tasks? as a member stated:
assignments On what grounds did you select your tasks?
“We made quite comprehensive integration testing
TABLE II during the last week. Hardly any traditional bugs
T HE OPEN - ENDED QUESTIONS USED IN THE THEME INTERVIEW.
were detected. The coverage of the [code] lines was
about 80 %. Rather, we detected more bugs in the
interface.” [D1]
This low detection rate follows the ideal situation in Kanban:
interpersonal interaction. The developers were chosen on the since the defects are solved right after their occurrence, they
ground of their roles in the team: one was the team leader, two cannot accumulate at the end.
were senior developers who had more experience of software If a developer had a problem with his or her tasks, it
development, and five were junior developers. Each interview had to be solved before taking on a new task. Therefore,
lasted about one hour. The observations were recorded in a problems appeared as blockages in the workflow. The ability
diary and the interviews were taped. Open-ended questions and of Kanban to illuminate problems appeared when some tasks
the semi-structured theme interview technique were used. The were assigned, as a member said:
questions were compiled following the nine aspects of work
“One developer was about to take a new ticket,
(Table I) and are presented in Table II. The reasoning behind
but the work-in-progress limit did not allow this.
the questions was to find out how each particular aspect was
I understood then the point of limiting the work-
experienced and done in the project. The customer interview
in-progress, the blockages must be removed before
data gathered in the concurrent study [48] was used to support
you can take on a new task.” [D1]
the team members’ side of the story. The answers related to
customer demonstrations, time between demonstrations, and Instead of hiding the problems, the team brought them to
communication with the team. the surface immediately, which enabled solving them quickly.
Related to Lean thinking, problems should always be solved
at the root cause. The root cause is then eliminated in order to
IV. R ESULTS prevent problems in the future. The team seemed to follow
This section evaluates the research model (Table I) with the this suggestion since the comprehensive integration testing
empirical case study data regarding the impacts of Kanban on did not detect many defects from the code (but rather from
the work of a software developer as stated in Section II-C. the interface that is harder to test automatically). While we
All nine aspects of the model are involved. The main theme cannot connect Kanban to this root-cause elimination, Kanban
questions used for the interviews are presented in Table II. definitely drove the team to solve problems immediately in
Moreover, the questions of the thematic interviews steered order to prevent blockages on the Kanban board.
the video observation by focusing the scope on the nine Visualization. The Kanban board was visual and the devel-
aspects. The quotations presented below come from the inter- opers found it useful and informative, as members confirmed:
6

“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

Aspect of Work Evidence (Case Study)


(Research Framework) Expected Influences of Kanban (Table I) Inside the Team Customer Interaction
Documentation Only if needed and favored supported supported
Problem solving Problems are found quickly on the Kanban board; they are thus tackled supported no evidence
immediately
Visualization The work is visualized on the Kanban board supported no evidence
Understanding the whole One of the Lean key principles; Kanban does not offer tools though no evidence no evidence
Communication Rapid and plenty supported no evidence
Embracing the method An intuitive method (e.g., visualization) supported no evidence
Feedback Rapid and plenty supported no evidence
Supports also regular meetings with the customer no evidence no evidence
Approval process Best expertise is at each workstation or developer; no complex supported somewhat supported
approval processes
Selecting work assignments Developers select and pull their work voluntary and individually supported somewhat supported
TABLE III
E MPIRICAL EVALUATION OF THE K ANBAN - RELATED IMPACTS WITH RESPECT TO THE RESEARCH FRAMEWORK (TABLE I).

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.

View publication stats

Вам также может понравиться