Publications

Export 61 results:
Sort by: [ Author  (Desc)] Title Type Year
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 
G
Goulão, M., V. Amaral, and M. Mernik, "Quality in model-driven engineering: a tertiary study", Software Quality Journal, vol. 24, issue 3, pp. 601-633, 2016. Abstract

http://link.springer.com/article/10.1007/s11219-016-9324-8

Website

Model-driven engineering (MDE) is believed to have a significant impact in software quality. However, researchers and practitioners may have a hard time locating consolidated evidence on this impact, as the available information is scattered in several different publications. Our goal is to aggregate consolidated findings on quality in MDE, facilitating the work of researchers and practitioners in learning about the coverage and main findings of existing work as well as identifying relatively unexplored niches of research that need further attention. We performed a tertiary study on quality in MDE, in order to gain a better understanding of its most prominent findings and existing challenges, as reported in the literature. We identified 22 systematic literature reviews and mapping studies and the most relevant quality attributes addressed by each of those studies, in the context of MDE. Maintainability is clearly the most often studied and reported quality attribute impacted by MDE. Eighty out of 83 research questions in the selected secondary studies have a structure that is more often associated with mapping existing research than with answering more concrete research questions (e.g., comparing two alternative MDE approaches with respect to their impact on a specific quality attribute). We briefly outline the main contributions of each of the selected literature reviews. In the collected studies, we observed a broad coverage of software product quality, although frequently accompanied by notes on how much more empirical research is needed to further validate existing claims. Relatively, little attention seems to be devoted to the impact of MDE on the quality in use of products developed using MDE.

