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

A Field Study of Requirements Engineering

Practices in Information Systems Developmentll

Khaled EI Emam *
t
Nazim H. Madhavji *

*School of Computer Science, McGill University


tCentre de Recherche Informatique de Montreal (CRIM)

Abstract for improving req u i rements engineeri ng processes,


To make recommendations for improving require­ and to provide d i rect ions for future research o n
ments engineering processes, it is critical to under­ method s a n d too l s t h a t would result i n process
stand the problems faced in contemporary practice. improvements. The specific objectives of the investi­
In this paper, we describe a field study whose gen­ gation were to identify the most pressing problems
eral objectives were to formulate recommendations faced by p ract itioners , how these pro blems are
to practitioners for improving requirements engineer­ add ressed successful l y in p ractice, and the major
ing processes, and to provide directions for future imped iments to the successful implementation of
research on methods and tools. The results indicate such good practices.
that there are seven key issues of greatest concern While there have been previous field investigations
in requirements engineering practice. These issues of software engineering p ractice , ours d iffers in a
are discussed in terms of the problems they repre­ number of aspects. For i nstance, C u rtis et al. [6]
sent, how these problems are addressed success­ cond ucted a f i eld s t udy of software e n g i neering
fully in practice, and impediments to the implemen­ p ractices. Thei r findings covered the requirements
tation of such good practices. engineering process as well as other software engi­
neering processes. Our study focuses only on the
requirements engineering process, and is t herefore
closer in focus to the field study reported by Lubars
1 Introduction et al. [15]. Moreover, the study described i n this
paper differs from the above two in that: we used
The requ i rements engineering p rocess is arg uably two different data gathering methods (interviews and
one of the most i mportant processes in software inspection of documentation); we collected data on
develop ment . Unfortunately, however, the record is 60 cases (as opposed to 23 and 17 in the previou s
poor. For example, it has been fou nd i n a number of studies respectively); the data we collected consti­
prev i o us studies that the req ui remen ts engineering tuted two types of cases: descriptive and prescrip­
phase is the source of the majority of detected soft­ tive (as opposed to pri m arily descriptive cases in
ware code errors [3][9][14][19]. It is thus im perative both of the previous studies); we included an explicit
to focus specifically on this process and find ways to val idation step with a subset of th e ori g i n al i nfor­
improve it. m a nts; o u r dom ain of an a l y sis w a s bu sin e s s
As part of our research efforts to make recommen­ I nformation Systems that are fully customized for
d at i o n s for i m prov i n g req u ire ments e n g i neeri n g i n d i v i d u al u s e r organ i z at i o n s; and we e x pl i c itly
processes, this paper describes a field investigation attempted to identify impediments to the implemen­
of c on te mpo rary req u i re ments e n g i neering prac­ tation of good requirements engineering practices.
tices. T h e g e n eral objectives of the i n vestigation These differences were intended to provide a better
were to formulate recommendations to practitioners understan d i n g of requ irements e n g i neerin g prac­
tices in the chosen domain of analysis.
� This research has been supp orted. in part. by the IT
Macroscope Proi ect and NSERC Canada.
Briefly, the results of the study i n dicate that, in

68
0-8186-7017-7/95 $04.00 © 1995 IEEE
addition to technical issues, non-technical issues are research study was the r€lq u i rements engi neering
of major importance d u ri n g the requ i rements engi­ p h ase of a software system development method
neering p rocess in terms of problems, solutions, and (henceforth Method X). Method X has been devel­
i m p e d i m e n t s to i m p l e m e n tin g t h e s o lu t i o n s . oped and is marketed by an I nformation Systems
Furthermore, many o f these issues are o f pri mary consultancy firm with clients worldwide. The ultimate
concern at the planni n g stage of the requirements objective of the requ irements engineering phase i n
engineering p rocess. The significance of these find­ t h i s method is t o determine t h e cost-effectiveness of
i ngs a re t h at t h e y p r o v i d e d i rect i o n f o r f u t u re the Information System to be developed and make a
research targeted at ass isti n g requirements engi­ go/no-go decision based on it. However, prior to the
neering process planning, and they include recom­ p e rformance of such an analys i s , the b u si n ess
mendations for p ractitioners. requ i rements must be elicited and a recommended
I n section 2 t h e research method is d escribed . solution form ulated . The recommended soluti o n
Section 3 is a detailed description of the study's find­ consists o f a requirements specification, a h i g h level
ings. Section 4 concludes the paper with a summary architecture, and an analysis of how the proposed
of the key points and d i rections for future research. system will fit into, and havE� an impact on, the exist­
ing user organization.
2 Research Method The research method consisted of two main activi­
ties: a data gathering step using multiple sou rces,
T h e e m p i rical research method fo l lowed i n t h i s
and a synthesis and validation step.
investigation is t h e multiple case study method as
d e s c r i be d by Yi n [26] , a n d rec o m m e n ded fo r
2.1 Data Gathering Step
research on software deve l opment p rojects [6] .
Furthermore, i t has been asserted that this method The objective of this step was to formulate a set of
is more suitable for research on organ izational, as cases. I n total there were 60 cases. Two types of
opposed to ind ivid ual, problem-solving (Le., multiple cases were sought. The first type of case is descrip­
individuals) [21]. t i v e , and t h e s e c o n d t y p e is p re s c r i p t i v e . T h e
The unit of analysis of this study was the requi re­ descriptive cases represent requirements engineer­
m e n ts e n g i n e e r i n g p rocess. T h e context of o u r ing processes performed at client sites of the com­
pany t h at developed Method X. The p rescriptive
Business of Organization cases represent rules of nood p ractice that were
Pharmaceutical and Health Services 13%
solicited from practitione rs Llsing Method X.
Financial/Insurance 14%
Govemment 33% For req u i rements engineering process (descrip­
Retail and Distribution 27% tive) cases, seventeen individuals were interviewed.
Other 14%
The interviewees provided a description of the prob­
Functional Area of Information System lems faced d u ring the req uirements e n g i ne e r i n g
Purchasing/Sales/Marketing 47% process a n d how these p roblems were handled, if
Finance 33%
20%
they were. Of those i nterviElwed, 35% had a techni­
Other
cal backg round, and 94% h ad a p roject manage­
Figure 1 (a): Characteristics of interview req ui rements ment background1. These interviews resulted in fif­
engineering cases (15 cases). t e e n c as e s2 s u m m a r ized in F i g u re 1 (a)3.
1 It should be note d that an Interviewee can be characterized
Business of Organization as having an intersection of backgrounds. Therefore, the
Financialflnsurance 14%
total does not add up to 100%. For example, some senior
Govemment 40%
analysts take on the role of project manager.
Transportation 7%
2 For 2 of t he descriptive cases, 2 interviewees p r o v i d ed
Engineering 14%
27%
info rm ati on .
Other
3 No information on the actual sizes of the Information
Functional Area of Information System Systems is available. For some cases the system was not
Purchasing/Sales/Marketing 7% actu ally developed yet, and for some other cases the pro­
Finance 27% ject was terminated at the '3nd of the requirements engi­
Production/Manufacturing/Operations 33% neering phase or at some later pha se . For the remaining
Transportation/Logistics 14% cases where a system was actually developed, no data that
Telecommunications 7% can be compared meaningfully across organizations was
Other 14% available. For example, a summary of system sizes using
LOC measures would be misleading given that different
Figure l(b): Characteristics of document requirements o rg aniz at i ons use different progr a m min g languages and
engineering cases (15 cases). use different counting standards.

