G. Digkas, M. Lungu, P. Avgeriou, A. Chatzigeorgiou, & A. Ampatzoglou (2018). How do developers fix issues and pay back technical debt in the Apache ecosystem?. In 2018 IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER) (pp. 153-163).
[Download]N. Tsantalis, T. Chaikalis, & A. Chatzigeorgiou (2018). Ten years of JDeodorant: Lessons learned from the hunt for smells. In 2018 IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER) (pp. 4-14). IEEE Computer Society.
[Download]Siavvas M., Gelenbe E., Kehagias D., Tzovaras D. (2018) Static Analysis-Based Approaches for Secure Software Development. In: Gelenbe E. et al. (eds) Security in Computer and Information Sciences. Euro-CYBERSEC 2018. Communications in Computer and Information Science, vol 821. Springer, Cham
[Download]Amanatidis, T., Mittas, N., Chatzigeorgiou, A., Ampatzoglou, A., & Angelis, L. (2018). The Developer’s Dilemma: Factors Affecting the Decision to Repay Code Debt. In Proceedings of the 2018 International Conference on Technical Debt (pp. 62–66). Association for Computing Machinery.
[Download]Ampatzoglou, A., Michailidis, A., Sarikyriakidis, C., Ampatzoglou, A., Chatzigeorgiou, A., & Avgeriou, P. (2018). A Framework for Managing Interest in Technical Debt: An Industrial Validation. In Proceedings of the 2018 International Conference on Technical Debt (pp. 115–124). Association for Computing Machinery.
[Download]Xygkis, A., Papadopoulos, L., Moloney, D., Soudris, D., & Yous, S. (2018). Efficient Winograd-Based Convolution Kernel Implementation on Edge Devices. In Proceedings of the 55th Annual Design Automation Conference. Association for Computing Machinery.
[Download]Papadopoulos, L., Marantos, C., Digkas, G., Ampatzoglou, A., Chatzigeorgiou, A., & Soudris, D. (2018). Interrelations between Software Quality Metrics, Performance and Energy Consumption in Embedded Applications. In Proceedings of the 21st International Workshop on Software and Compilers for Embedded Systems (pp. 62–65). Association for Computing Machinery.
[Download]P. Skiada, A. Ampatzoglou, E. Arvanitou, A. Chatzigeorgiou, & I. Stamelos (2018). Exploring the Relationship between Software Modularity and Technical Debt. In 2018 44th Euromicro Conference on Software Engineering and Advanced Applications (SEAA) (pp. 404-407).
[Download]S. Charalampidou, E. Arvanitou, A. Ampatzoglou, P. Avgeriou, A. Chatzigeorgiou, & I. Stamelos (2018). Structural Quality Metrics as Indicators of the Long Method Bad Smell: An Empirical Study. In 2018 44th Euromicro Conference on Software Engineering and Advanced Applications (SEAA) (pp. 234-238).
[Download]Muhammad Ali Siddiqi, Robert M. Seepers, Mohammad Hamad, Vassilis Prevelakis, & Christos Strydis (2018). Attack-tree-based Threat Modeling of Medical Implants. In PROOFS 2018. 7th International Workshop on Security Proofs for Embedded Systems (pp. 32–49). EasyChair.
[Download]M. Siavvas, M. Jankovic, D. Kehagias, & D. Tzovaras (2018). Is Popularity an Indicator of Software Security?. In 2018 International Conference on Intelligent Systems (IS) (pp. 692-697).
[Download]D. Tsoukalas, M. Siavvas, M. Jankovic, D. Kehagias, A. Chatzigeorgiou, & D. Tzovaras (2018). Methods and Tools for TD Estimation and Forecasting: A State-of-the-art Survey. In 2018 International Conference on Intelligent Systems (IS) (pp. 698-705).
[Download]F. Tsimpourlas, L. Papadopoulos, A. Bartsokas, & D. Soudris (2018). A Design Space Exploration Framework for Convolutional Neural Networks Implemented on Edge DevicesIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 37(11), 2212-2221.
[Download]Marantos, C., Lamprakos, C., Tsoutsouras, V., Siozios, K., & Soudris, D. (2018). Towards Plug&play Smart Thermostats Inspired by Reinforcement Learning. In Proceedings of the Workshop on INTelligent Embedded Systems Architectures and Applications (pp. 39–44). Association for Computing Machinery.
[Download]Kouros, P., Chaikalis, T., Arvanitou, E.M., Chatzigeorgiou, A., Ampatzoglou, A., & Amanatidis, T. (2019). JCaliper: Search-Based Technical Debt Management. In Proceedings of the 34th ACM/SIGAPP Symposium on Applied Computing (pp. 1721–1730). Association for Computing Machinery.
[Download]- Stratakos, I., Gourounas, D., Tsoutsouras, V., Economopoulos, T., Matsopoulos, G., & Soudris, D. (2019). Hardware Acceleration of Image Registration Algorithm on FPGA-Based Systems on Chip. In Proceedings of the International Conference on Omni-Layer Intelligent Systems (pp. 92–97). Association for Computing Machinery.
Miltiadis Siavvas, Dimitrios Tsoukalas, Marija Jankovic, Dionysios Kehagias, Dimitrios Tzovaras, Nenand Anicic, Erol Gelenbe, “An Empirical Evaluation of the Relationship between Technical Debt and Software Security”, International Conference on Information Society and Technology (ICIST 2019)
[Download]- M. Siavvas, & E. Gelenbe (2019). Optimum Interval for Application-level Checkpoints. In 2019 6th IEEE International Conference on Cyber Security and Cloud Computing (CSCloud)/ 2019 5th IEEE International Conference on Edge Computing and Scalable Cloud (EdgeCom) (pp. 145-150).
Siddiqi, M., & Strydis, C. (2019). Towards Realistic Battery-DoS Protection of Implantable Medical Devices. In Proceedings of the 16th ACM International Conference on Computing Frontiers (pp. 42–49). Association for Computing Machinery.
[Download]Siddiqi, M., & Strydis, C. (2019). IMD Security vs. Energy: Are We Tilting at Windmills? In Proceedings of the 16th ACM International Conference on Computing Frontiers (pp. 283–285). Association for Computing Machinery.
[Download]Leon, V., Asimakopoulos, K., Xydis, S., Soudris, D., & Pekmestzi, K. (2019). Cooperative Arithmetic-Aware Approximation Techniques for Energy-Efficient Multipliers. In Proceedings of the 56th Annual Design Automation Conference 2019. Association for Computing Machinery.
[Publisher link]E. Gelenbe, & Y. Zhang (2019). Performance Optimization With Energy PacketsIEEE Systems Journal, 13(4), 3770-3780.
[Publisher link]Angeliki-Agathi Tsintzira, Areti Ampatzoglou, Oliviu Matei, Apostolos Ampatzoglou, Alexander Chatzigeorgiou, Robert Heb, “Technical Debt Quantification through Metrics: An Industrial Validation”, 15th China-Europe International Symposium on Software Engineering Education (CEISEE ’19)
[Download]Miltiadis Siavvas, Charalambos Marantos, Lazaros Papadopoulos, Dionysios Kehagias, Dimitrios Soudris, Dimitrios Tzovaras, “On the Relationship between Software Security and Energy Consumption”, 15th China-Europe International Symposium on Software Engineering Education (CEISEE ’19)
[Download]Miltiadis Siavvas, Erol Gelenbe, “Optimum Checkpointing for Long-running Programs”, 15th China-Europe International Symposium on Software Engineering Education (CEISEE ’19)
[Download]Marija Jankovic, Dionysios Kehagias, Miltiadis Siavvas, Dimitrios Tsoukalas, Alexandros Chatzigeorgiou, “The SDK4ED Approach to Software Quality Optimization and Interplay Calculation”, 15th China-Europe International Symposium on Software Engineering Education (CEISEE ’19)
[Download]Miltiadis Siavvas, & Erol Gelenbe (2019). Optimum checkpoints for programs with loopsSimulation Modelling Practice and Theory, 97, 101951.
[Publisher link]D. Sas, P. Avgeriou, & F. Arcelli Fontana (2019). Investigating Instability Architectural Smells Evolution: An Exploratory Case Study. In 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME) (pp. 557-567).
[Download]K. Maragos, E. Taka, G. Lentaris, I. Stratakos, & D. Soudris (2019). Analysis of Performance Variation in 16nm FinFET FPGA Devices. In 2019 29th International Conference on Field Programmable Logic and Applications (FPL) (pp. 38-44).
[Download]K. Maragos, G. Lentaris, & D. Soudris (2019). In-the-Field Mitigation of Process Variability for Improved FPGA PerformanceIEEE Transactions on Computers, 68(7), 1049-1063.
[Download]- Arvanitou, E.M., Ampatzoglou, A., Bibi, S., Chatzigeorgiou, A., & Stamelos, I. (2019). Monitoring Technical Debt in an Industrial Setting. In Proceedings of the Evaluation and Assessment on Software Engineering (pp. 123–132). Association for Computing Machinery.
- Muhammad Ali Siddiqi, Wouter A. Serdijn, & Christos Strydis. (2020). Zero-Power Defense Done Right: Shielding IMDs from Battery-Depletion Attacks.
[Download] G. Digkas, N. Nikolaidis, A. Ampatzoglou, & A. Chatzigeorgiou (2019). Reusing Code from StackOverflow: The Effect on Technical Debt. In 2019 45th Euromicro Conference on Software Engineering and Advanced Applications (SEAA) (pp. 87-91).
[Download]- Kadioglu Yasin Murat, & Gelenbe Erol. (2018). Product-Form Solution for Cascade Networks With Intermittent Energy (Version 1.0). IEEE Systems Journal. http://doi.org/10.1109/JSYST.2018.2854838
[Download] - Erol Gelenbe, & Yunxiao Zhang. (2020). Sharing Energy for Optimal Edge Performance. http://doi.org/10.1007/978-3-030-38919-2_3
[Download] - Ilias Kalouptsoglou, Miltiadis Siavvas, Dimitrios Tsoukalas, & Dionysios Kehagias. (2020). Cross-Project Vulnerability Prediction Based on Software Metrics and Deep Learning. http://doi.org/10.1007/978-3-030-58811-3_62
[Download] Siddiqi, M. A., Doerr, C., & Strydis, C. (2020). Imdfence: Architecting a secure protocol for implantable medical devices. IEEE Access, 8, 147948-147964.
[Download]Siavvas, M., Tsoukalas, D., Marantos, C., Tsintzira, A. A., Jankovic, M., Soudris, D., … & Kehagias, D. (2020, July). The SDK4ED Platform for Embedded Software Quality Improvement-Preliminary Overview. In International Conference on Computational Science and Its Applications (pp. 1035-1050). Springer, Cham.
[Download]Siavvas, M., Tsoukalas, D., Jankovic, M., Kehagias, D., & Tzovaras, D. (2020). Technical debt as an indicator of software security risk: a machine learning approach for software development enterprises. Enterprise Information Systems, 1-43.
[Download]Tsoukalas, D., Kehagias, D., Siavvas, M., & Chatzigeorgiou, A. (2020). Technical debt forecasting: an empirical study on open-source repositories. Journal of Systems and Software, 170, 110777.
[Download]Gelenbe, E., Boryszko, P., Siavvas, M., & Domanska, J. (2020, November). Optimum checkpoints for time and energy. In 2020 28th International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS) (pp. 1-8). IEEE.
[Download]Ampatzoglou, A., Arvanitou, E. M., Ampatzoglou, A., Avgeriou, P., Tsintzira, A. A., & Chatzigeorgiou, A. (2020). Architectural decision-making as a financial investment: An industrial case study. Information and Software Technology, 129, 106412.
[Download]Digkas, G., Ampatzoglou, A., Chatzigeorgiou, A., & Avgeriou, P. (2020, September). On the temporality of introducing code technical debt. In International Conference on the Quality of Information and Communications Technology (pp. 68-82). Springer, Cham.
[Download]Ampatzoglou, A., Mittas, N., Tsintzira, A. A., Ampatzoglou, A., Arvanitou, E. M., Chatzigeorgiou, A., … & Angelis, L. (2020). Exploring the Relation between Technical Debt Principal and Interest: An Empirical Approach. Information and Software Technology, 128, 106391.
[Download]Marantos, C., Tsintzira, A. A., Papadopoulos, L., Ampatzoglou, A., Chatzigeorgiou, A., & Soudris, D. (2020, July). Technical Debt Management and Energy Consumption Evaluation in Implantable Medical Devices: The SDK4ED Approach. In International Conference on Embedded Computer Systems (pp. 348-358). Springer, Cham.
[Download]Digkas, G., Chatzigeorgiou, A. N., Ampatzoglou, A., & Avgeriou, P. C. (2020). Can Clean New Code reduce Technical Debt Density. IEEE Transactions on Software Engineering.
[Download]MAIKANTIS, T., TSINTZIRA, A. A., AMPATZOGLOU, A., ARVANITOU, E. M., CHATZIGEORGIOU, A., STAMELOS, I., … & DELIGIANNIS, I. Software Architecture Reconstruction via a Genetic Algorithm: Applying the Move Class Refactoring.
[Download]Sas, D., & Avgeriou, P. (2019). Quality attribute trade-offs in the embedded systems industry: an exploratory case study. Software Quality Journal, 1-30.
[Download]Marantos, C., Siozios, K., & Soudris, D. (2019). Rapid Prototyping of Low-Complexity Orchestrator Targeting CyberPhysical Systems: The Smart-Thermostat Usecase. IEEE Transactions on Control Systems Technology, 28(5), 1831-1845.
[Download]Kourtzanidis, S., Chatzigeorgiou, A., & Ampatzoglou, A. (2020, September). RepoSkillMiner: Identifying software expertise from GitHub repositories using Natural Language Processing. In 2020 35th IEEE/ACM International Conference on Automated Software Engineering (ASE) (pp. 1353-1357). IEEE.
[Download]Digkas, G., Ampatzoglou, A., Chatzigeorgiou, A., Avgeriou, P., Matei, O., & Heb, R. (2021). The risk of generating technical debt interest: a case study. SN Computer Science, 2(1), 1-12.
[Download]- Kehagias, D., Jankovic, M., Siavvas, M., & Gelenbe, E. (2021). Investigating the Interaction between Energy Consumption, Quality of Service, Reliability, Security, and Maintainability of Computer Systems and Networks. SN Computer Science, 2(1), 1-6.
[Download] - Tsoukalas, D., Mathioudaki, M., Siavvas, M., Kehagias, D., & Chatzigeorgiou, A. (2021). A clustering approach towards cross-project technical debt forecasting. SN Computer Science, 2(1), 1-30.
[Download] - Marantos, C., Salapas, K., Papadopoulos, L., & Soudris, D. (2021). A flexible tool for estimating applications performance and energy consumption through static analysis. SN Computer Science, 2(1), 1-11.
[Download] - Sas, D., Avgeriou, P., Kruizinga, R., & Scheedler, R. (2021). Exploring the relation between co-changes and architectural smells. SN Computer Science, 2(1), 1-15.
[Download] - Gelenbe, E., & Siavvas, M. (2021). Minimizing Energy and Computation in Long-Running Software. Applied Sciences, 11(3), 1169.
[Download] - Filus, K., Siavvas, M., Domańska, J., & Gelenbe, E. (2020, November). The random neural network as a bonding model for software vulnerability prediction. In Symposium on Modelling, Analysis, and Simulation of Computer and Telecommunication Systems (pp. 102-116). Springer, Cham.
[Download]
Welcome to the full SDK4ED deliverables list. Below you may find all details regarding the project.
For public approved deliverables, you can view them via clicking on each deliverable’s code.
Technical Debt ToolBox Demo:
The Technical Debt Toolbox enables the user to monitor and prevent technical debt during software evolution. Through software refactoring recommendations, it provides solutions to issues accumulating technical debt. TD Toolbox provides a variety of maintainability metrics that measure code smells and bad design quality techniques at project, file and package level, giving the user the option to prioritize artefacts to be fixed. Through the TD Analysis, the user can have a better view of TD principal and TD interest evolution. New Code TD can be seen as a quality gate preventing the user from adding more code smells on the existing code. The toolbox statically analyses the source code and provides maintainability metrics for object-oriented and non-object-oriented languages. Developers can leverage the information derived from the toolbox to support code refactoring and optimisations. Project managers also benefit, since the information provided on the software’s technical debt can support decision making on the software future, e.g., whether to spend effort to refactor the code, for how long the software should be maintained or the need to declare bankruptcy of the software.
Refactorings Demo
Refactorings are part of the Technical Debt Toolbox and are divided in three categories, code
refactorings, design refactorings and architecture refactorings. Refactorings provide solutions to
issues accumulating technical debt. The code refactorings provide a collection of Technical Debt
Issues that contains the rank, based on smell interest probability. Furthermore, for each TD Issue it
contains a collection of the file paths, the line and the estimated effort to fix that Technical Debt
Issue. The Design Refactoring provide suggestions of refactorings and the impact of them on the
design of the software. Two types of refactorings are included, the first one is the extract method
refactoring and the second one suggests move class refactorings that improve coupling and
cohesion of the whole project
Energy ToolBox Demo
The Energy Toolbox enables the user to deeply inspect her source code’s energy-related qualities. Analyzing the whole repository at once, the toolbox cares to locate hotspots of high resource usage that indicate equally high power levels. Analysis of the hotspots is performed on both the loop and the function level. Insights from said analysis are used to suggest possible code refactorings for mitigating the spotted consumption. Analysis results and corresponding suggestions are saved and accessible, in order to minimize future response latency.
In the below demo, the full functionality of the toolbox is displayed.
Dependability ToolBox Demo
The Dependability Toolbox enables the users to monitor and optimize the dependability level of their source code. The toolbox statically analyses the source code and provides a high-level security score, i.e., the Security Index, which reflects the internal security level of the analysed software. The hierarchical structure of the produced results enables root-cause analysis, allowing the developers to spot the exact security issues that reside in the source code and need resolution. The toolbox also enables the identification of vulnerability hotspots, that is, individual source code files that are likely to contain important vulnerabilities. This information can be leveraged by developers and project managers for prioritizing their testing and fortification actions, by allocating limited resources to high-risk (i.e., potentially vulnerable) code locations. In the below demo, the full functionality of the toolbox is displayed.
Forecasting Toolbox Demo
The purpose of the Forecasting Toolbox is to provide predictive forecasts regarding the evolution of the three core quality attributes targeted by the SDK4ED platform, namely Technical Debt, Energy and Dependability. Towards building a solid basis for the Forecasting Toolbox realization, various dedicated time series and ML models were investigated and introduced as part of the business logic of the toolbox. Hence, this toolbox offers three main features implemented in the form of individual web services: i) TD Forecaster, which is responsible for predicting the evolution of the total remediation effort (measured in minutes) to fix all code issues of a software application, ii) Energy Forecaster, which is responsible for predicting the evolution of the total energy consumption (measured in Joules) of a software application, and iii) Dependability Forecaster, which is responsible for predicting the evolution of the Security Index of a software application.
Decision Support – TradeOff Manager Demo
The TradeOff Manager of the Decision Support tool aims to provide the user with comparable insights with respect to the suggestions given by each of the 3 analysis toolboxes of the platform (Energy, Technical Debt, Dependability). Since each toolbox focuses on different code qualities, an overall view of the interdependencies between individual suggestions is essential for optimal decision making. In the below demonstration, a total of 2 refactorings are retrieved from the toolboxes for a specific project, and the respective impacts to all code qualities are displayed both in tabular and graphical form.