Publications

Export 65 results:
Sort by: Author Title [ Type  (Asc)] Year
Book Chapter
Alanen, M., J. Cabot, M. Goulão, and J. Sáez, "Doctoral symposium", UML Modeling Languages and Applications, vol. 3297: Springer Berlin / Heidelberg, pp. 85-93, 2005. 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.

Goulão, M., and F. B. Abreu, "An overview of metrics-based approaches to support software components reusability assessment", Software Quality Measurement: Concepts and Approaches, Hyderabad, ICFAI Books, pp. 264, 2007. Abstractgoulaoabreubookchapter.pdf

Objective: To present an overview on the current state of the art concerning metrics-based
quality evaluation of software components and component assemblies.
Method: Comparison of several approaches available in the literature, using a framework
comprising several aspects, such as scope, intent, definition technique, and maturity.
Results: The identification of common shortcomings of current approaches, such as
ambiguity in definition, lack of adequacy of the specifying formalisms and insufficient
validation of current quality models and metrics for software components.
Conclusions: Quality evaluation of components and component-based infrastructures
presents new challenges to the Experimental Software Engineering community.

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.

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.

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
Goulão, M., and F. B. Abreu, "Bridging the gap between Acme and UML 2.0 for CBD", Specification and Verification of Component-Based Systems (SAVCBS'2003), at the ESEC/FSE'2003, Helsinki, Finland, 2003. Abstract

n/a

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

n/a

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

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
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
e Abreu, F. B., and M. Goulão, "Coupling and Cohesion as Modularization Drivers: Are we being over-persuaded?", 5th European Conference on Software Maintenance and Reengineering (CSMR'2001), Lisboa, Portugal, IEEE Computer Society Press, pp. 47-57, 2001. 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
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.