Kevin Lano

Kevin Lano
King's College London | KCL · Department of Informatics

About

321
Publications
50,159
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
3,374
Citations
Citations since 2016
53 Research Items
706 Citations
2016201720182019202020212022020406080100120
2016201720182019202020212022020406080100120
2016201720182019202020212022020406080100120
2016201720182019202020212022020406080100120
Additional affiliations
July 1999 - present
King's College London
Position
  • Professor (Full)

Publications

Publications (321)
Chapter
Artificial intelligence (AI) techniques such as machine learning (ML) have wide application in medical informatics systems. In this chapter, we employ AI techniques to assist in deriving software specifications of e-Health and m-Health systems from informal requirements statements. We use natural language processing (NLP), optical character recogni...
Article
Agile methods have become a widely used software development approach across many industry sectors [14], with established benefits in terms of increased responsiveness to change and decreased time to market. Agile practices emphasise lightweight and iterative development, designed to deliver value to customers quickly. The model-driven approach to...
Article
Full-text available
Background Although the past decade has witnessed the development of many self-management mobile health (mHealth) apps that enable users to monitor their health and activities independently, there is a general lack of empirical evidence on the functional and technical aspects of self-management mHealth apps from a software engineering perspective....
Conference Paper
The porting or translation of software applications from one programming language to another is a common requirement of organisations that utilise software, and the increasing number and diversity of programming languages makes this capability as relevant today as in previous decades. Several approaches have been used to address this challenge, in...
Article
In this article, we address how the production of model transformations (MT) can be accelerated by automation of transformation synthesis from requirements, examples, and metamodels. We introduce a synthesis process based on metamodel matching, correspondence patterns between metamodels, and completeness and consistency analysis of matches. We desc...
Article
Model transformation has become an established field, and it is important to improve the quality of specifications written in transformation languages. Different transformation patterns have been introduced in the model-driven engineering (MDE) community to improve the quality of transformation specifications. However, due to the different definiti...
Article
Full-text available
Mobile applications and game development are attractive fields in software engineering. Despite the advancement of programming languages and integrated development environments, there have always been many challenges for software and mobile game developers. Model-Driven Engineering (MDE) is a software engineering methodology that applies software m...
Chapter
Map and function types are of high utility in software specification and design, for example, maps can be used to represent configurations or caches, whilst function values can be used to enable genericity and reuse in a specification, and to support mechanisms such as callbacks or closures in an implementation. Map and function types have been inc...
Conference Paper
Full-text available
Model-driven engineering (MDE) of software systems from precise specifications has become established as an important approach for rigorous software development. However, the use of MDE requires specialised skills and tools, which has limited its adoption.In this paper we describe techniques for automating the derivation of software specifications...
Article
Full-text available
The QVT-Relations (QVT-R) model transformation language is an OMG standard notation for model transformation specification. It is highly declarative and supports (in principle) bidirectional (bx) transformation specification. However, there are many unclear or unsatisfactory aspects to its semantics, which is not precisely defined in the standard....
Article
In this paper we present an approach for the model-based testing (MBT) and runtime monitoring of applications using the UML-RSDS language and AgileUML toolset. This approach uses class invariants and operation pre/post specifications to guide the choice of test cases, and synthesises monitoring code from temporal logic specifications of application...
Preprint
BACKGROUND Although the past decade has witnessed the development of many self-management mobile health (mHealth) apps that enable users to monitor their health and activities independently, there is a general lack of empirical evidence on the functional and technical aspects of self-management mHealth apps from a software engineering perspective....
Conference Paper
Full-text available
Mobile applications are one of the main features of mobile devices that have increased the prevalence of mobile use. In turn, such prevalence has increased the demand for high quality, interactive, and intelligent mobile applications. Achieving these requirements on multiple platforms, in critical domains, and with short time-to-market causes high...
Article
Model transformations (MT) are a significant element of model-based and model-driven engineering approaches. Hence their quality is important for their effectiveness for use in such developments. The concept of technical debt (TD) estimates the impact of quality flaws on the maintenance costs of software artefacts. In this paper we define a quality...
Article
Full-text available
Model-Driven Development (MDD) aims at developing software more productively by using models as the main artifacts. Here, the models with high abstraction levels must be transformed into lower levels and finally executable models, i.e., source code. As a result, model transformation languages/tools play a main role on realizing the MDD goal. The Ob...
Article
Full-text available
The quality of model transformations (MT) has high impact on model-driven engineering (MDE) software development approaches, because of the central role played by transformations in MDE for refining, migrating, refactoring and other operations on models. For programming languages, a popular paradigm for code quality is the concept of technical debt...
Article
Full-text available
Model-based development (MBD) is the development of software systems using graphical and textual models such as UML class diagrams. MBD and related approaches such as Model-driven development (MDD) have had some success within specific application domains, such as the automotive industry. Agile software development approaches such as Scrum and eXtr...
Chapter
In this chapter we give an overview of finance concepts such as financial services, markets and the financial regulatory environment, and discuss the current state of software engineering in finance.
Chapter
In this chapter we will explain how UML models can be used to specify financial applications, using examples.
Chapter
In this chapter we give a detailed example of mathematical analysis of a particular financial product—collateralised debt obligations (CDOs)—and show how the theoretical results obtained can be expressed as software specifications.
Chapter
Matlab to C# migration case study
Chapter
Full-text available
Existing agile MBD approaches
Chapter
Full-text available
This chapter introduces the main concepts of the software development lifecycle, and describes software specification techniques and development approaches which can be used for financial applications.
Chapter
In this chapter we describe some of the main financial products in detail (bonds, shares, derivative securities) and explain some of the analyses which can be performed to value the products and to define strategies for trading in them.
Chapter
In this chapter we describe in detail how to use the UML-RSDS tools to specify and implement financial applications on a number of different platforms. We describe how the tools can be combined with the use of Excel, and how the tools can be extended to provide code-generation facilities for new target programming languages.
Chapter
In this chapter we describe technologies to support financial trading and data analysis.
Chapter
This chapter will describe the design of financial software using an agile MBD process. We will consider software design quality, design patterns and software reuse, and describe the QuantLib finance library.
Book
In this textbook the authors introduce the important concepts of the financial software domain, and motivate the use of an agile software engineering approach for the development of financial software. They describe the role of software in defining financial models and in computing results from these models. Practical examples from bond pricing, yi...
Article
Full-text available
Bidirectional transformations (bx) are a specific form of model transformation (MT) used in model-driven engineering (MDE) to maintain consistency between two models which may change independently. Currently bx are defined using a number of specialised transformation languages, which have had limited uptake due to complex semantics and poor efficie...
Article
Full-text available
Model transformation design patterns have been proposed by a number of researchers, but their usage appears to be sporadic and sometimes patterns are applied without recognition of the pattern. In this paper we provide a systematic literature review of transformation design pattern applications. We evaluate how widely patterns have been used, and h...
Chapter
Full-text available
Model transformations (MT), as with any other software artifact, may contain quality flaws. Even if a transformation is functionally correct, such flaws will impair maintenance activities such as enhancement and porting. The concept of technical debt (TD) models the impact of such flaws as a burden carried by the software which must either be settl...
Conference Paper
Full-text available
The aim of this paper is to investigate and gain insights into the state of practice of integrating Agile development and Model-Driven Development (MDD), understanding their impact and various problems of their applicability. To meet this aim, we conducted seven in-depth, one-to-one interviews with Agile and MDD practitioners to provide insights ab...
Conference Paper
Full-text available
In this paper we describe a solution to the TTC 2017 families to persons bx case using the UML-RSDS subset of UML and OCL.
Conference Paper
Full-text available
Model transformation design patterns have been proposed by a number of authors, but their usage appears to be sporadic and sometimes patterns are applied without recognition of the pattern. In this paper we provide a literature review of transformation design pattern applications, with regard to their effectiveness and range of use, and consider ho...
Book
This book describes the concepts and application of model-based development (MBD), model transformations, and Agile MBD to a wide range of software systems. It covers systems requirements engineering, system specification and design, verification, reuse, and system composition in the context of Agile MBD. Examples of applications in finance, system...
Poster
Full-text available
This course will cover UML, MDD and agile development.
Conference Paper
Full-text available
Model Transformations (MT) are central building blocks of Model Driven Engineering (MDE). The size and complexity of model transformations grows as they see more wide-spread use in industry. As a result, systematic approaches to the development of high-quality and highly reliable model transformations become increasingly important. However, because...
Article
Full-text available
The research is aimed at studying the feasibility of defining/ formalising model driven project management with base methodology of PMBOK. Our research focuses on PMBOK since more than 75% of the projects around the world use PMBOK for managing projects. Previous research works had considered one or two areas of Project Management but did not consi...
Article
Full-text available
Bidirectional transformations (bx) are of increasing significance in model-based engineering. Currently bx are defined using a number of specialised transformation languages. In this paper we show how standard UML elements such as use cases and OCL constraints can be used to define bx, thus taking advantage of the wide industrial and educational ad...
Conference Paper
Full-text available
Requirements Engineering (RE) is an essential process in the development of effective software systems, and it is the basis for subsequent development processes. At present, the focus of Model Transformation (MT) is mainly on the specification and implementation stages. Transformations are not using engineering principles, which may not be an issue...
Conference Paper
Agile model-based development has the potential to combine the benefits of both agile and model-based development (MBD) approaches: rapid automated software generation, lightweight development processes and direct customer involvement. In this paper, we analyse three application case studies of agile MBD, and we identify the factors which have cont...
Conference Paper
Full-text available
In this paper, we identify model transformation specification and design patterns, which support the property of transformation bidirectionality: the ability of a single specification to be applied either as a source-to-target transformation or as a target-to-source transformation. In contrast to previous work on bidirectional transformations (bx),...
Conference Paper
Since 2012 we have been teaching agile development and model-based development (MBD) in undergraduate courses at King’s College London. In this paper we analyse the results of practical courseworks in agile MBD, taken from 2013-14 and 2014-15. We identify the factors which have contributed to the success or failure of students to apply theoretical...
Conference Paper
Full-text available
Abstract. In this paper we show how translation from QVT-R to an intermediate semantic representation can be used to support analysis of QVT-R specifications. We use the UML to RDB case study to illustrate the approach.
Conference Paper
Full-text available
Abstract. In this paper we outline an approach for using temporal logic specifications and model-checking tools to express and verify model transformation properties. Linear Temporal Logic (LTL) is used to express transformation semantics, and the SMV formalism is used to encode this semantics and to perform model checking.
Conference Paper
Full-text available
There is increasing interest in the use of design patterns for model transformations, and a number of such patterns have been proposed. In this paper we survey previous work on transformation design patterns, and identify priorities for future research.
Conference Paper
Full-text available
This case study is a transformation from financial transaction data expressed in FIXML XML format, into class definitions in Java, C# and C++. It is based on an industrial application of MDD in finance, and aims to support rapid upgrading of user software when new or extended FIXML definitions become available. The transformation involves text-to-m...
Research
Full-text available
Describes the UML-RSDS tools for model-based development. Also available at www.dcs.kcl.ac.uk/staff/kcl/umlrsds.pdf
Conference Paper
Full-text available
The most widely-used model transformation languages, such as ATL and ETL, combine declarative and imperative aspects to define how one model is derived from another, or is updated in-place. General verification techniques for such languages must therefore be able to support reasoning about both declarative and imperative aspects. We define an analy...
Conference Paper
Full-text available
In this paper we identify model transformation specification and design patterns which support the property of transformation bidi-rectionality: the ability of a single specification to be applied either as a source-to-target transformation or as a target-to-source transformation.
Conference Paper
Full-text available
Modern business models and processes usually demand an integrated utilisation of business frameworks and methodologies, such as PRINCE2® and PMBOK®, to produce meaningful business documentation and solutions. Often, the use of such frameworks is a prerequisite to engage with public or private sector large-scale projects. However, models contained i...
Article
Elasticity refers to the auto-scaling ability of clouds towards optimally matching their resources to actual demand conditions. An important problem facing the infrastructure and service providers is how to optimise their resource configurations online, to elastically serve time-varying demands. Most scaling methodologies provide resource reconfigu...
Article
Full-text available
This paper defines a catalogue of patterns for the specification and design of model transformations, and provides a systematic scheme and classification of these patterns, together with pattern application examples in leading model transformation languages such as ATL, QVT, GrGen.NET, and others. We consider patterns for improving transformation m...
Article
Full-text available
The Unified Modelling Language is emerging as a de-facto standard for modelling object-oriented systems. However, the semantics document that a part of the standard definition primarily provides a description of the language's syntax and well-formedness rules. The meaning of the language, which is mainly described in English, is too informal and un...
Article
Full-text available
This paper provides a survey of the existing literature and research carried out in the area of project management using different models, methodologies, and frameworks. Project Management (PM) broadly means programme management, portfolio management, practice management, project management office, etc. A project management system has a set of proc...
Book
Full-text available
Link to download/ order a PDF/ print is: http://www.eurekaselect.com/122907/volume/1 Aim of MDBPE to become a business solutions development method based on the use of models for the specification, design, analysis, synthesis, deployment, testing and maintenance of complex project environments to produce quality solutions that can significantly co...
Conference Paper
Full-text available
The globalisation of the commercial world, and the use of distributed working practices (Offshore/ onshore/ near-shore) has increased dramatically with the improvement of information and communication technologies. Many organisations, especially those that operate within knowledge intensive industries, have turned to distributed work arrangements t...
Article
Full-text available
Model transformation is one of the key tasks in model-driven engineering and relies on the efficient matching and modification of graph-based data structures; its sibling graph rewriting has been used to successfully model problems in a variety of domains. Over the last years, a wide range of graph and model transformation tools have been developed...
Chapter
Full-text available
The field of software design patterns has grown extensively since the first work on patterns in the 1990s. Design patterns have proved useful as encodings of good design practice and expert knowledge in a wide variety of domains, from enterprise information systems to software security. We look at some recent developments in the application of patt...
Conference Paper
Full-text available
In this paper we define a framework for the specification and verification of transformations , based on the mathematical concept of institutions. We show how this framework can be used to specify transformations at a high level of abstraction, and can be used to characterise the correctness of transformations.
Article
Full-text available
A model transformation verification task may involve a number of different transformations, from one or more of a wide range of different model transformation languages, each transformation may have a particular transformation style, and there are a number of different verification properties which can be verified for each language and style of tra...