The AdvanSD research group explores various aspects of software development. Currently, our focus is on representing and reusing software knowledge and software comprehension and quality.
Representing and Reusing Software Knowledge
Enormous intellectual efforts are being invested into producing software in its executable form. Part of our research is devoted to software product lines and variability and software patterns. We explore how this heterogeneous software knowledge contained in various artifacts produced during software development can be efficiently represented and reused. For this, we search for a way to interrelate and visualize this knowledge employing multidimensional software modeling. We also seek for a way to make the knowledge of agile and lean people organization and software processes in general more accessible and explore its wider social connotations.
Within this topic, we target:
- interrelating and visualizing heterogeneous software knowledge
- multidimensional software modeling
- agile and lean people organization
- software processes
- social connotations
- software product lines and variability
- software patterns
- Sandra Kostova and Valentino Vranić. Applying Aspect-Oriented Change Realization in the Mobile Application Domain. In 2nd Workshop on Programming Across the System Stack, PASS 2018, Proceedings Companion to the 2nd International Conference on the Art, Science, and Engineering of Programming, <Programming> 2018, Brussels, Belgium, ACM, 2018.
- Peter Lacko, Peter Kajsa, and Pavol Návrat. Design Pattern Instances within Model Driven Development Based on Abstraction, Concretization and Variability. In Computing and Informatics, 36(1): 55–85, 2017.
- Juraj Vincúr et al. Cubely: Virtual Reality Block-Based Programming Environment. In Proceedings of ACM Symposium on Virtual Reality Software and Technology, Gothenburg, Sweden, ACM, 2017. To appear.
- Juraj Vincúr, Ivan Polášek, and Pavol Návrat. Searching and Exploring Software Repositories in Virtual Reality. In Proceedings of ACM Symposium on Virtual Reality Software and Technology, Gothenburg, Sweden, ACM, 2017. To appear.
- Juraj Vincúr, Pavol Navrat, and Ivan Polášek. VR City: Software Analysis in Virtual Reality Environment. In IEEE International Conference on Software Quality, Reliability and Security, QRS 2017, Prague, IEEE, 2017.
- Matej Ferenc, Ivan Polášek, and Juraj Vincúr. Collaborative Modeling and Visualisation of Software Systems Using Multidimensional UML. In 5th IEEE Working Conference on Software Visualization, VISSOFT 2017, Shanghai, 2017. To appear.
- Waheedullah Sulaiman Khail and Valentino Vranić. Treating Pattern Sublanguages as Patterns with an Application to Organizational Patterns. In Proceedings of 22nd European Conference on Pattern Languages of Programs, EuroPLoP 2017. Kloster Irsee in Bavaria, Germany, ACM, 2017. To appear.
- Valentino Vranić and Roman Táborský. Features as Transformations: A Generative Approach to Software Development. Computer Science and Information Systems Journal (ComSIS), 2016.
- Tomáš Frťala and Valentino Vranić. Animating Organizational Patterns. In Proceedings of 8th International Workshop on Cooperative and Human Aspects of Software Engineering, CHASE 2015, ICSE 2015 Workshop, Florence, Italy, IEEE, 2015.
- Valentino Vranić and Ľuboš Zelinka. A Configurable Use Case Modeling Metamodel with Superimposed Variants. Innovations in Systems and Software Engineering: A NASA Journal, 9(3): 163–177, Springer, 2013.
- Lukáš Gregorovič and Ivan Polášek. Analysis and Design of Object-Oriented Software Using Multidimensional UML. In Proceedings of 15th International Conference on Knowledge Technologies and Data-Driven Business, I-KNOW '15, Graz, Austria, ACM, 2015.
- Ivan Polášek and Marek Uhlár. Extracting, Identifying and Visualisation of the Content, Users and Authors in Software Projects. LNCS Transactions on Computational Science XXI: Special Issue on Innovations in Nature-Inspired Computing and Applications, 21: 269–295, LNCS 8160, Springer, 2013.
Software Comprehension and Quality
Software is not only difficult to create, but it is also difficult to understand. We explore the ways of preserving the comprehensibility of the intent with which software has been developed and how to achieve this directly in the corresponding code and model artifacts. Part of the solution to this problem lies in establishing and maintaining appropriate modularization. We focus on use case driven modularization and advanced (aspect-oriented) modularization. From the perspective of software quality, we explore using refactoring, automated testing, continuous revisions, and visualization of software properties. We also explore applying software development techniques beyond software development, in particular in education.
Within this topic, we target:
- intent comprehensibility
- use case driven modularization
- advanced/aspect-oriented modularization
- software quality
- automated testing and continuous revisions
- software modeling beyond software development
- education for software development and supported by software development
- visualization of software properties
- Karol Rástočný and Andrej Mlynčár. Automated Change Propagation from Source Code to Sequence Diagrams. In Proceedings of 44th International Conference on Current Trends in Theory and Practice of Computer Science, SOFSEM 2018: Theory and Practice of Computer Science. Krems, Austria, Springer, 2018.
- Michal Bystrický and Valentino Vranić. Use Case Driven Modularization as a Basis for Test Driven Modularization. In Proceedings of 6th Workshop on Advances in Programming Languages, WAPL'17, 2017 Federated Conference on Computer Science and Information Systems, FedCSIS 2017, Prague, Czech Republic, IEEE Computer Society, 2017.
- Peter Berta, Michal Krempaský, Michal Bystrický, and Valentino Vranić. Employing Issues and Commits for In-Code Sentence Based Use Case Identification and Remodularization. In Proceedings of 5th European Conference on the Engineering of Computer Based Systems, ECBS 2017, Larnaca, Cyprus, ACM, 2017.
- Jakub Ondik, Martin Olejár, Karol Rástočný, and Mária Bieliková. Activity-Based Model Synchronization and Defects Detection for Small Teams. In Proceedings of IEEE International Conference on Software Quality, Reliability and Security, QRS 2017, Prague, IEEE, 2017.
- Valentino Vranić, Jaroslav Porubän, Michal Bystrický, Tomáš Frťala, Ivan Polášek, Milan Nosáľ, and Ján Lang. Challenges in Preserving Intent Comprehensibility in Software. Acta Polytechnica Hungarica. 12(7): 57–75, 2015.
- Valentino Vranić and Milan Laslop. Aspects and Roles in Software Modeling: A Composition Based Comparison. Computer Science and Information Systems Journal (ComSIS). 12(7): 199–216, 2016.
- Michal Bystrický and Valentino Vranić. Literal Inter-Language Use Case Driven Modularization. In MODULARITY Companion 2016, Companion Proceedings of the 15th International Conference on Modularity, Modularity 2016, LaMOD'16: Language Modularity A La Mode, workshop, March 2016, Málaga, Spain, ACM, 2016.
- Karol Rástočný and Mária Bieliková. Empirical Metadata Maintenance in Source Code Development Process. In Proceedings of 4th Eastern European Regional Conference on the Engineering of Computer Based Systems, ECBS-EERC 2015, Brno, Czech Republic, IEEE Computer Society, 2015.
- Mária Bieliková, Ivan Polášek, Michal Barla, Eduard Kuric, Karol Rástočný, Jozef Tvarožek, and Peter Lacko. Platform Independent Software Development Monitoring: Design of an Architecture. In Proceedings of 40th International Conference on Current Trends in Theory and Practice of Computer Science, SOFSEM 2014, Nový Smokovec, Slovakia, January 26-29, 2014, LNCS 8327, Springer, 2014.
(Some of these papers and many other papers availabe for free download here.)
We are looking forward towards international cooperation within Horizon 2020 or other programs. We can offer our research and innovation ideas related to advanced software development and beyond, as well as our experience in preparing proposals and coordinating proposal writing.
Our recent Horizon 2020 project proposals involved numerous academic and industrial partners such as Engineering Ingegneria Informatica S.p.A., Atos Spain SA, Verum Software Tools B.V., and Turkcell Technology, Politecnico di Milano (Prof. Elisabetta Di Nitto), Unisannio (Prof. Massimiliano Di Penta), SINTEF, University of Turin (Prof. Rossana Damiano), and Politechnika Warszawska (Prof. Michał Śmiałek).
We have several ongoing research collaborations:
- Software modeling and visualization, with Chalmers and Gothenburg University (Prof. Michel R. V. Chaudron)
- Organizational patterns, with University of West Bohemia (Prof. Přemysl Brada)
- Software quality, with Continental Automotive
- Methodology of software development, with Gratex International
AdvanSD Lab (formerly 3D Software Development Lab)
Part of our research is carried in our AdvanSD Lab (FIIT STU, room 3.38), equipped with a powerful computer system and several spatial I/O devices (leap motion, 3D mouse SpaceNavigator, three interconnected 3D monitors, and two HTC Vive glasses) that enable to deal with complex software models in a 3D space, possibly employing virtual and augmented reality.