Ana M. Moreno

Ana M. Moreno
Universidad Politécnica de Madrid | UPM · Departamento de Lenguajes y Sistemas Informáticos e Ingeniería de Software

About

157
Publications
94,483
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
3,600
Citations
Introduction
Ana M. Moreno is full professsor at the School of Computer Science, Universidad Politécnica de Madrid. Ana does research in Software Engineering. She has published more than 30 papers in JCR journals, and a significant number of papers in Software Engineering conferences. Check Ana's full cv at: https://sites.google.com/site/anammorenosanchez/home
Additional affiliations
November 1997 - present
Universidad Politécnica de Madrid
Position
  • Professor (Full)

Publications

Publications (157)
Article
Full-text available
Agile project management has become essential in modern enterprises, particularly in the software industry, due to its flexibility and adaptability. This paper presents an empirical evaluation of the Ball Point Game (BPG), a non-digital serious game designed to teach Agile Project Management principles. The evaluation is based on three case studies...
Chapter
Full-text available
This article provides a rich discussion on how the sustainability of agile development processes can be enhanced. In particular, we focus on a recently developed framework, named GLUX, that integrates Lean UX into Scrum. GLUX’s main goal is to facilitate a seamless integration between agile and user experience (UX) by using gamification to motivate...
Article
Organizational type mismatch occurs when organizations use traditional approaches to govern agile teams. It has harmful effects on organizational performance and team morale. This article explores this phenomenon at agile software development small- and medium-sized enterprises (SMEs). In particular, we aimed to evaluate the importance, frequency,...
Preprint
This article provides a rich discussion on how the sustainability of agile development processes can be enhanced. In particular, we focus on a recently developed framework, named GLUX, that integrates Lean UX into Scrum. GLUX's main goal is to facilitate a seamless integration between agile and user experience (UX) by using gamification to motivate...
Article
The software industry is a dynamic and ever‐changing environment where knowledge dissemination and ongoing learning is an open challenge, especially in agile organizations where continuous learning is essential. Organizational training covers the set of activities that drive this learning process and is one of the process areas of process improveme...
Preprint
Full-text available
The integration of Agile development and user experience (UX) has received significant attention over the past decade. The literature contains several process models and wide-ranging discussion about the benefits and challenges of this integration. However, academia has given this integration short shrift. In fact, there are very few publications c...
Article
We discuss the extent to which Capability Maturity Model Integration (CMMI) v2.0 addresses Agile alignment challenges. We identify the two most significant CMMI v2.0 artifacts for integration, and highlight important issues that organizations need to tackle.
Preprint
Full-text available
CMMI and Agile can work together. Over 80% of CMMI appraisals in 2018 were conducted at agile organizations, even though pre-2018 CMMI versions do not provide guidelines for agile contexts. A number of experience reports and research studies address the alignment between the two approaches but also pinpoint open tactical and organizational challeng...
Chapter
One of the central tasks of process improvement is to deal with changing environmental conditions, and organizational training is crucial for this purpose. The software industry is one such dynamic and ever-changing environment. However, knowledge dissemination and ongoing learning is an open challenge in this industry, especially in agile organiza...
Chapter
Full-text available
The fields of Big Data, Data Analytics and Data Science, which are key areas of current and future industrial demand, are quickly growing and evolving. Within Europe, there is a significant skills gap which needs to be addressed. A key activity is to ensure we meet future needs for skills and align the supply of educational offerings with the deman...
Chapter
This chapter includes a set of use cases and examples of practical use of EDSF for developing data science curricula, competences assessment, data science team building and addressing new skills demand for emerging data economy.
Article
Agile methods have been recognized as providing tangible benefits, some of them directly related to software project management (SPM). In this paper we address in detail the relationship between Agile and SPM, discussing the extent to which the use of agile practices helps to reduce or avoid the occurrence of different SPM antipatterns. Our results...
Article
Software process improvement (SPI) initiatives have contributed for a long time to the progress of software development. However, the outcome of such initiatives has not always been as effective as expected. The literature of SPI points out that motivation of practitioners involved in SPI initiatives is a critical factor for its success. On the oth...
Conference Paper
The growing demand for data scientists and their importance in industrial trends has resulted in a number of recent initiatives to promote skills in data science. One of these initiatives is a badge based scheme for the recognition of skills in data science developed as part of the BDVe project with the collaboration of the BDVA. This initiative is...
Conference Paper
Full-text available
The potential of gamification is based on the hypothesis that it improves user engagement, motivation, and performance. Gamification has already been used in software development with promising results. Our aim is to get a snapshot of the state of the practice of gamification and agile software development, and to discover what evidence there is ab...
Article
The potential of gamification in education is based on the hypothesis that it supports and motivates students and can thus lead to enhanced learning processes and outcomes. Gamification in software engineering (SE) education is in its infancy. However, as SE educators we are particularly interested in understanding how gamification is pollinating o...
Article
Full-text available
A qualified and motivated project manager is a key factor in a software project’s success. Thus, getting the most out of those managers is important. Feedback is a critical part of this process. With this in mind, this article recommends the best practices for evaluating software project managers.
Conference Paper
Full-text available
The integration of usability practices in software development is not a straightforward process. In this context, the application of usability maturity models (UMM) in a software organization can provide insightful information to improve such integration. This paper discusses the design and application characteristics of the UMMs used over the last...
Article
Full-text available
The lack of user engagement, the absence of user feedback, incomplete and continuously changing user requirements are among the critical concerns that cause projects to fail. User-centered design (UCD) and agile software development are two iterative approaches that have been proposed to overcome such concerns. UCD is a design process focusing on u...
Conference Paper
Training existing and future software project managers presents a challenge to the academic community. Software project management is usually taught as part of software engineering bachelor or master programs which are generally based on SWEBOK. However, evidence shows that even when SWEBOK provides some software project management knowledge it is...
Article
Full-text available
Software project management antipatterns can help practitioners identify and avoid practices that will hinder success. This article provides a consolidated list of such antipatterns and discusses their implications.
Conference Paper
Full-text available
In 2003, the original paper with this title was published as part of CSEET 2003. It focused on resolving communication issues between software project managers and developers and introduced a corporate strategy based means of evaluating software engineers. Now, more than a decade later, we could benefit from what we have learned in other fields abo...
Article
Software companies encourage and further the use of collaborative tools and skills at the work place in pursuit of the benefits of their use: they improve communication, productivity and efficiency, and competitiveness. Besides, undergraduate and graduate software engineering computing curricula recommend subjects related to effective cooperative w...
Conference Paper
Full-text available
Human centricity refers to the active involvement in the overall product lifecycle of different human actors including end-users, stakeholders and providers. Persona is one of the different tools that exist for human centricity. While marketing is the original domain in which persona was introduced, this technique has also been widely used in user-...
Article
Full-text available
Educating software engineers is a long-standing challenge. This article addresses the issue by examining the overlap between the software engineering educational standards (SE 2004 and GSwE 2009) and one of the most well-known software process improvement models (CMMI-DEV). The resulting data are useful to both industry and academia for improving t...
Article
Full-text available
The history of software engineering has been marked by many famous project failures documented in papers, articles, and books. This pattern of lack of success has prompted the creation of dozens of software analysis, requirements definition, design methods, programming languages, software development environments, and software development processes...
Article
Full-text available
Over the past two decades, the HCI community has proposed specific features that software applications should include to overcome some of the most common usability problems. However, incorporating such usability features into software applications may not be a straightforward process for software developers who have not been trained in usability (i...
Conference Paper
Full-text available
Many large and distributed companies run agile projects in development environments that are inconsistent with the original agile ideas. Problems that result from these inconsistencies can affect the productivity of development projects and the timeliness of releases. To be effective in such contexts, the agile ideas need to be adapted. We take an...
Article
Full-text available
The integration of usability engineering methods into software development life cycles is seldom realized in industrial settings.
Conference Paper
Full-text available
Usability is a critical quality factor. Therefore, like traditional software teams, agile teams have to address usability to properly catch their users experience. There exists an interesting debate in the agile and usability communities about how to achieve this integration. Our aim is to contribute to this debate by discussing the incorporation o...
Conference Paper
The Use Case Precedence Diagram (UCPD) is a technique that addresses the problem of determining the construction sequence or prioritization of a software product from the developer’s perspective. This paper presents a replicated controlled experiment with undergraduate students. The results obtained from this experiment confirm the results obtained...
Article
Full-text available
In this paper, we present a linguistic approach in order to achieve the object oriented analysis (OOA) process in a systematic way. The approach is based on the definition of a formal correspondence between a subset of structures from linguistic world, called linguistic patterns, and a subset of structures from conceptual world, called conceptual p...
Conference Paper
The Second Workshop “Dealing with Usability in an Agile Domain” is aimed to be a forum for discussing these approximations for the intersection of agility and usability. More concretely, issues regarding the implications of usability in agile environments, alternatives for integrating HCI techniques in an agile process, approaches for incorporating...
Article
Full-text available
For years, the Human Computer Interaction (HCI) community has defined the expected characteristics of usable software systems. However, from a Software Engineering (SE) perspective, the process of incorporating usability into software is not always straightforward, as many usability features have strong implications in the underlying architecture....
Article
Software development is influenced by the need to build reusable applications. Defining general-purpose mechanisms that are valid for implementing usability across all systems is a challenging undertaking because of system diversity. In this paper, we present an effort to develop general-purpose guidelines to help to build usability features into s...
Conference Paper
Use Cases are the most utilized technique to specify software requirements. Currently, there are several proposals based on this technique to address the problem of determining the scope and construction sequence of a software, but most of them lack ease of use from the developer’s perspective. In this paper, we present an approach to determine sof...
Article
Is 25 years enough time to build up a coherent body of knowledge that can help point to useful principles? As a testbed for helping us answer this question, software testing techniques are a good place to start. Few software practices are as important as testing, and testing techniques are amenable to measurement and reasoning about their effective...
Conference Paper
Full-text available
The majority of software development projects utilize the use cases technique to define software requirements, which are necessary to determine not only the scope of the software itself, but also the sequence in which this software will be constructed. Currently, there are several proposals to define the construction sequence of software requiremen...
Article
Full-text available
Like any other software system quality attribute, usability places requirements on software components. In particular, it has been demonstrated that certai n usability features have a direct impact throughout the software process. This paper details an approach th at looks at how to deal with certain usability feature s in the early software develo...
Conference Paper
Full-text available
Nowadays, the concept of Model Transformation Technology (MTT) is widely accepted in the Software Engineering community. These technologies have the capability of generating software code (solution space) from a conceptual model that specifies the system abstractly (problem space). Most MTTs disregard interaction modelling (and specifically usabili...
Article
Full-text available
This paper proposes new analysis method, called POAM (Problem-Oriented Analysis Method). POAM has been developed to solve several shortcomings of existing conceptual models (solution orientation and dependence of concrete development approaches). Those shortcomings have adverse effects on software development, since practitioners are encouraged to...
Conference Paper
This paper presents some guidelines to help software designers to design architectures that support particular usability features. We focus on features with high impact on software functionality and therefore on software design, like Feedback or Undo/Cancel. We have adopted an empirical approach to propose some design recommendations to be used to...
Article
Full-text available
Like any other quality attribute, usability imposes specific constraints on software components. Features that raise the software system's usability have to be considered from the earliest development stages. But, discovering and documenting usability features is likely to be beyond the usability knowledge of most requirements engineers, developers...
Conference Paper
Full-text available
User-centered design is not just about building nice-looking and usable interfaces, and software development is not just about implementing functionality that supports user tasks. This paper aims to build a tighter fit between human-computer interaction and software engineering practices and research by addressing what software and usability engine...
Article
Full-text available
This paper analyses what implications usability has for software development, paying special attention to the impact of this quality attribute on design. In this context, the aim is twofold. On the one hand, we intend to empirically corroborate that software design and usability are really related. This would mean that this, like other quality attr...
Conference Paper
Requirements engineering research has been conducted for over 40 years. It is important to recognize the plethora of results accumulated to date to: (a) improve researchers' understanding of the historical roots of our field in the real-world and the problems that they are trying to solve, (b) expose researchers to the breadth and depth of solution...
Article
Full-text available
RESUMEN RESUMEN Software engineering is a relatively young field and experimental software engineering is even younger , so undisputed facts are few and far between . Nevertheless , experimental results can help practitioners make better decisions , and the authors have aggregated results derived from individual unit - testing experiments publish...
Conference Paper
Full-text available
The replication of experiments is a key undertaking in SE. Successful replications enable a discipline's body of knowledge to grow, as the results are added to those of earlier replications. However, replication is extremely difficult in SE, primarily because it is difficult to get a setting that is exactly the same as in the original experiment. C...
Conference Paper
This paper reports a systematic review of empirical studies concerning the effectiveness of elicitation techniques, and the subsequent aggregation of empirical evidence gathered from those studies. The most significant results of the aggregation process are as follows: (1) Interviews, preferentially structured, appear to be one of the most effectiv...
Article
Four papers and a roundtable discussion shed light on the current state of software testing practices. Case studies from industry experience address topics including unit-testing practices, agile testing, and automating software testing. Although many of these approaches show promise, software testing is still one of the more neglected practices wi...
Article
Full-text available
INTRODUCTION: The objective of this study is to analyze the Spanish scientific publications in requirements engineering, comparing them with those of the European Union countries. METHOD: Identification, using several procedures, of 2625 publications with which the analysis has been carried out. RESULTS: Quantitative data about the volume of scient...
Article
RESUMEN RESUMEN The human dimension is a critical factor in any organization, especially in software companies where the production process is essentially intellectual. One key aspect of the software engineering workforce is identifying the people best suited for development roles. Despite its importance , there is little support for this task ,...
Conference Paper
Full-text available
Software development organizations wanting to introduce usability practices into their defined software process have to undertake laborious efforts for that purpose, since, for the time being, there exists a lack of reference model or framework which indicates where and how in the software process usability needs to be considered. They also have to...
Chapter
Software development organizations are paying more and more attention to the usability of their software products, as increasing importance is attached to usability as a critical software quality attribute. The HCI (Human-Computer Interaction) field offers techniques aimed at producing a software product with a good usability level, but their use i...
Article
Full-text available
A major goal of requirements engineering (RE) research is to improve society's knowledge and practice of the RE discipline so as to positively impact society's ability to build new, ever more effective software systems. Since software systems now permeate almost every aspect of society, success in constructing such systems should benefit the econom...
Article
A Software Process Model Handbook for Incorporating People's Capabilities offers the most advanced approach to date, empirically validated at software development organizations. This handbook adds a valuable contribution to the much-needed literature on people-related aspects in software engineering. The primary focus is on the particular challenge...
Article
Full-text available
Software development organizations wanting to introduce usability practices into their defined software process have to undertake laborious efforts for that purpose, since, for the time being, there exists a lack of reference model or framework which indicates where and how in the software process usability needs to be considered. They also have to...
Chapter
Full-text available
Usability has become a critical quality factor in software systems, and it has been receiving increasing attention over the last few years in the SE (software engineering) field. HCI techniques aim to increase the usability level of the final software product, but they are applied sparingly in mainstream software development, because there is very...
Article
Full-text available
Testing technique-related empirical studies have been performed for 25 years. We have managed to accumulate a fair number of experiments in this time, which might lead us to think that we now could have a sizeable empirically backed body of knowledge (BoK) on testing techniques. However, the experiments in this field have some flaws, and, consequen...
Article
Full-text available
RESUMEN RESUMEN Undergraduate programs that cover knowledge related to software engineering range from software engineering-specific programs to traditional computer science programs, which might teach some subjects related to software engineering. Software engineering-specific programs have proliferated in countries such as the US , Australia ,...
Article
This paper examines the problems of applying traditional function points count rules to virtual reality systems (VRS). From the analysis of the differences between traditional and VRS systems, a set of deficiencies in the IFPUG 4.1 function points count method was detected. Due to the increasing importance of these kinds of applications, it is nece...