5336558
Using Colored Petri Nets and Tools to Support Mobile Terminal and Network Software Development
In this paper we report our experience in several research projects that use Colored Petri Nets in modeling and analysis of the software systems of Nokia products. These research projects use both formal language – Colored Petri Nets and semi-formal language – UML to describe, model and analyze different software systems. Due to the particular limitations, formal methods have been only used to model and analyze a certain property or a few strongly related properties, or a certain critical part of a big system at a time. This short paper reports our experience in applying formal methods in industry settings. We mainly address our problems in applying formal methods in supporting our product software development, such as system complexity, model complexity, the appropriate abstraction levels of a formal model, tracing the problem from abstract formal model to real software and vice versa, tool support, etc.
9110982
Modelling of Features and Feature Interactions in Nokia Mobile Phones Using Coloured Petri Nets
This paper reports on the main results from an industrial cooperation project. The project is a joint project between Nokia Research Centre and the CPN group at the University of Aarhus. The purpose of the project was to investigate features and feature interactions in development of Nokia mobile phones through construction of a Coloured Petri Nets (CPN) model. The model is extended with domain-specific graphics and Message Sequence Charts to enable mobile phone user interface designers and software developers who are not familiar with Petri Nets to work with the model. The paper presents the CPN model constructed in the project, describes how domain-specific graphics and Message Sequence Charts are used in simulations of the CPN model, and discusses how the project and in particular the construction of the CPN model has influenced the development process of features in Nokia mobile phones.
16116716
Evaluating and Balancing Reliability and Performance Properties of Software Architecture Using Formal Modeling Techniques
The run-time quality properties of software architecture, such as reliability and performance, are fundamental to telecom systems, but they are very hard to be precisely specified and evaluated with conventional methods. In our contribution we focus on modeling and analysis of architectural level run-time quality properties using formal methods. Colored Petri nets (CPN) is used to create specific system behavior models of reliability and performance properties of software architecture, these properties are then evaluated with analysis and simulation techniques supported by CPN and its tools. In this paper we report our approach and experience on using CPN to model and evaluate the reliability and performance properties of different architecture designs of a critical software subsystem in a telephone switch system. The reliability and performance properties of two alternative solutions were modeled and compared through model analysis and extensive model simulation. The results helped us to find an ideal solution with high performance, low cost and acceptable reliability that met the industry standards
45243230
Experiences in Modelling Feature Interactions with Coloured Petri Nets
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 conrete results we have achieved by using our approach.
8865153
Validating UML models against architectural profiles
The Unified Modeling Language (UML) has become a widely adopted standard in the software industry. While UML has established itself in detailed software design, its usage as an architecture description language is still taking its shape. In particular, there is a growing need for techniques to define domain specific architectural constraints and conventions in UML. We address this issue by adopting the concept of UML profiles for architectural design. Architectural profiles are specialized for describing and constraining software architecture descriptions for a given domain. We argue that these profiles represent an appropriate abstraction level to elaborate architectural constraints and conventions. We present a general schema for arranging architectural profiles and a set of conformance rules that define how these profiles are interpreted, constituting a profile definition language for validating architectural design. We introduce a tool for performing architectural validation and discuss the results of our initial case studies.
6701763
UML-based reverse engineering and model analysis approaches for software architecture maintenance
This paper proposes a UML-based software maintenance process. The process is guided by architectural descriptions and existing architectural models. The descriptions are given as variants of UML profiles describing the styles and rules relevant for a particular application domain. A reverse engineering subprocess, combining top-down and bottom-up reverse engineering activities, aims at constructing the architectural models. Resulting models are investigated in a model analysis subprocess. The models are checked against the profiles to find violations against the given architectural rules when maintaining and developing the subject system, and they are further analyzed using a set of UML model processing operations. The proposed approach is applied for maintaining a large-scale product platform architecture and real-life product-line products built on top of this platform. The model analysis results of the case study are discussed.
11854232
Local and parallel finite element algorithms based on two-grid discretizations
A number of new local and parallel discretization and adaptive nite element algorithms are proposed and analyzed in this paper for elliptic boundary value problems. These algorithms are motivated by the observation that, for a solution to some elliptic problems, low frequency components can be approximated well by a relatively coarse grid and high frequency components can be computed on a ne grid by some local and parallel procedure. The theoretical tools for analyzing these methods are some local a priori and a posteriori estimates that are also obtained in this paper for nite element solutions on general shape-regular grids. Some numerical experiments are also presented to support the theory. In this paper, we will propose some new parallel techniques for nite element computation. These techniques are based on our understanding of the local and global properties of a nite element solution to some elliptic problems. Simply speaking, the global behavior of a solution is mostly governed by low frequency components while the local behavior is mostly governed by high frequency compo- nents. The main idea of our new algorithms is to use a coarse grid to approximate the low frequencies and then to use a ne grid to correct the resulted residue (which contains mostly high frequencies) by some local/parallel procedures. Let us now give a somewhat more detailed but informal (and hopefully infor- mative) description of the main ideas and results in this paper. We consider the following very simple model problem posed on a convex polygonal domain R 2 : ( u + bru = f; in ;
12535990
Fast integer-pel and fractional-pel motion estimation for H.264/AVC
Abstract This paper gives out a fast motion estimation algorithm for H.264/AVC, which has almost the same quality performance as that of the Full Search scheme and also provides a strategy to balance the quality performance and the search speed. Integer-pel search is the most time consuming module for motion estimation. In this paper a hybrid Unsymmetrical-cross Multi-hexagon-grid Search (UMHexagonS) algorithm is introduced, which well solves the false motion vector estimation problem because of the local-minimum. As results, it saves more than 90% on search time whereas the averaging PSNR loss is less than 0.056 dB for all tested sequences with different motion extent compared with the Fast Full Search scheme. Fractional-pel fast search is not negligible when the integer motion estimation has been extensively speeded up. By utilizing the property of uni-modal error surface inside the fractional-pel search window, a novel Center Biased Fractional-pel Search (CBFPS) algorithm is proposed in this paper, which can save 30–50% computation compared with the Full Fractional-pel Search scheme. Early termination is another problem discussed in this paper, to construct a complete motion estimation method, giving a uniform method which can cover a wide range of applications, terminating the program at early and right stage is certainly required. A model based on the Normative SAD Difference (NSD) is given to assist the termination decision-making, and a tradeoff between the search speed and the reconstructed quality can be achieved by changing a modulation factor.
207162632
Utility-based anonymization for privacy preservation with less information loss
Privacy becomes a more and more serious concern in applications involving microdata. Recently, efficient anonymization has attracted much research work. Most of the previous methods use global recoding, which maps the domains of the quasi-identifier attributes to generalized or changed values. However, global recoding may not always achieve effective anonymization in terms of discernability and query answering accuracy using the anonymized data. Moreover, anonymized data is often used for analysis. As well accepted in many analytical applications, different attributes in a data set may have different utility in the analysis. The utility of attributes has not been considered in the previous methods.
 In this paper, we study the problem of utility-based anonymization. First, we propose a simple framework to specify utility of attributes. The framework covers both numeric and categorical data. Second, we develop two simple yet efficient heuristic local recoding methods for utility-based anonymization. Our extensive performance study using both real data sets and synthetic data sets shows that our methods outperform the state-of-the-art multidimensional global recoding methods in both discernability and query answering accuracy. Furthermore, our utility-based method can boost the quality of analysis using the anonymized data.
19187096
Traveling salesman problem of segments
In this paper, we present a polynomial time approximation scheme (PTAS) for a variant of the traveling salesman problem (called segment TSP) in which a traveling salesman tour is sought to traverse a set of n ∊-separated segments in two dimensional space. Our results are based on an interesting combinatorial result which bounds the total number of entry points in an optimal TSP tour and a generalization of Arora's technique5 for Euclidean TSP (of a set of points). The randomized version of our algorithm takes O(n2(log n)O(1/∊2)) time to compute a (1+∊)-approximation with probability ≥l/2, and can be derandomized with an additional factor of O(n2).
2775894
Rigorous development of a safety-critical system based on coordinated atomic actions
This paper describes our experience using coordinated atomic (CA) actions as a system structuring tool to design and validate a sophisticated control system for a complex industrial application that has high reliability and safety requirements. Our study is based on the "Fault-Tolerant Production Cell", which represents a manufacturing process involving redundant mechanical devices (provided in order to enable continued production in the presence of machine faults). The challenge posed by the model specification is to design a control system that maintains specified safety and liveness properties even in the presence of a large number and variety of device and sensor failures. We discuss in this paper: i) a design for a control program that uses CA actions to deal with both safety-related and fault tolerance concerns, and ii) the formal verification of this design based on the use of model-checking. We found that CA action structuring facilitated both the design and verification tasks by enabling the various safety problems (e.g. clashes of moving machinery) to be treated independently. The formal verification activity was performed in parallel with the design activity the interaction between them resulted in a combined exercise in "design for validation".