Автоматизация обучения эффективным процессам программирования с помощью обратной связи
Аннотация
В работе рассматривается проблема передачи знаний об эффективных процессах работы программистов при решении отдельных задач. В условиях массового, особенно дистанционного образования использование традиционной модели <<учитель-ученик>>, предполагающей наблюдение за работой опытного наставника и общение с ним, оказывается невозможным. Для решения этой проблемы предлагается моделировать процессы, используемые опытными разработчиками, с помощью математического аппарата скрытых марковских моделей и связывать их с набором подсказок, позволяющих студенту улучшить собственный рабочий процесс. При использовании этого метода система идентифицирует решаемые студентом подзадачи и формирует обратную связь в виде подсказок, соответствующих текущему состоянию процесса.
Литература
2. Atlassian 2016 Report — Software Development Trends and Benchmarks. 2016. Available at https://www.atlassian.com/whitepapers/software-trends-2016
3. Carter A., Sangler C. The Programmer’s Stone. 1997. Available at http://www.programmersstone.com
4. Baum L. E., Petrie T. Statistical Inference for Probabilistic Functions of Finite State Markov Chains, 1966 // The Annals of Mathematical Statistics. 37 (6): 1554–1563.
5. Guzdial M. Is There a 10x Gap Between Best and Average Programmers? And How Did It Get There? ACM Blog, 2014. Available at https://cacm.acm.org/blogs/blog-cacm/180512-is-there-a-10x-gap-between-best-and-average-programmers-and-how-did-it-get-there/fulltext
6. Hunt A. Thomas D. The Pragmatic Programmer: From Journeyman to Master. Addison Wesley Longman Inc, 2000.
7. Kamma D. Study of Task Processes for Improving Programmer Productivity. PhD thesis. IndraprasthaInstitute of Information Technology, Delhi, 2007. Available at https://repository.iiitd.edu.in/jspui/bitstream/handle/123456789/513/PhD1004.pdf
8. Jeffries R. et al. The processes involved in designing software // Cognitive skills and their acquisition. 1981, pp. 255-283 С. 283.
9. McConnell S. Code Complete. 2nd edition. Microsoft Press, 2004.
10. Martin R. C. et al. Clean Code: A Handbook of Agile Software Craftmanship. Pearson Education, 2009.
11. Rabiner L. R. A tutorial on hidden Markov models and selected applications in speech recognition. // In: Proceedings of the IEEE, vol. 77, issue 2, pp. 257–286, 1989.
12. Šrámek R. The on-line Viterbi algorithm. Master’s Thesis, Dept. of Computer Science, Comenius University, Bratislava, 2007.
13. Viterbi A. J. Error bounds for convolutional codes and an asymptotically optimum decoding
algorithm. // IEEE Trans. Inform. Theory, vol. IT–13, pp. 260–269, April 1967.
Материал публикуется под лицензией: