Research
Evolution in Software Development
Introduction
Software
development research has changed significantly over the past 20 years. While in the late 1980s researchers were
concerned with user acceptance of computers in general (Forrest, Stegelin & Novak 1986), in the past few years
researchers have been more concerned with why people accept or reject certain
software products, and not others (Khanfar,
et al. 2008; Garrity et al. 2007).
This literature review will explore the changes in research methods by
taking a sampling of research articles from the late 1980’s, and articles from
recent years.
This literature
review will examine 27 peer reviewed articles relating to software
development. Sixteen of these articles were
written in the past 5 years and eleven were written in the late 1980’s. Using these articles, I will examine the
changes over time to the software research process.
By reviewing the
differences in software development research I will get a picture of where
software development research is going in the future. In this review I will look at information
such as sample size, methodology, statistical analysis being preformed, and
other factors such as use of students in research. This paper will show the trends in software
development research and how they affect researchers.
Literature Review
Research methods
Although the
basic way people research has not changed over the past 20 years, the tools
available to researchers and the methods that they tend to use has. In my study of 27 articles I found that 54% of
articles written before 1990 were qualitative, while only 6% of current
articles written in the past five years used a qualitative method.
Quantitative
methods are being used more frequently in recent years. This trend may reflect the ease in which data
is easily computer tabulated or may be due to a preference by researchers for
hard data. When Ali Montazemi researched
user satisfaction (1988), he chose to interview people. In these seminal types of interviews he found
information that quantitative research could have missed. Montazemi, for example, he found that 20% of
people would have preferred a query system that gave them “what-if”
scenarios. Today, this type of research today
would be a separate topic of decision support systems. In contrast, when Garrity et al. did his
research on user satisfaction on websites, he chose to have users use a quantitative
study. With modern tools Garrity et al
was able to do a more extensive statistical analysis using statistical
techniques such as average variance extracted, sum square, and f-test (p.
27). This type of analysis speaks to the
growing maturity of software development research.
Modern
researchers have more tools to analyze data.
Qualitative data lends itself more readily to this type of
analysis. Modern tools make it possible
to analyze more data. There are tools that exist now that did not exist 20
years ago. There are also more
categories of research than there were 20 years ago. In the research field of software development
researchers are looking at project management, testing, security, websites and
usability to name a few.
Sample
Populations
Now
researchers have new techniques for sending surveys. Phone and mail surveys can be expensive in
both time and money. Modern surveys can
be done cheaper and more efficiently.
When one group of researchers, for example, wanted to have a large
sample size they sent emails out to 10,000 people, and 3276 people responded
(Tam et al. p. 280). First class postage
as of the time of writing this is 42 cents.
Sending this type of survey through the mail would cost $4,200. This type of expense is out of the range of
many research projects.
When looking only at direct surveys of people without the help of modern data collection methods there is virtually no difference between the two time periods. The data collected in the 1980’s had, on average, surveyed 123 people while the data collected in the past few years had on average 124. Interviewing and surveying people clearly takes longer than more modern methods. While these interview may be necessary in qualitative research the amount of data collected can be quite small compared to data mining through already existing information systems or email surveys.
When looking only at direct surveys of people without the help of modern data collection methods there is virtually no difference between the two time periods. The data collected in the 1980’s had, on average, surveyed 123 people while the data collected in the past few years had on average 124. Interviewing and surveying people clearly takes longer than more modern methods. While these interview may be necessary in qualitative research the amount of data collected can be quite small compared to data mining through already existing information systems or email surveys.
Statistical Analysis
One thing that is apparent in the studies
is that modern research employs more statistics.
With the
advent of research software, researchers are able to take the same data and
quickly run multiple statistical analyses to help determine the best
analysis. Table 3 shows the statistical
methods used in research in the 1980’s. In
table 3 there is only one test preformed on each set of data. In more recent studies, as seen in table 4, one
can see that researchers performed more kinds of statistical analysis. In the case of Banker et al the group
performed three tests to analyze their data (2006).
Software
products such as SPSS make it possible to take a dataset and mine it for
correlation. Garriey et al (2007) did
this when they looked at three different statistics to come to their
conclusion. The trend now is to do a more in-depth analysis. Researchers have the ability to gather vast
amount of data and perform complex statistical analysis on them. Researchers 20 years ago did not have this
option. For them research often had to
be done by hand. This would naturally
lead to more work on the part of the researchers. Performing statistical analysis by hand can
be a time consuming process. While today
performing a complex statistical analysis could take hours in the past it could
take days. Statistical analysis without
the benefit of statistical software can be wrought with mathematical mistakes. Human error plays a larger factor when surveys
have been hand coded then that data has been hand analyzed.
Response
Rates
Response
rates between the two time periods vary.
In the 1980's researchers used more college students who were forced to
take the surveys (Jarvenpaa et al, 1988; Dos Santos et al, 1988; Kirs et al.
1989). They also relied on people volunteering (Jarvenpaa et al, 1988) more
often. These types of candidates often
do not represent the average person from the population. When a general inquiry is made for volunteers
or participation is compulsory there is no response rate. We see only two response rates in the earlier
surveys.
There
were two response rates out of our 10 research articles. Of these the response rates were 36% and
47%. These rates are far lower than the response
rates in more recent studies. The
response rates for data collected for people is 81%. Even email response rates in our survey are
32% which is closer to standards 20 years ago than today's standards.
Response
rates differ depending on the type of medium that people are using to
survey. An email to CEOs may have a
lesser response rate than someone standing at a shopping mall with a clip
board. The more people feel connected to the
researcher the more they are willing to participate in the research.
In articles
of the past 20 years there is a tendency away from giving money to participants
the way Luzi et al, did in their study on study on performance (1984). Giving money to people can be a great
motivating factor. This
motivation may affect research. For
example, in the Luzi et al article the money given away to top performers may
make them act in a way that they would not at work. In this way they made the respondents
compete. This type of competition could
introduce factors that the researchers may not want; the study would be
meaningless to any situation other than one where incentives are given
out. This type of research can introduce
skewed results. Some people may work
better under the pressure that money and competition brings while
others may get confused by the pressure.
It appears that in modern research this practice is less likely.
Research
Themes
Seven out
of the ten articles from the 1980's dealt with computer
usability issues. Jarvenpaa et al dealt
with how groups interact with computers (1988), Dos Santos et al dealt with
user interface issues (1988), Montazemi (1988), DeLone (1988), and Williams
dealt with user satisfaction. As
software development gets more mature researchers delves into new areas. What was once a new topic such as user
satisfaction has been replaced by more mature themes such as personalization
(Tam et al, 2005).
Topics
such as information overload have been explored and solutions such as drill
down menus and customization are common place.
In the 1980's these were still topics that needed discussion on the
foundation level(Dos Santos et al, 1988).These are all ideas that have evolved
as the technology evolved.
Today new
topics in software development are emerging.
Issues on new software products such as software that allows people to
share knowledge and work together are still in their infancy (Taylor,
2004). These issues will evolve as
technology evolves. Collaboration software
such as Google Document which allows people to work on the same document at the
same time is still in their infancy.
Wiki's are only a few years old.
As the ability for people to work together and share information grows the
need for research to help people use that technology to reach their goals will
also increase.
Crowston
et al take this idea one step further in their article Bug Fixing Practices
within Free/Libre Open Source Software Development
Teams. This article takes 100,000
records from open source projects and analyzed the way software bugs are dealt
with.
Technology
has also given us the ability to do things that did not exist a few years
ago. For example Van Pham and Gopal et
al write about outsourcing. This
relatively new practice has undergone much research over the past few
years. It is a complicated issue. Off shoring software development may risk
handing over company secrets to people who do not work for the company (Van
Pham, 2006) but in doing so companies can create wealth by reducing the cost of
software development. This is a topic
that researchers have looked into in great detail over the past few years. As companies face economic difficulties, many
of them face the inevitably that they must reduce cost to stay in business. The debate over outsourcing and what to
outsource is a topic that will plaque researchers for years to come. There is no one right answer for every
company. In the end as a practitioner
one must use the available knowledge to make a decision. In research every decision answer is either proven
or disproved, as a practitioner decisions often have many sides to them. This discussion of off shoring is one of
those issues.
Another
topic in modern research is inner-organizational software development (Robey et
al, 2008). Gone are the days of standalone
software. Today organizations want
software to be able to communicate. When
software crashes the help desk needs to know.
When there is potential fraud detected in one system the other need to
be aware of it. Also the ability to
transfer information from one system to another is crucial in such systems as decision
support systems. In these types of
systems, information is gathered from various sources within the organization
and given to decision makers who can view the larger picture of the
organization.
In
software development inner-organizational software can help companies
collaborate and use their time more efficiently. Inner-organizational software is developed
with common interfaces such as XML or Application interfaces. Software packages that companies buy can also have
ways to interface with them programmatically.
Interoperability is standard practice for software being developed
today.
These
ways of working with software are becoming wide spread. In their article Theoretical Foundations of
Empirical Research on Inter-organizational Systems: Assessing Past
Contributions and Guiding Future Directions, Robey et al use seminal research
to show the foundations of inter-organizational systems (2008). The authors note that it took several years
for the idea off inter-organizational research begun to spread. In research
developing the seminal research is important but there may be a lag between the
research itself and the practical application of that research.
Management
of software development is an issue that has been the issue of a good deal of research.
Todays software products are more complicated and expensive. Researchers today are looking for ways of
minimizing risk. As well as the ability
to overcome things witch might lead the project to failure.
Researchers
are also looking at the way software is build. Sugumaran et al's article on
software time lines (2008) delves into ways that programmers can manage
expectations and develop time lines that will help lead to the success of the
project. This type of software reflects
what is going on in the industry with new project management methodologies such
as Last Planner and Scrum.
Personalization
is another issue researchers research today. Personalization is an emerging
technology. Software development of
personalization is a complex task. Tam
et al (2005) in their article Web Personalization as a Persuasion Strategy use
seminal research in the fields of psychology to argue their case. The easy availability of research in other
fields such as psychology help made new inroads in research. In their article they talk about how
familiar landmarks can help the user process the page more quickly. Users catch
more messages from the web page when there is some sort of familiarity. With the advent of technologies that allow
for more customized user interfaces such as hypertext markup researchers are concerned
with how the interface makes people feel.
Twenty years ago a button on a program would most likely be the one that
came standard with the operating system.
Today with web pages the button can have gradients, borders, and have
movement. Research is showing us this type of customization can really affect
use of the site.
This type
of cross-disciplinary research affects the way people make software
products. Articles involving biasness,
marketing and psychology are just some of the disciplines that researchers are
looking at when they research software development. Today software like video games can have
advertisement built into them. This type
collaboration between businesses was unheard of twenty years ago.
Authors
There are
more authors for each article in more recent articles. As technology allows people to work
collaboratively there is a greater collaboration among researchers. In the review of older articles there is a 60%
collaboration rate. In more recent articles that number has climbed up to
93%. Today researchers have the ability
to send drafts via email as well as chat on a free service. Twenty years ago the only options that a
person had if they did not live in the same town was to use the mail. This would have made collaboration
prohibitively difficult.
Subjects
The
disfavor of the use of students could be for a number of reasons. The first of which is that students are often
coerced into doing the surveys. They are
often a requirement for classes. This type of coercion can produce poor results
in the studies because students may not truly represent the larger population. In Jarvenpaa et al's research they used
students to test the usefulness of group collaboration software. The flaw in this study is that these students
are not the typical user of group software and thereby have no context for
witch to use it. If the researchers had
used business people they may have had a real world context for using the
software. This could have drastically
changed the outcome of the research.
When
there is no coercion researchers in the past often use bribes to encourage the
student to attend. These bribes can be as detrimental. Students may behave differently due to a
bribe. This can taint the results.
Analysis
Software
development research is going in many directions. Software development is a relatively new
field which is always changing. Research
on software development evolves as software evolves.
The
availability of data, and new ways to analyze data, is causing a steep increase
in the amount of quantitative research being done. Today’s researcher can gather data from
various sources. They can also access
enormous amounts of articles on the subject.
They have the ability to collaborate like never before. Researchers today have cross disciplinary
information readily available leaning to new ways of looking at software
development.
Today
when developing software, people use a broad range of information brought about
by research. Software developers of
today look at usability and customizability.
They look at the psychology of getting people to use their products and
the marketability of their products.
Conclusion
The
future of software engineering research is bright. There are new devices that require an
entirely new approach. Small devices
like cell phone are starting to get a good deal of use. In the future researchers will look at such
devices and look at all of the aspects that they did with software and web
development. Researchers will look at
why people use these devices. They will
look at ways of building quality software that provide the user with a sound
user experience. These types of devices
lend themselves to more research because for the first time location plays a
part of the equation. New devices are location
sensitive. Giving users contextual
information depending on the place they are in.
This
paper discusses how research has changed over the past 20 years. Although research methods have not changed
the ability to gather large amounts of data and then analyze them has. There are also more people willing to participate
in research.
Researchers are more willing to use
different methods to gather data such as email.
There are also trends away from using students in research.
Managing
projects has become an issue in software development. With large projects come large costs. Software research is looking into ways of
managing risk. Software research is also
looking into ways of determining the time and cost of software projects. There are also more options available to
software developers than ever before. Today’s
programmers can use geographic data from a service. They can interface with small devices such as
phone or have access to unprecedented processing power and storage through web
services and cloud computing. Today’s
software developers have access to tools such as knowledge bases and research
to aid in there professionalism.
The
research of the past has aided with things such as group interactions and user
interactions. The research of today
takes those seminal studies and builds upon them to take us toward the future
of research.
References
Armstrong, D. J., Nelson, H. J., Nelson, K. M., & Narayanan V. K. (2008).
Building the IT workforce of the future: the demand for more complex, abstract,
and strategic knowledge. Information Resources Management Journal,
21(2), 63-79. Retrieved March 1, 2009,
from ABI/INFORM Global database.
Banker, R. D., Bardhan, I., & Asdemir, O. (2006).
Understanding the impact of collaboration software on product design and
development. Information Systems Research, 17(4), 352-373,440. Retrieved March 1, 2009, from ABI/INFORM
Global database.
Brockhoff, & Klaus.
(1984). Forecasting quality and information. Journal of Forecasting,
3(4), 417. Retrieved March 1, 2009, from
ABI/INFORM Global database.
Capra, E., Francalanci, C., & Merlo, F. (2008). An
empirical study on the relationship between software design quality,
development effort and governance in open source projects. IEEE Transactions
on Software Engineering, 34(6), 765-782.
Retrieved March 1, 2009, from ABI/INFORM Global database.
Crowston, K., & Scozzi, B. (2008). Bug fixing practices
within free/libre open source software development teams. Journal of
Database Management, 19(2), 1-30.
Retrieved March 1, 2009, from ABI/INFORM Global database.
DeLone, & William H.
(1988). Determinants of success for computer usage in small business. MIS
Quarterly, 12(1), 51. Retrieved
March 1, 2009, from ABI/INFORM Global database.
Dos Santos, Brian L.,
Bariff, & Martin L. (1988). A study of user interface aids for model-oriented
decision. Management Science, 34(4), 461. Retrieved February 28, 2009, from ABI/INFORM
Global database.
Doll, William J.,
Torkzadeh, & Gholamreza. (1989). A discrepancy model of end-user
computing involvement. Management Science, 35(10), 1151. Retrieved March 1, 2009, from ABI/INFORM
Global database.
El Emam K., & Koru
A. (2008). A replicated survey of it software project failures. IEEE
Software, 25(5), 84-90. Retrieved
February 17, 2009, from ABI/INFORM Global database.
Garrity, E. J., O'Donnell, J. B., & Kim, Y. J., &
Sanders, G. L.. (2007). An extrinsic and intrinsic motivation-based model for
measuring consumer shopping oriented web site success. Journal of Electronic
Commerce in Organizations, 5(4), 18-38.
Retrieved March 1, 2009, from ABI/INFORM Global database.
Gopal, A., Sivaramakrishnan, K., Krishnan, M. S., &
Mukhopadhyay, T. (2003). Contracts in offshore software development: an
empirical analysis. Management Science, 49(12), 1671-1683. Retrieved March 1, 2009, from ABI/INFORM
Global database.
Jarvenpaa, Sirkka L.,
Rao, V. Srinivasan, Huber, &
George P. (1988). Computer support for meetings of groups working on unstruct. MIS
Quarterly, 12(4), 645. Retrieved
February 28, 2009, from ABI/INFORM Global database.
Khanfar, K., Elzamly, A., Al-Ahmad, W., El-Qawasmeh, E.,
Alsamara, K., & Abuleil S. (2008). Managing software project risks with the
chi-square technique. International
Management Review, 4(2), 18-29,77.
Retrieved March 1, 2009, from ABI/INFORM Global database.
Kirs, Peeter J.,
Sanders, Lawrence G., Cerveny,
Robert P., & Robey, Daniel. (1989).
An experimental validation of the Gorry and Scott Morton fr. MIS Quarterly,
13(2), 183. Retrieved February 28, 2009,
from ABI/INFORM Global database.
Luzi, A. D., & Mackenzie,
K. D. (1982). An experimental study of performance information systems. Management
Science (pre-1986), 28(3), 243.
Retrieved March 1, 2009, from ABI/INFORM Global database.
Lucas H. C. (1981). An
experimental investigation of the use of computer-based graphics in decision
making. Management Science, (pre-1986), 27(7), 757. Retrieved March 1, 2009, from ABI/INFORM
Global database.
Montazemi, & Ali Reza.
(1988). Factors affecting information satisfaction in the context o. MIS
Quarterly, 12(2), 239. Retrieved
February 28, 2009, from ABI/INFORM Global database.
Park C. W., Im, G., & Keil, M. (2008). Overcoming the mum
effect in it project reporting: impacts of fault responsibility and time
urgency*. Journal of the Association for Information Systems, 9(7),
409-431. Retrieved March 1, 2009, from
ABI/INFORM Global database.
Pendharkar, P. C.,
& Rodger, J. A. (2007). An empirical study of the impact of team
size on software development effort. Information Technology and Management,
8(4), 253-262. Retrieved March 1, 2009,
from ABI/INFORM Global database.
Robey, D., Im, G.,
& Wareham, J. D. (2008). Theoretical foundations of empirical research on
interorganizational systems: assessing past contributions and guiding future
directions. Journal of the Association for Information Systems, 9(9),
497-518. Retrieved March 1, 2009, from
ABI/INFORM Global database.
Shneiderman, B., Brethauer,
D., Plaisant, C., & Potter, R. (1989). Evaluating three museum
installations of a hypertext system. Journal of the American Society for
Information Science (1986-1998), 40(3), 172. Retrieved March 1, 2009, from ABI/INFORM
Global database.
Stegelin, F. E., & Novak, J. L. (1986). Attitudes of
agribusiness toward microcomputers. Agribusiness (1986-1998), 2(2),
225. Retrieved March 1, 2009, from
ABI/INFORM Global database.
Sugumaran, V., Tanniru, M., & Storey V. C. (2008). A
knowledge-based framework for extracting components in agile systems
development. Information Technology and Management, 9(1), 37-53. Retrieved March 1, 2009, from ABI/INFORM
Global database.
Tam, K. Y., & Ho, S. Y.. (2005). Web personalization as a
persuasion strategy: an elaboration likelihood model perspective. Information
Systems Research, 16(3), 271-291.
Retrieved March 1, 2009, from ABI/INFORM Global database.
Taylor, W. A. (2004).
Computer-mediated knowledge sharing and individual user differences: an
exploratory study. European Journal of Information Systems, 13(1),
52-64. Retrieved March 1, 2009, from
ABI/INFORM Global database.
Tsai, M. T., & Su, W. (2007). The impact of cognitive fit
and consensus on acceptance of collaborative information systems. The
Business Review, Cambridge, 8(2), 184-190.
Retrieved March 1, 2009, from ABI/INFORM Global database.
Van Pham K. (2006).
Strategic off shoring from a decomposed COO's perspective: a cross-regional
study of four product categories. Journal of American Academy of Business,
Cambridge, 8(2), 59-66. Retrieved
March 1, 2009, from ABI/INFORM Global database.