69
Fu rthermore, the documentation resu lting from fif­ considered best practices. The second was to col­
teen other requirements engineering processes was lect i nformation about i nfidelity or deviations from
i nspected . T h e documentat i o n i ncluded req u i re­ the stan d a rd req u i rements e n g ineering process
ments engineering del iverables (e.g ., p rocess and defined in Method X and the rationale behind such
data models), as well as some project management deviations. Such infidel ity captured the variations
documentation and post-mortem reviews. These fif­ across the req u i rements e n g i n eeri n g p rocesses.
teen cases are summarized in Figure 1 (b). Both of the above app roaches have been recom­
The second type of case (prescriptive) is a set of mended as ways for captu ring information that can
"rules" and their rationale. Each set of rules reflected be employed in p rocess improvements [17]. The
the aggregate experiences of a single practitioner. high level questions that were posed to gather this
The experience of the practitioners ranged from 2 data are shown in Figure 2. It should be noted that
req uirements engineering processes and up to 35. these questions were not posed in t h e form of a
These rules concerned problems that are commonly questionnaire, but represent the general reasoning
faced d uring the requirements engineering process, behind the specific questions.
how they should be addressed, and why they are
sometimes not add ressed in practice. Example rules 2.2 Synthesis and Validation Step
are "users participating in the requirements engi­
For the p u rposes of the results presented in t h is
neering process should always be at the supervisory
paper, the cases (60 in total) had to be synthesized
level" and "if the analysts are unfamiliar with the
into a number of issues that were of greatest con­
application domain then consider building a proto­
cern to practitioners. An issue is denoted by a label
type, consider software packages, and consider let­
given to a set of related p roblems, the a pproaches
ting the analysts construct models of the current
used to address them successfully in practice, and
system (the one being replaced) as a means for
diff iculties encou ntered impleme n t i n g such good
them to learn about the application domain". The
practices.
rule sets were solicited from thirty p ractitioners. Of
The synthesis task proceeded ite ratively. Each
these, 43% had a technical background, and 70%
iteration synthesized the information from one more
had a project management background.
case. The app roach was to identify the issues in
A two-pronged strategy was utilized i n collecting
each case. On su bsequent iterations the synthe­
the data for these cases. The first was to col lect
sized issues were refined and elaborated upon. This
i nformation about best practices and why they are
was repeated until all the cases were exhausted.
• What changes were made to the standard The authors s u bsequently decided which issues
Method X and why? If no changes were made, were of g reatest concern by the number of times
then why not? they were repeated and the importance attached to
• For each activity in Method X, under what cir­ them in the original cases.
cumstances would this activity be performed For the validation task, six of the o riginal intervie­
and why? Under what circumstances would you wees were interviewed again . They were p resented
not perform th is activity and why? What level of with the set of issues that were identified and asked
detail is appropriate for the output of this activity to ag ree/disagree with the issues, and comment on
and why? them in terms of thei r correctness and importance.
• For each activity in Method X, what individual, Furthermore, a version of the discussion presented
p roject and/or organizational characteristics in the results section of this paper was sent to three
would have an i mpact on its performance, how, of the original participants for comment. As well, two
and why? formal presentations were made to three of the origi­
• What i ndividual, p roject and/or organizational nal interviewees, and the ensuing discussion result­
characteristics would have an impact on the ed in feedback about the correctness and impor­
overal l success of the req uirements engineering tance of the identified issues. This validation exer­
process, how, and why? cise cul minated in a refinement of the original set of
• In retrospect, what changes should have been issues4, and these are p resented in the following
made to the requirements engineering process section.
and why? 4 Refinements concemed largely the g rouping of results into
common issues and the clarification of terminology. To a
Figure 2: H i g h level questions used in the data lesser extent, the relative importance of some problems
gathering step. was also affected.

70
Issue Concern Recommendations Difficulties Implementing Recommendations Successfully
Package Should packages • packages should, in general, be considered in the requirements engi­ • organizational politics and the 'Not Invented Here' syndrome
Consideration be considered in neering process except in the case of unprecedented systems may hinder package consideration
the requirements • when resource constraints exist, packages are considered
engineering with a view to compromising user requirements to avoid pack­
process? age adaptation

Managing the How much func­ • consider the extent of package adaptation necessary and the level of • inexperienced analysts tend to produce models that are too
Level of Detail tional process mod­ uncertainty when deciding when to stop the modeling activity detailed
of Functional eling is necessary • the greater the level of control in the organization, the greater
Process Models in the requirements the pressure to produce too much detail
engineering • when there are resource constraints, there is pressure to cut
phase? down on the modeling activity (i.e., too little detail)

Examining the Should the current • if there is no current system, then there is nothing to examine, other­ • inexperienced analysts may model the current system in too
Current System system be exam­ wise examination of the current system should be done much detail
ined? If so, how • consider the following 4 criteria when determining when to stop: models • some organizations are reluctant to spend more money on the
detailed should this of the existing system should be detailed enough to allow a diagnOSiS, current system and its examination
examination be? more effort is necessary for larger legacy systems, it may be possible • the higher the level of control of the organization, the greater
to reuse models of the current system, junior analysts may leam about the pressure to examine the current system in too much detail
the application domain if they model the current system
User Should users par­ • users should always participate in the requirements engineering • the most desirable users may not be available to participate
Participalion ticipate in the process • there is a history of lack of cooperation between user depart­
requirements engi­ • the mechanisms that can be used to promote user participation include ments and IS
neering process? If face-to-face meetings, workshops with users, communication with • there is open hostility between the user and IS organizations
so, how could they users through electronic mail andlor conference calls, liaison groups
participate and (either based in the user organization or IS organization), off-site visits
.... which users should by senior analysts to user departments, users sitting on a project steer­
.....
participate? ing committee, users reviewing and approving documentation items,
users performing some of the requirements engineering activities them­
selves (e.g., benefits analysis), users paying for the project out of their
own budgets and users being evaluated on the overall success of the
systems development effort
• the appropriate skills of participating users (especially the principal

user) include the list presented in Section 3.4

