14876206
E-science experiences: software engineering practice and the EU DataGrid
The conduct of collaborative scientific study mediated by the internet -e-science - is giving rise to a new type of large distributed software project. This paper reports initial experiences of one such project: the European DataGrid. We record observations about the intended lifecycle and process, compared with actual practice. The paper explores the applicability of current software development practices from academic, commercial, and open source sectors in the context of such Grid projects.
26464031
A Taxonomy of Web Services Using CSP
Terms such as conversational and stateless are widely used in the taxonomy of web services. We give formal definitions of these terms using the CSP process algebra. Within this framework we also define the notion of Service-Oriented Architecture. These definitions are then used to prove important scalability properties of stateless services. The use of formalism should allow recent debates, concerning how and whether web services provide standardized access to state, to progress more rigorously.
34718551
Encoding W: A Logic for Z in 2OBJ
A prototype proof system for “\(\mathcal{W}\): A Logic for Z” has been produced using the 2OBJ metalogical theorem-prover. 2OBJ permits an encoding which is very similar in structure to that of \(\mathcal{W}\), and the details are presented here. Like \(\mathcal{W}\)the encoding assumes that all its inputs are well-typed. The structure of the encoding is enhanced by a meta-rule on the lifting of proof rules and tactics. There is some discussion of how tactics can make \(\mathcal{W}\)more easily usable.
265154
A Set-Theoretic Model for Real-Time Specification and Reasoning
Timed-trace formalisms have emerged as a powerful method for specifying and reasoning about concurrent real-time systems. We present a simple variant which builds methodically on set theory, and is thus suitable for use by programmers with little formal methods experience.
14174107
Lifting in Z
Formal notations such as Z provide powerful support for writing clear specifications, and for undertaking proofs of properties of those specifications. In this paper, we explore one particular style of specification, with applications in control theory and real-time specification. The notation we define permits the accurate description of concepts in these fields without significant overhead or notational clutter. This notation has long been used by practitioners in these fields; we demonstrate that it may be defined within Draft Standard Z, and that the resulting specifications are amenable to proof.
6469757
Teaching Formal Methods in Context
The Software Engineering Programme at Oxford teaches formal methods as an integral part of its programme of professional education in software engineering. This paper explains how the methods are taught—in the context of emerging trends in software development, and in the context of existing practice—and how their use is promoted through course design and motivating examples.
15221918
Maintaining the Identity of Dynamically Embodied Agents
Virtual agents are traditionally constrained in their embodiment, as they are restricted to one form of body. We propose allowing them to change their embodiment in order to expand their capabilities. This presents users with a number of difficulties in maintaining the identity of the agents, but these can be overcome by using identity cues, certain features that remain constant across embodiment forms. This paper outlines an experiment that examines these identity cues, and shows that they can be used to help address this identity problem.
34039430
A model of information systems development project performance
. Performance in information systems development (ISD) projects can be critical to business success. But, while project performance has been the subject of much debate, there has been little empirical research into its determinants. A survey of IS projects in the UK and New Zealand is analysed to test hypotheses concerning performance in terms of both project completion and budget (time-cost) variances. Subsequently, a secondary analysis of the findings is used to build a more complete empirical model of project performance. The paper helps to develop the theory of IS development project performance and also has significant implications for practice. Discussion of the findings highlights the importance of project team dynamics, risk management, senior management support for strategic projects and user participation in ensuring successful IS project performance.
16635941
Packing Steiner trees: a cutting plane algorithm and computational results
In this paper we describe a cutting plane algorithm for the Steiner tree packing problem. We use our algorithm to solve some switchbox routing problems of VLSI-design and report on our computational experience. This includes a brief discussion of separation algorithms, a new LP-based primal heuristic and implementation details. The paper is based on the polyhedral theory for the Steiner tree packing polyhedron developed in our companion paper (this issue) and meant to turn this theory into an algorithmic tool for the solution of practical problems.
145836
Packing Steiner trees: polyhedral investigations
LetG=(V, E) be a graph andT⊆V be a node set. We call an edge setS a Steiner tree forT ifS connects all pairs of nodes inT. In this paper we address the following problem, which we call the weighted Steiner tree packing problem. Given a graphG=(V, E) with edge weightswe, edge capacitiesce,e∈E, and node setT1,…,TN, find edge setsS1,…,SN such that eachSk is a Steiner tree forTk, at mostce of these edge sets use edgee for eache∈E, and the sum of the weights of the edge sets is minimal. Our motivation for studying this problem arises from a routing problem in VLSI-design, where given sets of points have to be connected by wires. We consider the Steiner tree packing problem from a polyhedral point of view and define an associated polyhedron, called the Steiner tree packing polyhedron. The goal of this paper is to (partially) describe this polyhedron by means of inequalities. It turns out that, under mild assumptions, each inequality that defines a facet for the (single) Steiner tree polyhedron can be lifted to a facet-defining inequality for the Steiner tree packing polyhedron. The main emphasis of this paper lies on the presentation of so-called joint inequalities that are valid and facet-defining for this polyhedron. Inequalities of this kind involve at least two Steiner trees. The classes of inequalities we have found form the basis of a branch & cut algorithm. This algorithm is described in our companion paper (in this issue).
5189033
Routing in grid graphs by cutting planes
In this paper we study the following problem, which we call the weighted routing problem. Let be given a graphG = (V, E) with non-negative edge weightswe ∈ ℝ+ and letN,N ≥ 1, be a list of node sets. The weighted routing problem consists in finding mutually disjoint edge setsS1,...,SN such that, for eachk ∈ {1, ...,N}, the subgraph (V(Sk),Sk) contains an [s, t]-path for alls, t ∈ Tk and the sum of the weights of the edge sets is minimal. Our motivation for studying this problem arises from the routing problem in VLSI-design, where given sets of points have to be connected by wires. We consider the weighted routing problem from a polyhedral point of view. We define an appropriate polyhedron and try to (partially) describe this polyhedron by means of inequalities. We describe our separation algorithms for some of the presented classes of inequalities. Based on these separation routines we have implemented a branch and cut algorithm. Our algorithm is applicable to an important subclass of routing problems arising in VLSI-design, namely to switchbox routing problems where the underlying graph is a grid graph and the list of node sets is located on the outer face of the grid. We report on our computational experience with this class of problem instances.