The Use of Aspects to Simplify Concurrent Programming

Journal Title: e-Informatica Software Engineering Journal - Year 2014, Vol 8, Issue 1

Abstract

Developers who create multi-threaded programs must pay attention to ensuring safe implementations that avoid problems and prevent introduction of a system in an inconsistent state. To achieve this objective programming languages offer more and more support for the programmer by syntactic structures and standard libraries. Despite these enhancements, multi-threaded programming is still generally considered to be difficult. The aim of our study was the analysis of existing aspect oriented solutions, which were designed to simplify concurrent programming, propose improvements to these solutions and examine influence of concurrent aspects on complexity of programs. Improved solutions were compared with existing by listing differing characteristics. Then we compared classical concurrent applications with their aspect oriented equivalents using metrics. Values of 2 metrics (from 7 considered) decreased after using aspect oriented solutions. Values of 2 other metrics decreased or remained at the same level. The rest behaved unstably depending on the problem. No metric reported increase of complexity in more than one aspect oriented version of program from set. Our results indicate that the use of aspects does not increase the complexity of a program and in some cases application of aspects can reduce it.

Authors and Affiliations

M Negacz, B. Hnatkowska

Keywords

Related Articles

Semantic Knowledge Management System to Support Software Engineers: Implementation and Static Evaluation through Interviews at Ericsson

Background: In large-scale corporations in the software engineering context information overload problems occur as stakeholders continuously produce useful information on process life-cycle issues, matters related to spe...

ECLogger: Cross-Project Catch-Block Logging Prediction Using Ensemble of Classifiers

Background: Software developers insert log statements in the source code to record program execution information. However, optimizing the number of log statements in the source code is challenging. Machine learning based...

Using the Cognitive Walkthrough Method in Software Process Improvement

In the past years, efforts in the field of Software Process Improvement were increasingly focusing on human aspects making one aware that people participating in the processes have a high impact on the success of any imp...

Automatic SUMO to UML Translation

Existing ontologies are a valuable source of domain knowledge. This knowledge could be extracted and reused to create domain models. The extraction process can be aided by tools that enable browsing ontology, marking int...

A Systematic Mapping Study on Software Measurement Programs in SMEs

Context: Software measurement programs are essential to understand, evaluate, improve and predict the software processes, products and resources. However, successful implementation of software measurement programs (MPs)...

Download PDF file
  • EP ID EP167516
  • DOI 10.5277/e-Inf140102
  • Views 52
  • Downloads 0

How To Cite

M Negacz, B. Hnatkowska (2014). The Use of Aspects to Simplify Concurrent Programming. e-Informatica Software Engineering Journal, 8(1), -. https://europub.co.uk/articles/-A-167516