Abstract
Since the time when first CASE (Computer-Aided Software Engineering) methods and tools were developed, little has been done in the area of automated creation of code. CASE tools support a software engineer in creation the system structure, in defining interfaces and relationships between software modules and, after the code has been written, in performing testing tasks on different levels of detail. Writing code is still the task of a skilled human, which makes the whole software development a costly and error-prone process. It seems that recent advances in AI area, particularly in deep learning methods, may considerably improve the matters. The paper presents an extensive survey of recent work and achievements in this area reported in the literature, both from the theoretical branch of research and from engineer-oriented approaches. Then, some challenges for the future work are proposed, classified into Full AI, Assisted AI and Supplementary AI research fields.
Citations
-
1
CrossRef
-
0
Web of Science
-
0
Scopus
Authors (2)
Cite as
Full text
- Publication version
- Accepted or Published Version
- License
- open in new tab
Keywords
Details
- Category:
- Articles
- Type:
- artykuły w czasopismach recenzowanych i innych wydawnictwach ciągłych
- Published in:
-
Biuletyn Wojskowej Akademii Technicznej
no. 68,
pages 15 - 32,
ISSN: 1234-5865 - Language:
- English
- Publication year:
- 2019
- Bibliographic description:
- Korzeniowski Ł., Goczyła K.: Artificial intelligence for software development — the present and the challenges for the future// Biuletyn Wojskowej Akademii Technicznej. -Vol. 68., iss. 1 (2019), s.15-32
- DOI:
- Digital Object Identifier (open in new tab) 10.5604/01.3001.0013.1464
- Bibliography: test
-
- Gottschlich J., Solar-Lezama A., Tatbul N., Carbin M., Rinard M., Barzilay R., Amara- singhe S., Tenenbaum J.B. and Mattson T., The Three Pillars of Machine-Based Programming, arXiv:1803.07244v1, https://arxiv.org/pdf/1803.07244.pdf, 2018 [accessed: 25.10.2018]. open in new tab
- Kant N., Recent Advances in Neural Program Synthesis, arXiv:1802.02353v1, https://arxiv.org/ pdf/1802.02353.pdf, 2018 [accessed: 25.10.2018].
- Gulwani S., Automating String Processing in Spreadsheets Using Input-Output Examples, PoPL'11, https://www.microsoft.com/en-us/research/wp-content/uploads/2016/12/popl11-synthesis.pdf, 2011 [accessed: 25.10.2018]. open in new tab
- Chen X., Liu C., Shin R., Song D., Chen M., Latent Attention For If-Then Program Synthesis, NIPS'16 Proceedings of the 30th International Conference on Neural Information Processing Systems, 2016, 4581-4589. open in new tab
- Solar-Lezama A., Program Synthesis By Sketching, PhD thesis, EECS Dept., UC Berkeley, 2008. open in new tab
- Xu X., Liu C., Song D., SQLNet: Generating Structured Queries From Natural Language Without Reinforcement Learning, arXiv:1711.04436, https://arxiv.org/pdf/1711.04436, 2017 [accessed: 25.10.2018].
- Zhong V., Xiong C., Socher R., Seq2SQL: Generating Structured Queries from Natural Lan- guage using Reinforcement Learning, arXiv:1709.00103, https://arxiv.org/pdf/1709.00103, 2017 [accessed: 25.10.2018]. open in new tab
- Yaghmazadeh N., Wang Y., Dillig I., Dillig T., SQLizer: Query Synthesis from Natural Lan- guage, Proceedings of the ACM on Programming Languages, vol. 1, Issue OOPSLA, Article no. 63, 2017. open in new tab
- Neelakantan A., Le Q.V., Sutskever I., Neural Programmer: Inducing Latent Programs with Gradient Descent, arXiv:1511.04834, https://arxiv.org/pdf/1511.04834, 2016 [accessed: 25.10.2018]. open in new tab
- Reed S., de Freitas N., Neural Programmer-Interpreters, arXiv:1511.06279, https://arxiv.org/ pdf/1511.06279, 2016 [accessed: 25.10.2018].
- Pavlinovic Z., Babic D., Interactive Code Snippet Synthesis Through Repository Mining, https:// www.semanticscholar.org/paper/Interactive-Code-Snippet-Synthesis-Through-Mining- Pavlinovic-Babic/1d02c510216726dc31b2b4c9d5e0ed446d7f5c76, 2013 [accessed: 25.10.2018].
- Xin Q., Reiss S.P., Krishnamurthi S., Program Repair Using Code Repositories, https://www. semanticscholar.org/paper/Program-Repair-Using-Code-Repositories-Xin-Reiss/6c2e2805855 40773cca5e4e988610647d9e0f4aa, 2016 [accessed: 25.10.2018]. open in new tab
- Bornholt J., Torlak E., Scaling Program Synthesis by Exploiting Existing Code, https://www. semanticscholar.org/paper/Scaling-Program-Synthesis-by-Exploiting-Existing-Bornholt-Torla k/0a7879e50b69d4146cfa616d0be4bebd7bb47d41, 2015 [accessed: 25.10.2018]. open in new tab
- Gulwani S., Polozov O., Singh R., Program Synthesis. Foundations and Trends® in Programming Languages, 2017. open in new tab
- Manna Z., Waldinger R., Synthesis: Dreams => Programs, IEEE Transactions on Software Engineering, vol. SE-5, no. 4, 1979. open in new tab
- Manna Z., Waldinger R., A Deductive Approach to Program Synthesis, ACM Transactions on Programming Languages and Systems (TOPLAS), vol. 2, issue 1, 90-121, 1980. open in new tab
- Barrett C., Sebastiani R., Seshia S., Tinelli C., Satisfiability Modulo Theories, Handbook of Satisfiability, vol. 185 of Frontiers in Artificial Intelligence and Applications, 825-885, 2009. open in new tab
- Balog M., Gaunt A.L., Brockschmidt M., Nowozin S., Tarlow D., DeepCoder: Learning to Write Programs, arXiv:1611.01989, https://arxiv.org/abs/1611.01989, 2017 [accessed: 25.10.2018].
- Hochreiter S., Schmidhuber J., Long Short-term Memory, Neural Computation, 9(8): 1735- 1780, 1997. open in new tab
- Lecun Y., Bottou L., Bengio Y., Haffner P., Gradient-Based Learning Applied to Document Recognition, Proceedings of the IEEE. 86. 2278-2324, 1998. open in new tab
- Kaiser Ł., Sutskever I., Neural GPUs Learn Algorithms, arXiv:1511.08228, https://arxiv.org/ pdf/1511.08228, 2015 [accessed: 25.10.2018].
- Graves A., Wayne G., Danihelka I., Neural Turing Machines, arXiv:1410.5401, https://arxiv. org/pdf/1410.5401, 2014 [accessed: 25.10.2018].
- Vinyals O., Fortunato M., Jaitly N., Pointer Networks, arXiv:1506.03134, https://arxiv.org/ pdf/1506.03134, 2017 [accessed: 25.10.2018].
- Zeiler M.D., Fergus R., Visualizing and Understanding Convolutional Networks, arXiv:1311.2901, https://arxiv.org/pdf/1311.2901, 2013 [accessed: 25.10.2018].
- Bach S., Binder A., Montavon G., Klauschen F., Müller K.R., Sam W., On Pixel-Wise Expla- nations for Non-Linear Classifier Decisions by Layer-Wise Relevance Propagation, PLoS ONE, 10(7): e0130140. https://doi.org/10.1371/journal.pone.0130140, 2015 [accessed: 25.10.2018]. open in new tab
- Montavon G., Bach S., Binder A., Samek W., Müller K.R., Explaining NonLinear Classification Decisions with Deep Taylor Decomposition, arXiv:1512.02479, https://arxiv.org/pdf/1512.02479, 2015 [accessed: 25.10.2018]. open in new tab
- Verified by:
- Gdańsk University of Technology
seen 271 times