Managing How can uncertain­ • assi gn appropriately skilled people to analyst and architect positions, in • inappropriately skilled analysts and users are assigned to
Uncertainty ty be alleviated or particular the lead architect. The necessary skill set includes the list these positions due to the common practice of assigning peo­
dealt with in the presented in Section 3.5 ple based on availability rather than capability
requirements engi­ • assign appropriately skilled users to participate in the requirements • a prototyping effort is not managed properly (e.g., not manag­
neering process? engineering process, in particular the principal user. The necessary skill ing user expectations and assigning staff inexperienced with
set includes the list presented in Section 3.4 the prototyping tool to develop the prototype)
• if uncertainty is very high, then consider constructing a prototype

Benefits of How can benefits • an infrastructure must be in place to support the implementation of a • high and unrealistic expectations (e.g., immediate pay-off) by
CASE Tools be gained from CASE tool (e.g., training on methods and tool, and a CASE support management about the benefits of CASE tools
CASE tools in the group) • lack of funding for the implementation of CASE tools
RE process? • an organization must be willing and able to invest in putting such an
infrastructure in place

Project What are the nec­ • always assign a project manager of high capability to the requirements • people are assigned to project management positions based
Management essary skills of a engineering phase. The skill set of a project manager includes the list on their availability rather than on their project management
Capability project manager? presented in Section 3.7 capabilities
• the career track leads inappropriately skilled people to project
management positions

Figure 3: Summary of the seven requirements en ginee ring process issues.


3 Results where the users were not convinced about the via­
bility of expert system technology, seeing a package
T h e res ults of t h i s study i n d icate that t h ere are that util izes an expert system convinced them that
seven issues of greatest concern in requirements the technology was mature enough for their purpos­
engineering practice. These issues are discussed es.
below in terms of the problems they represent, how The above paragraphs indicate that some benefits
these problems are addressed successfully i n prac­ would probably be gained through package consid­
tice, and impedi ments to the implementation of such eration. Thus, the g e n eral recommendation has
good practices. An overall summary of the issues is been that packages should be considered in the
shown in Fig ure 3. This fig ure accompanies the dis­ requirements engineering process. I n terms of costs,
cussion below. the requ irements engi neering phase typically con­
sumes 1 0-1 5% of total system development effort
3.1 Package Consideration (this is also supported in the literature [7][20]), and
P a c k a g e s o l u t i o n s ( t h e s e are a l s o s o m et i mes package consideration is only a small fraction of the
referred to as Components Off The Shelf or COTS) requ irements e n g ineer i n g phase. T h u s t h e total
may be considered during the require ments engi­ effort that is consumed i n package conSideration is
neeri ng process for one or a combination of three relatively small.
reasons. The first is that packages may serve as I n t h e case of u n preced ented syste m s (with
existing system s urrogates; t h e second is that a respect to functionality and/or technology), however,
package solution may form the whole or part of the appropriate packages may not exist in the market.
recommended solution; and the third is that package Therefore, if it is evident that no packages exist, or
consideration may boost the users' confidence with that an extensive package adaptation effort is nec­
the recommended sol ution . essary to make use of existing packages, then pack­
While serving as existing system surrogates, pack­ age consideration would not n ecessarily be cost­
ages aid in the definition of user needs. Through effective. For example, in one case packages were
their i nteractions with a package, users can more not considered because it was very obvious that the
easi ly identify the fu nctions they need and desire, software system was very close to the state-of-the­
and define the functions that are not avai lable in the art in I nformation Technology.
package. Davis [8] has also previously suggested Two problems were identified that frequently i n hib­
that a package may be used as an anchor and the ited package consideration. The first prob l e m is
new system requirements can be adjusted from it. organ izational pol itics. One project manager with
Furthermore, when used as existing system surro­ extensive experience i n government environ ments
gates, packages have acted as a sou rce of ideas to elaborates:
analysts in terms of user-interface desi g n , and i n In government it is less likely [that packages
terms o f how t o structure t h e functions and data i n are considered]. They are not so concerned
their models. These models are ultimately used as about cost, so they will not accept a package
part of the architecture if a software system is to be to save money; there are political reasons for
developed. budgeting. The basic government attitude is
When considered for their potential as the whole of that they don't look at the value of things, it's
or part of the solution , packages are perceived to be not their money.
less costly business solutions in terms of funds and Another example is when an organization just pur­
t i me to i m plem ent. T h i s is particu larly attract ive chased a mainframe and there existed a PC-based
when project f u n d i n g is low o r when the delivery package worthy of consideration:
schedule is tight. Someone up top told them that because they
There was strong consensus that packages should spent $20M on a mainframe, they had to use
also be considered so as to convi nce the users that it. They were reluctant to look at any PC­
alternative solutions (alternative to building a system based solutions. No one wants to rock the
from scratch) were considered, even if they do not boat!
serve as existing system surrogates or become (part
The secon d pro b l e m is t h e "not i nvented here"
of) the solution. Furthermore, packages have been
syndrome, whereby analysts believe that their situa­
used by analysts to convince users of the feasibility
tion is unique and they want to construct a system
of a part i c u l a r s o l ution, and hence making them
from scratch.
more comfortable with it. For example, in one case

