Cuong M. Tran

Learn More
—Compositionality has the potential to enable a step-change in the scalability of formal design and verification methods for industrial-scale systems: by designing systems in a compositional manner, components can be modelled, specified, implemented, and verified independently and in parallel by different teams, leading to significant gains in terms of(More)
Currently, composition of web services is done by orchestration. An orchestration is a workflow that combines invocations of individual operations of the web services involved. It is therefore a composition of individual operations, rather than a composition of entire web services. In this paper we propose a different approach to web service composition,(More)
The X-MAN tool has been developed in the European project CESAR, for component-based system development. CESAR is a large industrial project that aims to develop a component-based technology that can be used for developing embedded systems in multiple domains, including automotives and avionics. X-MAN has been successfully evaluated by CESAR's external(More)
For general (modular) system development with verification and validation (V&V), the V Model is the industrial standard. For component-based development, there is a well-understood standard process, but it does not specifically address V&V. In this paper, we propose such a model, that we call the W Model. We have implemented it using(More)
In some industrial domains, it is beneficial to model systems that are both data-driven and control-driven. The challenge to component-based development is to provide suitable component models for this purpose. In this paper we propose such a component model. We define the model, and present a model-driven implementation. We also illustrate its application(More)
Design patterns are typically defined informally, albeit in a standard format, and have to be programmed by the software designer into each new application. Thus although patterns support solution reuse, in practice this does not translate into code reuse. In this paper we argue that to achieve code reuse, patterns should be defined and used in the context(More)
Building large and complex systems in one step (the 'big bang' approach) is a very challenging task, given that humans can only deal with a limited measure of complexity at a time. A more practical approach would be to build such systems incrementally, i.e. iteratively increment an incomplete version of the system under construction until the system is(More)
Domain engineering is the first phase of product line engineering. The key artefact created by domain engineering for product engineering is a reference architecture for all possible systems or products in the domain. In existing domain engineering techniques, there are no well-defined methods for constructing reference architectures. Existing domain(More)