Диссертация (1150733), страница 20
Текст из файла (страница 20)
Адаптация существующих решений для применения в представленном алгоритме требует отдельной работы.Выбор оптимальных структур данных для конечных автоматов, активноиспользующихся в рамках платформы, является темой отдельного исследования [95]. Кроме этого, переход к использованию символьных автоматов [105,106]может улучшить качество и производительность лексического анализа.Также в дальнейшем планируется развитие платформы. На уровне платформы необходимо реализовать механизмы, требующиеся для трансформаций кодана встроенных языках. Механизмы трансформации встроенных языков требуются для проведения миграции с одной СУБД на другую [49] или для миграции нановые технологии, например, LINQ. Эта задача связана с двумя проблемами:возможностью проведения нетривиальных трансформаций и доказательствомкорректности трансформаций.
Планируется реализация проверки корректноститипов. Для SQL это должна быть как проверка типов внутри запроса, так ипроверка того, что тип возвращаемого запросом результата соответствует типухост-переменной, выделенной для сохранения результата в основном коде.112Литература1. Louridas, P. Static code analysis / P. Louridas // Software, IEEE. — 2006. —Vol. 23, no. 4. — P. 58–61.2. Black, P. Static analyzers in software engineering / P.
Black // CrossTalk, TheJournal of Defense Software Engineering. — 2009. — P. 16–17.3. Bardas, A. G. Static Code Analysis / A. G. Bardas // Journal of InformationSystems & Operations Management. — 2010. — Vol. 4, no. 2. — P. 99–107.4. Терехов, А. Н. Автоматизированный реинжиниринг программ / А. Н. Терехов, А.
А. Терехов. — СПб: Издательство С.-Петербургского университета,2000.5. 9075:1992, ISO. ISO/IEC. Information technology — Database languages —SQL. — 1992.6. Hougland, D. Core JSP / D. Hougland, A. Tavistock. — Upper Saddle River,NJ, USA: Prentice Hall PTR, 2000.7. Взаимодействие программ на PHP с СУБД MySQL [Электронный ресурс].— URL: http://php.net/manual/en/mysqli.query.php (дата обращения: 11.06.2015).8. O’Neil, E. J. Object/relational mapping 2008: hibernate and the entity data model (edm) / E. J. O’Neil // Proceedings of the 2008 ACM SIGMOD internationalconference on Management of data / ACM.
— 2008. — P. 1351–1356.9. Cleve, A. Data-Intensive System Evolution / A. Cleve, T. Mens, J. L. Hainaut //IEEE Computer. — 2010. — Vol. 43, no. 8. — P. 110–112.11310. Seipel, D. JSquash: Source Code Analysis of Embedded Database Applicationsfor Determining SQL Statements / D. Seipel, A. M. Boehm, M. Fröhlich //Proceedings of the 18th International Conference on Applications of DeclarativeProgramming and Knowledge Management.
— INAP’09. — Berlin, Heidelberg:Springer-Verlag, 2011. — P. 153–169.11. Aho, A. V. Compilers: Principles, Techniques, and Tools / A. V. Aho, R. Sethi,J. D. Ullman. — Boston, MA, USA: Addison-Wesley Longman Publishing Co.,Inc., 1986.12. Brooker, R. A. The compiler compiler / R. A. Brooker, I. R. MacCallum,D. Morris, J. S. Rohl // Annual review in automatic programming. — 1963.— Vol. 3. — P.
229–275.13. Johnson, S. C. Yacc: Yet another compiler-compiler / S. C. Johnson. — BellLaboratories Murray Hill, NJ, 1975. — Vol. 32.14. Касьянов, В. Н. Методы построения трансляторов / В. Н. Касьянов,И. В. Поттосин, А. П. Ершов. — Наука. Сиб. отд-ние, 1986.15. Ершов, А. П. Методика разработки многоязыковых трансляторов напримере системы БЕТА / А.
П. Ершов, В. Н. Касьянов, С. Б. Покровский,И. В. Поттосин, Г. Г. Степанов // Математическая теория и практика системпрограммного обеспечения.—Новосибирск, ВЦ СО АН СССР. — 1982. —P. 64–80.16. Терехов, А. Н. Как Паскаль и Оберон попадают на “Самсон”, или искусствосоздания трансляторов / А. Н. Терехов, М. В. Евстюнин, С.
К. Кожокарь,В. А. Уфнаровский. — Штиинца, 1992.17. Safonov, V. O. Trustworthy Compilers / V. O. Safonov. — John Wiley & Sons,2010.18. Мартыненко, Б. К. Синтаксически управляемая обработка данных /Б. К. Мартыненко. — Изд-во С.-Петербургского университета, 2004.19. Мартыненко, Б. К. Языки и трансляции / Б. К. Мартыненко. — Изд-воС.-Петерб. ун-та СПб., 2004.11420. Tomita, M. An Efficient Context-free Parsing Algorithm for Natural Languages /M.
Tomita // Proceedings of the 9th International Joint Conference on ArtificialIntelligence - Volume 2. — IJCAI’85. — San Francisco, CA, USA: MorganKaufmann Publishers Inc., 1985. — P. 756–764.21. Scott, E. Right Nulled GLR Parsers / E. Scott, A. Johnstone // ACM Trans.Program. Lang. Syst. — 2006. — Vol. 28, no. 4. — P. 577–618.22.
Scott, E. Generalized Bottom Up Parsers With Reduced Stack Activity / E. Scott,A. Johnstone // Comput. J. — 2005. — Vol. 48, no. 5. — P. 565–587.23. Rekers, J. G. Parser Generation for Interactive Environments: Ph.D. thesis /Universiteit van Amsterdam. — 1992.24. de Jonge, M. Natural and Flexible Error Recovery for Generated Modular Language Environments / M. de Jonge, L. C. Kats, E. Visser, E.
Söderberg // ACMTrans. Program. Lang. Syst. — 2012. — Vol. 34, no. 4. — P. 15:1–15:50.25. Kats, L. C. Providing Rapid Feedback in Generated Modular Language Environments: Adding Error Recovery to Scannerless generalized-LR Parsing /L. C. Kats, M. de Jonge, E. Nilsson-Nyman, E. Visser // SIGPLAN Not. —2009. — Vol. 44, no. 10. — P. 445–464.26.
Doh, K. G. Abstract Parsing: Static Analysis of Dynamically Generated StringOutput Using LR-Parsing Technology / K. G. Doh, H. Kim, D. A. Schmidt //Proceedings of the 16th International Symposium on Static Analysis. — SAS’09. — Berlin, Heidelberg: Springer-Verlag, 2009. — P. 256–272.27. Doh, K. G. Abstract LR-parsing / K. G. Doh, H. Kim, D. A. Schmidt // Formal Modeling / Ed. by Gul Agha, José Meseguer, Olivier Danvy. — Berlin,Heidelberg: Springer-Verlag, 2011.
— P. 90–109.28. Doh, K. G. Static Validation of Dynamically Generated HTML DocumentsBased on Abstract Parsing and Semantic Processing / K. G. Doh, H. Kim,D. A. Schmidt // Static Analysis. —Springer Berlin Heidelberg, 2013. —Vol.
7935 of Lecture Notes in Computer Science. — P. 194–214.11529. Minamide, Y. Static Approximation of Dynamically Generated Web Pages /Y. Minamide // Proceedings of the 14th International Conference on World WideWeb. — WWW ’05. — New York, NY, USA: ACM, 2005. — P. 432–441.30. Christensen, A. S. Precise Analysis of String Expressions / A. S. Christensen,A. Møller, M. I. Schwartzbach // Proc. 10th International Static Analysis Symposium (SAS).
— Vol. 2694 of LNCS. — Springer-Verlag, 2003. — P. 1–18.31. Annamaa, A. An Interactive Tool for Analyzing Embedded SQL Queries /A. Annamaa, A. Breslav, J. Kabanov, V. Vene // Proceedings of the 8th AsianConference on Programming Languages and Systems. — APLAS’10. — Berlin,Heidelberg: Springer-Verlag, 2010. — P. 131–138.32. Annamaa, A. Using Abstract Lexical Analysis and Parsing to Detect Errorsin String-Embedded DSL Statements / A. Annamaa, A.
Breslav, V. Vene //Proceedings of the 22nd Nordic Workshop on Programming Theory. — 2010. —P. 20–22.33. Fu, X. A Static Analysis Framework For Detecting SQL Injection Vulnerabilities / X. Fu, X. Lu, B. Peltsverger, S. Chen, K. Qian, L. Tao // Proceedings ofthe 31st Annual International Computer Software and Applications Conference- Volume 01. — COMPSAC ’07. — Washington, DC, USA: IEEE ComputerSociety, 2007. — P. 87–96.34. Dasgupta, A. A Static Analysis Framework for Database Applications / A. Dasgupta, V. Narasayya, M.
Syamala // Proceedings of the 2009 IEEE InternationalConference on Data Engineering. — ICDE ’09. — Washington, DC, USA: IEEEComputer Society, 2009. — P. 1403–1414.35. Шапот, М. Д. Реинжиниринг баз данных / М. Д. Шапот, Э. В. Попов //Открытые системы. — 2004. — № 4. — С.
110–112.36. Cleve, A. Dynamic Analysis of SQL Statements for Data-Intensive ApplicationsReverse Engineering / A. Cleve, J. L. Hainaut // Proceedings of the 2008 15thWorking Conference on Reverse Engineering. — WCRE ’08. — Washington,DC, USA: IEEE Computer Society, 2008. — P. 192–196.11637. Van, Den Brink H. Quality Assessment for Embedded SQL / Den Brink H. Van,Der Leek R.
Van, J. Visser // Proceedings of the Seventh IEEE InternationalWorking Conference on Source Code Analysis and Manipulation. — SCAM’07. — Washington, DC, USA: IEEE Computer Society, 2007. — P. 163–170.38. Arnold, R. Software Reengineering (IEEE Computer Society Press Tutorial) /R. Arnold // IEEE Computer Society. — 1993.39.
Miller, H. W. Reengineering legacy software systems / H. W. Miller. — DigitalPress, 1998.40. Wagner, C. Model-Driven Software Migration: A Methodology: Reengineering,Recovery and Modernization of Legacy Systems / C. Wagner. — Springer Science & Business Media, 2014.41. Chomsky, N. Some methodological remarks on generative grammar / N. Chomsky // Aspects of the Theory of Syntax. — 1961. — P. 183–218.42. Chomsky, N.
Syntactic structures / N. Chomsky. — Walter de Gruyter, 2002.43. Ахтырченко, К. В. Методы и технологии реинжиниринга ИС /К. В. Ахтырченко, Т. П. Сорокваша // Труды Института системногопрограммирования РАН. — 2003. — Vol. 4.44. Boulychev, D. Y. On project-specific languages and their application in reengineering / D. Y. Boulychev, D. V. Koznov, A. A. Terekhov // Proceedings of the6th European Conference on Software Maintenance and Reengineering / IEEE.— 2002. — P. 177.45.
Kirilenko, I. Syntax Analyzers Development in Automated Reengineering ofInformational System / I. Kirilenko, S. Grigorev, D. Avdiukhin // St. PetersburgState Polytechnical University Journal. Computer Science. Telecommunicationsand Control Systems. — 2013. — Vol. 174, no. 3. — P. 94–98.46. Кириленко, Я. А. Инструментальная поддержка встроенных языков в интегрированных средах разработки / Я. А. Кириленко, С.
В. Григорьев,Д. А. Авдюхин // Моделирование и анализ информационных систем. —2014. — Т. 21, № 6. — С. 131–143.11747. Grigorev, S. Generalized Table-Based LL-Parsing / S. Grigorev, A. Ragozina //Systems and Means of Informatics. — 2014. — Vol. 25, no. 1. — P. 89–107.48. Grigorev, S. GLR-based Abstract Parsing / S. Grigorev, I. Kirilenko // Proceedings of the 9th Central and Eastern European Software Engineering Conferencein Russia.
— CEE-SECR ’13. — New York, NY, USA: ACM, 2013. — P. 5:1–5:9.49. Grigorev, S. From Abstract Parsing to Abstract Translation / S. Grigorev, I. Kirilenko // Preliminary Proceedings of the 8th Spring/Summer Young ResearchersColloquium on Software Engineering.