1 Introduction
Requirements analysis is acknowledged as a critical success factor for
software projects [32]. If not properly addressed, requirements can
cause a project to fail. Nevertheless, practical experience proves that
mistakes are frequent at this stage of information system (IS)
development for organizations. Two of these mistakes are the lack of
understanding of the business by requirements engineers and the
miscommunication between business people and computing people.
These problems can hinder business/IT alignment [19][27], thus IS does
not fulfill the needs of the organization.
Requirements must be defined in terms of phenomena that occur in
the business environment [38]. However, it is common for requirements
documentation to be solution-oriented, to not reflect the business
environment, or to only consist of a data model in the form of a class or
entity-relationship diagram. As a solution, several authors have pointed
out the importance of organizational modeling during
*
This work has been developed with the support of the Ministry of Education and
Science of Spain under the project SESAMO TIN2007-62894 and the program FPU,
and cofinanced by FEDER.
W. Abramowicz and D. Fensel (Eds.): BIS 2008, LNBIP 7, pp. 165–176, 2008. © Springer-
Verlag Berlin Heidelberg 2008
Triggers
• Occupation expired
Preconditions -Postconditions
Input Output
State
Data Object State Data Object
Expiration Notified
Occupation Expired Occupation
-
Customer - -
sibility
User intention System respon
1. Show the apartments whose occupation
has expired
2. Select an apartment
Business Rules
1. Clients are to check out by 10.00 a.m. on the last day of their stay at the latest, and they
are obliged to have vacated the apartment by this time.
4 Practical Experience
The research project presented in this paper has been done in the
context of the OO-Method project [24]. OO Method is an industrial model
transformation method that relies on a CASE tool to automatically
generate complete information systems from object-oriented conceptual
models. As stated above, the approach is the result of a project with a
company, CARE Technologies. The purpose of the project was to solve
problems related to the requirements stage by trying to link the
business domain and the software domain.
After analyzing the requirements practices of CARE, we identified
problems related to business understanding, purpose analysis of the IS,
and communication with end-users. The company uses OO-Method [26],
a methodology for automatic software generation based on data
conceptual modelling. The conceptual schemas consist mainly of a class
diagram that is enriched with functional information about the result of
class service execution. Analysts usually use class diagrams as a unique
system model, by simply providing a textual description about the
requirements and validating them on the class diagram or when the
application has been generated.
Although analysts feel comfortable with this technique for information
system development, we think it could be improved. Some authors have
stated that class diagrams alone might not be appropriate for
communicating and verifying requirements, that there are few empirical
studies addressing the ability of end-users to understand class models,
and that they can be very complex for people that have not been
trained in object-oriented modelling [11]. In addition, objects might not
be a good way of thinking about a problem domain [33].
The approach has been used in three projects in order to evaluate it
and to try to find deficiencies and make improvements. It is currently
being used on new projects. The approach has been refined gradually
based on the comments of both customers and analysts. The projects
developed were a car rental company, the organization of a golf
tournament, and the organization of this case study. They are
small/medium size projects. CARE had developed software for the
companies previously, so both the techniques that they usually use and
the approach that we have proposed could be compared.
For the case study (apartment rental company), the introduction of
the new IS did not change the business process significantly, and the
result was automation rather than reengineering.
We held five meetings to obtain the requirements specification of the
case study: two meeting for organizational modelling, one meeting to
define the task templates, and one meeting to validate the entire
requirements specification. A fifth meeting was held to talk about the
experience with end-users and analysts. Each meeting took
approximately 2 hours.
As expected, the end-users stated that they could understand and
validate the requirements models of the approach more easily than the
class diagrams, thus facilitating communication and interaction. They
also felt more involved in system development and claimed that they
had a more participative attitude.
When asking analysts about the usefulness of the approach, we
obtained different opinions. Although all the analysts stated that the
approach allowed them to better understand the organizations, the
purpose of the IS, and, consequently, the requirements, there were
some analysts who did not think the approach could improve their job
significantly and would probably not use it.
We do not find these comments about the usefulness of the approach
discouraging. When analyzing the opinions more deeply, the analysts
that did not think that the approach was as useful were senior analysts
who are already very skilled in modelling with OO-Method and
interacting with customers. In fact, some of them said that they usually
model the systems while the customer describes what the system
should do, so they can quickly generate it, validate it, and fix it if
needed. However, most of the junior analysts, who have less experience
in dealing with customers and, therefore, in understanding what is
wanted or needed, considered that the approach could really help them.
We think these results are a reflection of common practices in
information system development. Models are only used when they are
believed to be useful [9]. In our case, some senior analysts do not think
that the approach can accelerate their job, whereas junior analysts think
that it can improve their performance.
Finally, this practical experience has some limitations. First, we think
the approach has to be used in more projects to draw definite
conclusions. Second, the opinions of both the customers and the
analysts were obtained by discussing with them informally, so we are
now designing a specific form to survey the next projects. Last but not
least, we also want to assess the approach by means of experiments
with students and software developers from other companies.
References
[1] Alexander, I., Bider, I., Regev, G.: Workshop on Requirements Engineering
for Business Process Support (REBPS 2003), Klagenfurt/Velden, Austria
(2003)
[2] Attaran, M.: Exploring the relationship between information technology and
business process reengineering. Information & Management 41, 585–596
(2003)
[3] Bleistein, S.: B-SCP: an integrated approach for validating alignment of
organizational IT requirements with competitive business strategy. PhD
Thesis, The University of New South Wales, Sidney, Australia (2006)
[4] Bubenko, J., Persson, A., Stirna, J.E.: User Guide (online) (2001),
http://www.dsv.su.se/~js/ekd_user_guide.html
[5] CARE Technlogies, http://www.care-t.com
[6] Castro, J., Kolp, M., Mylopoulos, J.: Towards requirements-driven information
systems engineering: the Tropos Project. Information Systems 27, 365–389
(2002)
[7] Constantine, L., Lockwood, L.: Software for Use: A Practical Guide to the
Models and Methods of Usage- Centered Design. Addison Wesley, Reading
(1999)
[8] Curtis, B., Kellner, M., Over, J.: Process Modelling. Communications of the
ACM 35(9), 75–90 (1992)
[9] Dardenne, van Lamsweerde, A., Fickas, S.: Goal-directed Requirements
Acquisition. Science of Computer Programming 20, 3–50 (1993)
[10] Daoudi, F., Nurcan, S.: A Benchmarking Framework for Methods to Design
Flexible Business Process. Software Process Improvement and Practice 12,
51–63 (2007)
[11] Dobing, B., Parsoms, J.: Understanding the role of use cases in UML: a
review and research agenda. Journal of Database Management 11(4), 28–36
(2000)
[12] Dumas, M., van der Aalst, W., ter Hofstede, A.: Process-Aware Information
Systems. Wiley, Chichester (2005)
[13] Eriksson, H., Penker, M.: Business Modeling with UML: Business Patterns at
Work. John Wiley and Sons, Chichester (2000)
[14] Estrada, H., et al.: An Empirical Evaluation if the i* Framework in a Model-
Based Software Generation Environment. In: Dubois, E., Pohl, K. (eds.)
CAiSE 2006. LNCS, vol. 4001, Springer, Heidelberg (2006)
[15] International Institute of Business Analysis. Business Analysis Body of
Knowledge (online) (2006), http://www.iiba.com
[16] International Organization for Standardization. ISO 9001:2000,
http://www.iso.ch
[17] Holtzblatt, K., Beyer, H.: Requirements gathering: the human factor.
Communications of the ACM 38(5), 31–32 (1995)
[18] Lauesen, S.: Task Descriptions as Functional Requirements. IEEE Software
20(2), 58–65 (2003)
[19] Luftman, J., Raymond, R., Brier, T.: Enablers and Inhibitors of Business-IT
Alignment. Communications of AIS 1 (1999)
[20] Lukaitis, S., Cybulski, J.: The Role of Stakeholder Understanding in Aligning
IT with Business Objectives. In: REBNITA 2005, Paris, France (2005)
[21] Marshall, C.: Enterprise Modeling with UML. Addison-Wesley, Reading (2001)
[22] Nysetvold, A., Krogstie, J.: Assessing Business Process Modeling Languages
Using a Generic Quality Framework. Advanced topics in database research
5, 79–93 (2006)
[23] OMG. Business Process Modeling Notation (BPMN) Specification (online)
(2006), http://www.bpmn.org
[24] OO Method project, http://oomethod.dsic.upv.es
[25] Ould, M.: Business Processes: modelling and analysis for re-
engineering and improvement. Wiley, Chichester (1995)
[26] Pastor, O., Molina, J.C.: Model-Driven Architecture in Practice: A Software
Production Environment Based on Conceptual Modeling. Springer,
Heidelberg (2007)
[27] Reich, B., Benbasat, I.: Factors That Influence the Social Dimension of
Alignment Between Business and Information Technology. MIS Quarterly
24(1), 81–113 (2000)
[28] Rubens, J.: Business analysis and requirements engineering? The same, only
different? Requirements Engineering 12, 121–123 (2007)
[29] Scheer, A.-W.: ARIS - Business Process Frameworks, 3rd edn. Springer,
Berlin (1999)
[30] Siau, K.: The Psychology of Information Modeling. Advanced topics in
database research 1, 116–118 (2002)
[31] Smith, H., Fingar, P.: Business Process Management: The Third Wave.
Meghan-Kiffer Press (2002)
[32] Standish Group. Chaos, http://www.standishgorup.com
[33] Vessey, I., Coner, S.: Requirements Specification: Learning Object, Process,
and Data Methodologies. Communications of the ACM 37(5), 102–113
(1994)
[34] WfMC. Workflow Management Coalition: Terminology & Glossary (1999)
[35] Wahl, T., Sindre, G.: An Analytical Evaluation of BPMN Using a Semiotic
Quality Framework. Advanced topics in database research 5, 94–105 (2006)
[36] Wohed, P., et al.: On the suitability of BPMN for Business Process Modelling.
In: Dustdar, S., Fiadeiro, J.L., Sheth, A.P. (eds.) BPM 2006. LNCS, vol. 4102,
Springer, Heidelberg (2006)
[37] Yu, E.: Modeling Strategic Relationships for Process Reengineering. PhD
Thesis, University of Toronto, Canada (1995)
[38] Zave, P., Jackson, M.: Four Dark Corners of Requirements Engineering. ACM
Transactions on Software Engineering and Methodology 6(1), 1–30 (1997)