From Interface Mockups to Web Application Models

Size: px
Start display at page:

Download "From Interface Mockups to Web Application Models"

Transcription

1 From Interface Mockups to Web Application Models José Matías Rivero 1,2, Gustavo Rossi 1,2, Julián Grigera 1, Esteban Robles Luna 1,3, Antonio Navarro 4 1 LIFIA, Facultad de Informática, UNLP, La Plata, Argentina {mrivero, gustavo, julian.grigera, esteban.robles}@lifia.info.unlp.edu.ar 2 Also at Conicet 3 Also at CICPBA 4 Dpto. de Ingeniería del Software e Inteligencia Artificial, Universidad Complutense de Madrid, anavarro@fdi.ucm.es Abstract. The process of modeling and implementing Web applications has been successfully improved by the use of Model-Driven Web Engineering (MDWE) methodologies. However, because of their traditional process models, these methodologies delay the generation of application prototypes until all design aspects (e.g. domain and navigation) are completed. These aspects are crucial for developers but not for customers, who are interested in viewing parts of the application running as early as possible. In this paper we introduce a novel model driven approach that starts from user interface specifications, using mockups to derive concrete presentation implementations we call it Mockup- Driven Development or just MockupDD. Then, by using lightweight enrichments and applying heuristics over these models, we show how we obtain navigation and content specifications in the context of different MDWE methods. Keywords: Mockups, User-Interface, Agile, Web Engineering, MDD 1 Introduction The development of web applications is a challenging activity involving complex aspects. Many methodologies [1, 2] use models to specify these aspects at a high level of abstraction, and then derive running implementations from such models. These Model-Driven Web Engineering (MDWE) methodologies tend to be designercentric, as they start the web application specification around design concepts like classes, associations, etc. As a consequence, customers and final users cannot really get involved in the development process. In order to encourage this collaboration, agile methodologies 1 propose to integrate customers in the day-to-day work, letting the processes emerge naturally from daily practice. In this context, the agile modeling approach [3] pursues a fast construction of models by following a just barely good enough strategy, i.e. models should be as simple as possible and must be constructed in small increments, using the simplest tools. User Interface (UI) mockups are one of this kind of agile models that can be used to represent requirements in a language that is understandable by both customers and developers. Also, the recent appearances of 1 Principles behind the Agile Manifesto -

2 mockup tools like Balsamiq 2 or Axure 3 suggest that UI prototypes are becoming a popular way to represent, communicate and specify requirements. In this work we propose a model-driven development approach that follows the agile modeling principles. It starts by creating UI mockups with direct participation of customers through digital mockup tools. Mockups are then processed to obtain technology independent UI models (called Structural UI models or just SUI) that can be easily mapped to concrete web implementations. Then, these models are enriched to specify navigation, content, content management and data flow. According to our experience this approach: (i) supports customers integration in the development process from the first stages; (ii) supports continuous derivation of application prototypes; (iii) encourages an iterative and lightweight modeling strategy that eases the introduction of new features in short releases; and (iv) it can be also integrated with different MDWE approaches just by adjusting the model transformation process. Since it strongly relies in UI mockups, we call it Mockup-Driven Development (MockupDD). The paper is structured as follows: in Section 2 we discuss some related work. Section 3 introduces how our process is structured in detail, including some examples to show how it works. Section 4 briefly comments our tool support for the approach and some initial feedback that we obtained when applying and evaluating it. Finally, in Section 5 we will conclude summarizing our approach and commenting some further work we are pursuing. 2 Related Work Many mockup tools have appeared in the last years, showing an increasing interest for UI mockups as requirements artifacts; many cases of successful use of mockups in agile development approaches in industry have been observed as well [4, 5]. In addition, statistical studies have been conducted showing that the use of user interface mockups effectively increases and eases software comprehension with a reduced cost in the development process [6]. Mockup tools have been also successfully integrated to bug tracking, project management and wiki environments. User interface mockups are usually linked to other requirements specifications artifacts like User Stories [7]. Also, a common practice with mockups is to informally annotate them in order to specify requirements that cannot be expressed directly through user interface in plain text [8]. In [9], enriched mockups have been used in the context of the OO-Method model-driven approach to derive structural task models. The idea of combining abstract UI prototypes with a requirement specification language to specify human-computer interaction in the form of storyboards is shown in [10]. Additionally, the use of structured UI prototypes to define detailed content specifications in the form of Entity-Relationship models has been observed elsewhere [11]. In our previous work [12] we defined how mockups constructed with different mockup tools can be translated to a common technology independent UI metamodel 2 Balsamiq Mockups 3 Axure

3 and then derived to different concrete web technologies. We also introduced the idea of applying enrichments to this model to derive navigation models for a concrete MDWE methodology and then inferring content models through a set of heuristics [13]. This paper focuses on SUI model level, using a refined version of these enrichments to define basic navigation and content specification and then inferring advanced features like content management and data workflow through heuristics. The resulting approach represents an agile model-driven methodology to specify heterogeneous features of web applications that can be translated into code or MDWE models. 3 The Overall Approach in a Nutshell Mockups allow specifying user interface features in a simple way, facilitating the fast and just barely good enough modeling approach. They eliminate the burden that development environments usually entail for specifying user interfaces, like detailing containment structure, layout, data sources, etc. We propose to reuse mockups by translating them into our technology-independent SUI models, which can be enriched with navigation and content specifications and, using a set of heuristics, derive almost complete web models and functional code. Though in our previous work [13] we comment how heuristics can be applied over MDWE models generated from enriched UI specifications to obtain different features, here we introduce heuristics directly over enriched SUI models to generate them, making it more suitable in the context of non model-driven environments. Figure 1. Workflow of our approach. While most MDWE methodologies do not allow generating code directly from presentation models, we provide a code generation tool that facilitates the generation of running prototypes used to validate requirements with customers. Consequently, as we outline in Figure 1, our approach allows using SUI models enriched with navigation and content specs, generating different kinds of models or following a code-based methodology, in which running prototypes of the application are incrementally generated and enriched.

