31 research outputs found

    Object-oriented engineering of visual languages

    Get PDF
    Visual languages are notations that employ graphics (icons, diagrams) to present information in a two or more dimensional space. This work focuses on diagrammatic visual languages, as found in software engineering, and their computer implementations. Implementation means the development of processors to automatically analyze diagrams and the development of graphical editors for constructing the diagrams. We propose a rigorous implementation technique that uses a formal grammar to specify the syntax of a visual language and that uses parsing to automatically analyze the visual sentences generated by the grammar. The theoretical contributions of our work are an original treatment of error handling (error detection, reporting, and recovery) in off-line visual language parsing, and the source-to-source translation of visual languages. We have also substantially extended an existing grammatical model for multidimensional languages, called atomic relational grammars. We have added support for meta-language expressions that denote optional and repetitive right-hand-side elements. We hav

    Experiences in modelling feature interactions with Coloured Petri Nets

    Get PDF
    A modern mobile phone supports many features: voice and data calls, text messaging, personal information management like phonebooks and calendars, WAP browsing, games, alarm clock, etc. All these features are packaged into a handset with a small display and a special purpose keypad. The limited user interface and the seamless intertwining of logically separate features cause many interactions between the software components in the UI of mobile phones. In this paper, we present an overview of our approach to modelling feature interactions in Nokia's mobile phones with explicit behavioral models of features. We use Coloured Petri Nets as the modeling language and the tool Design/CPN that provides a graphical, interactive user interface for constructing and simulating Coloured Petri Nets. We describe at a general level how we have created a graphical user interface for controlling and observing the simulations of models through an on-screen mock-up of a mobile phone. Then, we discuss the concrete results we have achieved by using our approach

    Experiences on Managing Technical Debt with Code Smells and AntiPatterns

    Get PDF
    Technical debt has become a common metaphor for the accumulation of software design and implementation choices that seek fast initial gains but that are under par and counterproductive in the long run. However, as a metaphor, technical debt does not offer actionable advice on how to get rid of it. To get to a practical level in solving problems, more focused mechanisms are needed. Commonly used approaches for this include identifying code smells as quick indications of possible problems in the codebase and detecting the presence of AntiPatterns that refer to overt, recurring problems in design. There are known remedies for both code smells and AntiPatterns. In paper, our goal is to show how to effectively use common tools and the existing body of knowledge on code smells and AntiPatterns to detect technical debt and pay it back. We present two main results: (i) How a combination of static code analysis and manual inspection was used to detect code smells in a codebase leading to the discovery of AntiPatterns; and (ii) How AntiPatterns were used to identify, characterize, and fix problems in the software. The experiences stem from a private company and its long-lasting software product development effort.Peer reviewe

    Unwasted DASE : Lean Architecture Evaluation

    Get PDF
    A software architecture evaluation is a way to assess the quality of the technical design of a product. It is also a prime opportunity to discuss the business goals of the product and how the design bears on them. But architecture evaluation methods are seen as hard to learn and costly to use. We present DASE, a compact approach that combines carefully selected key parts of two existing architecture evaluation methods while making evaluation lean and fast. We have applied DASE in three industrial cases and the early results show that even a one-day evaluation workshop yields valuable results at a modest cost.A software architecture evaluation is a way to assess the quality of the technical design of a product. It is also a prime opportunity to discuss the business goals of the product and how the design bears on them. But architecture evaluation methods are seen as hard to learn and costly to use. We present DASE, a compact approach that combines carefully selected key parts of two existing architecture evaluation methods while making evaluation lean and fast. We have applied DASE in three industrial cases and the early results show that even a one-day evaluation workshop yields valuable results at a modest cost.A software architecture evaluation is a way to assess the quality of the technical design of a product. It is also a prime opportunity to discuss the business goals of the product and how the design bears on them. But architecture evaluation methods are seen as hard to learn and costly to use. We present DASE, a compact approach that combines carefully selected key parts of two existing architecture evaluation methods while making evaluation lean and fast. We have applied DASE in three industrial cases and the early results show that even a one-day evaluation workshop yields valuable results at a modest cost.Peer reviewe

    Climate impacts of peat fuel utilization chains – a critical review of the Finnish and Swedish life cycle assessments

    Get PDF
    In recent years there has been a lively debate in Finland and Sweden on the climate impact of peat fuel utilization. The aim of this study was to clarify the contradictions between the Finnish and Swedish studies and provide a better basis for energy policy decision-making by summarizing the recent scientific knowledge about the climate impacts of peat fuel utilization chains based on the life cycle assessment (LCA) methodology. A starting point for this study was to carry out a critical review of Finnish and Swedish life cycle studies of the climate impacts of peat fuel utilization chains. The critical review was conducted according to the recommendations of international standards and its aim was to ensure that the methods, data and interpretation of results were carried out in a scientifically and technically valid way. During the review the available data (mostly published) on the greenhouse gas (GHG) balances and the radiative forcing impacts of GHGs were gathered and updated.  The re-calculations showed that the climate impact of "Pristine mire – afforestation" utilization chain is similar to the climate impact of coal utilization, whereas the result of the peat utilization chain "Pristine mire – restoration" is slightly worse than for the coal utilization chain. The results were similar in the reviewed studies. The peat utilization chain "Forestry-drained peatlands – afforestration" causes a slightly higher climate impact on average than the coal utilization chain does. From the viewpoint of peat utilization the result was similar to the result of Finnish study. According to the reviewed studies the use of cultivated peatlands causes the lowest climate impact compared to the climate impacts of the other peatlands. However, cultivated peatlands do not play important role as an extraction area for peat utilization. From the viewpoint of peat utilization the result of cultivated peatland was worse compared to the result produced by the Finnish and Swedish studies. The climate impacts of peat fuel utilization chains are mostly caused by the carbon dioxide released by peat combustion. These emissions are known quite  well. However, the emission assessments of different peat types include large uncertainty before, during and after peat extraction. In spite of that it can be said that land change options related to peat extraction and after-treatments have very limited effects on the climate impacts of peat utilization chain

    Continuous Experimentation Cookbook : An introduction to systematic experimentation for software-intensive businesses

    Get PDF
    An increasing number of companies are involved in building software-intensive products and services – hence the popular slogan “every business is a software business”. Software allows companies to disrupt existing markets because of its flexibility. This creates highly dynamic and competitive environments, imposing high risks to businesses. One risk is that the product or service is of only little or no value to customers, meaning the effort to develop it is wasted. In order to reduce such risks, you can adopt an experimentdriven development approach where you validate your product ideas before spending resources on fully developing them. Experiments allow you to test assumptions about what customers really want and react if the assumptions are wrong. This book provides an introduction to continuous experimentation, which is a systematic way to continuously test your product or service value and whether your business strategy is working. With real case examples from Ericsson, Solita, Vaadin, and Bittium, the book not only gives you the concepts needed to start performing continuous experimentation, but also shows you how others have been doing it

    Vegetation controls of water and energy balance of a drained peatland forest: Responses to alternative harvesting practices

    Get PDF
    We quantified the response of peatland water table level (WTL) and energy fluxes to harvesting of a drained peatland forest. Two alternative harvests (clear-cut and partial harvest) were carried out in a mixed-species ditch-drained peatland forest in southern Finland, where water and energy balance components were monitored for six pre-treatment and three post-treatment growing seasons. To explore the responses caused by harvestings, we applied a mechanistic multi-layer soil-plant-atmosphere transfer model. At the clear-cut site, the mean growing season WTL rose by 0.18 +/- 0.02 m (error estimate based on measurement uncertainty), while net radiation, and sensible and latent heat fluxes decreased after harvest. On the contrary, we observed only minor changes in energy fluxes and mean WTL (0.05 +/- 0.03 m increase) at the partial harvest site, although as much as 70% of the stand basal area was removed and leaf-area index was reduced to half. The small changes were mainly explained by increased water use of spruce undergrowth and field layer vegetation, as well as increased forest floor evaporation. The rapid establishment of field layer vegetation had a significant role in energy balance recovery at the clear-cut site. At partial harvest, chlorophyll fluorescence measurements and model-data comparison suggested the shade-adapted spruce undergrowth was suffering from light stress during the first post-harvest growing season. We conclude that in addition to stand basal area, species composition and stand structure need to be considered when controlling WTL in peatland forests with partial harvesting. Our results have important implications on the operational use of continuous cover forestry on drained peatlands. A continuously maintained tree cover with significant evapotranspiration capacity could enable optimizing WTL from both tree growth and environmental perspectives.Peer reviewe
    corecore