James' work was in the broad area of model driven architecture. He
has devised a general approach for expressing non-functional
properties of software architectures in UML profiles. He then devised
a use of the Object Constraint Language (OCL) to systematically map
these profiles to formalisms that are suitable for quantitative
analysis of these architectures, including queuing networks, markov
chains and stochastic process algebras.
James is now a Post Doc on the EPSRC Funded Divergent Grid project.
J. Skene and W. Emmerich (2004).
Generating a Contract Checker for an SLA Language. In Proc. of the EDOC 2004 Workshop on Contract Architectures and Languages, Monterey, California.
IEEE Computer Society Press.
J. Skene, D. Lamanna and W. Emmerich (2004).
Precise Service Level Agreements. In Proc. of the 26th Int. Conference on Software Engineering, Edinburgh, UK.
IEEE Computer Society Press.
Rami investigated the problem of stability of software
architectures, in particular to answer the question as to how much
flexibility one needs to buy by investing into a software
architecture. He took an economics-driven approach to the problem and
has devised a real-option based approach that draws on Black/Scholes
option pricing to solve the problem. He evaluated the approach by
applying it to the problem of selecting between different
middleware-based software architectures and was able to show that a
Real Option approach delivers better guidance than traditional cost/benefit
analysis techniques, such as discounted cash flow or net present value.
Rami is now a Lecturer in the Department of Computer Science at
the University of Birmingham.
Christian investigated how to detect inconsistencies in
distributed semi-structured data that he assumes can be translated
into an XML markup. He has devised a first-order logic
language that uses on XPaths to specify consistency rules and
defined several execution semantics for that language. A first
semantics creates XLinks in order to hyperlink those document
fragments that cause an inconsistency. The second semantics generates
all possible actions for repairing inconsistencies. The third
semantics is used for test case generation and translates a set of
consistency rules and a correct document into a set of all possible
Christian benefited from a UCL Graduate School scholarship and additional
financial support from Zuhlke
Engineering. Christian concluded his PhD research in January
Christian is now Strategy Director of
- C. Nentwich and W. Emmerich and A. Finkelstein (2003).
Consistency Management with Repair Actions.
In Proc. of the 25th Int. Conference on Software Engineering, Portland, Oregon, pp. 455-464, ACM Press.
- C. Nentwich and W. Emmerich and A. Finkelstein and E. Ellmer (2003).
Flexible Consistency Checking.
ACM Transactions on Software Engineering and Methology, 12(1):28-63.
Licia investigated middleware principles for mobile computing. She
identified the need for mobile applications to react to changes in
contexts and argued that this is difficult to achieve if the
middleware is a black box that applications cannot adjust. She showed
that the principle of reflection can be used successfully to achieve
context awareness. She also showed that trade-off decisions about the
provision of quality of service in mobile settings are best made at
run-time due to the large number of unforeseen circumstances. She
used game theory to develop a micro-economic mechanism for conflict
resolution. She developed CARISMA, a prototypical implementation to
evaluate the consequences of these primitives on run-time performance
and concluded that these can be borne by modern mobile devices.
Licia was funded by a scholarship awarded UCL's Software Systems
Engineering group and by Zuhlke
Engineering. She concluded her PhD research in October 2003. She
is now a Lecturer in the Department of Computer Science at UCL.