Abstract
As an example of exploiting the synergy between AI and software engineering, the field of intelligent software engineering has emerged with various advances in recent years. Such field broadly addresses issues on intelligent [software engineering] and [intelligence software] engineering. The former, intelligent [software engineering], focuses on instilling intelligence in approaches developed to address various software engineering tasks to accomplish high effectiveness and efficiency. The latter, [intelligence software] engineering, focuses on addressing various software engineering tasks for intelligence software, e.g., AI software. In this paper, we discuss recent research and future directions in the field of intelligent software engineering.
This work was supported in part by National Science Foundation under grants no. CNS-1513939 and CNS1564274, and a grant from the ZJUI Research Program.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Acharya, M., Xie, T., Pei, J., Xu, J.: Mining API patterns as partial orders from source code: from usage scenarios to specifications. In: Proceedings of the Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on The Foundations of Software Engineering (ESEC-FSE), pp. 25–34 (2007)
Allamanis, M., Barr, E.T., Devanbu, P., Sutton, C.: A survey of machine learning for big code and naturalness, September 2017. arXiv:1709.06182
Balog, M., Gaunt, A.L., Brockschmidt, M., Nowozin, S., Tarlow, D.: DeepCoder: learning to write programs. In: Proceedings of the International Conference on Learning Representations (ICLR) (2017)
Barr, A.: Google mistakenly tags black people as ‘gorillas’, showing limits of algorithms. Wall Str. J. (2015). http://blogs.wsj.com/digits/2015/07/01/google-mistakenly-tags-black-people-as-gorillas-showing-limits-of-algorithms/
Beschastnikh, I., Lungu, M.F., Zhuang, Y.: Accelerating software engineering research adoption with analysis bots. In: Proceedings of the International Conference on Software Engineering (ICSE), New Ideas and Emerging Results Track, pp. 35–38 (2017)
Bieliauskas, S., Schreiber, A.: A conversational user interface for software visualization. In: Proceedings of the IEEE Working Conference on Software Visualization (VISSOFT), pp. 139–143 (2017)
Coleman, J.: Foundations of Social Theory. Belknap Press Series. Belknap Press of Harvard University Press, Cambridge (1990)
Committee on Technology National Science and Technology Council and Penny Hill Press: Preparing for the Future of Artificial Intelligence. CreateSpace Independent Publishing Platform, USA (2016)
Ernst, M.D.: Natural language is a programming language: applying natural language processing to software development. In: Proceedings of the 2nd Summit on Advances in Programming Languages (SNAPL), pp. 4:1–4:14 (2017)
Gu, X., Zhang, H., Zhang, D., Kim, S.: Deep API learning. In: Proceedings of the ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE), pp. 631–642 (2016)
Gu, X., Zhang, H., Zhang, D., Kim, S.: DeepAM: migrate APIs with multi-modal sequence to sequence learning. In: Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI), pp. 3675–3681 (2017)
Gupta, R., Pal, S., Kanade, A., Shevade, S.: DeepFix: fixing common C language errors by deep learning. In: Proceedings of the National Conference on Artificial Intelligence (AAAI) (2017)
Harman, M.: The role of artificial intelligence in software engineering. In: Proceedings International Workshop on Realizing AI Synergies in Software Engineering (RAISE), pp. 1–6 (2012)
Jordan, M.: Artificial intelligence-the revolution hasn’t happened yet, April 2018. https://medium.com/@mijordan3/artificial-intelligence-the-revolution-hasnt-happened-yet-5e1d5812e1e7
Lebeuf, C., Storey, M.D., Zagalsky, A.: How software developers mitigate collaboration friction with chatbots. CoRR abs/1702.07011 (2017). http://arxiv.org/abs/1702.07011
Leetaru, K.: How Twitter corrupted Microsoft’s Tay: a crash course in the dangers of AI in the real world. Forbes (2016). https://www.forbes.com/sites/kalevleetaru/2016/03/24/how-twitter-corrupted-microsofts-tay-a-crash-course-in-the-dangers-of-ai-in-the-real-world/
Li, F.F.: How to make A.I. that’s good for people, March 2018. https://www.nytimes.com/2018/03/07/opinion/artificial-intelligence-human.html
Michail, A., Xie, T.: Helping users avoid bugs in GUI applications. In: Proceedings of the International Conference on Software Engineering (ICSE), pp. 107–116 (2005)
Murphy, C., Kaiser, G.E.: Improving the dependability of machine learning applications. Technical report, CUCS-049-, Department of Computer Science, Columbia University (2008)
Pandita, R., Xiao, X., Yang, W., Enck, W., Xie, T.: WHYPER: towards automating risk assessment of mobile applications. In: Proceedings of the USENIX Conference on Security (SEC), pp. 527–542 (2013)
Pandita, R., Xiao, X., Zhong, H., Xie, T., Oney, S., Paradkar, A.: Inferring method specifications from natural language API descriptions. In: Proceedings of the International Conference on Software Engineering (ICSE), pp. 815–825 (2012)
Pei, K., Cao, Y., Yang, J., Jana, S.: DeepXplore: automated whitebox testing of deep learning systems. In: Proceedings of the Symposium on Operating Systems Principles (SOSP), pp. 1–18 (2017)
Qin, Y., Xie, T., Xu, C., Astorga, A., Lu, J.: CoMID: context-based multi-invariant detection for monitoring cyber-physical software. CoRR abs/1807.02282 (2018). https://arxiv.org/abs/1807.02282
Schmidhuber, J.: Deep learning in neural networks. Neural Netw. 61(C), 85–117 (2015)
Srisakaokul, S., Wu, Z., Astorga, A., Alebiosu, O., Xie, T.: Multiple-implementation testing of supervised learning software. In: Proceedings of the AAAI-2018 Workshop on Engineering Dependable and Secure Machine Learning Systems (EDSMLS) (2018)
Storey, M.D., Zagalsky, A.: Disrupting developer productivity one bot at a time. In: Proceedings of the ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE), pp. 928–931 (2016)
Tian, Y., Pei, K., Jana, S., Ray, B.: DeepTest: automated testing of deep-neural-network-driven autonomous cars. In: Proceedings International Conference on Software Engineering (ICSE), pp. 303–314 (2018)
Turing, A.M.: Computing machinery and intelligence (1950). One of the most influential papers in the history of the cognitive sciences. http://cogsci.umn.edu/millennium/final.html
Wang, X., Zhang, L., Xie, T., Anvik, J., Sun, J.: An approach to detecting duplicate bug reports using natural language and execution information. In: Proceedings of the International Conference on Software Engineering (ICSE), pp. 461–470 (2008)
Xiao, X., Paradkar, A., Thummalapenta, S., Xie, T.: Automated extraction of security policies from natural-language software documents. In: Proceedings of the ACM SIGSOFT International Symposium on the Foundations of Software Engineering (FSE), pp. 12:1–12:11 (2012)
Xie, T.: Intelligent software engineering: synergy between AI and software engineering. In: Proceedings of the Innovations in Software Engineering Conference (ISEC), p. 1:1 (2018)
Xie, T., Thummalapenta, S., Lo, D., Liu, C.: Data mining for software engineering. Computer 42(8), 55–62 (2009)
Yang, W., Kong, D., Xie, T., Gunter, C.A.: Malware detection in adversarial settings: exploiting feature evolutions and confusions in Android apps. In: Proceedings Annual Computer Security Applications Conference (ACSAC), pp. 288–302 (2017)
Yang, W., Xie, T.: Telemade: a testing framework for learning-based malware detection systems. In: Proceedings AAAI-2018 Workshop on Engineering Dependable and Secure Machine Learning Systems (EDSMLS) (2018)
Yin, P., Neubig, G.: A syntactic neural model for general-purpose code generation. In: Proceedings of the Annual Meeting of the Association for Computational Linguistics (ACL) (2017)
Zheng, W., Ma, H., Lyu, M.R., Xie, T., King, I.: Mining test oracles of web search engines. In: Proceedings of the IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 408–411 (2011)
Zheng, W., et al.: Oracle-free detection of translation issue for neural machine translation. CoRR abs/1807.02340 (2018). https://arxiv.org/abs/1807.02340
Zhong, H., Xie, T., Zhang, L., Pei, J., Mei, H.: MAPO: mining and recommending API usage patterns. In: Drossopoulou, S. (ed.) ECOOP 2009. LNCS, vol. 5653, pp. 318–343. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-03013-0_15
Zhong, H., Zhang, L., Xie, T., Mei, H.: Inferring resource specifications from natural language API documentation. In: Proceedings of the IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 307–318 (2009)
Zhong, Z., et al.: Generating regular expressions from natural language specifications: are we there yet? In: Proceedings of the Workshop on NLP for Software Engineering (NL4SE) (2018)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Switzerland AG
About this paper
Cite this paper
Xie, T. (2018). Intelligent Software Engineering: Synergy Between AI and Software Engineering. In: Feng, X., Müller-Olm, M., Yang, Z. (eds) Dependable Software Engineering. Theories, Tools, and Applications. SETTA 2018. Lecture Notes in Computer Science(), vol 10998. Springer, Cham. https://doi.org/10.1007/978-3-319-99933-3_1
Download citation
DOI: https://doi.org/10.1007/978-3-319-99933-3_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-99932-6
Online ISBN: 978-3-319-99933-3
eBook Packages: Computer ScienceComputer Science (R0)