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 
S
Störrle, H., M. R. V. Chaudron, V. Amaral, and M. Goulão, "First International Workshop on Human Factors in Modeling (HuFaMo 2015) @ MODELS 2015 - Preface", First International Workshop on Human Factors in Modeling (HuFaMo 2015) @ MODELS 2015, Ottawa, Canada, 28 Sep., 2015.
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.

Santos, M., C. Gralha, M. Goulão, J. Araújo, A. Moreira, and J. Cambeiro, "What is the Impact of Bad Layout in the Understandability of Social Goal Models?", 24th IEEE International Conference on Requirements Engineering, Beijing, China, IEEE, 12-16, Sep., 2016. Abstractre_2016_eyetracker_istar.pdf

The i* community has published guidelines, including model layout guidelines, for the construction of models. Our goal is to evaluate the effect of the layout guidelines on the i* novice stakeholders’ ability to understand and review i* models. We conducted a quasi-experiment where participants were given two understanding and two reviewing tasks. Both tasks involved a model with a bad layout and another model following the i* layout guidelines. We evaluated the impact of layouts by combining the success level in those tasks and the required effort to accomplish them. Effort was assessed using time, perceived complexity (with NASA TLX), and eye-tracking data. Participants were more successful in understanding than in reviewing tasks. However, we found no statistically significant difference in the success, time taken, or perceived complexity, between tasks conducted with models with a bad layout and models with a good layout. Most participants had little to no prior knowledge in i*, making them more representative of stakeholders with no requirements engineering expertise. They were able to understand the models fairly well after a short tutorial, but struggled when reviewing models. Adherence to the existing i* layout guidelines did not significantly impact i* model understanding and reviewing performance.

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.

M
Moreira, A., J. Araújo, A. Rashid, and M. Goulão, "Using Aspects to Model Volatile Concerns", Aspect-Oriented Requirements Engineering, Berlin Heidelberg, Springer, pp. 183-205, 2013. Abstract

A rapidly changing market leads to software systems with highly volatile requirements. In many cases, new demands in software can often be met by extending the functionality of systems already in operation. By modularizing volatile requirements that can be altered at the client’s initiative or according to market demands, we can build a stepping-stone for management of requirements change. The volatility must be managed in a way that reduces the time and costs associated with updating a system to meet the new requirements. In this chapter, we present an approach for handling volatile concerns during early life cycle software modeling. The key insight is that techniques for aspect-oriented software development can be applied to modularize volatility and to weave volatile concerns into the base software artifacts.

Monteiro, A. S., A. B. Almeida, M. Goulao, F. B. Abreu, and P. Sousa, "A Software Defect Report and Tracking System in an intranet", Third European Conference on Software Maintenance and Reengineering, Amsterdam, The Netherlands, IEEE Computer Society, pp. 198-201, 1999. Abstract

n/a

n/a
Monteiro, A. S., M. Goulão, F. B. Abreu, A. B. Almeida, and P. Sousa, "Controlling the Evolution of Legacy Systems Using Internet Technology: A Defect Report and Tracking System", 6th European Conference on Software Quality, Vienna, Austria, European Organization for Quality, pp. 473-483, 1999. Abstract

n/a

n/a
Monteiro, R., J. Araújo, V. Amaral, M. Goulão, and P. Patrício, "Adding Interoperability to Requirements Models", Software Quality Professional Journal, vol. 15, issue 4, pp. 16-27, 2013. Abstract

(c) American Society for Quality

sqpv15i4monteiro.pdfWebsite

Complex software systems inherently require a variety of models used in all of the development stages. A general concern is to guarantee consistency and traceability among these models. Model-driven development (MDD) can help tackle this concern. Although MDD has been mainly used in later development stages, it is relatively unexplored in requirements engineering. In this article, the authors discuss how to
leverage MDD to support consistency and traceability in requirements modeling. To illustrate this, they apply MDD to goaloriented requirements engineering (GORE) by making bidirectional mappings between two well-known GORE approaches (i* and KAOS). The result is an interoperable framework that can be used to migrate from one goal model to another through automatic model transformations, keeping consistency and traceability, so requirements engineers can make the best use of each approach.