Goulão, M., and F. B. Abreu, "Cross-Validation of a Component Metrics Suite", IX Jornadas de Ingeniería del Software y Bases de Datos (JISBD'2004), Malaga, Spain, 2004. Abstract

n/a

n/a
Goulão, M., and F. B. Abreu, "The quest for software components quality", 26th Annual International Computer Software and Applications Conference (COMPSAC 2002), Oxford, England, IEEE Computer Society, pp. 313-318, 2002. Abstract

n/a

n/a
Goulão, M., A. S. Monteiro, N. P. Ribeiro, A. B. Almeida, F. B. Abreu, and P. Sousa, III Relatório de Actividades do Protocolo Marinha Portuguesa / INESC, : DAMAG / INESC, 1999. Abstract

n/a

n/a
Goulão, M., "CBSE: a Quantitative Approach", ECOOP Doctoral Symposium, Darmstadt, Germany, 2003. Abstract

n/a

n/a
Goulão, M., A. S. Monteiro, J. F. Martins, F. B. Abreu, A. B. Almeida, and P. Sousa, "A Software Evolution Experiment", European Software Control and Metrics Conference (ESCOM'98), Rome, Italy, Shakter Publishing B. V., 1998. Abstract

n/a

n/a
Goulão, M., and F. B. Abreu, "On the Influence of Practitioners' Expertise in Component-Based Software Reviews", 10th ECOOP Workshop on Quantitative Approaches in Object-Oriented Software Engineering (QAOOSE'2006), Nantes, 2006. Abstract

n/a

n/a
Goulão, M., and F. B. Abreu, "Composition assessment metrics for CBSE", Euromicro-SEAA 2005: 31st Euromicro Conference on Software Engineering and Advanced Applications, Porto, Portugal, IEEE Computer Society, pp. 96-103, 2005. Abstract

n/a

n/a
Goulão, M., and F. B. Abreu, "Formalizing Metrics for COTS", International Workshop on Models and Processess for the Evaluation of COTS Components (MPEC 2004) at ICSE 2004, Edimburgh, Scotland, IEE, pp. 37-40, 2004. Abstract

n/a

n/a
Goulão, M., and F. B. Abreu, "Towards a Components Quality Model", Work in Progress Session of the 28th Euromicro Conference (Euromicro 2002), Dortmund, Germany, 2002. Abstract

n/a

n/a
Goulão, M., A. Moreira, J. Araújo, and J. P. Santos, "Streamlining scenario modeling with Model-Driven Development: a case study", Model-Driven Requirements Engineering Workshop (MoDRE 2011), at the 19th International Requirements Engineering Conference (RE 2011), Trento, Italy, IEEE Computer Society, pp. 55-63, 29 Aug., 2011. Abstract

http://dx.doi.org/10.1109/MoDRE.2011.6045367

modre2011-cameraready.pdf

Scenario modeling can be realized through different perspectives. In UML, scenarios are often modeled with activity models, in an early stage of development. Later, sequence diagrams are used to detail object interactions. The migration from activity diagrams to sequence diagrams is a repetitive and error-prone task. Model-Driven Development (MDD) can help streamlining this process, through transformation rules. Since the information in the activity model is insufficient to generate the corresponding complete sequence model, manual refinements are required. Our goal is to compare the relative effort of building the sequence diagrams manually with that of building them semi-automatically. Our results show a decrease in the number of operations required to build and refine the sequence model of approximately 64% when using MDD, when compared to the manual approach.

F
Fernandes, A. I., M. Goulão, and Armanda Rodrigues, "A Comparison of Maps Application Programming Interfaces", 16th AGILE Conference on Geographic Information Science, AGILE 2013, Leuven, Belgium, May 14-17, 2013. Abstractagile2013fernandesetalcameraready.pdf

The development of web applications that manipulate geo-referenced information is often supported by Application Programming Interfaces (APIs), allowing a fast development cycle for high quality applications. APIs can be used by programmers with different expertise levels and choosing an adequate API may
have a dramatic impact on the productivity achieved by those programmers. Our goal is to compare maps APIs with respect to their usability. We compare three different APIs: the Google Maps JavaScript API, the ArcGIS API for JavaScript, and the OpenLayers JavaScript Mapping Library. Our comparison is supported by
a set of software metrics and is performed in two orthogonal ways: the comparison of three implementations of the same system prototype, each using one of the APIs under scrutiny; the comparison of the APIs specifications. The main results of the study are related to the size of the APIs, with the Google API being significantly smaller than the others.

E
Esteves, R., and M. Goulão, MOODKIT G1, : IST/UTL, November, 1995. Abstract

n/a

n/a
Espada, P., M. Goulão, and J. Araújo, "Measuring Complexity and Completeness of KAOS Goal Models", International Workshop on Empirical Requirements Engineering (EmpiRE 2011), at the 19th International Requirements Engineering Conference (RE 2011), Trento, Italy, IEEE Computer Society, 30 Aug., 2011. Abstract

http://dx.doi.org/10.1109/EmpiRE.2011.6046252

espadagoulaoaraujo2011empire.pdf

KAOS is one of the most well-known goal-oriented requirements engineering approaches. Nevertheless, building large KAOS models sometimes results in incomplete and/or complex requirements models that are difficult to understand and maintain. These shortcomings often lead to an increase in costs of product development and evolution. Therefore, for large-scale systems, the ability to manage the complexity and completeness of KAOS models is essential. In this paper, we propose a metrics suite for supporting the quantitative assessment of KAOS models complexity and completeness, in order to support their early identification. We apply the metrics to an example taken from a health club system specification.

Espada, P., M. Goulão, and J. Araújo, "A Framework to Evaluate Complexity and Completeness of KAOS Goal Models", 25th International Conference on Advanced Information Systems Engineering, CAiSE 2013, Valencia, Spain, 17-21 Jun., 2013. Abstractespadagoulaoaraujocaise2013.pdf

Goal-Oriented Requirements Engineering (GORE) approaches have been developed to facilitate the requirements engineers work by, for example, providing abstraction mechanisms to help eliciting and modeling requirements. One of the well-established GORE approaches is KAOS. Nevertheless, in large-scale systems building KAOS models may result in incomplete and/or complex goal models, which are difficult to understand and change. This may lead to an increase in costs of product development and evolution. Thus, for large-scale systems, the effective management of complexity and completeness of goal
models is vital. In this paper, we propose a metrics framework for supporting the quantitative assessment of complexity and completeness of KAOS goal models. Those metrics are formally specified, implemented and incorporated in a KAOS modeling tool. We validate the metrics with a set of real-world case studies and discuss the identified recurring modeling practices.

B
Bombonatti, D., A. Moreira, and M. Goulão, "Synergies and tradeoffs in software reuse – a systematic mapping study", Software Practice & Experience, 2016. AbstractWebsite

Software reuse is a broadly accepted practice to improve software development quality and productivity. Although an object of study in software engineering since the late sixties, achieving effective reuse remains challenging for many software development organizations. This paper reports a systematic mapping study on how reusability relates to other non-functional requirements and how different contextual factors influence the success of a reuse initiative. The conclusion is that the relationships are discussed rather informally, and that human, organizational, and technological domain factors are extremely relevant to a particular reuse context. This mapping study highlights the need for further research to better understand how exactly the different non-functional requirements and context factors affect reusability.

Bombonatti, D., C. Gralha, A. Moreira, J. Araújo, and M. Goulão, "Usability of Requirements Techniques: A Systematic Literature Review", The 31st ACM/SIGAPP Symposium on Applied Computing, Pisa, Italy, ACM/SIGAPP, 4-8 Apr., 2016. Abstract

The usability of requirements engineering (RE) techniques has been recognised as a key factor for their successful adoption by industry. RE techniques must be accessible to stakeholders with different backgrounds, so they can be empowered to effectively and efficiently contribute to building successful systems. When selecting an appropriate requirements engineering technique for a given context, one should consider the usability supported by each of the candidate techniques. The first step towards achieving this goal is to gather the best evidence available on the usability of RE approaches by performing a systematic literature review, to answer one research question: How is the usability of requirements engineering techniques and tools addressed? We systematically review articles published in the Requirements Engineering Journal, one of the main sources for mature work in RE, to motivate a research roadmap to make RE approaches more accessible to stakeholders with different backgrounds.

Baroni, A. L., M. Goulão, and F. B. Abreu, "Avoiding the Ambiguity of Quantitative Data Extraction: An Approach to Improve the Quality of Metrics Results", Work in Progress Session at the 28th EUROMICRO Conference, Dortmund, Germany, 2002. Abstract

n/a

n/a
Barišić, A., V. Amaral, M. Goulão, and B. Barroca, "Evaluating the Usability of Domain-Specific Languages", Formal and Practical Aspects of Domain-Specific Languages: Recent Developments: IGI Global, 2012. Abstract

We can regard Domain-Specific Languages (DSLs) as User Interfaces (UIs) because they bridge the gap
between the domain experts and the computation platforms. Usability of DSLs by domain experts is a key
factor for their successful adoption. The few reports supporting improvement claims are persuasive, but
mostly anecdotal. Systematic literature reviews show that evidences on the effects of the introduction of
DSLs are actually very scarce. In particular, the evaluation of usability is often skipped, relaxed, or at
least omitted from papers reporting the development of DSLs. The few exceptions mostly take place at
the end of the development process, when fixing problems is already too expensive. A systematic
approach, based on techniques for the experimental evaluation of UIs, should be used to assess suitability
of new DSLs. This chapter presents a general experimental evaluation model, tailored for DSLs’
experimental evaluation, and instantiates it in several DSL’s evaluation examples.

Barišić, A., V. Amaral, M. Goulão, and B. Barroca, "How to reach a usable DSL? Moving toward a Systematic Evaluation", Electronic Communications of the EASST (MPM), 2011. Abstract

Domain Specific Languages (DSLs) are claimed to increase productivity, while reducing the required maintenance and programming expertise. In this context, DSL usability by domain experts is a key factor for its successful adoption. Evidence that support those improvement claims is mostly anecdotal. Our systematic literature review showed that a usability evaluation was often skipped, relaxed, or at least omitted from papers reporting the development of DSLs. The few exceptions mostly take place at the end of the development process where fixing problems identified is too expensive. We argue that a systematic approach based on User Interface experimental validation techniques should be used to assess the impact of the new DSLs. The rationale is that assessing important and specially tailored usability attributes for DSLs early in language construction will ultimately foster a higher productivity of the DSL users. This paper, besides discussing the quality criteria, proposes a development and evaluation process that can be used to achieve usable DSLs in a better way.

Barišić, A., P. Monteiro, V. Amaral, M. Goulão, and M. Pessoa Monteiro, "Patterns for Evaluating Usability of Domain-Specific Languages", Proceedings of the Pattern Languages of Programs Conference, PLoP 2012: ACM, 19-21 October, 2012. Abstract

http://hillside.net/plop/2012/papers/Group%203%20-%20Coyote/Patterns%20for%20Evaluating%20Usability%20of%20Domain-Specific%20Languages.pdf

For years the development of software artifacts was the sole domain of developers and project
managers. However, experience has taught us that the Users play a very important role in
software development and construction. On Domain Specific Languages the inclusion of the
domain experts directly in the development cycle is a very important characteristic, as they have
often an important role in making and constraining the domain of the language.
DSLs are credited with increased productivity and ease of use, but this fact is hardly ever proven.
Moreover, usability tests are frequently only performed at the final stages of the project when
changes have a significant impact on the budget. To help prevent this, in this paper we present a
pattern language for evaluating the usability of DSLs. Our patterns can help show how to use an
iterative usability validation development strategy to produce DSLs that can achieve a high
degree of usability.

Barišić, A., V. Amaral, M. Goulão, and B. Barroca, "Quality in Use of Domain Specific Languages: a Case Study", 3rd ACM SIGPLAN workshop on Evaluation and Usability of Programming Languages and Tools (PLATEAU 2011), Portland, USA, ACM, pp. 65-72, 2011. Abstract

http://dx.doi.org/10.1145/2089155.2089170

plateau2011-barisic.pdf

Domain Specific Languages (DSLs) are claimed to increment productivity, while reducing the required maintenance and programming expertise. In this context, DSLs usability is a key factor for its successful adoption.

In this paper, we propose a systematic approach based on User Interfaces Experimental validation techniques to assess the impact of the introduction of DSLs on the productivity of domain experts. To illustrate this evaluation approach we present a case study of a DSL for High Energy Physics (HEP).

The DSL on this case study, called Pheasant (PHysicist’s EAsy Analysis Tool), is assessed in contrast with a pre-existing baseline, using General Purpose Languages (GPLs) such as C++. The comparison combines quantitative and qualitative data, collected with users from a real-world setting. Our assessment includes Physicists with programming experience with two profiles; ones with no experience with the previous framework used in the project and other experienced.

This work’s contribution highlights the problem of the absence of systematic approaches for experimental validation of DSLs. It also illustrates how an experimental approach can be used in the context of a DSL evaluation during the Software Languages Engineering activity, with respect to its impact on effectiveness and efficiency.

Barišić, A., V. Amaral, M. Goulão, and A. Aguiar, "Introducing usability concerns early in the DSL development cycle: FlowSL experience report", Model-Driven Development Processes and Practices Workshop Proceedings, MD2P2 2014, Valencia, Spain, September, 2014. Abstractflowslmodelsdraft.pdf

Domain-Specific Languages (DSLs) developers aim to narrow the gap between the level of abstraction used by domain users and the one provided by the DSL, in order to help taming the increased complexity of computer systems and real-world problems. The quality in use of a DSL is essential for its successful adoption. We illustrate how a usability evaluation process can be weaved into the development process of a concrete DSL - FlowSL - used for specifying humanitarian campaign processes lead by an international Non-Governmental Organization. FlowSL is being developed following an agile process using Model-Driven Development (MDD) tools, to cope with vague and poorly understood requirements in the beginning of the development process.

Barišić, A., V. Amaral, M. Goulão, and B. Barroca, "Quality in Use of DSLs: Current Evaluation Methods", 3rd INForum - Simpósio de Informática (INForum2011), Coimbra, Portugal, 8-9 Sep., 2011. Abstractinforum_2011_submission_174.pdf

Domain Speci c Languages (DSLs) are claimed to contribute
to increment productivity, while reducing the required maintenance and
programming expertise. In this context, the usability of these languages
becomes a major issue: if the language is not easy to learn and use, it is
unlikely to be successfully adopted.

It is important to foster high quality DSLs during its engineering process.
We argue that a systematic approach based on User Interface Experi-
mental validation techniques should be used to assess the impact of the
introduction of DSLs in the productivity of DSL user. Productivity can
be fostered by assessing important usability attributes early in the lan-
guage construction . This work's contribution, besides highlighting the
problem of the absence of systematic approaches for experimental vali-
dation of DSLs in general, is to identify existing evaluation approaches
that can be adapted from the eld of User Interfaces.

Barišić, A., V. Amaral, and M. Goulão, "Usability Evaluation of Domain-Specific Languages", Simpósio de Estudantes de Doutoramento em Engenharia de Software (SEDES 2012), hosted by QUATIC 2012, Lisbon, Portugal, IEEE CPS, 3 Sep., 2012. Abstractbarisic2012sedes.pdf

Domain-Specific Languages (DSLs) are claimed to bring important productivity improvements to developers,
when compared to General-Purpose Languages (GPLs). The increased Usability is regarded as one of the key benefits of DSLs when compared to GPLs, and has an important impact on the achieved productivity of the DSL users. So, it is essential to build in good usability while developing the DSL. The purpose of this proposal is to contribute to the systematic activity of Software Language Engineering by focusing on the
issue of the Usability evaluation of DSLs. Usability evaluation is often skipped, relaxed, or at least omitted from papers reporting development of DSLs. We argue that a systematic approach based on User Interface experimental validation techniques should be used to assess the impact of new DSLs. For that purpose, we propose to merge common Usability evaluation processes with the DSL development process. In order to provide reliable metrics and tools we should reuse and identify good practices that exist in Human-Computer
Interaction community.