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.
18818911
Architectural modeling in industry-an experience report
Nokia Research Center (NRC) has been leading Esprit project ARES (Architectural Reasoning for Embedded Systems) for two years. One of the main purposes of ARES is to demonstrate the use of architectural modeling in controlling properties of industrial scale products and product families. Two examples are documented. Forward architecting was applied in modeling the new architecture for our mobile phone family showing how to control the dynamic properties of the software. Reverse architecting was used to tune the performance of our telephone switch software. Both cases show that special purpose models can be constructed even for very large systems and they do give valuable insight to the properties of the software.
38301438
Encoding Informal Architectural Descriptions with UML: An Experience Report
An architectural description records and presents different system characteristics through various architectural views. UML, which provides a set of general-purpose modeling notations, has been already used to model software architecture in industry. In practice, most of the existing architectural descriptions are informal documents. By only using these informal architecture documents it is difficult to analyze the architecture design and convey rigorous architectural concepts and principles to the development team. In this paper, we demonstrate our approach to convert those informal documents to formal UML-conformed documents to facilitate architecture analysis and verification.
17726179
Establishing a software architecting environment
We present the work of establishing an integrated environment that facilitates architecture design, reconstruction, and maintenance in the entire life cycle of a software product line. This architecting environment (ART environment) has been used in modeling and analysis of both the designed platform architecture model and the reverse-engineered product implementation architecture models of different releases in a big product line of Nokia mobile terminals. ART environment comprises tools for architecture model validation, architecture model analysis and processing, and reverse architecting. The ART environment fits the current software development process inside Nokia, and is integrated with the design and documentation tools that have already been used by Nokia software architects. UML, after being customized with UML profiles for architecture design, is used as the architecture modeling language in ART environment.
33748438
Analyzing the execution architecture of mobile phone software with colored Petri nets
We present an application of colored Petri nets to the modeling of a software architecture. Our work demonstrates how architectural modeling can be used to control properties of industrial scale products and product families. The new software architecture of a mobile phone family is modeled by colored Petri nets and analyzed using the Design/CPN tool. The model describes the execution architecture and allows us to analyze both the time and space performance of the software system. Our experience shows that a special purpose model can be constructed for large systems also and that this model predicts system properties accurately enough to be useful. The insight this gave us into the internal operation of the software system together with the estimates of its performance have guided us through the early phases of architectural design. We continue to maintain the model and expect it to be a valuable tool in configuring different product family members.
38590214
Motion Composition of 3D Video
3D video, which is composed of a sequence of mesh models and can provide the user with interactivity, is attracting increasing attention in many research groups. However, it is time-consuming and expensive to generate 3D video sequences. In this paper, a motion composition method is proposed to edit 3D video based on the user’s requirements so that 3D video can be re-used. By analyzing the feature vectors, the hierarchical motion structure is parsed and then a motion database is set up by selecting the representative motions. A motion graph is constructed to organize the motion database by finding the possible motion transitions. Then, the best path is searched based on a proposed cost function by a modified Dijkstra algorithm after the user selects the desired motions in the motion database, which are called key motions in this paper. Our experimental results show the edited 3D video sequence looks natural and realistic.
26138426
2-diameter of de Bruijn graphs
Binary strings are used as vertex labels or components of vertex labels. We will abbreviate “the vertex with label X” as “vertex x.” The binarji direcred de Briiijn graph of dimension n , denoted B ( n ) , has 2 ” vertices which are labeled with the binary strings of length n . There is an arc from any vertex x, x2 xn to the vertices x2x3 x,O and x2x3 x,, 1. We say that the ith coordinate of ,Y is x, . Any .u, is equal toOor l , andZ, = 1 x i . The undirected binary de Bruijn graph UB( n ) is obtained from B( n) by deleting the orientation of the arcs and omitting multiple edges and loops. It is well known that UB( n ) is 2-connected and that its diameter (maximum of the distances between all pairs of vertices) is equal to n . Due to their bounded maximum degree equal to 4 and their low diameter, de Bruijn graphs have been proposed as a possible good interconnection network for a parallel architecture [ 11. They have also been shown to solve a wide class of problems [ 21. For a k-connected graph, Hsu [ 4 ] introduced the notion of the kdiameter as follows: Given any two vertices x and y , a k-container between x and y is a set of k vertex disjoint paths between xand y . The length ofa k-container is the length of the longest of the k paths. The kdistance d k ( x , y ) between x and y is the minimum of the lengths of all the k-containers. Then, the k-diameter of a graph G is the maximum of d k ( x , y) for all pairs of vertices x and y . General results on the k-diameters of k-regular kconnected graphs can be found in [ 41 or [ 51. Results for some particular classes ofgraphs and many open problems can also be found in [ 41. It was shown by Pradhan and Reddy [ 7 ] that the 2diameter of U B ( n ) is less than or equal to 2n. The 2diameter is also obviously at least n. The aim of this paper was to prove that it is exactly n. In other words, between any two vertices of UB( n ) , there exist two internally vertex disjoint paths of length at most n. This gives a good measure of the fault tolerance of the graph [ 61. Let us first introduce some notation and recall some properties of the de Bruijn digraph B( n ) : Given two vertices x and y , we will denote f i x , y ] as a shortest path P from x to y . The length of this path, denoted by I PIX, y ] 1, is the number of edges in the path and is also the distance d ( x , y ) from x to y . P [ x , y ] also represents the set of vertices of the path, including its extremities.
5323377
Visualizing the expertise space
Expertise management systems are being widely adopted in organizations to manage tacit knowledge embedded in employees' heads. These systems have successfully applied many information technologies developed in fields such as information retrieval and document management to support expertise information collection, processing, and distribution. In this paper, we investigate the potentials of applying visualization techniques to support exploration of an expertise space. We implemented two widely applied dimensionality reduction visualization techniques, the self-organizing map and multidimensional scaling; to generate expert map and expertise field map visualizations based on an expertise data set. Our proposed approach is generic for automatic mapping of expertise space of an organization, research field, scientific domain, etc. Our initial analysis on the visualization results indicated that the expert map and expertise field map captured useful underlying structures of the expertise space and had the potential to support more efficient and effective expertise information searching and browsing.
16148439
Solving the brachytherapy seed localization problem using geometric and linear programming techniques
We propose a technique to solve the Brachytherapy Seed Localization problem in prostate brachytherapy. Our algorithm is based on novel geometric approaches to exploit the special structure of the problem combined with a number of key observations which help us formulate it as an Integer Program. We solve the equivalent linear program and present a variant of randomized rounding to yield an integral solution to our problem. The algorithm is efficient and performs extremely well in practice. We discuss in detail the underlying theory and performance evaluations based on our implementation.
15045053
A monotone finite element scheme for convection-diffusion equations
A simple technique is given in this paper for the construction and analysis of a class of finite element discretizations for convection-diffusion problems in any spatial dimension by properly averaging the PDE coefficients on element edges. The resulting finite element stiffness matrix is an M-matrix under some mild assumption for the underlying (generally unstructured) finite element grids. As a consequence the proposed edge-averaged finite element scheme is particularly interesting for the discretization of convection dominated problems. This scheme admits a simple variational formulation, it is easy to analyze, and it is also suitable for problems with a relatively smooth flux variable. Some simple numerical examples are given to demonstrate its effectiveness for convection dominated problems.