72
3.2 Managing the Level of Detail of d e t � i l e d t he mod e l s s h o u l d b e . F o r e x a m p l e ,
Functional Process Models detailed models will facilitatl3 a better "build" or "buy"
decision since they allow for better estimates of (the
The main purposes of functional process modeling package adaptation and implementation) costs and
are to gain an understanding of what the software
(package functionality) benElfits, as well as giving the
system will do, what data it will consume and pro­
users a better understanding and awareness of how
d uce, and its i n teractions with other man ual and
the package will fit in with their business needs. A
au tomated sys t e m s . S uch a n u n d e rsta n d i n g is
good example of the benefits of models is described
employed in performing the cost/benefits analysis below by the project managl9r:
and in formulating and comparing alternative solu­
The users sometimes focused too much on
tions.
the look of the packages and not on whether
Modeling is still necessary even when package
the functionality is covered. In the [company's
solutions are considered. In such a situation, one
name] case, after the first demo, the users
would want to do three things. First, to identify a
were vety happy with thEl package, they want­
suitable set of packages for consideration . Second,
ed it right now, and bought it the day after. We
to determine the extent to which package adaptation
just showed them that the functionality that
is necessary. Third, to compare development costs
was covered in the package represents only
with package adaptation costs in order to make a
20% of the cost of developing the system.
"build" or "buy" decision. This implies that, at least, a
What do you do with the 80% that is left?
minimal amount of modeling is essential to identify
packages. Also, if a package is destined to become In the above example, the model allowed the ana­
the whole of or part of the solution, then a minimal lysts to estimate how much of the desired functional­
amount of modeling is necessary to determine the ity was covered by the package. T h i s particular
extent to which package adaptation is required. This package was later abandoned.
is consistent with both, the p rescriptive and empiri­ Furthermore, when the context is characterized as
cal literature, which promotes modeling as a prereq­ relatively uncertain, then detailed modeling is one
uisite to package consideration [4][24][25]. mechanism that would facilitate learning about the
Therefore, it is always necessary to construct func­ business p rocess and the tec hnology. However,
tional process models in the requirements engineer­ there are dangers in the employment of modelin g as
ing process. The question , of course, is how much the p rimary method for undE!rstanding within a highly
modeling is necessary (or how much detail) in the uncertain context. For example, if the users are not
requirements engineering phase? An exiguous level familiar with computerized systems or they do not
of detail inhibits the ability to perform an adequate understand models, then they will be unable to pro­
cost/benefits analysis, and to formulate and com­ vide adequate feedback and validation of the mod­
pare alternative solution s . An excessive level of els, and therefore there is no point in p resenting
detail is not cost-effective. them with models. Under such conditions, resorting
Considerable variation in the level of detail of func­ to prototyping as the primary method for determining
tional process models was observed in the cases requirements is preferable.
studied. This was evident from docu ment inspec­ Functional process mode,ling is one of the most
tions, where some requirements engineering phases effort consuming activities in the requirements engi­
only p roduced a one page context diagram, and oth­ neering p rocess. Hence, doing excessive modeling
ers produced a few hund red pages of data flow dia­ (where excessive means that the added detail pro­
g rams. In this study, the level of appropriate detail vides l ittle value for understanding the problem and
was found to be contingent upon the extent to which the solution, comparing alternative solutions, and for
package adaptation is necessary and on the amount performing a cost/benefits analysis) leads to a lower
of uncertainty. likelihood of a highly cost·effective requirements
Package adaptation only becomes important when engineering p rocess. It should also be recalled that,
a package is considered as part of or the whole of just because the requirements engi neering phase
the recommended solution. Package adaptation was was started, it is not predestined that a system will
found to be d riven p rimarily by two factors: the need be developed or a package purchased and adapted.
One o f the main points o f the requirements engi­
for interfaces with other systems and the extent to
which the package covers the system requirements. neering p rocess is to mak:e a g o/no-go bus i n ess
T h e g reater t h e extent of adaptation, t h e more decision as to whether to continue or stop the pro-

73
ject after the requirements engineering phase; thus the current system. The assessment includes the
the p roject may be stopped at the end of the require­ identification of the strengths and weaknesses of the
ments engineering phase. This provides further fuel cu rrent system, and why the cu rrent system is not
to the a rg u me nt that excessive detail is not cost­ adequate and requires replacement or upgrading.
effective since the project may be terminated at the Understanding and assessing the current system
end of the requ i rements engineering phase. provides the basis for a business case to construct a
Two factors were frequently identified as leading to new system . Furthermore, where some of the ana­
h i g h l y d etailed f u n ctional p rocess models. F i rst, lysts are not experienced in the application domain,
inexperienced analysts tend to spend a dispropor­ modeling the existing system is considered a good
tionate effort on model construction. Judging by the way to g a i n such experience. M o reover, it was
interviewee comments on this issue, it seems to be observed that models of the existing system can be
one of the most critical problems in the requirements reused in developing the new system where there is
engineering process. One p roje ct manager elabo­ a s i m i larity in fu nctional ity. However, some users
rates: and/or I nformation Systems ( IS) o rganizations p refer
They fall in love with modeling. They lack not to examine the cu rrent system due to the atti­
experience and are too junior in a business tude that "they have already paid for the current sys­
sense. They produce clever models that are tem and do not want to spend any more money on
as close to code as they can get them. They it".
have too narrow a vision of what the models In the cases studied, the existing systems were
are or what they are intended to do. [...] Most inadequate and were being replaced or u pg raded
of the time you have to hold back [junior ana­ because they w e re i n efficient or i n effecti v e , o r
lysts] from going into details. You have to con­ because they did not support evolving organizational
vince them that the extra effort to put details strategies and objectives. These inadequacies usu­
will not bring much benefits. You have to ally concerned both the IS organization, as well as
make a business decision and make [junior the user organization. Example IS organization inad­
analysts] move from one deliverable to anoth­ equacies are: the existing system is d ifficult to main­
er, even if they think their baby is not beautiful tain due to unpredictable ri p pl e effects in making
enough. changes, the existing system is not wel l documented
The level of detail of models is a project manage­ and tu rnover or cutbacks are eliminating IS knowl­
ment issue, and it is up to the p roject manager to edge about the system, and the I S o rganization
terminate modeli ng. To achieve this, an experienced w a n t s t o take a d v a n t a g e o f n e w t e c h n o l o g y .
p roject manage r is necessary to know when to stop. Examp le user organization i n adeq uacies are: the
Second, in some organizations, the level of control
existing syste m su ppo rts/automates an inefficient
is relatively hi gh. This implies that th ey want much
business process, the existing system has unreliable
detail in their models. I n some cases, it is the way or inaccurate outputs which results in extra manual
the organization operates, the organization is a effort to check and correct its outputs before they
can be used, and the existing system requires the
bureaucracy. For example, in one case the require­
ments engineering team had to build detailed mod­ i n put of too much manually collected data to be use­
els of all the alternative solutions, to the extent that ful.
they could actually implement all of them if they so In an ideal world, existing systems would be well
wished. Unfortunately, no particu lar recom menda­ documented, and fu nctional and data models for
tions for alleviating detail i n such a situation could be these systems shou ld be read ily available at the
identified. begin ning of the requirements engineering process.
However, in many of the cases studied, existing sys­
3.3 Examining the Current System tem documentation was lacki ng . In the rema i ni ng
cases, models of the existing system were available.
The main pu rpose of examining the current system This availabil ity was due to the I S organization keep­
is to understand it and then to assess it. The former ing docu mentation current, or because the organiza­
i ncludes u nderstanding what the exist i n g system tion was going through a business process reengi­
does, who are the parties involved with the current neering exercise . I n the latter situation, existing busi­
system (e.g., users, suppliers, clients etc.), and why ness processes and their supporting I nformation
it o pe rates in the current way. This understanding Systems are modeled as part of the reengineering
would always be translated into an assessment of approach.