4 3.1 From Mockups to Structural UI Models The first step of our process is to transform mockups into a technology independent UI model, formed out of instances of the meta-model classes described in Figure 1. The key component of this transformation process is the Mockup Processing Engine (MPE) that uses tool-dependent parsers to process mockup files and obtain final SUI models through a series of internal processors. Developers can parameterize algorithms and heuristics applied by the MPE to assure the consistency and adequacy of the obtained SUI model. For the sake of conciseness we do not include a complete description of this step, which can be read in a previous work [12]. 3.2 The Tagging Approach Whereas SUI models represent a structural view of the application (just like any other UI model), no behavior or data can be obtained directly from them, so we define a set of tags that can be applied iteratively over the SUI models providing hints to derive several aspects of web application. A tag is a lightweight specification formed by a name and zero or more textual parameters that can be applied only over a particular widget type (and its subtypes). In the rest of this section we introduce how we can enrich SUI models with navigation and content aspects using tags. We will start showing our approach with the specification of navigation, a fundamental concern in web applications. Navigation is mainly described by two elements: navigational nodes (pages) and links between those nodes. We define two tags to represent these concepts: Node(<nodeId>) is applicable over Pages and assigns an unique id to the Page in order to be referenced by Links (and also for other purposes like naming during code generation). Link(<nodeId>) is applicable over SUI Links and Buttons, and defines a navigation to the Page tagged as Node(<nodeId>)as the default action for the widget to which it is applied. Using the information provided by navigation tags, we can derive simple and generic navigation models for common MDWE methodologies. In order to add content specifications, we introduce a tag named Data(<elementType>) that specifies an association between the underlying Widget and the <elementtype> class, i.e. it shows and/or allows creating or updating instances of that class. An example of the use of the introduced tags can be observed in Figure 2.

5 Figure 2. Two mockups enriched with Node, Link and Data tags. 3.3 Inferring Features through Heuristics At this point, navigation and content tags allow inferring pages, links and classes respectively, but through the combination of both tag sets semantics and the application of heuristics, we can infer content flow, content management and associations between classes in the content model. Though our approach can be used in the context of any code-based or MDWE methodology, we have chosen WebML [1] to show the semantics of the inferred features because its navigation metamodel is rich, concise and expresses data flow and content management in a compact and natural way. Basically, WebML allows describing hypertext structures through basic elements called units. The language defines several types of units; the main unit types are content and operation units that allow displaying content and specifying operations like object creation or deletion respectively. Units are connected by links that may represent both navigation and data flow, and can be grouped together into pages and modules. The language also allows defining content models through a metamodel containing classic content specifications like classes/entities, relationships, attributes, etc. Hypertext structures rely on these models to correctly specify and further derive the whole web application. The aforementioned inferred features from the tagged mockup of Figure 2 can be depicted in the WebML model diagram of Figure 3.a. Web models are obtained through a transformation process in which SUI models enriched with tags are analyzed and further WebML model elements are generated.

6 Figure 3. Inferred WebML models from tagged mockup of Figure 2 and Containment to Association heuristic structure. As we can notice in the figure, some heuristics have been implicitly used to infer extra features (e.g., links between units) in WebML models. One of this heuristics is called Containment to Association (depicted in Figure 3.b), that infers an association between classes/entities when both a Widget and its parent are tagged with Data tags. This heuristic is used to infer the association between Album and Comment classes among others in the model present in Figure 3.a. While heuristics help to derive approximate models that are effective in the most cases, in less common contexts they can infer imprecise or wrong features. Because of this, a final slight refactoring phase (as common in agile methodologies) must be carried out to obtain the final models. 4 Tool Support and Experience Our approach uses interface mockups as key artifacts in the development process. Since building mockups is usually simple, it can be done together with customers. To effectively add agility to our modeling process, tool support is fundamental. We have developed a tool (see Figure 4) that has been easily integrated into environments like Eclipse or Visual Studio allowing processing mockups files, drawing the obtained SUI models, tagging them and then watching the generated prototype in action. We have used MockupDD to assist the development of several applications. We appreciated more customer enthusiasm and integration to the development endeavour using mockups and tags in comparison with projects in which we used common textual requirements. We are currently conducting detailed quantitative and qualitative studies to measure the real impact of our approach in the development process.

7 Figure 4. Screenshot of our tagging tool running on Eclipse IDE. A SUI is being tagged, and the original Balsamiq mockup is shown on the right. 5 Concluding Remarks and Further Work In this paper we have presented an agile model-driven development approach that aims to enhance customer integration in the development process and, at the same time, allow modeling in small increments, using UI concepts as a common language between developers and customers. This approach presents a disruption from traditional agile ones since it incorporates mockups to the process, and uses them to create informal models that grow into accurate specifications, combining advantages of both agile and model-driven methodologies. Considering that we start the development from presentation specifications, we can constantly make use of code and model generation to rapidly obtain application prototypes at all stages of the development process. This particular feature of our approach facilitates constant interaction with customers by discussing on the generated prototypes. We showed how SUI models could be easily enriched with tags, lightweight specifications that provide useful hints to code and/or model generators. We have also shown the semantic power of such simple resource. Regarding future work, the definition of a pattern and heuristics catalogue represents a very important issue. In our opinion, with a complete list of patterns and inference rules, the most of common content management and data flow cases can be tackled and derived to models or code. Though we have used WebML as the target MDWE methodology along this paper, we are working on generating presentation, navigation, content and behavior models for other MDWE approaches like UWE [2]. Direct code generation to other modern web technologies like GWT and ASP.NET is another interesting field in the context of our approach. We are also interested in refining general tags, or adding methodology/platform-dependent tags to improve code generation.

