Ashley McNeile | Birkbeck College, University of London (original) (raw)
Papers by Ashley McNeile
Proceedings of the Second International Workshop on Behaviour Modelling Foundation and Applications - BM-FA '10, 2010
Dynamics of changes and trends of todays systems show the growing role of behaviour modelling in ... more Dynamics of changes and trends of todays systems show the growing role of behaviour modelling in system life cycle. Growing variety of E-businesses: Ecommerce, E-logistics, E-procurement, E-government and collaborative services result in the consequent emphasis on well defined interaction between software components, importance of interfaces, contracts and service level agreements in defining and managing behavioural system integration both within and across organizational boundaries. New and new processes are covered with services accumulating business intelligence to work with the Cloud. Do the changes in software system size and architecture influence the requirements for the behaviour modelling paradigms? Are there elements of system behaviour that we need to model but cannot model easily? What kind of analysis has to be fulfilled on models? These and other related questions are discussed at the Fourth International Workshop on Behaviour Modelling - Foundations and Applications. After the evaluation of existing modelling paradigms during the three previous workshops the FourthWorkshop is aimed to analyse the requirements for the behaviour modelling paradigms formulated by the new trends in system design and organization. The workshop will focus its discussion on the need of design of interactive systems of independently maintained services and has an aim to formulate requirement patterns for the behaviour modelling techniques used in different domains of behaviour modelling.
The authors describe a tool for verifying the functional behaviour of specifications, built using... more The authors describe a tool for verifying the functional behaviour of specifications, built using the Jackson System Development (JSD) method, by executing them and displaying the execution as animated graphics. Using such a tool it is possible to build a specification incrementally, verifying it after each increment. It is believed that the tool has potential for facilitating communicating of a specification between analysts and as a vehicle for enhancing analysts' understanding of the method. The work reported is being carried out as part of an Alvey software engineering project called Analyst Assist. The aim is to develop a knowledge-based environment for supporting analysts in the elicitation, specification and validation of requirements.
Dynamics of changes and trends of todays systems show the growing role of behaviour modelling in ... more Dynamics of changes and trends of todays systems show the growing role of behaviour modelling in system life cycle. Growing variety of E-businesses: Ecommerce, E-logistics, E-procurement, E-government and collaborative services result in the consequent emphasis on well defined interaction between software components, importance of interfaces, contracts and service level agreements in defining and managing behavioural system integration both within and across organizational boundaries. New and new processes are covered with services accumulating business intelligence to work with the Cloud. Do the changes in software system size and architecture influence the requirements for the behaviour modelling paradigms? Are there elements of system behaviour that we need to model but cannot model easily? What kind of analysis has to be fulfilled on models? These and other related questions are discussed at the Fourth International Workshop on Behaviour Modelling - Foundations and Applications. After the evaluation of existing modelling paradigms during the three previous workshops the FourthWorkshop is aimed to analyse the requirements for the behaviour modelling paradigms formulated by the new trends in system design and organization. The workshop will focus its discussion on the need of design of interactive systems of independently maintained services and has an aim to formulate requirement patterns for the behaviour modelling techniques used in different domains of behaviour modelling.
BM-MDA is the first International Workshop on Behaviour Modelling in Model Driven Architecture or... more BM-MDA is the first International Workshop on Behaviour Modelling in Model Driven Architecture organized in Enschede (the Netherlands) on the 23d of June 2009 in conjunction with the European Conference on Model Driven Architecture. The Model-driven Architecture (MDA) features the use of different kinds of models during the software development process and automatic transformations between them. One of the main ideas is the separation between models that are platform independent (PIMs) and models that are platform specific (PSM). From these models, some parts of the final code can be automatically generated. Ultimately, the goal is to generate the complete software fully automatically from these models. The purpose of the BM MDA workshop is to better understand what is needed to adequately model behaviour in MDA, and what is still lacking for universally modelling the behaviour of software in such a way that the code can automatically be generated from them.
Proceedings of the 1st Workshop on Behaviour Modelling in Model-Driven Architecture - BM-MDA '09, 2009
ABSTRACT The vision of MDA is to decouple the way that application systems are defined from the s... more ABSTRACT The vision of MDA is to decouple the way that application systems are defined from the specification of their deploy-ment platform. Achieving this vision requires that Platform Independent models are rich enough to capture the behavior of the application, and to support ...
Proceedings of the 2008 AOSD workshop on Aspect-oriented modeling - AOM '08, 2008
Proceedings of the 13th workshop on Aspect-oriented modeling - AOM '09, 2009
… Proceedings Series WP09- …, 2009
... of Denmark Ashley McNeile Metamaxim Ltd, UK Ella Roubtsova Open University of the Netherlands... more ... of Denmark Ashley McNeile Metamaxim Ltd, UK Ella Roubtsova Open University of the Netherlands Programme Committee Mehmet Aksit. ... Duisburg-Essen, Germany Luis Gomes Universidade Nova de Lisboa, Portugal Ashley McNeile Metamaxim Ltd, UK Louis Birta University ...
Proceedings of the Third International Conference on Evaluation of Novel Approaches to Software Engineering, 2008
Abstract. We define a modeling language based on combining Coloured Petri Nets with Protocol Mode... more Abstract. We define a modeling language based on combining Coloured Petri Nets with Protocol Modeling semantics. This language combines the expressive power of Coloured Petri Nets in describing behavior with the ability provided by Protocol Modeling to compose partial behavioral descriptions. The resultant language can be considered as a domain spe-cific Coloured Petri Net based language for deterministic and constantly evolving systems. We show that the composition used in Protocol Modeling guarantees preservation of the behavior of composed parts, and hence supports local reasoning about the behavior of the whole based on examination of the composed parts. We present the proof of this key property in this paper. We describe the modifications required to conventional Coloured Petri Net semantics to incorporate Protocol Modeling ideas, and show that they are minimal. The advantages of incorporating Protocol Modeling semantics are significant and promise to improve the usability and ...
The vision of MDA is to decouple the way that application systems are defined from their deployme... more The vision of MDA is to decouple the way that application systems are defined from their deployment platform, thereby ensuring that the investments made in building systems can be preserved even when the underlying technology platforms change. Achieving this vision requires that models are rich enough to capture and represent the behaviour of the application. However, the UML has many ways of representing behaviour, and there is little consensus on how techniques should be chosen and/or used in combination to solve a problem. To start to address this, we present a classification of techniques and a commentary on the strengths and weaknesses of each in the context of MDA.
Mainstream object modelling techniques use Statechart Diagrams as a means of modelling object beh... more Mainstream object modelling techniques use Statechart Diagrams as a means of modelling object behaviour. Research into how statecharts can be used in the context of class generalization hierarchies has focused on applying the Liskov Substitution Principle (LSP) to statecharts. This approach is problematic, and we describe three reservations. We propose an alternative approach based on mixin-style composition of state transition diagrams. This avoids the problems we note in the LSP based approach; and is also a basis for separating descriptions of behaviour inherent to the modelled domain from behaviour that is not inherent, but a requirement of the system. 1
In their paper “Trace Semantics are Fully Abstract ” Nain and Vardi propose that denotational sem... more In their paper “Trace Semantics are Fully Abstract ” Nain and Vardi propose that denotational semantics of behavioural modelling formalisms should adhere to the“Principle of Com-prehensive Modelling”which requires models are exhaustive of all possible circumstances. However their exploration of this principle is made only in the context of machines that use sets of single symbols to define their state and alpha-bet. We extend the application of the principle to the de-notational semantics of machines that use data structures, rather than single symbols, for the definition of state and alphabet. We show that, in the context of modelling the interaction between data and behaviour, this extension en-ables a unification of what are normally considered distinct styles of behavioural composition.
Abstract: State Machines are the basic mechanism used to specify the behaviour of objects in UML ... more Abstract: State Machines are the basic mechanism used to specify the behaviour of objects in UML based object models and admit the possibility of direct animation or execution of a model. Tools that exploit this potential offer the promise of both supporting early validation of a model under development and allowing generation of final code directly from the model. Recently, we have made some new proposals on how state machines are used to model behaviour: firstly, that complex object behaviour can be best modelled by the parallel composition of multiple state machines; and secondly, that a formal distinction can be made between purely event driven machines and those whose states are derived from other information in the model. We illustrate the advantages of this approach with a small example that shows how it can help reduce redundancy and promote simplicity. 1
Abstract. The aim of this paper is to explore the modeling of crosscut-ting behavioral abstractio... more Abstract. The aim of this paper is to explore the modeling of crosscut-ting behavioral abstractions. We argue that behavioral aspects can be seen as a particular kind of more general behavioral abstraction called a “mixin”. Mixins support a compositional style of modeling, whereby a complete class definition is constructed by composing one or more mix-ins each of which represents a partial definition of the class. If used as the replacement for inheritance, mixins can provide an expressive power equivalent to multiple inheritance. In this paper we use a modeling semantics called Protocol Modeling to illustrate how mixins can be used to represent behavioral aspects. We use the Crisis Management System case to illustrate the Protocol Modeling approach, and describe how the model can be executed to give early validation of its behavior. We discuss the extent to which the Protocol Modeling approach is scal-able to large problems, is suitable for evolutionary development and sup-ports co...
Abstract. Contracts have proved a powerful concept in software engi-neering, to the point where w... more Abstract. Contracts have proved a powerful concept in software engi-neering, to the point where we have a well regarded software development approach centered on their use, and native support in programming lan-guages. However, it is not clear that there is a uniform concept of con-tract that can be applied to both algorithmic and interactive software. We propose a framework for thinking about software contracts based on the idea that a contract aims to preserve a formal proposition about the software system being built, and the form of the contract must reflect both the proposition whose truth is to be preserved and the formal rea-soning system used for verification. In particular, we believe that very different forms of contract are needed for algorithmic and interactive software and illustrate this with examples. 1
Abstract: Current approaches to modeling human-computer interaction do not always succeed in prod... more Abstract: Current approaches to modeling human-computer interaction do not always succeed in producing behaviorally complete models of manageable size and complexity. We argue that the reason for this lies in lack of sup-port for parallel composition of partial behavioral descriptions, and propose the recently developed Protocol Modeling approach as a superior alternative. The semantics of Protocol Modeling support separation and composition of concerns in models of human-computer interaction, and the production of executable models to explore and refine the desired behavior. Protocol Modeling supports a crucial property sought in modeling methods if it is to scale to complex problems, namely the ability to reason about the modeled behavior of the whole based on examination only of a part (sometimes called ”modular ” or ”local ” reasoning). 1
Proceedings of the Second International Workshop on Behaviour Modelling Foundation and Applications - BM-FA '10, 2010
Dynamics of changes and trends of todays systems show the growing role of behaviour modelling in ... more Dynamics of changes and trends of todays systems show the growing role of behaviour modelling in system life cycle. Growing variety of E-businesses: Ecommerce, E-logistics, E-procurement, E-government and collaborative services result in the consequent emphasis on well defined interaction between software components, importance of interfaces, contracts and service level agreements in defining and managing behavioural system integration both within and across organizational boundaries. New and new processes are covered with services accumulating business intelligence to work with the Cloud. Do the changes in software system size and architecture influence the requirements for the behaviour modelling paradigms? Are there elements of system behaviour that we need to model but cannot model easily? What kind of analysis has to be fulfilled on models? These and other related questions are discussed at the Fourth International Workshop on Behaviour Modelling - Foundations and Applications. After the evaluation of existing modelling paradigms during the three previous workshops the FourthWorkshop is aimed to analyse the requirements for the behaviour modelling paradigms formulated by the new trends in system design and organization. The workshop will focus its discussion on the need of design of interactive systems of independently maintained services and has an aim to formulate requirement patterns for the behaviour modelling techniques used in different domains of behaviour modelling.
The authors describe a tool for verifying the functional behaviour of specifications, built using... more The authors describe a tool for verifying the functional behaviour of specifications, built using the Jackson System Development (JSD) method, by executing them and displaying the execution as animated graphics. Using such a tool it is possible to build a specification incrementally, verifying it after each increment. It is believed that the tool has potential for facilitating communicating of a specification between analysts and as a vehicle for enhancing analysts' understanding of the method. The work reported is being carried out as part of an Alvey software engineering project called Analyst Assist. The aim is to develop a knowledge-based environment for supporting analysts in the elicitation, specification and validation of requirements.
Dynamics of changes and trends of todays systems show the growing role of behaviour modelling in ... more Dynamics of changes and trends of todays systems show the growing role of behaviour modelling in system life cycle. Growing variety of E-businesses: Ecommerce, E-logistics, E-procurement, E-government and collaborative services result in the consequent emphasis on well defined interaction between software components, importance of interfaces, contracts and service level agreements in defining and managing behavioural system integration both within and across organizational boundaries. New and new processes are covered with services accumulating business intelligence to work with the Cloud. Do the changes in software system size and architecture influence the requirements for the behaviour modelling paradigms? Are there elements of system behaviour that we need to model but cannot model easily? What kind of analysis has to be fulfilled on models? These and other related questions are discussed at the Fourth International Workshop on Behaviour Modelling - Foundations and Applications. After the evaluation of existing modelling paradigms during the three previous workshops the FourthWorkshop is aimed to analyse the requirements for the behaviour modelling paradigms formulated by the new trends in system design and organization. The workshop will focus its discussion on the need of design of interactive systems of independently maintained services and has an aim to formulate requirement patterns for the behaviour modelling techniques used in different domains of behaviour modelling.
BM-MDA is the first International Workshop on Behaviour Modelling in Model Driven Architecture or... more BM-MDA is the first International Workshop on Behaviour Modelling in Model Driven Architecture organized in Enschede (the Netherlands) on the 23d of June 2009 in conjunction with the European Conference on Model Driven Architecture. The Model-driven Architecture (MDA) features the use of different kinds of models during the software development process and automatic transformations between them. One of the main ideas is the separation between models that are platform independent (PIMs) and models that are platform specific (PSM). From these models, some parts of the final code can be automatically generated. Ultimately, the goal is to generate the complete software fully automatically from these models. The purpose of the BM MDA workshop is to better understand what is needed to adequately model behaviour in MDA, and what is still lacking for universally modelling the behaviour of software in such a way that the code can automatically be generated from them.
Proceedings of the 1st Workshop on Behaviour Modelling in Model-Driven Architecture - BM-MDA '09, 2009
ABSTRACT The vision of MDA is to decouple the way that application systems are defined from the s... more ABSTRACT The vision of MDA is to decouple the way that application systems are defined from the specification of their deploy-ment platform. Achieving this vision requires that Platform Independent models are rich enough to capture the behavior of the application, and to support ...
Proceedings of the 2008 AOSD workshop on Aspect-oriented modeling - AOM '08, 2008
Proceedings of the 13th workshop on Aspect-oriented modeling - AOM '09, 2009
… Proceedings Series WP09- …, 2009
... of Denmark Ashley McNeile Metamaxim Ltd, UK Ella Roubtsova Open University of the Netherlands... more ... of Denmark Ashley McNeile Metamaxim Ltd, UK Ella Roubtsova Open University of the Netherlands Programme Committee Mehmet Aksit. ... Duisburg-Essen, Germany Luis Gomes Universidade Nova de Lisboa, Portugal Ashley McNeile Metamaxim Ltd, UK Louis Birta University ...
Proceedings of the Third International Conference on Evaluation of Novel Approaches to Software Engineering, 2008
Abstract. We define a modeling language based on combining Coloured Petri Nets with Protocol Mode... more Abstract. We define a modeling language based on combining Coloured Petri Nets with Protocol Modeling semantics. This language combines the expressive power of Coloured Petri Nets in describing behavior with the ability provided by Protocol Modeling to compose partial behavioral descriptions. The resultant language can be considered as a domain spe-cific Coloured Petri Net based language for deterministic and constantly evolving systems. We show that the composition used in Protocol Modeling guarantees preservation of the behavior of composed parts, and hence supports local reasoning about the behavior of the whole based on examination of the composed parts. We present the proof of this key property in this paper. We describe the modifications required to conventional Coloured Petri Net semantics to incorporate Protocol Modeling ideas, and show that they are minimal. The advantages of incorporating Protocol Modeling semantics are significant and promise to improve the usability and ...
The vision of MDA is to decouple the way that application systems are defined from their deployme... more The vision of MDA is to decouple the way that application systems are defined from their deployment platform, thereby ensuring that the investments made in building systems can be preserved even when the underlying technology platforms change. Achieving this vision requires that models are rich enough to capture and represent the behaviour of the application. However, the UML has many ways of representing behaviour, and there is little consensus on how techniques should be chosen and/or used in combination to solve a problem. To start to address this, we present a classification of techniques and a commentary on the strengths and weaknesses of each in the context of MDA.
Mainstream object modelling techniques use Statechart Diagrams as a means of modelling object beh... more Mainstream object modelling techniques use Statechart Diagrams as a means of modelling object behaviour. Research into how statecharts can be used in the context of class generalization hierarchies has focused on applying the Liskov Substitution Principle (LSP) to statecharts. This approach is problematic, and we describe three reservations. We propose an alternative approach based on mixin-style composition of state transition diagrams. This avoids the problems we note in the LSP based approach; and is also a basis for separating descriptions of behaviour inherent to the modelled domain from behaviour that is not inherent, but a requirement of the system. 1
In their paper “Trace Semantics are Fully Abstract ” Nain and Vardi propose that denotational sem... more In their paper “Trace Semantics are Fully Abstract ” Nain and Vardi propose that denotational semantics of behavioural modelling formalisms should adhere to the“Principle of Com-prehensive Modelling”which requires models are exhaustive of all possible circumstances. However their exploration of this principle is made only in the context of machines that use sets of single symbols to define their state and alpha-bet. We extend the application of the principle to the de-notational semantics of machines that use data structures, rather than single symbols, for the definition of state and alphabet. We show that, in the context of modelling the interaction between data and behaviour, this extension en-ables a unification of what are normally considered distinct styles of behavioural composition.
Abstract: State Machines are the basic mechanism used to specify the behaviour of objects in UML ... more Abstract: State Machines are the basic mechanism used to specify the behaviour of objects in UML based object models and admit the possibility of direct animation or execution of a model. Tools that exploit this potential offer the promise of both supporting early validation of a model under development and allowing generation of final code directly from the model. Recently, we have made some new proposals on how state machines are used to model behaviour: firstly, that complex object behaviour can be best modelled by the parallel composition of multiple state machines; and secondly, that a formal distinction can be made between purely event driven machines and those whose states are derived from other information in the model. We illustrate the advantages of this approach with a small example that shows how it can help reduce redundancy and promote simplicity. 1
Abstract. The aim of this paper is to explore the modeling of crosscut-ting behavioral abstractio... more Abstract. The aim of this paper is to explore the modeling of crosscut-ting behavioral abstractions. We argue that behavioral aspects can be seen as a particular kind of more general behavioral abstraction called a “mixin”. Mixins support a compositional style of modeling, whereby a complete class definition is constructed by composing one or more mix-ins each of which represents a partial definition of the class. If used as the replacement for inheritance, mixins can provide an expressive power equivalent to multiple inheritance. In this paper we use a modeling semantics called Protocol Modeling to illustrate how mixins can be used to represent behavioral aspects. We use the Crisis Management System case to illustrate the Protocol Modeling approach, and describe how the model can be executed to give early validation of its behavior. We discuss the extent to which the Protocol Modeling approach is scal-able to large problems, is suitable for evolutionary development and sup-ports co...
Abstract. Contracts have proved a powerful concept in software engi-neering, to the point where w... more Abstract. Contracts have proved a powerful concept in software engi-neering, to the point where we have a well regarded software development approach centered on their use, and native support in programming lan-guages. However, it is not clear that there is a uniform concept of con-tract that can be applied to both algorithmic and interactive software. We propose a framework for thinking about software contracts based on the idea that a contract aims to preserve a formal proposition about the software system being built, and the form of the contract must reflect both the proposition whose truth is to be preserved and the formal rea-soning system used for verification. In particular, we believe that very different forms of contract are needed for algorithmic and interactive software and illustrate this with examples. 1
Abstract: Current approaches to modeling human-computer interaction do not always succeed in prod... more Abstract: Current approaches to modeling human-computer interaction do not always succeed in producing behaviorally complete models of manageable size and complexity. We argue that the reason for this lies in lack of sup-port for parallel composition of partial behavioral descriptions, and propose the recently developed Protocol Modeling approach as a superior alternative. The semantics of Protocol Modeling support separation and composition of concerns in models of human-computer interaction, and the production of executable models to explore and refine the desired behavior. Protocol Modeling supports a crucial property sought in modeling methods if it is to scale to complex problems, namely the ability to reason about the modeled behavior of the whole based on examination only of a part (sometimes called ”modular ” or ”local ” reasoning). 1