74
In cases where existing systems had to be mod­ tions also inhibits user participation.
eled during the requirements engineering phase, the Furthermore, the most desi rable users are usually
same p robl e ms with the level of detail of models the least available users. Hence, it is frequently diffi­
mentioned above a rose. These are the lack of expe­ cult to g et their time commitment to the req ui re­
rience of analysts and the high level of control of ments engineering phase. This is a particularly ardu­
some organizations. ous issue to resolve in small compani es, and with
users in organizations experiencing rapid g rowth. In
3.4 User Participation addition, participation in the requirements engineer­
ing phase entails an increase in the users' workload
The primary benefits of user participation were per­
and responsibility; if they are not appropriately com­
ceived to be: less rework of the documentation items
pensated, then t h i s may lead to resentment and
since the users took part i n their generation and
eventually lack of cooperation .
approval ; greater fit of the recommended solution to
The most desi rab l e users h ave a s k i l l set that
the organization; participation helps reduce political
i ncludes the following:
conflicts among users; participation ensures early
u ser "b uy-in" i nto the system; and participation • familiar and experienced with computerized sys­
reduces the likeli hood of sabotage or users "trying to tems;
defeat the [recommended solution] or the system". • good knowledge of the application domain, the
F u rthermore, s i n ce a critical decision has to be business processes, and the needs of the user
made after the cost/benefits analysis, user participa­ organization;
tion ensures that they are convinced of the estimat­ • good knowledge of systems development
processes (especially the requ irements engineer­
ed costs and benefits of the recommended solution.
W h i l e it was evident that it is one of the most ing process and modeling techniques) and their
deliverables;
i mportant factors that contribute to the success of
the requirements engineering phase, a n umber of • good knowledge of Information System implemen­
factors in hibited user participation. The most com­ tation planning and management, and change
management concepts; and
mon ones were a h i story of lack of cooperation
• able to deal with people and have good communi­
betwe e n I S g r o u p s a n d u se r s , o p e n h o st i l it y
cation skil ls.
between project members a n d users, a n d u navail­
ability of users. I n addition, it is desirable that participating users
When there is a h i story of lack of cooperat i on have influence by authority within the user organiza­
between users and IS, it is surprisingly difficult to tion. This is critical because, in most situations, the
bring about a change towards g reater user participa­ participati ng users must subseq uently go back to
tion . In one case the project manager explains the their respective departments and ensure the com­
situation: mitment and buy- i n of the remain i n g end-users.
The IS people have the policy of building Moreover, if it is necessary to pull user resources,
products they feel the users will need and especially from other departments, the participating
then try to market them to the users. Business users must be high enough i n the organ izati onal
people are not happy about that. [. .J The IS.
h i e rarchy to do it. If the recomme nded solution
people think they understand the business so encompasses a restructuring of the business, low
well, better than the user, and so they try to level managers usually do not have the power or
force their ideas on the users. IS may under­ capacity to decide at that level, especially if other
stand the business, but their perceptions of departments are concerned. A senior partici pating
the business objectives may be different from user also has the authority (and one of the few in an
the users. organization) to i mplement an I nformation System
that req u i res organ izational changes in the user
Open hostility occurred when there were severe
organization and to secure the resources to do so;
personal ity c lashes between a senior IS person
g etti n g early participation and commitment from
i n volved in the requ i rements engineering process
such a user is a prerequisite to a successful imple­
and a senior user. In one case the personality clash
mentation.
was severe enoug h that the user refused to validate
the documentation, with excuses akin to "don't you
3.5 Managing Uncertainty
know what you are doing, why do you want me to
validate it?" A lack of trust between the two fu nc- Uncertainty is one of the most acknowledged situa-

75
tional variables in the software engineering litera­ • good knowledge of the hardware and software
ture. It has been recommended that uncertainty technology to be used in the Information System;
should be considered when deciding whether to pro­ • able to deal with people, and has good interview­
totype [13], when deciding what requirements engi­ ing and verbal communication skills;
neering activities to perform [8], and when deciding • good knowledge of and experience with conceptu­
which general systems development life cycle mod­ al and functional modeling;
els to follow [2]. • good knowledge of and experience with the
Uncertainty denotes the difference between the requirements engineering process and its deliver­
amount of knowledge that is required and that is abies;
available about the problem and solution domains. • good knowledge of and experience in conducting
The greater the uncertainty, the greater the amount a cost/benefits analysis;
of changes to the requirements engineering docu­ • good knowledge and experience of issues related
mentation. to system implementation and organizational
Four dimensions to uncertainty have been identi­ change; and
fied: user uncertainty, analyst uncertainty, applica­ • good knowledge of and experience with software
tion uncertainty, and utilizing system uncertainty. package analysis and evaluation.
User uncertainty is concerned with the ability of the Inexperienced analysts are considered not to be
users participating in the requirements engineering able to ask the right questions or the "tough" ques­
phase to specify requirements. Analyst uncertainty tions to executives, because they never did. One
is concerned with the analysts' ability to elicit commonly encountered problem that leads to inca­
requirements and use these to formulate a recom­ pable analysts taking part in the requirement engi­
mended solution. Application uncertainty concerns neering phase has been careless assignment and
the software system to be developed and its associ­ hiring practices. It is common for roles in the require­
ated technology. Utilizing system uncertainty con­ ments engineering phase to be instantiated by indi­
cerns the business process to be automated or sup­ viduals who are available rather than those who are
ported by the software system. capable of doing the job. The following comments
Users who contribute toward uncertainty will gen­ exemplify the problem of hiring practices:
erally not understand models and will not be able to
You have c o mpanies who feel that
get the right information. The requirements engi­
Information Systems can be built without any
neering team will not be building the right system.
specific skills. Many organizations do not
This situation is more common in small and rapidly
understand [the need for specific roles]. They
growing organizations where the most capable
fee/ that IS people can do any role. [. ..] The
users are not availa ble. One project manager
company does not necessarily recruit from the
describes the situation in an organization experienc­
domain. In fact, the senior members complain
ing rapid growth:
that the recruiting habits are "really bad" and
There was very littfe di scipline in the manage­ that they were hiring people that were not
ment structure because the organization was qu alified. Th is was beca u s e Hum a n
built in no time, and before you can build [dis­ Resources usually did the hiring. The prob­
cipline] t h e company d o u bled in size. lems were manifested in that there was a high
Everybody in there has been promoted about turnover rate at the junior level.
three levels beyond their level of competence
Also, uncertainty was increased when organiza­
as managers. Nobody knows the business.
tions were rapidly adopting new technologies in an
Lack of knowledge of the business process by the attempt to gain a competitive advantage. Such new
user cannot be overcome except by either replacing technologies included object oriented analysis and
the user, or if the senior analyst has extensive design techniques, client/server architectures, and
knowledge of the business. sophisticated GUl's. Furthermore, unstable busi­
Capable analysts are able to elicit requirements nesses and users that are unable to commit to the
from the users and express these as models reflect­ decisions they make provide the analysts with a
ing a solution. A capable analyst will have a skill set moving target, and hence contribute to uncertainty.
including the following: One solution recommended for managing high
• good knowledge of the application domain and the uncertainty is prototyping. The primary motivations
business processes of the user organization; for building a prototype were: eliciting requirements,

76
validating requi rements, and determining the feasi­ Technology, there is the contention among lead
bility of particular solutions. This is concordant with architects that it is easier to prototype than to teach
t h e recomme n d a t i o n s in t he l i te rature [1 ][ 1 3]. the users about data and process modeling (for the
Different kinds of prototypes were also constructed. users to understand the system and to perform vali­
These ranged from the simple sc reen mock-ups, dation). Furthermore, some project managers assert
internal prototypes used only by analysts to test new that in a number of cases the users were too afraid
technolog ies, to f u l l scale prototypes including a to admit that they do not understand the models,
model office and actors to play the roles for demon­ and hence may provide erroneous feedback. When
strating the manual and automated processes and in doubt, it is therefore more prudent to present to
their interactions. the users a prototype which they can more easily
When uncertainty is low, "prototyping never makes relate to. In situations where there are users repre­
things bad, it only costs more". However, even when senting multiple departments in the organization, a
uncertainty is low, prototypi ng has the advantage of prototype may also help in attaining a consensus on
making the users more comfortable with the solu­ the recommended solution.
tion; it provides them with g reater visibil ity. This, of Three prototype dangers were also h i g h l ighted.
cou rse, is even more beneficial when uncertainty is The first one concerns users with little I nformation
high. In addition, as Tozer [23] and Alavi [1J note, Technology experience. A typical comment is:
p rototyp i n g can lead to improved relati o n s h i ps Users can build misconceptions about soft­
between the users and the analysts. ware development [if you prototype). For
A classic example where prototyping was critical is example, software is easy to build and devel­
summarized below by one of the team members: opment has quick turnaround, or systems
Proto typing was started early because the don't work and are full of bugs.
system was too much state-of-the-art, not like While some authors d iscou nt such fears about
designing a payroll system, it was something users' misconceptions as something that does not
that does not exist, with very high ergonomic occur in practice [23], others recognize it as a real
requirements. It was very multidisciplinary, danger [22][1 ]. The issue here is that of managing
with many different types of users. Each of user expectations during prototyping efforts.
these disciplines has their own way of work­ The second danger is that of the capability of the
ing, so it is not just mechanizing something person building the prototype. If such a person is not
that was never mechanized before, but it is an expert in the p rototyping tOOl, then prototyping
also to standardize the way the information is may not achieve its objectives. Finally, there is the
presented. The system is multi-media, it has danger of the prototyping tool itself. One lead archi­
voice, text, and image. [. . 1 The practical users
.
tect elaborates:
on the day-to-day job wanted to criticize every Prototyping tools have limitations. They are
button on the screens, they're saying there's good with simple applications. When you
too many screens, the navigation is too long, exceed the boundaries of the tool and you
c a n you combine this screen with that? have to modify the generated code, then this
They're really in the middle of what's going to results in much greater effort. It really
change their way of working. They don't even depends on the tool and its limitations.
like unreal data, it has to make sense.
This corroborates the dangers identified by Tozer
This exam p l e h i g h l ights two facts. Fi rst, when [23] who states that "No 4GL meets 100% of the
technology is new and too fragmented, when the requirements for building systems such as complex
user i nterface is complex, and when there are many corporate systems which may have to fit in with
d ifferent kinds of users, a prototype is useful for existing mainframe systems". However, she goes on
assessing the feasibility of the solution, and ensures to add that, from her expmiences, modifying the
g reater user acceptance of the emerging solution. It generated code is not a problem since the tool that
also enables the analysts to learn about the different was used generated readable and structured code,
implementation alternatives. The second fact is the and the person nel constructing the prototype have
importance of constructing prototypes of acceptable extensive experience with the tool.
quality using real data, a point previously made by
Tate [22].
W he n u s e rs are not fami l i a r w i t h I nfo rmat i o n

77
3.6 Benefits of CASE Tools other larger organizations. It was repeatedly stated
by the interviewees that IS o rganizations withi n com­
A prerequisite to attai ning significant benefits from a
panies facing strong competition in their traditional
CASE tool is to implement the tool. I n the require·
markets, where there is a large backlog of systems
ments engineerin g processes we studied, the imple· to be developed, where a large percentage of effort
mentation of CASE tools was only effective in orga·
is expended evolving legacy systems, where there is
n izations that had put in place an infrastructure to
a lack of job security, and/or where top IS manage­
support implementation. This i m plies that at least
ment is under p ressu re to deliver resu lts q u ickly,
the req u i re m e nts e n g i ne e r i n g p rocess was well
there is a strong perception that CASE is a critical
defined, the analysts received training on the CASE
key to s o l v i n g p ro d u c t i v i t y p ro b l e m s r a p i d l y .
tool, and there exists some form of CASE tool sup­ U nfortunately, the literature does not support such
port organization. The literature provides evidence
expectations. Productivity gains from CASE are one
t hat to i m p l e ment a CASE too l , at a m i n i m u m a
of the long-term benefits of CASE implementation
methodology must be in place [5][27]. I n organiza­
[11][10][16].
tions that did not have an adequate infrastructure,
CASE tools we re bought but were not used, CASE
3.7 Project Management Capability
tools were pu rchased and were being used as draw­
ing tools, other non-CASE tools were used solely for The project manager's role in the requi rements engi­
the pu rpose of drawing models, and/or the analysts neering process includes planning and control, and
p repared the models by hand. managing the people in the requirements engineer­
There was no particular trend noticed in terms of ing team. The project manager also has to manage
funding sources for the i mplementation of CASE. I n relationships with the users. This is i mportant since,
some o rganizations these came out of project bud­ as one interviewee expressed it, "if you have a prob­
gets, while i n othe rs funding was centralized and lem with a user group, they'll remember it for a long
CASE was considered an I S fu nction asset for use time ". F u rt h e r m o re , the p roject manager s h o u l d
by all projects. have a good knowledge o f t h e req u i rements engi­
However, where the source of f u n d i n g i mposed n ee r i n g p rocess, because s/he has to tell team
resou rce constraints, there was no i ncident where members what to do and to make sure that they are
CASE was implemented. Huff [12] and Hayley and doing what they are supposed to be dOing "so as not
Layman [11] report on the high dollar and time costs to be taken advantage of".
assoc iated w i t h C A S E i m p l e m e ntat i o n . H e n ce, One of the more important activities that a project
resource constra ined p rojects o r I S o rganizations manager must perform is estimating and obtaining
s i m ply can not afford the expense and/o r time to a d e q u ate res o u rces (ti m e and f u n d i n g ) f o r t h e
i mplement CASE. A typical situation is the organiza­ req ui rements engineering p rocess. The majority of
tion being unable to purchase enough copies of the estimates were based on the experience of the pro­
tool or p u rchase enough workstations for all the par­ ject manager and estimation grids for typical require­
ticipating analysts. In such requ i rements engineering ments engineering phases.
phases, the CASE tool was not used. Zagorsky [27] A few of the project managers interviewed conced­
also pinpointed the lack of availability of the CASE ed that t h e re ex i sts p ress u re to u n d e re sti m ate
tool to all team members as an obstacle to its imple­ resources, especially when the I S and/or user orga­
mentation. nization is not benefits oriented ( i . e . , decisions are
I nteresti ngly, many project managers in small IS based main ly on costs rather than on a cost/benefits
organizations, usually characterized by low funding, ratio) . T h i s l eads to reso u rc e const ra i nts in the
e mp h a s i zed the need f o r CASE tools ( o r b etter r e q u i re m e n t s e n g i n e e r i n g p ro c e s s . E xa m p l e
CASE tools) and the need for more automation. This sources of pressure to u nderestimate are: political
e m p ha s i s is based o n t h e p e rcept ion that more reasons (for example the politics of budgeting), and
automation , by itself, will i ncrease productivity. This some I S organizations are simply not accustomed to
perception has been further reinforced by the mar­ m a k i n g large i nvest m e nts in I S . Sched u l e c o n ­
keti ng efforts of tool vendors and (independent and straints are also created b y hard deadlines that are
corporate) consultants touting the productivity gains decided outside the IS function. For example, when
of CASE. one utility had to change its billing process, the sys­
These p redicted gains not only seem attractive to tem that supports billing had to be in place at a spe­
small I S o rganizations with low funding, but also to cific date because commitments were already made

78
to customers. Also, in government agencies, when • g o o d k n ow l e d g e of t h e system d e ve l o p me n t
there is new legislation, for example new taxes, the p rocess (in particular the req u i rements eng ineer­
system that suppo rts it must be operational in time Ing process) and its deliverables; and
for when the legislation comes into effect. • has a good understanding of emerging req ui re­
The consequences of resource constraints (unreal­ ments engineering technologies and tools.
istic budgets and schedules) is that they force the
requirements eng ineering team to be "innovative". 4 Conclusions
This can take the form of cutting down on process
It is evident from the foregoing discussion that, as
and data modeling activities, to the detriment of the
well as technical issues, non-technical issues are of
team's ability to formulate a realistic business case.
A ls o , package s o l u t i o n s a re favored g ive n t h e
! mportance in the requirements engineering process
In IS development. Specifically, the problems faced
resou rce constraints, but the user requ i rements are
concern performing the appropriate activities (e.g.,
c o m p r o m ised to avo i d t h e costs of adaptat i o n .
whether to consider packages and whether to proto­
Furthermore, project management activities are cur­
type), deciding when to stop particular activities (e.g,
tailed (having only part-time p roject managers and
functional process modeling and examination of the
reduce p rogress reporting).
cu rrent system), securing an adequate level of user
Experienced p roject manage rs u nd e rstand the
partici patio n , and selecting capable perso nnel to
need to sched ule time for decision making d u ring
i nstantiate key roles in the requirements engineering
the requ i rements eng ineering phase. Fai l u re to do
phase (e.g, the p roject manager, lead architect, and
so may result in g ross underestimates of resources.
principal user). Furthermore, the main problem with
Organizations vary widely in the speed with which
attaining benefits from CASE tools were i mplemen­
they can make decisions. I n some organizations the
tation p roblems, l ike training the analysts on the tool
decision making p rocess is consensua l , o r every
and the underlying methodology.
decision requ i res multiple layers of approval. One
F i n d i ng that non-technical issues are important
p roject manager commented about a government
supports the beliefs of other researchers in software
�gency where no one actually makes a decision, it
process improvement [1 8], and is concordant with
Just emerges. This way no one can be held respon­
the results of an earlier study of requi rements engi­
sible for a particular decision. It is thus important for
neering p ractices where the authors state [ 1 5] : "It
t h e p roject manag e r to est i m ate acc u rately the
was strikingly obvious that many of the problems
delays d u e to decision maki n g lags and incl ude
faced by the projects we interviewed were organiza­
these in the project plan.
tional and non-technical. Moreover, projects tend to
Project managers lacking capabil ity are assigned
adopt organizational solutions to most of their prob­
to this role for two commonly cited reasons. The first
lems, whether technical or non-technical". I n addi­
is the general practice of aSSigning people to roles
tion, the results of this study complement existing
based on their availability not capability. The second
works by identifyin g i mpedi ments to the i mplementa­
is the career track that leads people to project man­
tion of what are considered to be good requ i rements
agement positions:
engineering practices.
In many cases, people are promoted to the F u rt h e r c o n f i d e n c e i n o u r r e s u l t s w o u l d be
project manager role based on years with the obtained if other researchers replicate this study or
company, not based on capability. They don't cond uct similar studies using a different sample of
understand the importance of project man­ projects and informants. Moreover, the employment
agement, so they assign anyone to project of alternative empirical research methods (e.g . , sur­
management, usually an analyst. They do not veys a n d q u a s i - e x p e r i m e n t s ) i n i nvest i g a t i n g
understand that a good analyst does not requ i rements engineering p ractices would ascertain
[always} make a good project manager. the extent to which our results are affected by the
The skill set of a capable project manager should case study approach that we followed. Such investi­
include the following: gations coul d , for i n stance, util ize o u r findings as
• able to use automated project management tools; hypotheses to be tested .
• has good esti mation capabilities: M a n y o f t h e identified p roblems are o f concern
• able to decompose and monitor activities; mainly during the planning of the requi rements engi­
• able to deal with people, and has good negotiation neering process (e.g., deciding whether to prototype
and verbal communication skills; and whether to consider package solutions). Future

79
research should therefore also focus on providing system programs". In IEEE Transactions on Software
automated and non -automated tools and methods Engineering, SE-1 (2): 1 40-1 49, J un e 1 97 5 .
[ 1 0] M . Gibson, C. S n yde r a n d K. R a i n e r J r . . "CAS E :
that support decision making d u ring the p la n n i ng
C larifying common misconceptions". I n Journal o f
activities. For example, a tool t hat would assist in Systems Management, pag es 1 2- 1 9, May 1 989.
deciding what activities to perform and for h ow long. [1 1 ] K. Hayley and T. Lyman. "The realities of CASE". In
This would be a requirements engi neering process J ournal of Information Systems Management, pages
design or customization assistance tool . When the 1 8-23, Summer 1 990.
[ 1 2] C. HuH. "Elements of a realistic CASE tool adoption
prospect of such a tool was proposed to the intervie­
budget". In Communications of the ACM, 35(4):45-54,
wees, there was h i g h interest and strong agreement April 1 992.
that it would be beneficial, not only to assist decision [ 1 3] M . Janson and L. Smith. "P roto ty pi ng fo r systems
making, but also for trai ning p roject managers on deve l o pm en t : A critical app rai sal" . In MIS Quarterly,
how to plan requirements engineering p rocesses. pages 305-3 1 6, December 1 985.
[ 1 4] C. Jones. "Assessm ent and control of software risks".
Anoth e r h i g h leve rage area of research t hat i s
Prentice Hal l , 1 994.
identifiable from t h i s study is t h e development of a [ 1 5] M. Lubars, C. Potts, and C. Ri chte r . "A review of the
method or i nstrument to assess the capability of key state of t he practice in r e q u i re m e nts mod e l i n g " . I n
requirements engineering personnel. G iven that pre­ Proceedings of the IEEE International Symposium on
vious studies of req uirements engi neering p ractices Requirements Engineering, pages 2 - 1 4 , J an u a ry
1 993.
have found that personnel capabil ity and knowledge
[ 1 6] C. Kemerer. "How the learning curve affects CASE
h ave a n o n t r i v i a l i mpact on t h e success of t h e tool adoption". I n IEEE Software, pages 23-28, May
req u i re ments e n g i ne e r i n g p rocess [6] [ 1 5), s u c h 1 992.
assessments wo uld be invaluable f o r staffing and [ 1 7] D . Perry. "Human prospects of process design". I n
training purposes. Proceedings o f the Seventh International Software
Process Workshop, pages 22-27, 1 992.
[1 8] D . Perry, N . Staudenmayer, and L. Votta. "People,
Acknowledgements organizations, and p rocess i m pro ve m e n t" . I n IEEE
Software, pages 36-45, J u ly 1 994.
The authors wish to thank Lionel B riand for his com­
[ 1 9] R . R u be y , J . D a n a a n d P. B i c h e . " Q u a n t i tative
ments on an earlier version of this paper. aspects of software validation". I n IEEE Transactions
on Software Engineering, S E - 1 (2 ) : 1 5 0- 1 55 , J u ne
References 1 975.
[20] S of t w a r e E n g i n e e r i n g L ab o rato r y . " S o f t w a re
[1 ] M. Alavi. "An assessment of the prototyping approach En gi neering Laboratory (SEL) relationships, models,
to i n f o rmati o n systems d e ve l o p m e n t " . In and measurement rules". Technical Report SEL-9 1 -
Communications of the A CM, 27(6) : 556-563, J une 001, NASA Goddard Space Flight Center, February
1 984. 1 991 .
[2] L. Alexander and A. Davis. "Criteria for selecting soft­ [2 1 ] E. Swanson and C. Beath. "The use of case study
ware process models" . I n Proceedings of the 1 5th data in software management research". In Journal of
International IEEE COMPSAC, pages 52 1 -528, 1 991 . Systems and Software, 8(1 ):63-71 , January 1 988.
[3] V. Basili and B. Perricone. "Software errors and com­ [22] G. Tate. "Prototyping: Helping to build the rig ht soft­
p l e x i ty : A n e m p i r i ca l i n ves t i g a t i o n " . In ware". I n Information and Software Techn ology,
Communica tions of the A CM, 27( 1 ) :42-52, Janu ary 32(4):237-244, May 1 990.
1 984. [23] J. T o z e r . " P ro t ot y p i n g as a system develo p m e n t
[4] M. Bryce and T. Bryce. "Make or buy softwa re? " . I n m e t h o d o l o g y : O p p o rt u n i t i e s a n d p i t f a l l s " . I n
Journal of Systems Management, pages 6-1 1 , Au gust Information and Software Technology, 29(5):265-269,
1 987. J u ne 1 987.
[5] K. C ulver-Lozo and V. Glezman. "Experiences apply­ [24] S. Vallabhaneni. "Auditin g software development: A
i n g methods s u p p o rted by CAS E t o o l s " . I n A T& T manual with case studies". John W i l ey & Sons, 1 990.
Technical Journal, pa g e s 20-26, [25] M. Wu. "Selecting the right software application pack­
N ovember/December 1 992. age". In Journal of Systems Management, pages 28-
[0] B. C u rtis, H . Krasner, and N . ISGoe. "A field study of 32, September 1 990.
t h e software desi g n process for large systems". I n [26] R. Yin. "Case study resea rc h , d es i gn an d method s" .
Communications of the A CM, 3 1 ( 1 1 ) : 1 26 8 - 1 2 8 6 , Sage Publications, 1 984.
N ovember 1 988. [27] C. Zagorsky. "Case study: Managing the change to
[7] E . D a ly. "Management of software d eve l opm e nt" . I n C A S E" . I n Journal of Information Sys tems
IEEE Tra nsactions on Software Engineering, S E- Management, pages 24-32, Summer 1 990.
3(3):229-242, May 1 977.
[8] G. Davis. " St rate gi es for i n fo rmat io n req u i reme nts
dete rmination". In IBM Systems Journal, 21 (1 ):4-3 1 ,
1 982.
[9] A. E ndres. "A n analysis of errors and their cau ses i n

80

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