Publications

Export 65 results:
Sort by: Author Title [ Type  (Desc)] Year
Conference Paper
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
Abreu, F. B., R. Esteves, and M. Goulão, "The Design of Eiffel Programs: Quantitative Evaluation Using the MOOD Metrics", TOOLS'96 (Technology of Object Oriented Languages and Systems), Santa Barbara, CA, EUA, 1996. Abstract

n/a

n/a
Abreu, F. B., and M. Goulão, "Designing and Coding Object-Oriented Systems: An Introductory Course Experience Report", Workshop on Introducing OO Design and Programming with Special Emphasis on Concrete Examples (ECOOP'99), vol. 1743, Lisboa, Portugal, Springer Verlag, pp. 351-353, 1999. Abstract

n/a

n/a
Gabriel, P., M. Goulão, and V. Amaral, "Do Software Languages Engineers Evaluate their Languages?", XIII Congreso Iberoamericano en "Software Engineering" (CIbSE'2010), ISBN: 978-9978-325-10-0, Cuenca, Ecuador, Universidad del Azuay, pp. 149-162, 2010. Abstractgabrielgoulaoamaralcibse2010.pdf

Domain Speci c Languages (DSLs) can contribute to increment productivity, while reducing the required maintenance and programming expertise. We hypothesize that Software Languages Engineering (SLE) developers consistently skip, or relax, Language Evaluation. Based on the experience of engineering other types of software products, we assume that this may potentially lead to the deployment of inadequate languages. The fact that the languages already deal with concepts from the problem domain, and not the solution domain, is not enough to validate several issues at stake, such as its expressiveness, usability,
eff ectiveness, maintainability, or even the domain expert's productivity while using them. We present a systematic review on articles published in top ranked venues, from 2001 to 2008, which report DSLs' construction, to characterize the common practice. This work con rms our initial hypothesis and lays the ground for the discussion on how to include a systematic approach to DSL evaluation in the SLE process.

Lima, A., M. Goulão, and M. Pessoa Monteiro, "Evidence-Based Comparison of Modularity Support Between Java and Object Teams", Empirical Evaluation of Software Composition Techniques (ESCOT 2010), at 9th International Conference on Aspect-Oriented Software Development (AOSD'2010), Rennes and Saint Malo, France, 2010. Abstract

http://www.comp.lancs.ac.uk/~greenwop/escot10/escot10_submission_9.pdf

lima2010escotfinal.pdf

Background: Aspect-oriented programming (AOP) is an
emerging programming paradigm whose focus is about improving
modularity, with an emphasis on the modularization of
crosscutting concerns.

Objective: The goal of this paper is to assess the extent to which
an AOP language – ObjectTeams/Java (OT/J) – improves the
modularity of a software system. This improvement has been
claimed but, to the best of our knowledge, this paper is the first
attempting to present quantitative evidence of it.

Method: We compare functionally-equivalent implementations of
the Gang-of-Four design patterns, developed in Java and OT/J,
using software metrics.

Results: The results of our comparison support the modularity
improvement claims made in the literature. For six of the seven
metrics used, the OT/J versions of the patterns obtained
significantly better results.

Limitations: This work uses a set of metrics originally defined
for object-oriented (OO) systems. It may be the case that the
metrics are biased, in that they were created in the context of OO
programming (OOP), before the advent of AOP. We consider this
comparison a stepping stone as, ultimately, we plan to assess the
modularity improvements with paradigm independent metrics,
which will conceivably eliminate the bias. Each individual
example from the sample used in this paper is small. In future, we
plan to replicate this experiment using larger systems, where the
benefits of AOP may be more noticeable.

Conclusion: This work contributes with evidence to fill gaps in
the body of quantitative results supporting alleged benefits to
software modularity brought by AOP languages, namely OT/J.

Silva, L., A. Moreira, J. Araújo, C. Gralha, M. Goulão, and V. Amaral, "Exploring Views for Goal-Oriented Requirements Models", 35th International Conference on Conceptual Modeling, ER2016, Gifu, Japan, 14-17 Nov., 2016. Abstract

http://er2016.cs.titech.ac.jp/

silva2016er.pdf

Requirements documents and models need to be used by many stakeholders with di erent technological pro ciency, during software development. Each stakeholder may need to understand the entire (or simply part of the) requirements artifacts. To empower those stakeholders, views of the requirements should be con gurable to their particular needs. Information visualization techniques may help in this process. In this paper, we propose di erent views aimed at highlighting information that is relevant for a particular stakeholder, helping him to query requirements artifacts. We o er three kinds of visualization capturing language and domain elements, while providing a gradual model overview: the big picture view, the syntax-based view, and the concern-based view. We instantiate these views with i* models and introduce an implementation prototype in the iStarLab tool.

Goulão, M., and F. B. Abreu, "Formal Definition of Metrics upon the CORBA Component Model", First International Conference on the Quality of Software Architectures (QoSA'2005), and Proceedings of the Second International conference on Software Quality, vol. 3712, Erfurt, Germany, Springer, pp. 88-105, 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
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.

Goulão, M., and F. B. Abreu, "From Objects to Components - A Quantitative Experiment", 6th International Workshop on Quantitative Approaches in Object-Oriented Software Engineering QAOOSE'2002, Málaga, Spain, 2002. Abstract

n/a

n/a
Abreu, F. B., L. M. Ochoa, and M. Goulão, "The GOODLY Design Language for MOOD2 Metrics Collection", 3rd ECOOP Workshop on Quantitative Approaches in Object-Oriented Software Engineering (QAOOSE'1999), Lisbon, Portugal, 1999. Abstract

n/a

n/a
Ameller, D., X. Franch, C. Gómez, J. Araújo, R. B. Svensson, S. Biffl, J. Cabot, V. Cortellessa, M. Daneva, D. M. Fernández, A. Moreira, H. Muccini, A. Vallecillo, M. Wimmer, V. Amaral, H. Brunelière, L. Burgueño, M. Goulão, B. Schätz, and S. Teufl, "Handling Non-Functional Requirements in Model-Driven Development: An Ongoing Industrial Survey", 23rd International Conference on Requirements Engineering (RE'15) - RE: Next!, Ottawa, Canada, IEEE Computer Society, 24-28 August, 2015.
Gralha, C., M. Goulão, and J. Araújo, "Identifying modularity improvement opportunities in goal-oriented requirements models", 26th International Conference on Advanced Information Systems Engineering, CAiSE 2014, Thessaloniki, Greece, 16-20 Jun., 2014. Abstract

Goal-oriented Requirements Engineering approaches have become popular in the Requirements Engineering community as they provide expressive model elements for requirements elicitation and analysis. However, as a common challenge, they are still struggling when it comes to managing the accidental complexity of their models. In this paper, we provide a set of metrics, which are formally specified and have tool support, to measure and analyze the complexity of goal models, in particular i* models. The aim is to identify refactoring opportunities to improve the modularity of those models, and consequently reduce their complexity. We evaluate these metrics by applying them to a set of well-known case studies from industry and academia. Our results allow the identification of refactoring opportunities in the evaluated models.

Santos, J. P., A. Moreira, J. Araújo, and M. Goulão, "Increasing Quality in Scenario Modelling with Model-Driven Development", 7th International Conference on the Quality of Information and Communications Technology (QUATIC'2010), Porto, Portugal, IEEE Computer Society, pp. 204-209, 29 Sep.-2 Oct., 2010. Abstract

http://dx.doi.org/10.1109/QUATIC.2010.36

santos_et_al_quatic2010.pdf

Models, with different levels of detail, share similar abstractions that can be reused by means of model-driven techniques such as transformations. For example, scenarios are a well-known technique in requirements engineering to represent behavioral flows in a software system. When using UML, scenarios are typically represented with activity models in the early stages of software development, while sequence models are used to describe more detailed object interactions as modeling progresses. This paper defines transformation rules to automate the migration from activity to sequence models. We present a case study illustrating the application of our transformation rules. Our preliminary assessment of the impact of the benefits of using these transformations points to: (i) a reduction of around 50% in the effort building sequence models, (ii) increased trace ability among models, and (iii) error prevention when migrating from different scenario notations.

Goulão, M., and F. B. Abreu, "Independent validation of a component metrics suite", 8th International Workshop on Quantitative Approaches in Object-Oriented Software Engineering (QAOOSE'2004), Oslo, Norway, 2004. Abstract

n/a

n/a
Sabino, A., Armanda Rodrigues, M. Goulão, and J. Gouveia, "Indirect Keyword Recommendation", International Conference on Intelligent Agent Technology, WIC 2014, Warsaw, Poland, IEEE/WIC/ACM, 11-14 August, 2014. Abstractsabino2014wic.pdf

Helping users to find useful contacts or potentially interesting subjects is a challenge for social and productive
networks. The evidence of the content produced by users must be considered in this task, which may be simplified by the use of the meta-data associated with the content, i.e., the categorization supported by the network – descriptive keywords, or tags. In this paper we present a model that enables keyword discovery
methods through the interpretation of the network as a graph, solely relying on keywords that categorize or describe productive items. The model and keyword discovery methods presented in this paper avoid content analysis, and move towards a generic approach to the identification of relevant interests and, eventually,
contacts. The evaluation of the model and methods is executed by two experiments that perform frequency and classification analyses over the Flickr network. The results show that we can efficiently recommend keywords to users.

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.

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.

Monteiro, R., J. Araújo, V. Amaral, M. Goulão, and P. Patrício, "Model-Driven Development for Requirements Engineering: The Case of Goal-Oriented Approaches", 8th International Conference on the Quality of Information and Communications Technology (QUATIC 2012), Lisbon, Portugal, IEEE CPS, 2012. Abstractquatic2012-full-crmg.pdf

Goal-Oriented Requirements Engineering (GORE) has received increasing attention over the past few years.
There are several goal-oriented approaches, each one using different kinds of models. We argue that it would be useful to relate them or even perform transformations among them automatically, in order to understand their similarities and differences, their advantages and disadvantages, allowing a possible migration or comparison between approaches. This is something that has not received enough attention. In this paper
we propose the definition and implementation of goal model transformations between i* and KAOS. As an immediate contribution, the approach can be used to migrate from one goal model to another through automatic model transformations. This approach also contributes to relate the concepts of i* and KAOS models and will help, for example, a development team in making the decision on which approach to follow, according to the nature of the project and the expressiveness of an approach to represent certain concepts
(e.g., obstacles are represented explicitly in KAOS, but not in i*). Another contribution is to facilitate communication among members of the same team, if they are specialized in different approaches.

Goulão, M., and F. B. Abreu, "Modeling the Experimental Software Engineering Process", 6th International Conference on the Quality of Information and Communications Technology (QUATIC'2007), Lisbon, Portugal, IEEE Computer Society, pp. 77-90, 12-14 Sep., 2007. Abstractquatic2007mgfbafinal.pdf

Reviews on software engineering literature have shown an insufficient experimental validation of claims, when compared to the standard practice in other well-established sciences. Poor validation of software engineering claims increases the risks of introducing changes in the software process of an organization, as the potential benefits assessment is based on hype, rather than on facts. The community lacks highly disseminated experimental best practices. We contribute with a model of the experimental software engineering process that is aligned with recent proposals for best practices in experimental data dissemination. The model can be used in the definition of software engineering experiments and in comparisons among experimental results.

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
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 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.

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