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.
AbstractFeature 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.
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.
AbstractThe 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.
Abstractn/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.
Abstractn/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.
Abstractn/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.
AbstractDomain Specic 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,
effectiveness, 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 conrms our initial hypothesis and lays the ground for the discussion on how to include a systematic approach to DSL evaluation in the SLE process.
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.
Abstracthttp://er2016.cs.titech.ac.jp/
Requirements documents and models need to be used by many stakeholders with dierent technological prociency, 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 congurable to their particular needs. Information visualization techniques may help in this process. In this paper, we propose dierent views aimed at highlighting information that is relevant for a particular stakeholder, helping him to query requirements artifacts. We oer 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.
Abstractn/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.
Abstractn/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.
AbstractGoal-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.
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.
AbstractGoal-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.
Abstracthttp://dx.doi.org/10.1109/QUATIC.2010.36
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.