8 Acknowledgments. Work partially supported by MICINN (TIN C03-01) and ANPCYT Project PICT References 1. Ceri, S., Fraternali, P., Bongio, A.: Web Modeling Language (WebML): A Modeling Language for Designing Web Sites. Computer Networks and ISDN Systems, 33(1-6), (2000) 2. Koch, N., Knapp, A., Zhang G., Baumeister, H.: UML-Based Web Engineering, an Approach Based on Standards. In: Web Engineering, Modelling and Implementing Web Applications, Springer (2008) 3. Ambler, S.: Agile Modeling: Effective Practices for Extreme Programming and the Unified Process. J. Wiley (2002) 4. Ferreira J., Noble J., & Biddle R.: Agile Development Iterations and UI Design. In: AGILE 2007 Conference, Washington, DC: IEEE Computer Society, (2007) 5. Ton, H.: A Strategy for Balancing Business Value and Story Size. In: Agile 2007 Conference. Washington, DC: IEEE Computer Society, (2007) 6. Ricca, F., Scanniello, G., Torchiano, M., Reggio, G., Astesiano, E.: On the Effectiveness of Screen Mockups in Requirements Engineering. ACM Press, New York, USA (2010) 7. Cohn, M.: User Stories Applied: for Agile Software Development. Addison- Wesley (2004) 8. Moore, J. M.: Communicating Requirements Using End-User GUI Constructions with Argumentation. In: 18th IEEE International Conference on Automated Software Engineering, , IEEE Computer Society (2003) 9. Panach, J.I., España, S., Pederiva, I., Pastor, O.: Capturing Interaction Requirements in a Model Transformation Technology Based on MDA. J. UCS 14, (2008) 10. Mukasa, K.S., Kaindl, H.: An Integration of Requirements and User Interface Specifications. In: 6th IEEE International Requirements Engineering Conference, pp IEEE Computer Society (2008) 11. Ramdoyal, R., Cleve, A., Hainaut, J.-L.: Reverse Engineering User Interfaces for Interactive Database Conceptual Analysis. In: 22th International Conference in Advanced Information Systems Engineering (CAiSE), pp Springer Berlin Heidelberg (2010) 12. Rivero, J. M., Rossi, G., Grigera, J., Burella, J., Robles Luna, E., Gordillo, S. E.: From Mockups to User Interface Models: An Extensible Model Driven Approach. In: 10th International Conference on Web Engineering (ICWE), pp Springer (2010) 13. Rivero, J.M., Grigera, J., Rossi, G., Luna, E.R., Koch, N.: Improving Agility in Model-Driven Web Engineering. In: CAiSEʼ11 Forum Proceedings, pp CEUR, London, England (2011)

Towards Agile Model-Driven Web Engineering * 1

Towards Agile Model-Driven Web Engineering * 1 Towards Agile Model-Driven Web Engineering * 1 José Matías Rivero 1,2, Julián Grigera 1, Gustavo Rossi 1,2, Esteban Robles Luna 1,3, Nora Koch 4,5 1 LIFIA, Facultad de Informática, UNLP, La Plata, Argentina

More information

MockupDD: Facilitating Agile Support for Model-Driven Web Engineering

MockupDD: Facilitating Agile Support for Model-Driven Web Engineering MockupDD: Facilitating Agile Support for Model-Driven Web Engineering José Matías Rivero 1,2 and Gustavo Rossi 1,2 1 LIFIA, Facultad de Informática, UNLP, La Plata, Argentina {mrivero,gustavo}@lifia.info.unlp.edu.ar

More information

From Requirements to Web Applications in an Agile Model-Driven Approach

From Requirements to Web Applications in an Agile Model-Driven Approach From Requirements to Web Applications in an Agile Model-Driven Approach Julián Grigera 1, José Matías Rivero 1,2, Esteban Robles Luna 1, Franco Giacosa 1, and Gustavo Rossi 1,2 1 LIFIA, Facultad de Informática,

More information

Introducing Usability Requirements in a Test/Model- Driven Web Engineering Method 1

Introducing Usability Requirements in a Test/Model- Driven Web Engineering Method 1 Introducing Usability Requirements in a Test/Model- Driven Web Engineering Method 1 Esteban Robles Luna 1,2, Julián Grigera 1, Gustavo Rossi 1,2, José Ignacio Panach 3, Oscar Pastor 3 1 LIFIA, Facultad

More information

Requirements Models as First Class Entities in Model-Driven Web Engineering

Requirements Models as First Class Entities in Model-Driven Web Engineering Requirements Models as First Class Entities in Model-Driven Web Engineering Nora Koch 1,2 and Sergej Kozuruba 1 1 Ludwig-Maximilians-Universität München, Germany 2 NTT DATA Abstract. The relevance of a

More information

Challenges for the Adoption of Model-Driven Web Engineering Approaches in Industry

Challenges for the Adoption of Model-Driven Web Engineering Approaches in Industry Challenges for the Adoption of Model-Driven Web Engineering Approaches in Industry Esteban Robles Luna 1, F. J. Domínguez-Mayo 3, José Matías Rivero 1, 2, J. A. García-García 3, J. M. Sánchez-Begines 3,

More information

A Method for Requirements Capture and Specification based on Disciplined Use Cases and Screen Mockups

A Method for Requirements Capture and Specification based on Disciplined Use Cases and Screen Mockups A Method for Requirements Capture and Specification based on Disciplined Use Cases and Screen Mockups Gianna Reggio, Maurizio Leotta, Filippo Ricca Abstract: We present a novel method for capturing and

More information

MockAPI: An Agile Approach Supporting API-first Web Application Development

MockAPI: An Agile Approach Supporting API-first Web Application Development MockAPI: An Agile Approach Supporting API-first Web Application Development José Matías Rivero 1, Sebastian Heil 2, Julián Grigera 1, Martin Gaedke 2, and Gustavo Rossi 1 1 LIFIA, Facultad de Informática,

More information

Modeling Complex Mobile Web Applications from UI Components Adding Different Roles and complex Database Design

Modeling Complex Mobile Web Applications from UI Components Adding Different Roles and complex Database Design Modeling Complex Mobile Web Applications from UI Components Adding Different Roles and complex Database Design Pablo Vera 1, Claudia Pons 2, Carina González González 3, Daniel Giulianelli 1, Rocío Rodríguez

More information

Applying Interaction Patterns: Towards a Model-Driven Approach for Rich Internet Applications Development

Applying Interaction Patterns: Towards a Model-Driven Approach for Rich Internet Applications Development Applying Interaction Patterns: Towards a Model-Driven Approach for Rich Internet Applications Development Francisco Valverde, Oscar Pastor Department of Information Systems and Computation Universidad

More information

Prototyping Navigation in Web-Based Information Systems Using WebML

Prototyping Navigation in Web-Based Information Systems Using WebML Prototyping Navigation in Web-Based Information Systems Using WebML Jaroslav KURUC 1, Peter DOLOG 2 and Mária BIELIKOVÁ 1 1 Institute of Informatics and Software Engineering, Faculty of Informatics and

More information

Designing Evolvable Location Models for Ubiquitous Applications

Designing Evolvable Location Models for Ubiquitous Applications Designing Evolvable Location Models for Ubiquitous Applications Silvia Gordillo, Javier Bazzocco, Gustavo Rossi and Robert Laurini 2 Lifia. Facultad de Informatica. Universidad Nacional de La Plata, Argentina

More information

Is the UML appropriate for Interaction Design?

Is the UML appropriate for Interaction Design? Is the UML appropriate for Interaction Design? Giorgio Brajnik Dip. di Matematica e Informatica, Università di Udine brajnik@uniud.it April 12, 2010 Abstract In this paper we argue that while there exist

More information

Making Semantic Web based-hypermedia Applications

Making Semantic Web based-hypermedia Applications Making Semantic Web based-hypermedia Applications Laura Montells, Susana Montero, Paloma Díaz, Ignacio Aedo Laboratorio DEI. Dpto. de Informática Universidad Carlos III de Madrid Avda. de la Universidad

More information

An Abstract Interaction Model for a MDA Software Production Method

An Abstract Interaction Model for a MDA Software Production Method An Abstract Interaction Model for a MDA Software Production Method Francisco Valverde 1, Ignacio Panach 1, Oscar Pastor 1 1 Department of Information Systems and Computation Technical University of Valencia

More information

The Unified Modelling Language. Example Diagrams. Notation vs. Methodology. UML and Meta Modelling

The Unified Modelling Language. Example Diagrams. Notation vs. Methodology. UML and Meta Modelling UML and Meta ling Topics: UML as an example visual notation The UML meta model and the concept of meta modelling Driven Architecture and model engineering The AndroMDA open source project Applying cognitive

More information

Improving the Design of Existing Web Applications

Improving the Design of Existing Web Applications Improving the Design of Existing Web Applications Mario Luca Bernardi 1, Giuseppe Antonio Di Lucca 2 and Damiano Distante 3 1,2 Department of Engineering, University of Sannio, Italy 3 Faculy of Economics,

More information

PROJECT PERIODIC REPORT

PROJECT PERIODIC REPORT PROJECT PERIODIC REPORT Grant Agreement number: 257403 Project acronym: CUBIST Project title: Combining and Uniting Business Intelligence and Semantic Technologies Funding Scheme: STREP Date of latest

More information

BLU AGE 2009 Edition Agile Model Transformation

BLU AGE 2009 Edition Agile Model Transformation BLU AGE 2009 Edition Agile Model Transformation Model Driven Modernization for Legacy Systems 1 2009 NETFECTIVE TECHNOLOGY -ne peut être copiésans BLU AGE Agile Model Transformation Agenda Model transformation

More information

Considering Additional Adaptation Concerns in the Design of Web Applications

Considering Additional Adaptation Concerns in the Design of Web Applications Considering Additional Adaptation Concerns in the Design of Web Applications Sven Casteleyn 1, Zoltán Fiala 2, Geert-Jan Houben 1,3, and Kees van der Sluijs 3 1 Vrije Universiteit Brussel, Pleinlaan 2,

More information

Definition of Information Systems

Definition of Information Systems Information Systems Modeling To provide a foundation for the discussions throughout this book, this chapter begins by defining what is actually meant by the term information system. The focus is on model-driven

More information

Business Activity. predecessor Activity Description. from * successor * to. Performer is performer has attribute.

Business Activity. predecessor Activity Description. from * successor * to. Performer is performer has attribute. Editor Definition Language and Its Implementation Audris Kalnins, Karlis Podnieks, Andris Zarins, Edgars Celms, and Janis Barzdins Institute of Mathematics and Computer Science, University of Latvia Raina

More information

Pattern-Based Architectural Design Process Model

Pattern-Based Architectural Design Process Model Pattern-Based Architectural Design Process Model N. Lévy, F. Losavio Abstract: The identification of quality requirements is crucial to develop modern software systems, especially when their underlying

More information

Swinburne Research Bank

Swinburne Research Bank Swinburne Research Bank http://researchbank.swinburne.edu.au Kamalrudin, M. & Grundy, J. (2011). Generating essential user interface prototypes to validate requirements. Originally published in Proceedings

More information

Lecture 16. Will spend Thursday setting up group projects No exams. 10% added to in-class/homework. 10% added to final group project.

Lecture 16. Will spend Thursday setting up group projects No exams. 10% added to in-class/homework. 10% added to final group project. Lecture 16 Will spend Thursday setting up group projects No exams. 10% added to in-class/homework. 10% added to final group project. 1 Outline Chapter 9 Design iterations Intermediate design Detailed design

More information

A Usability and Accessibility Oriented Development Process *

A Usability and Accessibility Oriented Development Process * A Usability and Accessibility Oriented Development Process * María Dolores Lozano, Francisco Montero, Pascual González Computer Science Department Laboratory of User Interaction and Software Engineering

More information

First Steps Towards Conceptual Schema Testing

First Steps Towards Conceptual Schema Testing First Steps Towards Conceptual Schema Testing Albert Tort and Antoni Olivé Universitat Politècnica de Catalunya {atort,olive}@lsi.upc.edu Abstract. Like any software artifact, conceptual schemas of information

More information

Adding Usability to Web Engineering Models and Tools

Adding Usability to Web Engineering Models and Tools Adding Usability to Web Engineering Models and Tools Richard Atterer 1 and Albrecht Schmidt 2 1 Media Informatics Group Ludwig-Maximilians-University Munich, Germany richard.atterer@ifi.lmu.de 2 Embedded

More information

Design concepts for data-intensive applications

Design concepts for data-intensive applications 6 th International Conference on Applied Informatics Eger, Hungary, January 27 31, 2004. Design concepts for data-intensive applications Attila Adamkó Department of Information Technology, Institute of

More information

A Systematic and Lightweight Method to Identify Dependencies Between User Stories

A Systematic and Lightweight Method to Identify Dependencies Between User Stories A Systematic and Lightweight Method to Identify Dependencies Between User Stories Arturo Gomez 1, Gema Rueda 1 and Pedro P. Alarc on 2 1 Blekinge Institute of Technology Sweden {argo09,geru09}@student.bth.se

More information

INF5120 and INF9120 Modelbased System development

INF5120 and INF9120 Modelbased System development INF5120 and INF9120 Modelbased System development Lecture 5: 13.02.2016 Arne-Jørgen Berre arneb@ifi.uio.no and Arne.J.Berre@sintef.no Telecom and Informatics 1 Course parts (16 lectures) - 2017 January

More information

A Model Driven Approach to Design Web Services in a Web Engineering Method 1

A Model Driven Approach to Design Web Services in a Web Engineering Method 1 A Model Driven Approach to Design Web Services in a Web Engineering Method 1 Marta Ruiz, Pedro Valderas, Victoria Torres, Vicente Pelechano 1 Departamento de Sistemas Informáticos y Computación Universidad

More information

Metamodeling for Business Model Design

Metamodeling for Business Model Design Metamodeling for Business Model Design Facilitating development and communication of Business Model Canvas (BMC) models with an OMG standards-based metamodel. Hilmar Hauksson 1 and Paul Johannesson 2 1

More information

02291: System Integration

02291: System Integration 02291: System Integration Week 10 Hubert Baumeister huba@dtu.dk DTU Compute Technical University of Denmark Spring 2018 Last Week Principles of good design: layered architecture Software Development Processes

More information

IFML-Based Model-Driven Front-End Modernization

IFML-Based Model-Driven Front-End Modernization 23 RD INTERNATIONAL CONFERENCE ON INFORMATION SYSTEMS DEVELOPMENT (ISD2014 CROATIA) IFML-Based Model-Driven Front-End Modernization Roberto Rodríguez-Echeverría Víctor M. Pavón Fernando Macías José María

More information

Compositional Model Based Software Development

Compositional Model Based Software Development Compositional Model Based Software Development Prof. Dr. Bernhard Rumpe http://www.se-rwth.de/ Seite 2 Our Working Groups and Topics Automotive / Robotics Autonomous driving Functional architecture Variability

More information

A Domain-Specific Language for Modeling Web User Interactions with a Model Driven Approach

A Domain-Specific Language for Modeling Web User Interactions with a Model Driven Approach A Domain-Specific Language for Modeling Web User Interactions with a Model Driven Approach Carlos Eugênio Palma da Purificação / Paulo Caetano da Silva Salvador University (UNIFACS) Salvador, Brazil email:

More information

A Model Driven Approach based on Interaction Flow Modeling Language to Generate Rich Internet Applications

A Model Driven Approach based on Interaction Flow Modeling Language to Generate Rich Internet Applications International Journal of Electrical and Computer Engineering (IJECE) Vol. 6, No. 6, December 2016, pp. 3073~3079 ISSN: 2088-8708, DOI: 10.11591/ijece.v6i6.10541 3073 A Model Driven Approach based on Interaction

More information

HyperFrame - A Framework for Hypermedia Authoring

HyperFrame - A Framework for Hypermedia Authoring HyperFrame - A Framework for Hypermedia Authoring S. Crespo, M. F. Fontoura, C. J. P. Lucena, D. Schwabe Pontificia Universidade Católica do Rio de Janeiro - Departamento de Informática Universidade do

More information

History OOHDM. Hypermedia Design OOHDM. Developed by Gustavo Rossi (Universidad Nacional de la Plata)

History OOHDM. Hypermedia Design OOHDM. Developed by Gustavo Rossi (Universidad Nacional de la Plata) History OOHDM The Object Oriented Hypermedia Design Methods Developed by Gustavo Rossi (Universidad Nacional de la Plata) and Daniel Schwabe (PUC Rio, Brazil) In my view, the best method for designing

More information

CHALLENGES FOR THE ADOPTION OF MODEL-DRIVEN WEB ENGINEERING APPROACHES IN INDUSTRY

CHALLENGES FOR THE ADOPTION OF MODEL-DRIVEN WEB ENGINEERING APPROACHES IN INDUSTRY Journal of Web Engineering, Vol. 17, No.3&4 (2018) 183-205 Authors CHALLENGES FOR THE ADOPTION OF MODEL-DRIVEN WEB ENGINEERING APPROACHES IN INDUSTRY ESTEBAN ROBLES LUNA Research and Training in Advanced

More information

Specification of web applications design in CASE using UML and its mapping to an implementation environment

Specification of web applications design in CASE using UML and its mapping to an implementation environment Specification of web applications design in CASE using UML and its mapping to an implementation environment Peter Blšták * peter.blstak@softec.sk Mária Bieliková ** bielik@fiit.stuba.sk Abstract: Software

More information

Capture and Evolution of Web Requirements Using WebSpec

Capture and Evolution of Web Requirements Using WebSpec Capture and Evolution of Web Requirements Using WebSpec Esteban Robles Luna 1,2, Irene Garrigós 3 Julián Grigera 1, and Marco Winckler 4 1 LIFIA, Facultad de Informática, UNLP, La Plata, Argentina {esteban.robles,julian.grigera}@lifia.info.unlp.edu.ar

More information

Developing Enterprise Web Applications Using the Story Driven Modeling Approach

Developing Enterprise Web Applications Using the Story Driven Modeling Approach Developing Enterprise Web Applications Using the Story Driven Modeling Approach Christoph Eickhoff, Nina Geiger, Marcel Hahn, and Albert Zündorf University of Kassel, Software Engineering, Department of

More information

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM): viii Preface The software industry has evolved to tackle new approaches aligned with the Internet, object-orientation, distributed components and new platforms. However, the majority of the large information

More information

A Model-Driven Approach for the Fast Prototyping of Web Applications

A Model-Driven Approach for the Fast Prototyping of Web Applications A Model-Driven Approach for the Fast Prototyping of Web Applications Mario Luca Bernardi Department of Engineering University of Sannio, Italy mlbernar@unisannio.it Giuseppe Antonio Di Lucca Department

More information

CS 350 COMPUTER/HUMAN INTERACTION

CS 350 COMPUTER/HUMAN INTERACTION CS 350 COMPUTER/HUMAN INTERACTION Lecture 19 Includes selected slides from the companion website for Hartson & Pyla, The UX Book, 2012. MKP, All rights reserved. Used with permission. Notes Reminder: C#

