Abstract
Processes govern every aspect of software development and every aspect of application usage. Whether trivial, complex, formal, or ad hoc, processes are pervasive in software engineering. This chapter summarizes a variety of ways in which process models, also referred to as workflows, can be used to achieve significant improvements in a range of different disciplines. The chapter starts with a brief summary of the evolution of this approach over the past century. It then identifies some principal ways in which important advantages can be obtained from exploiting process models and process technology. The chapter goes on to specify key criteria for evaluating process modeling approaches, suggesting the different kinds of modeling approaches that seem particularly effective for supporting different uses. A representative set of examples of current process modeling approaches, and different ways in which process modeling is being used to good advantage, is then described. These examples are then used to suggest some key research challenges that need to be met in order for society to obtain a large range of further advantages from the continued development of process and process modeling technology.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Andrews, T., Curbera, F., Dholakia, H., Goland, Y., Klein, J., Leymann, F., Liu, K., Roller, D., Smith, D., Thatte, S., et al.: Business process execution language for web services. IBM, Microsoft, and others (2003)
Armbrust, O., Berlage, T., Hanne, T., Lang, P., Münch, J., Neu, H., Nickel, S., Rus, I., Sarishvill, A., van Stockum, S., et al.: Simulation-based software process modeling and evaluation. In: Handbook of Software Engineering and Knowledge Engineering: Vol 3: Recent Advances, pp. 333–364. World Scientific (2005)
Beck, K.: Embracing change with extreme programming. Computer 32, 70–77 (1999). Beck, K. Extreme Programming Explained: Embrace Change. Addison-Wesley Professional (2000a)
Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley Professional (2000b)
Beck, K., et al.: Agile manifesto (2001). http://agilemanifesto.org (accessed January 10, 2018)
Beecham, S., et al.: Using agile practices to solve global software development problems – a case study. 2014 IEEE International Conference on Global Software Engineeering Workshops (ICGSEW), IEEE (2014)
Benner-Wickner, M., et al.: Execution support for agenda-driven case management. Proceedings of the 29th Annual ACM Symposium on Applied Computing. ACM (2014)
Benner-Wickner, M., et al.: Process mining for knowledge-intensive business processes. Proceedings of the 15th International Conference on Knowledge Technologies and Data-driven Business. ACM (2015)
Boehm, B.W.: A spiral model of software development and enhancement. Computer. 21, 61–72 (1988)
Boehm, B.: Get ready for agile methods, with care. Computer. 35, 64–69 (2002)
Boehm, B., Lane, J.A., Koolmanojwong, S., Turner, R.: The Incremental Commitment Spiral Model: Principles and Practices for Successful Systems and Software. Addison-Wesley Professional (2014)
BPM Conferences. http://bpm-conference.org
BPM Newsletters. https://bpm-conference.org/BpmConference/Newsletter
Clarke Jr., E.M., Grumberg, O., Peled, D.A.: Model Checking. MIT Press, Cambridge (2000)
Clarke, L.A., Avrunin, G.S., Osterweil, L.J.: Using Software Engineering Technology to Improve the Quality of Medical Processes, ACM SIGSOFT/IEEE Companion 30th International Conference on Software Engineering (ICSE’08), pp. 889–898, Leipzig, Germany, May 2008
Cook, J.E., Wolf, A.L.: Automating process discovery through event-data analysis. ICSE. 95, 73–82 (1995)
David, R. et al.: Discrete, continuous, and hybrid petri nets. Springer Science & Business Media – Technology and Engineering (2005)
Deming, W.E.: Out of the Crisis. MIT Press, Cambridge (1982)
DeRemer, F., Kron, H.H.: Programming-in-the-large versus programming-in-the-small. IEEE Transactions on Software Engineering. 2, 80–86 (1976)
Diebold, P., Dahlem, M.: Agile practices in practice: a mapping study. Proceedings of the 18th International Conference on Evaluation and Assessment in Software Engineering. ACM (2014)
Diebold, P., et al. What do practitioners vary in using scrum?. International Conference on Agile Software Development. Springer, Cham (2015)
DOD-STD-2167, Military Standard: Defense System Software Development] (PDF). United States Department of Defense. 29 Feb 1988. Accessible through http://everyspec.com/DoD/DoD-STD/DOD-STD-2167_278/
DOD-STD-2167A, Military Standard: Defense System Software Development] (PDF). United States Department of Defense. 29 Feb 1988. Accessible through http://everyspec.com/DoD/DoD-STD/DOD-STD-2167A_8470/
Ellis, C.A., Nutt, G.J.: Office information systems and computer science. ACM Computing Surveys (CSUR). 12, 27–60 (1980)
Ellis, C.A., Gibbs, S.J.: Concurrency control in groupware systems. In: Acm Sigmod Record, pp. 399–407. ACM (1989)
Ellis, C.A., Gibbs, S.J., Rein, G.: Groupware: Some issues and experiences. Communications of the ACM. 34, 39–58 (1991)
Ericson, C.A.: Fault tree analysis. In: Hazard Analysis Techniques for System Safety, pp. 183–221. Wiley Online Library (2005)
Forrester, J.W. (1961): Industrial dynamics. Pegasus Communications. ISBN:1-883823-36-6 (1961)
Hanssen, G.K., Westerheim, H., Bjørnson, F.O.: Using rational unified process in an SME–a case study. European Conference on Software Process Improvement. Springer, Berlin (2005)
Highsmith, J., Cockburn, A.: Agile software development: The business of innovation. Computer. 34, 120–127 (2001)
Hollingsworth, D.: Workflow Management Coalition. The Workflow Reference Model WFMC-TC-1003, 19-Jan-1995
Humphrey, W.S.: Managing the Software Process. SEI Series in Software Engineering. Addison-Wesley, Reading, MA. ISBN 0-201-18095-2 (1989)
IBM.:https://www.ibm.com/developerworks/rational/library/content/03July/1000/1251/1251_bestpractices_TP026B.pdf (accessed February 13, 2018)
Indulska, M., Green, P., Recker, J., Rosemann, M.: Business process modeling: Perceived benefits. International Conference on Conceptual Modeling, pp. 458–471. Springer (2009)
ISPW 1: Colin Potts. Proceedings of a Software Process Workshop, February 1984, IEEE Computer Society, Egham, UK (1984)
Jackson, M.A.: Principles of Program Design. Academic Press, New York (1975)
Jaakkola, H., et al.: Modeling the requirements engineering process. In: Information Modelling and Knowledge Bases V: Principles and Formal Techniques, p. 85. IOS Press (1994)
Juran, J.: Quality Control Handbook. McGraw-Hill, New York, NY (1951)
Kruchten, P.: The Rational Unified Process: An Introduction. Addison-Wesley Professional (2004)
Little-JIL 1.5 Language Report. Laboratory for Advanced Software Engineering Research, Department of Computer Science, University of Massachusetts-Amherst, MA (2006)
Murata, T.: Petri nets: Properties, analysis and applications. Proceedings of the IEEE, pp. 541–580. IEEE 1989
Nonaka, I., Takeuchi, H.: The knowledge-creating company: How Japanese companies create the dynamics of innovation. Oxford University Press (1995)
Osterweil, L.: Software processes are software too. Proceedings of the 9th International Conference on Software Engineering, pp. 2–13. IEEE Computer Society Press (1987)
Osterweil, L.J.: Formalisms to Support the Definition of Processes. J. Comput. Sci. Technol. 24(2), 198–211 (2009)
Osterweil, L.J., Bishop, M., Conboy, H., Phan, H., Simidchieva, B.I., Avrunin, G., Clarke, L.A., Peisert, S.: Iterative analysis to improve key properties of critical human-intensive processes: An election security example. ACM Trans. Priv. Secur. (TOPS), 20(2), 5:1–31 (2017)
Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Commun. ACM. 15, 1053–1058 (1972)
Paulk, M.C., Weber, C.V., Curtis, B., Chrissis, M.B. (1995). The Capability Maturity Model: Guidelines for Improving the Software Process. SEI Series in Software Engineering. Addison-Wesley, Reading, MA. ISBN 0-201-54664-7
Petri, C.A.: Kommunikation mit automaten (1962)
Phan, H.T.: An incremental approach to identifying causes of system failures using fault tree analysis. Doctoral Dissertation, College of Information and Computer Sciences, University of Massachusetts, Amherst, MA, May 2016
Raunak, M.S., Osterweil, L.J.: Resource management for complex dynamic environments. IEEE Trans. Softw. Eng. 39(3), 384–402 (2013)
Ross, D.T., Schoman Jr., K.E.: Structured analysis for requirements definition. ACM Trans. Softw. Eng. 1, 6–15 (1977)
Royce, W.W.: (1970): Managing the development of large software systems. Proceedings of IEEE WESCON 26 (August), pp 1–9
Royce, W.W.: Managing the development of large software systems: concepts and techniques. Proceedings of the 9th International Conference on Software Engineering, pp. 328–338. IEEE Computer Society Press (1987)
Schwaber, K.: Scrum development process. In Business Object Design and Implementation, pp. 117–134. Springer (1997)
Shewhart, W.A.: Economic Control of Quality of Manufactured Product. D. Van Nostrand Co. (1931)
Studio. http://www.powersim.com/main/products-services/powersim_products/
Taylor, F.W.: The Principles of Scientific Management. Harper and Bros, New York (1911)
van der Aalst, W.M.P., Hofstede, T., Arthur, H.M.: YAWL: Yet another workflow language. Inf. Syst. 30, 245–275 (2005)
VersionOne. 7th Annual State of Agile Development Survey (2013)
Wise, A., Cass, A.G., Lerner, B.S., McCall, E.K., Osterweil, L.J., Sutton, S.M.: Using Little-JIL to coordinate agents in software engineering. In: Proceedings ASE 2000. The Fifteenth IEEE International Conference on Automated Software Engineering, pp. 155–163. IEEE, (2000)
Wu, M., Yan, H.: Simulation in software engineering with system dynamics: A case study. J. Softw. 4(10), 1127–1135 (2009)
Zhang, H., Kitchenham, B.A., Pfahl, D.: Software process simulation modeling: An extended systematic review. In: Proceedings of the International Conference on Software Process, pp. 309–320. Springer (2010)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this chapter
Cite this chapter
Osterweil, L.J., Gruhn, V., Schwenzfeier, N. (2019). Process and Workflow. In: Cha, S., Taylor, R., Kang, K. (eds) Handbook of Software Engineering. Springer, Cham. https://doi.org/10.1007/978-3-030-00262-6_1
Download citation
DOI: https://doi.org/10.1007/978-3-030-00262-6_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-00261-9
Online ISBN: 978-3-030-00262-6
eBook Packages: Computer ScienceComputer Science (R0)