Machado, R., M. Goulão, F. B. e Abreu, and J. Pascoal Faria, "Introduction to Special Issue: Quality in Information and Communications Technology", Innovations in Systems and Software Engineering, vol. 10, issue 1, pp. 1-2, 2014. machado2014isse.pdfWebsite
L
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.

G
Gralha, C., J. Araújo, and M. Goulão, "Metrics for measuring complexity and completeness for social goal models", Information Systems, 2015. AbstractWebsite

Goal-oriented Requirements Engineering approaches have become popular in the Requirements Engineering community as they provide expressive modelling languages for requirements elicitation and analysis. However, as a common challenge, such approaches are still struggling when it comes to managing the accidental complexity of their models. Furthermore, those models might be incomplete, resulting in insufficient information for proper understanding and implementation. In this paper, we provide a set of metrics, which are formally specified and have tool support, to measure and analyse complexity and completeness of goal models, in particular social goal models (e.g. i⁎). Concerning complexity, the aim is to identify refactoring opportunities to improve the modularity of those models, and consequently reduce their accidental complexity. With respect to completeness, the goal is to automatically detect model incompleteness. We evaluate these metrics by applying them to a set of well-known system models from industry and academia. Our results suggest refactoring opportunities in the evaluated models, and provide a timely feedback mechanism for requirements engineers on how close they are to completing their models.

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.

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, "Software Components Evaluation: an Overview", 5ª Conferência da APSI (CAPSI 2004), Lisbon, 2004. Abstract

n/a

n/a
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.

Goulão, M., "Component-Based Software Engineering: a Quantitative Approach", Faculdade de Ciências e Tecnologia, Universidade Nova de Lisboa, Caparica, Universidade Nova de Lisboa, 2008. Abstract

http://run.unl.pt/handle/10362/1883

tese.pdf

Background: Often, claims in Component-Based Development (CBD) are only sup-
ported by qualitative expert opinion, rather than by quantitative data. This contrasts
with the normal practice in other sciences, where a sound experimental validation of
claims is standard practice. Experimental Software Engineering (ESE) aims to bridge
this gap. Unfortunately, it is common to find experimental validation efforts that are
hard to replicate and compare, to build up the body of knowledge in CBD.


Objectives:
In this dissertation our goals are (i) to contribute to evolution of ESE, in
what concerns the replicability and comparability of experimental work, and (ii) to ap-
ply our proposals to CBD, thus contributing to its deeper and sounder understanding.


Techniques:
We propose a process model for ESE, aligned with current experimen-
tal best practices, and combine this model with a measurement technique called
Ontology-Driven Measurement (ODM). ODM is aimed at improving the state of prac-
tice in metrics definition and collection, by making metrics definitions formal and ex-
ecutable, without sacrificing their usability. ODM uses standard technologies that can
be well adapted to current integrated development environments.


Results:
Our contributions include the definition and preliminary validation of a pro-
cess model for ESE and the proposal of ODM for supporting metrics definition and
collection in the context of CBD. We use both the process model and ODM to perform
a series experimental works in CBD, including the cross-validation of a component
metrics set for JavaBeans, a case study on the influence of practitioners expertise in
a sub-process of component development (component code inspections), and an ob-
servational study on reusability patterns of pluggable components (Eclipse plug-ins).
These experimental works implied proposing, adapting, or selecting adequate ontolo-
gies, as well as the formal definition of metrics upon each of those ontologies.


Limitations:
Although our experimental work covers a variety of component models
and, orthogonally, both process and product, the plethora of opportunities for using
our quantitative approach to CBD is far from exhausted.


Conclusions:
The main contribution of this dissertation is the illustration, through
practical examples, of how we can combine our experimental process model with
ODM to support the experimental validation of claims in the context of CBD, in a re-
peatable and comparableway. In addition, the techniques proposed in this dissertation
are generic and can be applied to other software development paradigms.