4,374 research outputs found
A heuristic-based approach to code-smell detection
Encapsulation and data hiding are central tenets of the object oriented paradigm. Deciding what data and behaviour to form into a class and where to draw the line between its public and private details can make the difference between a class that is an understandable, flexible and reusable abstraction and one which is not. This decision is a difficult one and may easily result in poor encapsulation which can then have serious implications for a number of system qualities. It is often hard to identify such encapsulation problems within large software systems until they cause a maintenance problem (which is usually too late) and attempting to perform such analysis manually can also be tedious and error prone. Two of the common encapsulation problems that can arise as a consequence of this decomposition process are data classes and god classes. Typically, these two problems occur together â data classes are lacking in functionality that has typically been sucked into an over-complicated and domineering god class. This paper describes the architecture of a tool which automatically detects data and god classes that has been developed as a plug-in for the Eclipse IDE. The technique has been evaluated in a controlled study on two large open source systems which compare the tool results to similar work by Marinescu, who employs a metrics-based approach to detecting such features. The study provides some valuable insights into the strengths and weaknesses of the two approache
Recommended from our members
Towards an aspect weaving BPEL engine
This position paper proposes the use of dynamic aspects and
the visitor design pattern to obtain a highly configurable and
extensible BPEL engine. Using these two techniques, the
core of this infrastructural software can be customised to
meet new requirements and add features such as debugging,
execution monitoring, or changing to another Web Service
selection policy. Additionally, it can easily be extended to
cope with customer-specific BPEL extensions. We propose
the use of dynamic aspects not only on the engine itself
but also on the workflow in order to tackle the problems of
Web Service hot deployment and hot fixes to long running
processes. In this way, composing aWeb Service "on-the-fly"
means weaving its choreography interface into the workflow
Trusted product lines
This thesis describes research undertaken into the application of software product line approaches to the development of high-integrity, embedded real-time software systems that are subject to regulatory approval/certification. The motivation for the research arose from a real business need to reduce cost and lead time of aerospace software development projects.
The thesis hypothesis can be summarised as follows:
It is feasible to construct product line models that allow the specification of required behaviour within a reference architecture that can be transformed into an effective product implementation, whilst enabling suitable supporting evidence for certification to be produced.
The research concentrates on the following four main areas:
1. Construction of an argument framework in which the application of product line techniques to high-integrity software development can be assessed and critically reviewed.
2. Definition of a product-line reference architecture that can host components containing variation.
3. Design of model transformations that can automatically instantiate products from a set of components hosted within the reference architecture.
4. Identification of verification approaches that may provide evidence that the transformations designed in step 3 above preserve properties of interest from the product line model into the product instantiations.
Together, these areas form the basis of an approach we term âTrusted Product Linesâ. The approach has been evaluated and validated by deployment on a real aerospace project; the approach has been used to produce DO-178B/ED-12B Level A applications of over 300 KSLOC in size. The effect of this approach on the software development process has been critically evaluated in this thesis, both quantitatively (in terms of cost and relative size of process phases) and qualitatively (in terms of software quality).
The âTrusted Product Linesâ approach, as described within the thesis, shows how product line approaches can be applied to high-integrity software development, and how certification evidence created and arguments constructed for products instantiated from the product line. To the best of our knowledge, the development and effective application of product line techniques in a certification environment is novel and unique
Workshop on Modelling of Objects, Components, and Agents, Aarhus, Denmark, August 27-28, 2001
This booklet contains the proceedings of the workshop Modelling of Objects, Components, and Agents (MOCA'01), August 27-28, 2001. The workshop is organised by the CPN group at the Department of Computer Science, University of Aarhus, Denmark and the "Theoretical Foundations of Computer Science" Group at the University of Hamburg, Germany. The papers are also available in electronic form via the web pages: http://www.daimi.au.dk/CPnets/workshop01
Strong contracts: the relationship between power and action
Purpose â There is a view that strong preventative contracts are essential to control supplier
opportunism and delivery during an outsourcing implementation. This paper tests the
proposition that contractual environments, typical of outsourcing engagements, are
essentially conflictual and that context and circumstance can act to overwhelm formal
contractual and project control and lead to poor outcomes.
Design/methodology/approach â The paper reports on a supply case study focused on the
outsourced delivery of an application development in the defence sector. Data was
gathered by a participant observation in situ for a period of three years. A grounded analysis
from observations, diaries, semi-structured interviews, focus groups, documentary analysis,
and emails was carried out with six case organisations within the extended supply chain.
Findings â Collaboration between suppliers and buyers can be blocked by preventative fixed
price contracts and as a result when requirements are incomplete or vague this adversely
impacts success.
Implications for practice
Strong contractual control focused on compliance may actually impede the potential
success of outsourcing contracts especially when collaborative approaches are needed to
cope with variability in demand.
Originality/value
The research raises the important practical and conceptual notion that an outsourcing can
be a conflictual inter-firm phenomenon, especially where multiple actors are involved and
business uncertainty is present
Overview of Infrastructure Charging, part 4, IMPROVERAIL Project Deliverable 9, âImproved Data Background to Support Current and Future Infrastructure Charging Systemsâ
Improverail aims are to further support the establishment of railway infrastructure management in accordance with Directive 91/440, as well as the new railway infrastructure directives, by developing the necessary tools for modelling the management of railway infrastructure; by evaluating improved methods for capacity and resources management, which allow the improvement of the Life Cycle Costs (LCC) calculating methods, including elements related to vehicle - infrastructure interaction and external costs; and by improving data background in support of charging for use of railway infrastructure. To achieve these objectives, Improverail is organised along 8 workpackages, with specific objectives, responding to the requirements of the task 2.2.1/10 of the 2nd call made in the 5th RTD Framework Programme in December 1999.This part is the task 7.1 (Review of infrastructure charging systems) to the workpackage 7 (Analysis of the relation between infrastructure cost variation and diversity of infrastructure charging systems).Before explaining the economic characteristics of railway and his basic pricing principles, authors must specify the objectives of railways infrastructure charging.principle of pricing ; rail infrastructure charging ; public service obligation ; rail charging practice ; Europe ; Improverail
Sustaining a Vertically Disintegrated Network through a Bearer Service Market
Based upon the Internet perspective, this chapter will attempt to clarify and revise
several ideas about the separation between infrastructure facilities and service
offerings in digital communications networks. The key notions that we will focus on
in this paper are: i) the bearer service as a technology-independent interface which
exports blind network functionality to applications development; ii) the sustainability
of an independent market for bearer service and the organizational consequences
associated with such a market
Model Transformation Languages with Modular Information Hiding
Model transformations, together with models, form the principal artifacts in model-driven software development. Industrial practitioners report that transformations on larger models quickly get sufficiently large and complex themselves. To alleviate entailed maintenance efforts, this thesis presents a modularity concept with explicit interfaces, complemented by software visualization and clustering techniques. All three approaches are tailored to the specific needs of the transformation domain
- âŠ