Publications

Export 24 results:
Sort by: Author Title [ Type  (Desc)] Year
Miscellaneous
Goulão, M., A. S. Monteiro, N. P. Ribeiro, A. B. Almeida, F. B. Abreu, and P. Sousa, I Relatório de Actividades do Protocolo Marinha Portuguesa / INESC, : DAMAG / INESC, 1997. Abstract

n/a

n/a
Goulão, M., A. S. Monteiro, J. F. Martins, N. P. Ribeiro, A. B. Almeida, F. B. Abreu, and P. Sousa, II Relatório de Actividades do Protocolo Marinha Portuguesa / INESC, : DAMAG / INESC, 1998. 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
Journal Article
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
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.

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.

Conference Proceedings
Goulão, M., and S. Matalonga, "Experimental Software Engineering Latin America Workshop (ESELAW 2015)", CIbSE 2015, Lima, Peru, 2015.
Conference Paper
Araújo, J., M. Goulão, A. Moreira, I. Simão, V. Amaral, and E. Baniassad, "Advanced Modularity for Building SPL Feature Models: a Model-Driven Approach", 28th ACM Symposium on Applied Computing, Requirements Engineering Track, ACM-SAC 2013, Coimbra, Portugal, ACM, 18-22 Mar., 2013. Abstractaraujo2013sac.pdf

Feature Models are commonly used to specify commonalities and variabilities in Software Product Lines (SPL). Our goal is to enhance feature modeling with traceability and improved support for crosscutting concerns. While traceability will show the features’ requirement-origins, providing means to reason about
their existence, crosscutting concerns will be handled through advanced modularity mechanisms (e.g. aspects), making the impact of changes to SPL models less difficult to understand and analyze. The result is Theme/SPL, a novel SPL requirements technique based on a concern-driven approach (Theme/Doc). Theme/SPL includes the proposal of a domain-specific language for specifying Theme/Doc models and uses model-driven development to generate automatically feature models from them. We show the applicability of the technique through a case study using a within-group design to evaluate the final results and tools developed.

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

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.

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.

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

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.

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.

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

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.