Abstract
Most requirements engineering (RE) research and practice embodies a philosophy that we will call abstractionism, which involves the building of simplified models of domains of discourse and proposed systems. Abstractionists make much use of formal models, such as goal dependency networks. An alternative design philosophy is contextualism, according to which the particularities of the context of use of a system must be understood in detail before the requirements can be derived. Contextualists use qualitative methods to uncover and help interpret these particularities. In this paper, we analyze what it would mean to combine the best features of abstractionism and contextualism, and we ground our discussion in an illustration of abstractionist and contextualist thinking about RE through goal refinement (GR). In the context of the domain of meeting scheduling, we contrast a wholly abstractionist approach to GR with one that incorporates data gathered using two ethnographic methods. In doing so, we consider each step of the abstractionist approach, illustrating where ethnographic data obtained in our work environment affects the model produced. As we proceed, we summarize the general lessons learned. We then discuss how other abstractionist and contextualist methods could be integrated.
Similar content being viewed by others
References
Alford, M. (1985), “SREM at the Age of Eight: The Distributed Computing Design System,” IEEE Computer 18,4, 36–46.
Anderson, R.J. (1994), “Representations and Requirements: The Value of Ethnography in System Design,” Human-Computer Interaction 9,2, 151–182.
Anton, A. (1996), “Goal-Based Requirements Analysis,” In Proceedings of the 2nd International Conference on Requirements Engineering, IEEE Computer Society Press, Los Alamitos, CA, pp. 135–144.
Anton, A., W.M. McCracken, and C. Potts (1994), “Goal Decomposition and Scenario Analysis in Business Process Reengineering,” In Proceedings of CAISE'94: 6th International Conference on Advanced Information Systems Engineering, Springer, New York, NY, pp. 94–104.
Barker, R. (1990), CASE* Method: Entity-Relationship Modeling, Addison-Wesley, Wokingham, UK.
Bernard and H. Russell (1994), Research Methods in Anthropology: Qualitative and Quantitative Approaches, 2nd edition, Altamira Press, Walnut Creek, CA.
Bustard, W. and T.J. Dobbin (1996), “Integrating Soft Systems and Object-Oriented Analysis,” In Proceedings of the 2nd International Conference on Requirements Engineering, IEEE Computer Society Press, Los Alamitos, CA, pp. 52–59.
Bustard, W. and P.J. Lundy (1995), “Enhancing Soft Systems Analysis with Formal Modeling,” In Proceedings of RE'95: 2nd International Symposium on Requirements Engineering, IEEE Computer Society Press, Los Alamitos, CA, pp. 27–29.
Chandy, J.M. and J. Misra (1988), Parallel Program Design: A Foundation, Addison-Wesley, Reading, MA.
Checkland, P. (1972), “Toward a Systems-Based Methodology for Real-World Problem Solving,” Journal of Systems Engineering, 3,2, 87–116.
Checkland, P. (1981), Systems Thinking, Systems Practice, Wiley, Chichester, UK.
Checkland, P. and J. Scholes (1990), Soft Systems Methodology in Action, Wiley, Chichester, UK.
Chen, P. (1976), “The Entity-Relationship Model: Toward a Unified View of Data,” ACM Transactions on Database Systems 1,1, 6–36.
Coad, P. and E. Yourdon (1991), Object-Oriented Analysis, 2nd edition, Prentice-Hall, Englewood Cliffs, NJ.
Coleman, D., P. Arnold, S. Bodoff, C. Dollin, H. Gilchrist, F. Hayes, and P. Jeremaes (1994), Object-Oriented Development: The FUSION Method, Prentice-Hall, Englewood Cliffs, NJ.
Dardenne, A., A. van Lamsweerde, and S. Fickas (1993), “Goal-Directed Requirements Acquisition,” Science of Computer Programming, 20,1/2, 3–50.
DeMarco, T. (1978), Structured Analysis and System Specification, Yourdon Press, New York, NY.
Ehn, P. (1988), Work-Oriented Design of Computer Artifacts, Arbetslivscentrum, Stockholm, Sweden.
Ehn, P. and M. Kyng (1991), “Cardboard Computers: Mocking-it-up, or Hands-on Future,” In Computers and Work, J. Greenbaum and M. Kyng, Eds., Erlbaum, Hillsdale, NJ, pp. 168–195.
Flach, J.M. (1993), “The Ecology of Human-Machine Systems I: Introduction,” Ecological Psychology 2,3, 191–205.
Flores, F., M. Graves, B. Hartfield, and T. Winograd (1988), “Computer Systems and the Design of Organizational Interaction,” ACM Transactions on Office Information Systems 6,2, 153–172.
Geertz, C. (1973), “Thick Description: Toward an Interpretive Theory of Culture,” In The Interpretation of Cultures: Selected Essays, C. Geertz, Ed., Basic Books, New York, NY, pp. 3–30.
Green, S. (1994), “Goal-Driven Approaches to Requirements Engineering,” Technical report TR-93-42, Imperial College of Science, Technology and Medicine, Department of Computing, London, UK.
Grudin, J. (1989), “Why Groupware Applications Fail: Problems in Design and Evaluation,” Office: Technology and People 4,3, 245–264.
Grudin, J. and L. Palen (1995), “Why Groupware Succeeds: Discretion or Mandate,” In Proceedings of ECSCW'95: European Conference on Computer-Supported Cooperative Work, Kluwer, Boston, MA, pp. 263–278.
Guttag, J.V., J.J. Horning, and J. Wing (1985), “An Overview of the Larch Family of Specification Languages,” IEEE Software 2,5, 24–36.
Holtzblatt, K. and S. Jones (1993), “Contextual Inquiry: A Participatory Technique for System Design,” In Participatory Design: Principles and Practice, A. Namioka and D. Shuler, Eds., Erlbaum, Hillsdale, NJ, pp. 177–210.
Hughes, J., V. King, T. Rodden, and H. Anderson (1995), “The Role of Ethnography in Interactive Systems Design,” ACM Interactions 2,2, 57–65.
Hutchins, E. (1995), Cognition in the Wild, MIT Press, Boston, MA.
Jackson, M.A. (1995), Software Requirements and Specifications, Addison-Wesley, Reading, MA.
Jacobson, I., M. Christerson, P. Jonsson, and G. Overgaard (1992), Object-Oriented Software Engineering: A Use-Case Oriented Approach, Addison-Wesley, Wokingham, UK.
Jones, C. (1990), Systematic Software Development Using VDM, 2nd edition, Prentice-Hall, New York, NY.
Kirlik, A. (1993), “Requirements for Psychological Models to Support Design: Towards Ecological Task Analysis,” In An Ecological Approach to Human Machine Systems I: A Global Perspective, J. Flach, P. Hancock, J. Caird, and K. Vicente, Eds., Erlbaum, Hillsdale, NJ, pp. 68–120.
Kling, R. (1980), “Social Analysis of Computing: Theoretical Perspectives in Recent Empirical Research,” Computing Surveys 12,1, 61–110.
Lincoln, Y.S. and E.G. Guba (1985), Naturalistic Inquiry, Sage Publications, Newbury Park, CA.
Loffland, J. and L. Loffland (1984), Analyzing Social Settings, Wadsworth, Belmont, CA.
Luff, P., C. Heath, and D. Greatbatch (1994), “Work, Interaction and Technology: The Naturalistic Analysis of Human Conduct and Requirements Analysis,” In Requirements Engineering: Social and Technical Issues, M. Jirotka and J. Goguen, Eds., Academic Press, London, UK, pp. 259–288.
McMenamin, S. and J. Palmer (1984), Essential Systems Analysis, Yourdon Press, New York, NY.
Meldrum, M., M. Lejk, and P. Guy (1993), SSADM Techniques: An Introduction to Version 4, Chartwell Bratt, Bromley, UK.
Morgan, G. and C. Smircich (1980), “The Case for Qualitative Research,” Academy of Management Review 5,4, 491–500.
Morgan, G. (1986), Images of Organization, Sage Publications, Newbury Park, CA.
Moore, A.P. (1990), “The Specification and Verified Decomposition of System Requirements using CSP,” IEEE Transactions on Software Engineering 16,9, 932–948.
Nielsen, J. (1993), Usability Engineering, Academic Press Professional, Boston, MA.
Norman, D.A. (1992), Turn Signals are the Facial Expressions of Automobiles, Addison-Wesley, Reading, MA.
Potts, C. (1995), “Using Schematic Scenarios to Understand User Needs,” In Proceedings of DIS'95: Designing Interactive Systems, ACM, New York, NY, pp. 247–256.
Randall, D., J. Hughes, and D. Shapiro (1994), “Steps toward a Partnership: Ethnography and System Design,” In Requirements Engineering: Social and Technical Issues, M. Jirotka and J. Goguen, Eds., Academic Press, London, UK, pp. 241–258.
Robinson, M. (1989), “Double-Level Languages and Cooperative Working,” In Proceedings of the Conference on Support, Society and Culture: Mutual Uses of Cybernetics and Science, Software Engineering Research Center, Utrecht, The Netherlands, pp. 79–114.
Ross, D.T. (1977), “Structured Analysis (SA): A Language for Communicating Ideas,” IEEE Transactions on Software Engineering 3,1, 16–34.
Rubin, K. and A. Goldberg (1992), “Object Behavior Analysis,” Communications of the ACM 35,9, 48–62.
Rumbaugh, J., M. Blaha, W. Premerlani, F. Eddy, and W. Lorensen (1991), Object-Oriented Modeling and Design, Prentice Hall, Englewood Cliffs, NJ.
Sommerville, I., T. Rodden, P. Sawyer, R. Bentley, and M. Twidale (1993), “Integrating Ethnography into the Requirements Engineering Process,” In Proceedings of RE'93: International Symposium on Requirements Engineering, IEEE Computer Society Press, York, UK, pp. 165–173.
Spivey, J.M. (1988), Understanding Z: A Specification Language and its Formal Semantics, Cambridge University Press, Cambridge, UK.
Spradley, J. (1979), The Ethnographic Interview, Holt Rinehard-Winston, Fort Worth, TX.
Stowell, F. and D. West (1994), Client-Led Design: A Systemic Approach to Information Systems Definition, McGraw-Hill, London, UK.
Suchman, L. (1983), Plans and Situated Action: The Problem of Human-Machine Communication, Cambridge University Press, Cambridge, UK.
Van Lamsweerde, A., R. Darimont, and P. Massonet (1995), “Goal-Directed Elaboration of Requirements for a Meeting Scheduler: Problems and Lessons Learnt,” In Proceedings of RE'95: 2nd International Symposium on Requirements Engineering, IEEE Computer Society Press, York, UK, pp. 194–203.
Vicente, K. and J. Rasmussen (1993), “The Ecology of Human-Machine Systems II: Mediating ‘Direct Perception’ in Complex Work Domains,” Ecological Psychology 2,3, 191–205.
Yu, E.S.K. and J. Mylopoulos (1994), “Using Goals, Rules and Methods to Support Reasoning in Business Process Reengineering,” In Proceedings of the 27th Hawaii International Conference on System Sciences, Vol. IV, Information Systems: Collaboration Technology, Organizational Systems and Technology, IEEE Computer Society Press, Los Alamitos, CA, pp. 234–243.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Potts, C., Hsi, I. Abstraction and context in requirements engineering: Toward a synthesis. Annals of Software Engineering 3, 23–61 (1997). https://doi.org/10.1023/A:1018994106507
Issue Date:
DOI: https://doi.org/10.1023/A:1018994106507