Abstract
In this paper, I first review the seminal work by Thomas Kuhn — The Structure of Scientific Revolutions — and elaborate my view on paradigm shifts in software engineering research and practice as it turns 50 years old in 2018. I then examine major undertakings of the computing profession since early days of modern computing, especially those done by the software engineering community as a whole. I also enumerate anomalies and crises that occurred at various stages, and the attempts to provide solutions by the software engineering professionals in the past five decades. After providing such a background, I direct readers’ attention toward emerging anomalies in software engineering, at a severity level that is causing another software engineering crisis, and suggest a set of criteria for feasible solutions. The main theme of this paper is to advocate that situation analytics, equipped with necessary definitions of essential concepts including situation and intention as parts of a new computational framework, can serve as the foundation for a new software engineering paradigm named the Situation-Centric Paradigm. In this framework, situation is considered a new abstraction for computing and is clearly differentiated from the widely accepted existing abstractions, namely function and object. I argue that the software engineering professionals will inevitably move into this new paradigm, willingly or unwillingly, to empower Human-Embedded Computing (HEC) and End-User Embedded Computing (EUEC), much more than what they have done with traditional humancentered or user-centric computing altogether. In the end, I speculate that an ultimate agile method may be on the rise, and challenge readers to contemplate “what if” hundreds of thousands “end-user developers” emerge into the scene where the boundaries between end users and developers become much more blurred.
Similar content being viewed by others
References
Bauer F, Bolliet L, Helms H. Report of a conference sponsored by the nato science committee. In: NATO Software Engineering Conference, 1968. 8
Xu Y, Helal A. Scalable cloud-sensor architecture for the internet of things. IEEE Internet Things J, 2016, 3: 285–298
Mei H, Huang G, Xie T. Internetware: a software paradigm for internet computing. Computer, 2012, 45: 26–31
Chentouf Z. Cognitive software engineering: a research framework and roadmap. J Softw Eng, 2014, 7: 530–539
Kennedy M R, Umphress D A. People solutions to software problems. CrossTalk, 2011. 16–20
Kuhn T S. The Structure of Scientific Revolutions. Chicago: University of Chicago Press, 2012
Rajlich V. Changing the paradigm of software engineering. Commun ACM, 2006, 49: 67–70
White A S. An agile project system dynamics simulation model. Int J Inf Technologies Syst Approach, 2014, 7: 55–79
Gosling J, Joy B, Steele G L, et al. The Java language specification. Pearson Education, 2014. https://www.pearson.com/us/higher-education/program/Gosling-Java-Language-Specification-Java-SE-8-Edition-The/PGM137443.html
Boehm B W. A spiral model of software development and enhancement. Computer, 1988, 21: 61–72
Boehm B W. Software Engineering Economicsvolume. Upper Saddle River: Prentice Hall PTR, 1981. 197
Beck K, Beedle M, van Bennekum A, et al. Manifesto for Agile Software Development. Twelve Principles of Agile Software, 2001. http://agilemanifesto.org/
Schwaber K, Beedle M. Agile Software Development With Scrum. Upper Saddle River: Prentice Hall, 2002, 1
Chang C, Schilit B. Aware computing. Computer, 2014, 47: 20–21
Ackoff R L. From data to wisdom. J Appl Syst Analy, 1989, 16: 3–9
Rowley J. The wisdom hierarchy: representations of the DIKW hierarchy. J Inf Sci, 2007, 33: 163–180
Wang D, Amin M T, Li S, et al. Using humans as sensors: an estimation-theoretic perspective. In: Proceedings of the 13th International Symposium on Information Processing in Sensor Networks, Berlin, 2014. 35–46
Harman M. Software engineering meets evolutionary computation. Computer, 2011, 44: 31–39
Witte R, Sateli B, Khamis N, et al. Intelligent software development environments: integrating natural language processing with the eclipse platform. In: Proceedings of Conference on Artificial Intelligence. Berlin: Springer, 2011. 408–419
Petke J, Haraldsson S, Harman M, et al. Genetic improvement of software: a comprehensive survey. IEEE Trans Evolution Comput, 2017
Neergard L. Obama proposes ‘precision medicine’ to end one-size-fits-all. Drug Discovery and Development, 2015
Schmidt A, Beigl M, Gellersen H W. There is more to context than location. Comput Graphics, 1999, 23: 893–901
Biferno M A, Stanley D L. The Touch-Sensitive Control/Display Unit: a Promising Computer Interface. Technical Report, SAE Technical Paper. 1983
Endsley M R. Measurement of situation awareness in dynamic systems. Hum Factors, 1995, 37: 65–84
Endsley M R. Toward a theory of situation awareness in dynamic systems. Hum Factors, 1995, 37: 32–64
McCarthy J. Situation calculus with concurrent events and narrative. 1995. http://www-formal.stanford.edu/jmc/narrative.html
Mccarthy J, Hayes P J. Some philosophical problems from the standpoint of artificial intelligence. In: Machine Intelligence. Edinburgh: Edinburgh University Press, 1969. 463–502
Cohen P R, Morgan J L, Pollack M E. Intentions in Communication. Cambridge: The MIT Press, 1990
Barwise J, Perry J. The Situation Underground. Palo Alto: Stanford University Press, 1980
Barwise J, Perry J. Situations and attitudes. Philpapers, 1991, 25: 743–770
Haddawy P, Frommberger L, Kauppinen T, et al. Situation awareness in crowdsensing for disease surveillance in crisis situations. In: Proceedings of the 7th International Conference on Information and Communication Technologies and Development, Singapore, 2015. 38
Malle B F, Knobe J. The distinction between desire and intention: a folk-conceptual analysis. In: Intentions and Intentionality: Foundations of Social Cognition. Cambridge: The MIT Press, 2001. 45–67
Chang C K, Jiang H, Ming H, et al. Situ: a situation-theoretic approach to context-aware service evolution. IEEE Trans Serv Comput, 2009, 2: 261–275
Chang C K. Situation analytics: a foundation for a new software engineering paradigm. Computer, 2016, 49: 24–33
Dong J, Yang H I, Chang C K. Identifying factors for human desire inference in smart home environments. In: Proceedings of International Conference on Smart Homes and Health Telematics. Berlin: Springer, 2013. 230–237
Xie H, Yang J, Chang C K, et al. A statistical analysis approach to predict user’s changing requirements for software service evolution. J Syst Softw, 2017, 132: 147–164
Jaimes A, Sebe N, Gatica-Perez D. Human-centered computing: a multimedia perspective. In: Proceedings of the 14th ACM International Conference on Multimedia, Santa Barbara, 2006. 855–864
Larman C, Basili V R. Iterative and incremental developments: a brief history. Computer, 2003, 36: 47–56
Bullet N S. Essence and accidents of software engineering, fp brooks. IEEE Comput, 1987, 20: 10–19
Bass L, Weber I, Zhu L. DevOps: A Software Architect’s Perspective. Upper Saddle River: Addison-Wesley Professional, 2015
Acknowledgements
This paper was partially supported by 111 Intelligence Base of High Confidence Software Technologies.
Author information
Authors and Affiliations
Corresponding author
Additional information
† Invited Paper.
Rights and permissions
About this article
Cite this article
Chang, C.K. Situation analytics — at the dawn of a new software engineering paradigm. Sci. China Inf. Sci. 61, 050101 (2018). https://doi.org/10.1007/s11432-017-9372-7
Received:
Revised:
Accepted:
Published:
DOI: https://doi.org/10.1007/s11432-017-9372-7