Context-based model for concern markup of a source code

Автор: Malevannyy M.S., Mikhalkovich S.S.

Журнал: Труды Института системного программирования РАН @trudy-isp-ran

Статья в выпуске: 2 т.28, 2016 года.

Бесплатный доступ

In this paper we describe our approach to representing concerns in an interface of an IDE to make navigation across crosscutting concerns faster and easier. Concerns are represented as a tree of an arbitrary structure, each node of the tree can be bound to a fragment of code. It allows one to quickly locate fragments in the source code and makes switching between software development tasks easier. We describe a model which specifies data structures used to store the information about these code fragments and algorithms used to find the code fragment in original or modified source code. The model describes the information about code fragments as a set of contexts. Another important feature of the model is language independency. The model supports different programming, mark-up, DSL-languages and any structured text, such as a documentation. Main goal is to keep concern tree consistent with evolving source code. Search algorithm is designed to work with a modified source code, where the code fragment may change. The model is implemented as a tool, which supports different programming languages and integrates into different editors and integrated development environments. Source code analysis is performed by a set of lightweight parsers. In case of significant changes if the code fragment may be not found automatically the tool helps a programmer to find one by suggesting possible places in the source code based on the stored information.

Еще

Concerns, separation of concerns, program comprehension, integrated development environments

Короткий адрес: https://sciup.org/14916347

IDR: 14916347   |   DOI: 10.15514/ISPRAS-2016-28(2)-4

Список литературы Context-based model for concern markup of a source code

  • M. Eaddy, A. Aho, and G. C. Murphy, “Identifying, assigning, and quantifying crosscutting concerns” in Proceedings of the First International Workshop on Assessment of Contemporary Modularization Techniques, ser. ACoM ’07. Washington, DC,USA: IEEE Computer Society, 2007, p. 2 DOI: 10.1109/ACOM.2007.4
  • A. J. Ko, B. A. Myers, M. J. Coblenz, and H. H. Aung, “An exploratory study of how developers seek, relate, and collect relevant information during software maintenance tasks” IEEE Trans. Softw. Eng., vol. 32, no. 12, pp. 971-987, Dec. 2006 DOI: 10.1109/TSE.2006.116
  • G. Kiczales, E. Hilsdale, J. Hugunin, M. Kersten, J. Palm, and W. G. Griswold, “An overview of AspectJ” in Proceedings of the 15thEuropean Conference on Object-Oriented Programming, ser. ECOOP’01. London, UK, UK: Springer-Verlag, 2001, pp. 327-353. (http://dl.acm.org/citation.cfm?id=646158.680006)
  • D. Batory, V. Singhal, J. Thomas, S. Dasari, B. Geraci, and M. Sirkin, “The genvoca model of software-system generators” IEEE Softw., vol. 11, no. 5, pp. 89-94, Sep. 1994 DOI: /10.1109/52.311067
  • D. Batory, J. N. Sarvela, and A. Rauschmayer, “Scaling step-wise refinement” in Proceedings of the 25th International Conference on Software Engineering, ser. ICSE ’03. Washington, DC, USA:IEEE Computer Society, 2003, pp. 187-197. (http://dl.acm.org/citation.cfm?id=776816.776839).
  • S. Apel, C. Kastner, and C. Lengauer, “Featurehouse: Language independent, automated software composition” in Proceedings of the31st International Conference on Software Engineering, ser. ICSE ’09.Washington, DC, USA: IEEE Computer Society, 2009, pp. 221-231 DOI: 10.1109/ICSE.2009.5070523
  • I. Schaefer, L. Bettini, F. Damiani, and N. Tanzarella, “Delta-oriented programming of software product lines” in Proceedings of the 14th International Conference on Software Product Lines: Going Beyond, ser. SPLC’10. Berlin, Heidelberg: Springer-Verlag, 2010, pp. 77-91. (http://dl.acm.org/citation.cfm?id=1885639.1885647).
  • W. Harrison and H. Ossher, “Subject-oriented programming: A critique of pure objects” in Proceedings of the Eighth Annual Conference on Object-oriented Programming Systems, Languages, and Applications, ser. OOPSLA ’93. New York, NY, USA: ACM, 1993, pp. 411-428 DOI: 10.1145/165854.165932
  • M. C. Chu-Carroll, J. Wright, and A. T. T. Ying, “Visual separation of concerns through multidimensional program storage” in Proceedings of the 2nd International Conference on Aspect oriented Software Development, ser. AOSD ’03. New York, NY, USA: ACM, 2003, pp. 188-197 DOI: 10.1145/643603.643623
  • A. Bragdon, R. Zeleznik, S. P. Reiss, S. Karumuri, W. Cheung, J. Kaplan, C. Coleman, F. Adeputra, and J. J. LaViola, Jr., “Code bubbles: A working set-based interface for code understanding and maintenance” in Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, ser. CHI ’10. New York, NY, USA: ACM, 2010, pp. 2503-2512 DOI: 10.1145/1753326.1753706
  • S. Chiba, M. Horie, K. Kanazawa, F. Takeyama, and Y. Teramoto, “Do we really need to extend syntax for advanced modularity?” in Proceedings of the 11th Annual International Conference on Aspect-oriented Software Development, ser. AOSD ’12. New York, NY, USA: ACM, 2012, pp. 95-106 DOI: 10.1145/2162049.2162061
  • C. Kästner, S. Apel, and M. Kuhlemann, “Granularity in software product lines” in Proceedings of the 30th International Conference on Software Engineering, ser. ICSE ’08. New York, NY, USA: ACM, 2008, pp. 311-320 DOI: 10.1145/1368088.1368131
  • M. Malevannyy and S. Mikhalkovich, , in Sovremennye informatsionnye tekhnologii: tendentsii i perspektivy razvitiya: materialy konferentsii , 2015, pp. 351-353.
  • M. P. Robillard and F. Weigand-Warr, “Concernmapper: Simple view-based separation of scattered concerns” in Proceedings of the 2005OOPSLA Workshop on Eclipse Technology eXchange, ser. eclipse ’05.New York, NY, USA: ACM, 2005, pp. 65-69 DOI: 10.1145/1117696.1117710
  • M. Malevannyy, . Informatizatsiya i svyaz’ , vol. 3, pp. 89-94, 2015,.
  • ANSI C grammar. (http://www.quut.com/c/ANSIC-grammar-y.html)
  • PascalABC.NET. http://pascalabc.net/
  • V. Levenshtein, “Binary codes capable of correcting deletions, insertions and reversals” Soviet Physics -Doklady, vol. 10, no. 8, pp. 707-710,1965,.
  • R. A. Wagner and M. J. Fischer, “The string-to-string correction problem” J. ACM, vol. 21, no. 1, pp. 168-173, Jan. 1974 DOI: 10.1145/321796.321811
  • I. V. Bondarev, Y. V. Belyakova, and S. S. Mikhalkovich, , in ”XX Nauchnaya konferentsiya Sovremennye informatsionnye tekhnologii: tendentsii i perspektivy razvitiya. Materialy konferentsii , 2013, pp.69-71,.
Еще
Статья научная