More information

Extracting Navigational Models from Struts-Based Web Applications

Extracting Navigational Models from Struts-Based Web Applications Extracting Navigational Models from Struts-Based Web Applications Roberto Rodríguez-Echeverría, José María Conejero, Pedro J. Clemente, María Dolores Villalobos, and Fernando Sánchez-Figueroa University

More information

Browsing Semantics in Context-Aware Mobile Hypermedia

Browsing Semantics in Context-Aware Mobile Hypermedia Browsing Semantics in Context-Aware Mobile Hypermedia Cecilia Challiol,3, Agustin Muñoz, Gustavo Rossi,3, Silvia E. Gordillo,4, Andrés Fortier,2,3, Robert Laurini 5 LIFIA. Facultad de Informática. UNLP.

More information

Requirements and Design Overview

Requirements and Design Overview Requirements and Design Overview Robert B. France Colorado State University Robert B. France O-1 Why do we model? Enhance understanding and communication Provide structure for problem solving Furnish abstractions

More information

Automatized Generating of GUIs for Domain-Specific Languages

Automatized Generating of GUIs for Domain-Specific Languages Automatized Generating of GUIs for Domain-Specific Languages Michaela Bačíková, Dominik Lakatoš, and Milan Nosáľ Technical University of Košice, Letná 9, 04200 Košice, Slovakia, (michaela.bacikova, dominik.lakatos,

More information

SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A

SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A 1. What is an object? An object is a combination of data and logic; the representation of some realworld

More information

A System of Patterns for Web Navigation

A System of Patterns for Web Navigation A System of Patterns for Web Navigation Mohammed Abul Khayes Akanda and Daniel M. German Department of Computer Science, University of Victoria, Canada maka@alumni.uvic.ca, dmgerman@uvic.ca Abstract. In

More information

Methodologies for Web Information System Design

Methodologies for Web Information System Design Methodologies for Web Information System Design Peter Barna, Flavius Frasincar, Geert-Jan Houben, and Richard Vdovjak Technische Universiteit Eindhoven PO Box 53, NL-5600 MB Eindhoven, The Netherlands

More information

Systems Analysis and Design in a Changing World, Fourth Edition

Systems Analysis and Design in a Changing World, Fourth Edition Systems Analysis and Design in a Changing World, Fourth Edition Systems Analysis and Design in a Changing World, 4th Edition Learning Objectives Explain the purpose and various phases of the systems development

More information

Methods for Complex Web Hypermedia Application: The Design Processes

Methods for Complex Web Hypermedia Application: The Design Processes Methods for Complex Web Hypermedia Application: The Design Processes Ahmad Syafiq Ahmad Appandi, Azrul Hazri Jantan Faculty of Computer Science & Information Technology 43400 UPM, Serdang, Selangor. ahmadsyafiq.upm@gmail.com,

More information

Automatic Generation of Security-Aware GUI Models

Automatic Generation of Security-Aware GUI Models Automatic Generation of Security-Aware GUI Models Michael Schläpfer 1, Marina Egea 1, David Basin 1, and Manuel Clavel 2,3 1 ETH Zürich, Switzerland {basin,marinae}@inf.ethz.ch,michschl@student.ethz.ch

More information

Designing Interaction Spaces for Rich Internet Applications with UML

Designing Interaction Spaces for Rich Internet Applications with UML Designing Interaction Spaces for Rich Internet Applications with UML Peter Dolog and Jan Stage Aalborg University, Department of Computer Science, Fredrik Bajers Vej 7, DK-9220 Aalborg East, Denmark {dolog,jans}@cs.aau.dk

More information

Semantics-Based Integration of Embedded Systems Models

Semantics-Based Integration of Embedded Systems Models Semantics-Based Integration of Embedded Systems Models Project András Balogh, OptixWare Research & Development Ltd. n 100021 Outline Embedded systems overview Overview of the GENESYS-INDEXYS approach Current

More information

.NET & Web Services. Mike Lockyer, Gary Griffiths, Briony Oates, Barry Hebbron School of Computing. University of Teesside

.NET & Web Services. Mike Lockyer, Gary Griffiths, Briony Oates, Barry Hebbron School of Computing. University of Teesside .NET & Web Services Mike Lockyer, Gary Griffiths, Briony Oates, Barry Hebbron School of Computing Middlesbrough, TS1 3BA UK m.a.lockyer@tees.ac.uk ABSTRACT In this paper we present our current approach

More information

A Knowledge-Based Web Development Kernel

A Knowledge-Based Web Development Kernel A Knowledge-Based Web Development Kernel Ahmet Egesoy Abstract Designing for the Web is more difficult than designing traditional software. There are special tools in this area but they are monotonically

More information

Best Practices for Collecting User Requirements

Best Practices for Collecting User Requirements Federal GIS Conference February 9 10, 2015 Washington, DC Best Practices for Collecting User Requirements Gerry Clancy Glenn Berger Requirements Provide direction for program success Why Requirements are

More information

dt+ux Design Thinking for User Experience Design, Prototyping & Evaluation Autumn 2016 Prof. James A. Landay Stanford University

dt+ux Design Thinking for User Experience Design, Prototyping & Evaluation Autumn 2016 Prof. James A. Landay Stanford University DESIGN THINKING FOR USER EXPERIENCE DESIGN + PROTOTYPING + EVALUATION Hall of Fame or Shame? Early Stage Prototyping Computer Science Department October 20, 2016 Paper ipad App By 53 2 Hall of Fame or

More information

A Notation and Framework for Dialog Flow Control in Web Applications

A Notation and Framework for Dialog Flow Control in Web Applications A Notation and Framework for Flow Control in Web Applications Matthias Book and Volker Gruhn Chair of Applied Telematics / e-business, Department of Computer Science University of Leipzig, Klostergasse

More information

Model Refactoring in Web Applications

Model Refactoring in Web Applications Model Refactoring in Web Applications Alejandra Garrido 1, Gustavo Rossi 1 and Damiano Distante 2 1 LIFIA, Universidad Nacional de La Plata, Argentina 2 Research Centre on Software Technology (RCOST),

More information

Model Driven Engineering (MDE)

Model Driven Engineering (MDE) Model Driven Engineering (MDE) Yngve Lamo 1 1 Faculty of Engineering, Bergen University College, Norway 26 April 2011 Ålesund Outline Background Software Engineering History, SE Model Driven Engineering

More information

Agile Software Development Agile UX Work. Kati Kuusinen TUT / Pervasive / IHTE

Agile Software Development Agile UX Work. Kati Kuusinen TUT / Pervasive / IHTE Agile Software Development Agile UX Work Kati Kuusinen Researcher @ TUT / Pervasive / IHTE kati.kuusinen@tut.fi Contents 1. Introduction / Motivation 2. Agile software development 3. User experience work

More information

INF5120 Modellbasert Systemutvikling Modelbased System development

INF5120 Modellbasert Systemutvikling Modelbased System development INF5120 Modellbasert Systemutvikling Modelbased System development Lecture 5: 10.02.2014 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no Telecom and Informatics 1 Oblig 1 Group work Service

More information

International Journal for Management Science And Technology (IJMST)

International Journal for Management Science And Technology (IJMST) Volume 4; Issue 03 Manuscript- 1 ISSN: 2320-8848 (Online) ISSN: 2321-0362 (Print) International Journal for Management Science And Technology (IJMST) GENERATION OF SOURCE CODE SUMMARY BY AUTOMATIC IDENTIFICATION

More information

Sequence Diagram Generation with Model Transformation Technology

Sequence Diagram Generation with Model Transformation Technology , March 12-14, 2014, Hong Kong Sequence Diagram Generation with Model Transformation Technology Photchana Sawprakhon, Yachai Limpiyakorn Abstract Creating Sequence diagrams with UML tools can be incomplete,

More information

Model driven Engineering & Model driven Architecture

Model driven Engineering & Model driven Architecture Model driven Engineering & Model driven Architecture Prof. Dr. Mark van den Brand Software Engineering and Technology Faculteit Wiskunde en Informatica Technische Universiteit Eindhoven Model driven software

More information

Generation Rules in POMA Architecture

Generation Rules in POMA Architecture J. Software Engineering & Applications, 2010, 3, 1040-1046 doi:10.4236/jsea.2010.311122 Published Online November 2010 (http://www.scirp.org/journal/jsea) Mohamed Taleb 1, Ahmed Seffah 2, Alain Abran 1

More information

UNICORN: A Tool for Modeling and Reasoning on the Uncertainty of Requirements Evolution

UNICORN: A Tool for Modeling and Reasoning on the Uncertainty of Requirements Evolution UNICORN: A Tool for Modeling and Reasoning on the Uncertainty of Requirements Evolution Le Minh Sang Tran and Fabio Massacci University of Trento, Italy {tran, fabio.massacci}@disi.unitn.it Abstract. Long-living

More information

XIS UML Profile for extreme Modeling Interactive Systems

XIS UML Profile for extreme Modeling Interactive Systems XIS UML Profile for extreme Modeling Interactive Systems Alberto Rodrigues da Silva, João Saraiva, Rui Silva, Carlos Martins INESC-ID, Instituto Superior Técnico {alberto.silva, joao.saraiva, rui.silva}@inesc-id.pt,

More information

Extension to UML Using Stereotypes

Extension to UML Using Stereotypes Extension to UML Using Stereotypes Daniel Riesco Universidad Nacional de San Luis and Universidad Nacional de Río Cuarto, Argentina driesco@unsl.edu.ar Marcela Daniele Daniel Romero Universidad Nacional

More information

A PROPOSAL FOR MODELING THE CONTROL SYSTEM FOR THE SPANISH LIGHT SOURCE IN UML

A PROPOSAL FOR MODELING THE CONTROL SYSTEM FOR THE SPANISH LIGHT SOURCE IN UML A PROPOSAL FOR MODELING THE CONTROL SYSTEM FOR THE SPANISH LIGHT SOURCE IN UML D. Beltran*, LLS, Barcelona, Spain M. Gonzalez, CERN, Geneva, Switzerlan Abstract CELLS (Consorcio para la construcción, equipamiento

More information

A UML-based Methodology for Hypermedia Design

A UML-based Methodology for Hypermedia Design A UML-based Methodology for Hypermedia Design Rolf Hennicker, Nora Koch,2 Institute of Computer Science Ludwig-Maximilians University of Munich Oettingenstr. 67, D-80538 München, Germany {hennicke,kochn}@informatik.uni-muenchen.de

More information

3rd Lecture Languages for information modeling

3rd Lecture Languages for information modeling 3rd Lecture Languages for information modeling Agenda Languages for information modeling UML UML basic concepts Modeling by UML diagrams CASE tools: concepts, features and objectives CASE toolset architecture

More information

Spemmet - A Tool for Modeling Software Processes with SPEM

Spemmet - A Tool for Modeling Software Processes with SPEM Spemmet - A Tool for Modeling Software Processes with SPEM Tuomas Mäkilä tuomas.makila@it.utu.fi Antero Järvi antero.jarvi@it.utu.fi Abstract: The software development process has many unique attributes

More information

Chapter 1 INTEGRATING MODEL-BASED AND TASK- BASED APPROACHES TO USER INTERFACE GENERATION 1. INTRODUCTION

Chapter 1 INTEGRATING MODEL-BASED AND TASK- BASED APPROACHES TO USER INTERFACE GENERATION 1. INTRODUCTION Chapter 1 INTEGRATING MODEL-BASED AND TASK- BASED APPROACHES TO USER INTERFACE GENERATION Sergio España, Inés Pederiva, Jose Ignacio Panach Department of Information Systems and Computation Valencia University

More information

Adapting Web 1.0 User Interfaces to Web 2.0 Multidevice User Interfaces using RUX-Method

Adapting Web 1.0 User Interfaces to Web 2.0 Multidevice User Interfaces using RUX-Method Journal of Universal Computer Science, vol. 14, no. 13 (2008), 2239-2254 submitted: 31/10/07, accepted: 27/6/08, appeared: 1/7/08 J.UCS Adapting Web 1.0 User Interfaces to Web 2.0 Multidevice User Interfaces

More information

An Evaluation of a Use Case Driven Requirements Analysis Using Web UI Prototype Generation Tool

An Evaluation of a Use Case Driven Requirements Analysis Using Web UI Prototype Generation Tool An Evaluation of a Use Case Driven Requirements Analysis Using Web UI Prototype Generation Tool SHINPEI OGATA Function Control System, Graduate School of Engineering Shibaura Institute of Technology 307

More information

Small is Beautiful Building a flexible software factory using small DSLs and Small Models

Small is Beautiful Building a flexible software factory using small DSLs and Small Models Small is Beautiful Building a flexible software factory using small DSLs and Small Models Jos Warmer Partner, Ordina jos.warmer@ordina.nl 1 Modeling Maturity Levels MML 0: No specification MML 1: Textual

More information

Specifying Usability Features with Patterns and Templates

Specifying Usability Features with Patterns and Templates Specifying Usability Features with Patterns and Templates Holger Röder University of Stuttgart Institute of Software Technology Universitätsstraße 38, 70569 Stuttgart, Germany roeder@informatik.uni-stuttgart.de

More information

User Centered Design Interactive Software Lifecycle

User Centered Design Interactive Software Lifecycle Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática User Centered Design Interactive Software Lifecycle Human-Computer Interaction Beatriz Sousa Santos, 2012/2013 User centered

More information

Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution

Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution Software Life Cycle Main issues: Discussion of different life cycle models Maintenance or evolution Introduction software development projects are large and complex a phased approach to control it is necessary

More information

Whole Platform Foundation. The Long Way Toward Language Oriented Programming

Whole Platform Foundation. The Long Way Toward Language Oriented Programming Whole Platform Foundation The Long Way Toward Language Oriented Programming 2008 by Riccardo Solmi made available under the Creative Commons License last updated 22 October 2008 Outline Aim: Engineering

More information

Enterprise Systems Meet Social BPM

Enterprise Systems Meet Social BPM Enterprise Systems Meet Social BPM Martin Molhanec Czech Technical University in Prague Faculty of Electrical Engineering, Department of e-technology molhanec@fel.cvut.cz Abstract. This article engages

More information

Identifying and modelling complex workflow requirements in Web applications

Identifying and modelling complex workflow requirements in Web applications Identifying and modelling complex workflow requirements in Web applications M. Urbieta 1,2, G. Rossi 1,2, S. Gordillo 1,3 W. Schwinger 4, W. R. Werner 5, and M.J. Escalona 6 1 LIFIA, Facultad de Informática,

More information

Incorporating User Centered Requirement Engineering into Agile Software Development

Incorporating User Centered Requirement Engineering into Agile Software Development Incorporating User Centered Requirement Engineering into Agile Software Development Markus Duechting 1, Dirk Zimmermann 2, Karsten Nebe 1 1 University of Paderborn C-LAB, Cooperative Computing & Communication

More information

Authoring Multi-device Web Applications with Database Access

Authoring Multi-device Web Applications with Database Access Authoring Multi-device Web Applications with Database Access Giulio Mori, Fabio Paternò, and Carmen Santoro ISTI-CNR, Via Moruzzi 1, 56126 Pisa, Italy {Giulio.Mori, Fabio.Paterno, Carmen.Santoro}@isti.cnr.it

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 8 Agile Methodologies: XP 1 extreme Programming (XP) Developed by Beck in 1996. The first authentic XP book appeared in 1999, with a revised

More information

Web Modelling Languages: The Gap Between Requirements And Current Exemplars

Web Modelling Languages: The Gap Between Requirements And Current Exemplars Web Modelling Languages: The Gap Between Requirements And Current Exemplars Alice Gu, University of Technology, Sydney [HREF1]. agu@westpac.com.au Brian Henderson-Sellers [HREF2], Faculty of Information

More information

Process-Integrated Refinement Patterns in UML

Process-Integrated Refinement Patterns in UML Process-Integrated Refinement Patterns in UML Timo Kehrer Dept. of Computer Science and Media Stuttgart Media University (HdM) Nobelstr. 10, D-70569 Stuttgart, Germany Tel: +49 711 8923 2619 Fax: +49 711

More information

A Model-driven approach to NLP programming with UIMA

A Model-driven approach to NLP programming with UIMA A Model-driven approach to NLP programming with UIMA Alessandro Di Bari, Alessandro Faraotti, Carmela Gambardella, and Guido Vetere IBM Center for Advanced Studies of Trento Piazza Manci, 1 Povo di Trento

More information

SEMANTIC WEB POWERED PORTAL INFRASTRUCTURE

SEMANTIC WEB POWERED PORTAL INFRASTRUCTURE SEMANTIC WEB POWERED PORTAL INFRASTRUCTURE YING DING 1 Digital Enterprise Research Institute Leopold-Franzens Universität Innsbruck Austria DIETER FENSEL Digital Enterprise Research Institute National

More information

Fausto Giunchiglia and Mattia Fumagalli

Fausto Giunchiglia and Mattia Fumagalli DISI - Via Sommarive 5-38123 Povo - Trento (Italy) http://disi.unitn.it FROM ER MODELS TO THE ENTITY MODEL Fausto Giunchiglia and Mattia Fumagalli Date (2014-October) Technical Report # DISI-14-014 From

More information

Lecture 6. Design (3) CENG 412-Human Factors in Engineering May

Lecture 6. Design (3) CENG 412-Human Factors in Engineering May Lecture 6. Design (3) CENG 412-Human Factors in Engineering May 28 2009 1 Outline Prototyping techniques: - Paper prototype - Computer prototype - Wizard of Oz Reading: Wickens pp. 50-57 Marc Rettig: Prototyping

More information

Capella to SysML Bridge: A Tooled-up Methodology for MBSE Interoperability

Capella to SysML Bridge: A Tooled-up Methodology for MBSE Interoperability Capella to SysML Bridge: A Tooled-up Methodology for MBSE Interoperability Nesrine BADACHE, ARTAL Technologies, nesrine.badache@artal.fr Pascal ROQUES, PRFC, pascal.roques@prfc.fr Keywords: Modeling, Model,

More information

Ontology-based Architecture Documentation Approach

Ontology-based Architecture Documentation Approach 4 Ontology-based Architecture Documentation Approach In this chapter we investigate how an ontology can be used for retrieving AK from SA documentation (RQ2). We first give background information on the

More information