Information Systems Development
Methodologies: Literature Review
(Endnote File
of all references available here)
1.
Introduction
The
literature on Information Systems Development Methodologies has reached
a point of synthesis. Once, there was debate on how to find the “best”
method to develop an Information System. Now, most commentators seem to
agree on the following broad principles:
- There is
no best methodology, in fact, the quest for the perfect
methodology is a journey of fantasy.
-
Methodologies do have a purpose, but in practice they are never
fully followed and are customized depending on unique
circumstances.
-
Nevertheless, methodology must not be disregarded completely. It
brings certain benefits, and has a rightful place in the Systems
Development process.
In light of
this synthesis point, much academic literature has moved on into the
following areas:
- A higher
level – where researchers examine the philosophical assumptions
behind methodologies. In conjunction with this work is the
development of concepts and paradigms that underpin debates about
methodology.
- A lower
level – where researchers study phenomenon at a more detailed level
of analysis such as requirements gathering, use of case tools,
project management, etc.
- New
discussions of methodologies that can be applied to specific
situations such as web applications, expert systems etc.
The following
literature review will discuss in more details the synthesis of the
debate, and then it will outline some of the more philosophical papers
that have emerged in the field. Next, it will discuss some of the
methodologies proposed in recent papers and will close with a discussion
of some of the papers that examine the systems development process at a
lower level of detail.
2.
Point of Synthesis
Many authors
have summed up the arguments for and against the use of methodology. One
of the more concise summaries was provided by Fitzgerald (1998a)
|
Arguments for
Methodologies |
Arguments
Against Methodologies |
-
·Systems
Development is complex. Methodologies provide a useful
subdivision of tasks.
-
Methodologies
facilitate project management and control of development
-
Provides a
purposeful framework for application of techniques and
resources
-
Economic
Rationale - allow for division of labour
-
Epistemic
Rationale - structural framework for the acquisition of
knowledge
-
Standardisation
of the development process
|
-
Thousands of
methodologies with artificially contrived differences
-
Generalisations
are made without adequate conceptual and empirical evidence
-
Systems
Development is not actually an orderly process
-
Means end
inversion - slavishly devoted to the principles of the
methodology while the requirements to build an actual system
get ignored.
-
One-size-fits-all presumption.
-
Inadequate
recognition of developer embodied factors
|
He conducted
a postal survey of how people adopt and use methodologies. He found that
a strong majority report that they don’t use methodologies. When they
do, the methodologies are not applied rigorously or uniformly. A unique
methodology-in-action is created for each project.
Elsewhere,
Fitzgerald et. al (2003) examined this process in more detail through a
case study at Motorola, and found that tailoring of the system
development methodology occurs initially, and concurrently, as
the system is being developed. Nevertheless, the authors argued that the
methodology provided a useful framework.
As
Nandhakumar and Avison (1999) wrote, IS methodologies are treated as a
necessary fiction. The development process “is characterizes by
improvisation, opportunism, interruption and mutual negotiation as much
as by progress, milestones, planning and management control". They
advocate an ecological approach to methodology, similar to Fitzgerald’s
(1998b) idea of methodology in action.
What has come
to light recently are the organizational constraints on the use of
methodologies (Lang et al. 2001) and the dissenting views of
methodologies within organizations. Huisman and Iivari (2006) reported
that managers are generally more positive than developers about systems
development methodologies.
The point of
synthesis is expressed well in Avison and Fitzgerald (2003a). The
provided an excellent history of the development of methodologies and
the emergence of the backlash. They concluded that there will be a
diversity of methodologies – and the risk for companies is that they
will ignore methodology completely due to the backlash and the lessons
of history will be ignored.
These summary
points expressed by Avison and Fitzgerald seem to be generally agreed.
As such, the academic literature as moved on into adjacent areas. On of
these areas is the philosophical underpinnings of methodology.
3.
Philosophical Considerations
Some scholars
have argued that most methodologies are too restrictive, especially when
authors insist on an all-or-nothing approach (Henderson-Sellers 2001).
To address this problem, they argued for Method Engineering, which they
claim is a more flexible and inclusive approach to methodology. In some
sense it seems like they are calling for methodologies for the
development of methodologies.
These are
sometimes referred to as “approaches” (see Goulielmos 2004). Juhani
Iivari has done some considerable work in this area and has produced a
paper that puts forth 5 major IS "approaches" and discusses them in
terms of their underlying ontology and epistemology (Iivari et al.
1998).
In later
works, Iivari went further and proposed a new framework or "deep
structure" to understand methodologies (Iivari et al. 2001,
Iivari and Maasaari 1998). The framework has 4 levels:
-
Paradigms - Concerned with ontology, epistemology, methodology and
ethics. Examples: Functionalism, Social Relativism, Neo-Humanism,
Radical Structuralism.
-
Approaches- Concerned with Goals, Guiding principles. Examples:
Information modeling, socio-technical design, object oriented
approaches.
-
Methodologies - Relationships between techniques and a detailed ISD
process. Examples: structured analysis and design technique, object
oriented software engineering.
-
Techniques - Detailed concepts and notations. Examples: data flow
diagram, CATWOE, entity-relationship diagram.
The paradigms
discussed by Iivari are a direct reference to a classic paper in the
field by Hirschheim and Klein (1989), based on the work of Burrell and
Morgan. The paper discusses the 4 research paradigms: Functionalism,
Radical Structuralism, Social Relativism, Neo-humanism and outlines 4
story-lines on how these philosophical assumptions can impact an
information system.
Along the
same lines, Kendall and Kendall (1993) looked at how methodology choice
is related to the metaphors that stakeholders use to interpret systems.
For example, some describe IS development as a game (life-cycle), a
journey (prototyping) a machine (CASE tools) a zoo (SSM) or a family
(ETHICS). Similarly, Purao et al. (2003) studied how cognitive elements
such as structured learning can improved the way we reuse ideas and the
way we develop systems. These papers contribute to a more high-level
discussion about the cognitive and discursive factors affecting
methodology choice.
Vessey and
Glass (1998) made a distinction between “Strong” methods designed for
one kind of problem and “Weak” methods, designed for many problems.
Often many methodologies are used in the same problem. Consistent with
the point of synthesis described above, many authors have come to argue
that the methodology chosen must be well-suited to the problem at hand (Meso
et al. 2006), and can be customized for unique circumstances (Hidding
1997).
4.
Methodologies Revisited
In light of
the synthesis point described above, many authors have returned to the
study of methodology with a fresh perspective. In some cases, authors
would enhance existing methodologies for a new purpose and in light of
new philosophical (i.e. interpretivist) assumptions. In other cases,
authors would propose new methodologies for certain applications.
Hirschheim
and Klein (1994) revisited the debate about methodology and found a need
for “emancipatory” methodologies, ones that free us from the shackles of
routine and allow us to take into account social systems. He argued that
ETHICS can meet this need.
Other fresh
looks have found that:
- Critical
Success Factors is a useful framework but needs to be extended to
include IS attributes and Organizational Goals (Peffers et al.
2003).
-
Object-Oriented Approaches are difficult to adopt. In some ways, the
transition is revolutionary (Sircar et al. 2001).
- Agile
Methodologies are a fad, companies used to doing things in a more
formal way will have trouble adapting. Moreover, there are
unacknowledged difficulties in embracing agile methodologies or
combining them with other methods (Nerur et al. 2005).
- Rapid
Application Development has many problems, sometimes bugs get
introduced, projects are often badly managed and system are of
low-quality and not reusable (Agarwal et al. 2000).
- SSM has
a rich and illustrious history (with personal reflections) (Mingers
2000).
-
Prototyping is very useful and should be done in certain specific
circumstances. (Hardgrave et al. 1999, Doke and Swanson 1995)
- Expert
Systems have tremendous potential. The process of knowledge
acquisition can be automated through a tool called "CONIS" Concept
Induction System (Tam 1990).
This research
tends to be case-study based. Although the findings may be generalisable,
they are highly dependent on contextual factors.
The
definitive textbook on Information Systems Development Methodologies is
by Avison and Fitzgerald (2003b). Within their book, they discusses the
major themes surrounding methodologies, and the various frameworks and
CASE tools. Their list of methodologies is quite extensive and is
presented below.
|
Information
Systems Development Methodologies (Avison and Fitzgerald
2003b) |
|
Process
Methodologies
-
Structures
Analysis, Design and Implementation of Information Systems
-
Yourdon Systems
Method, Jackson Systems Development
People-Oriented
Methodologies
Rapid
Development Methodologies
-
James Martin's
RAD
-
Dynamic Systems
Development
-
Extreme
Programming (see also Schneider and Johnston 2005)
-
Web IS
Development Methodology
OO Methodologies
|
Organizational
Oriented Methodologies
Blended
Methodologies
Frameworks
|
Other
scholars have developed methodologies for specific applications. One
example being web applications, which have unique requirements in terms
of development time, customer focus, and the importance of the user
interface (Vidgen 2002). Some authors have proposed new methodologies
for web application development (Standing 2002) or have reformulated
previous methodologies for this purpose (Vidgen 2002).
Other authors
who have developed application-specific methodologies include:
- (Park
et al. 1998) A very detailed methodology with classes and
relationships for an ERP function.
- (Liu and
Stewart 2004) A new methodology is justified and proposed for the
development of DSS - one that includes multicriteria decision making
(MCDM) in the content of natural resource management (like water).
- (Howard
et al. 2003) A high-level methodology for an EOS or IOS system.
- (Arinze
1991) A contingency model of how to select a DSS Methodology.
While this
work is interesting, the inherent contextual nature of this research
means that potential for a contribution is limited. In light of the
synthesis point described above, it seems reasonable that researchers
would move to new ground in order to deliver cutting-edge research. As
mentioned, interesting research has been conducted at a higher-level,
looking at the philosophical considerations of methodology. Likewise,
research has also been developed at a lower-level, examining
certain aspects of the systems development process is closer detail.
5.
Detailed aspects of the ISD Methodologies
Case Tools
One aspect of
the systems development process that has received considerable attention
is the issues surrounding CASE (computer assisted software engineering)
tools (for an overview see Vessey et al. 1992). These tools
“hard-code” methodology within their instruction set, and so they are
central to the development and use of systems development methodologies.
Norman and
Nunamaker Jr. (1989) argued that it is the perception of software
engineers that CASE tools improve their productivity because they
usefully automate certain tasks, and force them to stick to a
methodology. Guinan et al. (1998) disagreed, and argued that the success
of a project is dependent on technical skill, managerial involvement and
low variance in team experience, rather than software development tools
and methods.
As CASE tools
change and evolve (see Gennari et al. 2003), they bring about
unintended consequences. Introducing CASE tools often triggers radical
change in organizations (Orlikowski 1993). In time, the CASE tool
becomes a “knowledge platform” that shapes how knowledge is produced,
stored and interpreted (Purvis et al. 2001).
Requirements Gathering
Another
element of systems development methodologies that has received attention
is requirements gathering. Liou and Chen (1993) has proposed that an
integrated framework for specifying requirements taking into account
Joint Application Development (JAD) and CASE tools. Other authors have
looked at different ways of gathering requirements, and their fit with
various tasks and applications. (Agarwal et al. 1996, Browne and
Rogich 2001, Vessey and Conger 1993, Vessey and Conger 1994)
The interest
in requirements has led other authors to study other aspects of systems
in general and how they relate to requirements gathering. Butcher and
Schroeder (1999) studied software volatility, and produced a model to
identify a software system's volatile points. Similarly, Xia and Lee
(2005) developed concepts and measurements to assess the complexity of
an information systems development project.
Other authors
have tried to emphasis the importance of security issues at the
requirements gathering phase. Villarroel et al. (2005) compared 11
design methodologies that incorporate security and assessed their
strengths and weaknesses. Mouratidis et al. (2005) went further and
developed a new approach.
Finally, more
recent papers have looked at the social aspects of requirements
gathering (Salmela 1993) and the need to validate the model with various
stakeholders in the system (Shanks et al. 2003).
Social Factors
These social
factors have come into view as researchers have started looking into the
dark corners of the discipline. In particular, social issues have been
raised to the forefront. For example, Sabherwal et al. (2003) examined
the phenomenon of project escalation – and why people commit more
resources to projects that are in trouble. Other authors looked at IS
failures (Yetton et al. 2000) and the lack of learning that
occurs because people get defensive and engage in defense-avoidance
behavior patterns (Wastell 1999).
Related to
system development methodologies, is the issue of user participation.
Many have written with enthusiasm about the potential for user
participation, but other are skeptical, and see it as a recipe for
conflict (Beath and Orlikowski 1994, Webb 1996). The way users and
analysts interact can be error-prone. New modes of interaction between
these two groups are sorely needed (Salaway 1987).
6.
Conclusion
The debate
about methodologies is ongoing, albeit in different contexts. For
example, Dekleva (1992) inquired into whether using a methodology can
lower maintenance costs in the long run, The answer is not really, but
methodologies do reduce emergency correction time, system failures and
seem to allow for greater functionality changes as the system ages.
However, the impact of methodologies is limited. Some scholars have
shown that quality is influenced by management leadership,
infrastructure, and process efficacy, not methodology (Ravichandran and
Rai 2000).
Work has been
done on how to select a methodology (Naumann and Palvia 1982) or how to
formalize a methodology (Hofstede and Proper 1998) but it does not go
beyond the point of synthesis.
Some general
conclusions can be made from the literature on systems development
methodologies. It is often technical and organization factors
inhibit/facilitate the success of IS development (Lai 1997) and
one-size-fits-all methodologies don’t work (Middleton 1999). Yet often,
certain business problems are well characterized by a particular
methodology or approach (Bennetts et al. 2000).
Major
opportunities for future research are in the social sphere: how do
people interact with methodology? How does methodology enable or
constrain innovation? In many ways, the methodologies we have available
today are designed for yesterday’s problems. The challenge is to
understand the place of methodology, in the development of future
systems.
7.
References
Agarwal, R., J.
Prasad, M. T. Tanniru and J. Lynch (2000) "Risks of Rapid Application
Development", Communications of the ACM.
Agarwal, R., A. P.
Sinha and M. T. Tanniru (1996) "Cognitive Fit in Requirements Modeling:
A Study of Object and Process Methodologies", Journal of Management
Information Systems, 13 (2).
Arinze, B. (1991) "A
Contingency Model of DSS Development Methodology", Journal of
Management Information Systems, 8 (1).
Avison, D. E. and G.
Fitzgerald (2003) "Where Now for Development Methodologies?"
Communications of the ACM, 46 (2).
Avison, D. E. and G. Fitzgerald
(2003) Information Systems Development: Methodology, Techniques, and
Tools, McGraw Hill Publishing Company, Maidenhead.
Beath, C. M. and W. J. Orlikowski
(1994) "The Contradictory Structure of Systems Development
Methodologies: Deconstructing the IS-User Relationship in Information
Engineering." Information Systems Research, 5 (4).
Bennetts, P. D. C.,
A. T. Wood-Harper and S. Mills (2000) "An Holistic Approach to the
Management of Information Systems Development - a View Using a Soft
Systems Approach and Multiple Viewpoints", Systemic Practice and
Action Research, 13 (2).
Browne, G. J. and M.
B. Rogich (2001) "An Empirical Investigation of User Requirements
Elicitation: Comparing the Effectiveness of Prompting Techniques",
Journal of Management Information Systems, 17 (4).
Butcher, G. and C.
Schroeder (1999) "A Model for Addressing Software Volatility in New
System Development", Information Sciences, 118.
Dekleva, S. M. (1992)
"The Influence of the Information Systems Development Approach on
Maintenance", MIS Quarterly, 16 (3).
Doke, E. R. and N. E.
Swanson (1995) "Decision Variables for Selecting Prototyping in
Information Systems Development: A Delphi Study of MIS Managers",
Information and Management, 29.
Fitzgerald, B.
(1998a) "An Empirical Investigation into the Adoption of Systems
Development Methodologies", Information and Management, 34.
Fitzgerald, B.
(1998b) "An Empirically-Grounded Framework for the Information Systems
Development Process". in International Conference on Information
Systems, Helsinki, Finland,
Fitzgerald, B., N. L.
Russo and T. O'Kane (2003) "Software Development Method Tailoring at
Motorola", Communications of the ACM, 42 (4).
Gennari, J. H., et
al. (2003) "The Evolution of Protege: An Environment for
Knowledge-Based Systems Development", International Journal of
Human-Computer Studies, 58.
Goulielmos, M. (2004)
"Systems Development Approach: Transcending Methodology", Information
Systems Journal, 14.
Guinan, P. J., J. G.
Cooprider and S. Faraj (1998) "Enabling Software Development Team
Performance During Requirements Definition: A Behaviour Versus Technical
Approach", Information Systems Research, 9 (2).
Hardgrave, B. C., R.
L. Wilson and K. Eastman (1999) "Toward a Contingency Model for
Selecting an Information System Prototyping Strategy", Journal of
Management Information Systems, 16 (2).
Henderson-Sellers, B.
(2001) "Method Engineering for OO Systems Development",
Communications of the ACM, 45 (10).
Hidding, G. J. (1997)
"Reinventing Methodology: Who Reads It and Why?" Communications of
the ACM, 40 (11).
Hirschheim, R. and H.
K. Klein (1989) "Four Paradigms of Information Systems Development",
Communications of the ACM, 32 (10).
Hirschheim, R. and H.
K. Klein (1994) "Realizing Emancipatory Principles in Information
Systems Development: The Case for Ethics", MIS Quarterly, 18
(1).
Hofstede, A. H. M. t.
and H. A. Proper (1998) "How to Formalize IT? Formalization Principles
for Information System Development Methods", Information and Software
Technology, 40.
Howard, M., R. Vidgen
and P. Powell (2003) "Overcoming Stakeholder Barriers in the Automotive
Industry: Building to Order with Extra-Organizational Systems",
Journal of Information Technology, 18.
Huisman, M. and J.
Iivari (2006) "Deployment of Systems Development Methodologies:
Perceptual Congruence between IS Managers and Systems Developers",
Information and Management, 43.
Iivari, J., R.
Hirschheim and H. K. Klein (1998) "A Paradigmatic Analysis Contrasting
Information Systems Development Approaches and Methodologies",
Information Systems Research, 9 (2).
Iivari, J., R.
Hirschheim and H. K. Klein (2001) "A Dynamic Framework for Classifying
Information Systems Development Methodologies and Approaches",
Journal of Management Information Systems, 17 (3).
Iivari, J. and J.
Maasaari (1998) "The Usage of Systems Development Methods: Are We Stuck
to Old Practices?" Information and Software Technology, 40.
Kendall, J. E. and K.
E. Kendall (1993) "Metaphors and Methodologies: Living Beyond the
Systems Machine", MIS Quarterly, 17 (2).
Lai, L. S. L. (1997)
"A Synergistic Approach to Project Management in Information Systems
Development", International Journal of Project Management, 15
(3).
Lang, S., M. Masoner
and A. Nicolaou (2001) "An Empirical Examination of the Influence of
Organizational Constraints on Information Systems Development",
International Journal of Accounting Information Systems, 2.
Liou, Y. I. and M.
Chen (1993) "Using Group Support Systems and Joint Application
Development for Requirements Specification", Journal of Management
Information Systems, 10 (3).
Liu, D. and T. J.
Stewart (2004) "Object-Oriented Decision Support System Modelling for
Multicriteria Decision Making in Natural Resource Management",
Computers & Operations Research, 31.
Meso, P., G. Madey,
M. D. Troutt and J. Liegle (2006) "The Knowledge Management Efficacy of
Matching Information Systems Development Methodologies with Application
Characteristics - an Experimental Study." Journal of Systems and
Software, 79.
Middleton, P. (1999)
"Managing Information System Development in Bureaucracies",
Information and Software Technology, 41.
Mingers, J. (2000)
"An Idea Ahead of Its Time: The History and Development of Soft Systems
Methodology", Systemic Practice and Action Research, 13 (6).
Mouratidis, H., P.
Giorgini and G. Manson (2005) "When Security Meets Software Engineering:
A Case of Modelling Secure Information Systems", Information Systems
Journal, 30.
Nandhakumar, J. and
D. E. Avison (1999) "The Fiction of Methodological Development: A Field
Study of Information Systems Development", Information Technology &
People, 12 (2).
Naumann, J. D. and S.
Palvia (1982) "A Selection Model for Systems Development Tools", MIS
Quarterly.
Nerur, S., R.
Mahapatra and G. Mangalaraj (2005) "Challenges of Migrating to Agile
Methodologies", Communications of the ACM, 48 (5).
Norman, R. J. and J.
F. Nunamaker Jr. (1989) "Case Productivity Perceptions of Software
Engineering Professionals", Communications of the ACM, 32 (9).
Orlikowski, W. J.
(1993) "Case Tools as Organizational Change: Investigating Incremental
and Radical Changes in Systems Development", MIS Quarterly.
Park, H. G., et
al. (1998) "An Object-Oriented Production Planning System
Development in ERP Environment", Computers and Industrial
Engineering, 35 (1).
Peffers, K., C. E.
Gengler and T. Tuunanen (2003) "Extending Critical Success Factors
Methodology to Facilitate Broadly Participatics Information Systems
Planning", Journal of Management Information Systems, 20 (1).
Purao, S., V. C.
Story and T. Han (2003) "Improving Analysis Pattern Reuse in Conceptual
Design: Augmenting Automated Processes with Supervised Learning",
Information Systems Research, 14 (3).
Purvis, R. L., V.
Sambamurthy and R. W. Zmud (2001) "The Assimilation of Knowledge
Platforms in Organizations: An Empirical Investigation", Organization
Science, 12 (2).
Ravichandran, T. and
A. Rai (2000) "Quality Management in Systems Development: An
Organizational System Perspective", MIS Quarterly, 24 (3).
Sabherwal, R., M. K.
Sein and G. M. Marakas (2003) "Escalating Commitment to Information
System Projects: Findings from Two Simulated Experiments",
Information and Management, 40.
Salaway, G. (1987)
"An Organizational Learning Approach to Information Systems
Development", MIS Quarterly.
Salmela, H. (1993)
"Designing Information Systems for Changing Organizations". in
Conference on Computer personnel research, St. Louis, USA,
Schneider, J.-G. and
L. Johnston (2005) "Extreme Programming - Helpful or Harmful in
Education Undergraduates?" Journal of Systems and Software, 74.
Shanks, G., E.
Tansley and R. Weber (2003) "Using Ontology to Validate Conceptual
Models", Communications of the ACM, 46 (10).
Sheetz, S. D. and D.
P. Tegarden (2001) "Illustrating the Cognitive Consequences of
Object-Oriented Systems Development", Journal of Systems and
Software, 59.
Sircar, S., S. Nerur
and R. Mahapatra (2001) "Revolution or Evolution? A Comparison of
Object-Oriented and Structured Systems Development Methods", MIS
Quarterly, 25 (4).
Standing, C. (2002)
"Methodologies for Development Web Applications", Information and
Software Technology, 44.
Tam, K. Y. (1990)
"Automated Construction of Knowledge-Bases from Examples",
Information Systems Research, 1 (2).
Vessey, I. and S.
Conger (1993) "Learning to Specify Information Requirements: The
Relationship between Application and Methodology", Journal of
Management Information Systems, 10 (2).
Vessey, I. and S.
Conger (1994) "Requirements Specification: Learning Object, Process and
Data Methodologies", Communications of the ACM, 37 (5).
Vessey, I. and R.
Glass (1998) "Strong Vs. Weak Approaches to Systems Development",
Communications of the ACM, 41 (4).
Vessey, I., S. L.
Javenpaa and N. Tractinsky (1992) "Evaluation of Vendor Products: Case
Tools as Methodology Companions", Communications of the ACM,
35 (4).
Vidgen, R. (2002)
"Constructing a Web Information System Development Methodology",
Information Systems Journal, 12.
Villarroel, R., E.
Fernandez-Medina and M. Piattini (2005) "Secure Information Systems
Development - a Survey and Comparison", Computers & Security,
24.
Wastell, D. G. (1999)
"Learning Dysfunctions in Information Systems Development: Overcoming
the Social Defenses with Transitional Objects", MIS Quarterly,
23 (4).
Webb, B. R. (1996)
"The Role of Users in Interactive Systems Design: When Computers Are
Theatre, Do We Want the Audience to Write the Script", Behaviour &
Information Technology, 15 (2).
Xia, W. and G. Lee
(2005) "Complexity of Information Systems Development Projects:
Conceptualization and Measurement Development", Journal of Management
Information Systems, 22 (1).
Yetton, P., A.
Martin, R. Sharma and K. Johnston (2000) "A Model of Information Systems
Development Project Performance", Information Systems Journal,
10.
|