Boni García - IEEE Xplore Author Profile

Showing 1-17 of 17 results

Filter Results

Show

Results

Modern web applications are complex and used for tasks of primary importance, so their quality must be guaranteed at the highest levels. For this reason, testing techniques (e.g., end-to-end) are required to validate the overall behavior of web applications. One of the most popular tools for testing web applications is Selenium WebDriver. Selenium WebDriver automates the browser to mimic real user...Show More
Massive Open Online Courses (MOOCs) are designed and developed in many ways, often paying more attention to the content of the course itself (e.g., videos, exercises, animations, texts…) than to the way the content is structured to achieve more efficient learning. We present a framework for encapsulating the content of the MOOC from an educational perspective. The metaphor used for it is that of Y...Show More
There are many applications that help orchestrate face-to-face, online, or hybrid classes through the cloud. Examples are polling apps like Wooclap or Mentimeter, digital boards like Jamboard or Miro, or diagramming tools like diagrams.net, Coggle, or Kialo. However, one can go one step further and integrate some of these tools in order to use the most appropriate tool for each teaching moment and...Show More
The coronavirus pandemic has accelerated the digital transformation of society, and in particular of university teaching. Professors who were reluctant or unwilling to take advantage of what digital technologies offered suddenly were forced to teach with technologies. In this paper, we describe teaching during the two main phases during the pandemic at Universidad Carlos III de Madrid (UC3M): the ...Show More
Functional testing of web and mobile applications consists on impersonating a user through some kind of GUI automation technology, being Selenium the most popular solution nowadays. This piece of research progresses in this area by proposing an advanced User Impersonation as a Service (UIaaS) based on cloud technologies. The proposed approach can be seen as a layered service, in which the top tier...Show More
This paper presents the concept of test orchestration, understood as a novel way to select, order, and execute in parallel a group of tests. Our view of test orchestration can be seen as a process in which different test cases are organized, assembled and executed following a topology that determines how their executions coordinate. We distinguish two types of orchestrations techniques: i) verdict...Show More
We present ElasTest, an open-source generic and extensible platform supporting end-to-end testing of large complex cloud systems, including web, mobile, network and WebRTC applications. ElasTest is developed following a fully transparent and open agile process around which a community of developers, contributors and users is collected. We demonstrate ElasTest in action by testing the FullTeachinge...Show More
Testing large complex distributed applications in cloud environments is a complex task. Developing tests to assess these kind of applications is time-consuming, and requires adapting and integrating many different tools for different purposes. The main objective of this demonstration is two-folded. First, it introduces ElasTest, a flexible open source testing platform aimed at simplifying end-to-e...Show More
In this article we introduce Kurento, an open source WebRTC media server and a set of client APIs intended to simplify the development of applications with rich media capabilities for the Web and smartphone platforms. Kurento features include group communications, transcoding, recording, mixing, broadcasting and routing of audiovisual flows, but also provides advanced media processing capabilities...Show More
WebRTC comprises a set of novel technologies and standards that provide Real-Time Communication on Web browsers. WebRTC makes simple the embedding of voice and video communications in all types of applications. However, releasing those applications to production is still very challenging due to the complexity of their testing. Validating a WebRTC service requires assessing many functional (e.g. si...Show More
WebRTC is a set of emerging technologies that extends the web browsing model to exchange real-time media with other browsers. Despite the fact that WebRTC is still in under development, it is gaining the attention of practitioners quickly. For that reason, the mechanisms to provide quality assurance for WebRTC are key to release these kind of applications to production environments. Nevertheless, ...Show More
The increasing acceptance of Network Function Virtualization (NFV) and Software Defined Networks (SDN) paradigms is enabling the creation of cloud technologies combining Real-Time multimedia Communications (RTC) and multimedia processing for big data. Although many vendors already provide solutions in these areas, none of them comprises a single platform for end-to-end service provisioning and dep...Show More
WebRTC server infrastructures are useful for creating rich real-time communication (RTC) applications. Developers commonly use them for accessing capabilities such as group communications, archiving, and transcoding. Details on how to implement and use such infrastructures securely are of increasing interest to the engineering community. Kurento is an open source project that provides a WebRTC med...Show More
Web software development is one of the most active areas and fastest growing industries in software and services development in Europe. In particular, Java Enterprise Edition is the mainstream European technology option for one million European developers. Since web development is not still a mature area, the proliferation of frameworks and components has both increased the required skills of web ...Show More
The configuration complexity of preproduction sites coupled with access-control mechanisms often impede the software development life cycle. Virtualization is a cost-effective way to remove such barriers and provide a test environment similar to the production site, reducing the burden in IT administrators. An Eclipse-based virtualization tool framework can offer developers a personal runtime envi...Show More
Software intensive systems evolve during their lifetime, which inevitably results in degrading software quality. In order to extend the lifetime of their products, organizations must adopt a more mature - evolutionary - software development approach that pays attention to quality aspects during all phases of the product life cycle. In this paper we list the achievements and lessons learned that we...Show More
The evolution of any software product over its lifetime is unavoidable, caused both by bugs to be fixed and by new requirements appearing in the later stages of the product's lifecycle. Traditional development and architecture paradigms have proven to be not suited for these continual changes, resulting in large maintenance costs. This has caused the rise of approaches such as Service Oriented Arc...Show More