Salvador Trujillo

Salvador Trujillo
Ikerlan · Information and Communication Technology Area

Ph.D.

About

67
Publications
10,726
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
1,145
Citations
Citations since 2017
1 Research Item
370 Citations
20172018201920202021202220230204060
20172018201920202021202220230204060
20172018201920202021202220230204060
20172018201920202021202220230204060
Additional affiliations
November 2013 - January 2016
Ikerlan
Position
  • Software Production Area Manager

Publications

Publications (67)
Conference Paper
Full-text available
Scalability in modeling has many facets, including the ability to build larger models and domain specific languages (DSLs) efficiently. With the aim of tackling some of the most prominent scalability challenges in Model-based Engineering (MBE), the MONDO EU project developed the theoretical foundations and open-source implementation of a platform f...
Conference Paper
Recent approaches persist models in databases to overcome performance and memory limitations of XMI. Among them, Connected Data Objects (CDO) is a database-based model repository widely used in Model Based Engineering by academia and industry. Model traversal queries are intensively used in modelling scenarios and their performance greatly impacts...
Conference Paper
Industrial applications of model-driven engineering to develop large and complex systems resulted in an increasing demand for collaboration features. However, use cases such as model differencing and merging have turned out to be a difficult challenge, due to (i) the graph-like nature of models, and (ii) the complexity of certain operations (e.g. h...
Conference Paper
The development of mixed-criticality systems that integrate applications of different criticality levels (safety, security, real-time and non-real time) in a single embedded system can provide multiple benefits such as product cost-size-weight reduction, reliability increase and scalability. However, the integration of applications of different lev...
Article
In variant-rich workflow-based systems, a major concern for process variability is the context-aware configuration of the variants. This means that context information, not users, drives process configuration. To support context-aware process configuration in a dynamic environment, in which context information is available only at run time, smart w...
Conference Paper
Context-awareness and adaptability are perceived critical for variability-aware workflow-based systems, which often require efficient process execution. However, existing approaches supporting dynamic variability do not report performance metrics gained from the process configuration phase. To overcome this situation, we present a quantitative eval...
Article
Persisting and querying models larger than a few tens of megabytes using XMI introduces a significant time and memory footprint overhead to MDD workflows. In this paper, we present an approach that attempts to address this issue using an embedded relational database as an alternative persistence layer for EMF models, and runtime translation of OCL-...
Article
In variant-rich workflow-based systems, one of major concerns for process variability is the context-aware configuration of the different variants. This means that contextual information, not users, drives the process configuration for every particular situation. To support context-aware process configuration in dynamic environment, where context i...
Conference Paper
Different studies have proved that XMI (default persistence in Eclipse Modelling Framework) has some limitations when operating with large models. Recent approaches propose databases for persistence of models. Therefore, persistence level languages could be used to efficiently query models. While persistence level languages increase performance as...
Article
The consumer market is continuously pushing for smarter, faster, more durable and cheaper products with ever more complex and sophisticated functionality. Other fields such as safety-critical and dependable applications are not unaware of these requirements, and even impose others (e.g. certification). In the current multi-core era, industry and re...
Conference Paper
Full-text available
Today, system designs and their management are crucial parts of most systems development processes. To stay competitive engineers from several expertise domains use Model-Based engineering (MBE) to design the systems they intend to implement in order to specify, test, simulate, validate and iterate their design as soon as possible. System designs a...
Conference Paper
Persisting and managing models larger than a few tens of megabytes using XMI introduces a significant time and memory foot-print overhead to MDE work flows. Several approaches provide alternative persistence mechanisms based on databases that can be integrated with EMF. However, to the best of our knowledge there is less coverage of approaches on m...
Conference Paper
Managing models requires extracting information from themand modifying them, and this is performed through queries. Queries canbe executed at the model or at the persistence-level. Both are complementary but while model-level queries are closer to modelling engineers, persistence level queries are specific to the persistence technology and leverage...
Conference Paper
Full-text available
In emerging domains such as Cloud-based Industrial Control Systems (ICSs) and SCADA systems where data-intensive and high performance computing are needed, a higher degree of flexibility is being demanded to meet new stakeholder requirements, context changes and intrinsic complexity. In this light, Dynamic Software Product Lines (DSPLs) provide a w...
Conference Paper
Full-text available
The analysis of massive amounts of diverse data provided by large cities, combined with the requirements from multiple domain experts and users, is becoming a challenging trend. Although current process-based solutions rise in data awareness, there is less coverage of approaches dealing with the Quality-of-Result (QoR) to assist data analytics in d...
Article
In dynamic environments, changes are often unpredictable and complex. Process models cannot be fully specified up-front and process flexibility becomes a key issue. Enterprise applications and systems supporting such processes are increasingly being architected in a service-oriented style. In this light, our goal is to analyze service orchestration...
Conference Paper
Process-based context-aware applications are increasingly becoming more complex and dynamic. Besides the large sets of process variants to be managed in such dynamic systems, process variants need to be context sensitive in order to accommodate new user requirements and intrinsic complexity. This paradigm shift forces us to defer decisions to runti...
Conference Paper
Full-text available
The development of mixed-criticality systems that integrate applications of different criticality levels (safety, security, real-time and non real-time) can provide multiple benefits such as product cost-size-weight reduction, reliability increase and scalability. However, the integration of applications of different levels of criticality leads to...
Conference Paper
Full-text available
Modern embedded applications already integrate a multitude of functionalities with potentially different criticality levels into a single system and this trend is expected to grow in the near future.Without appropriate preconditions, the integration of mixed-criticality subsystems can lead to a significant and potentially unacceptable increase of e...
Conference Paper
Cloud service-based applications are to be adapted to serve multiple platforms and stakeholders. Atop of such services, Smart Green Buildings are fostering a plethora of processes within their sustainability life-cycle. This introduces a number of challenges, as how to support multiple perspectives of domain-specific variability and how to deal wit...
Conference Paper
Full-text available
The development of mixed-criticality systems that integrate applications of different criticality levels (safety, security, real-time and non real-time) can provide multiple benefits such as product cost-size-weight reduction, reliability increase and scalability. However, the integration of applications of different levels of criticality leads to...
Conference Paper
Modern embedded applications typically integrate a multitude of functionalities with potentially different criticality levels into a single system. Without appropriate preconditions, the integration of mixed-criticality subsystems can lead to a significant and potentially unacceptable increase of engineering and certification costs. A promising sol...
Conference Paper
The Web is becoming a main conduit for our daily activities. When an activity expands across different websites, the user is left alone in the effort to aggregate the resources and services required in carrying out these cross-site activities. This results in a lost of focus, and constant switching among websites. The problem is that these webflows...
Article
Full-text available
Diversity is prevalent in modern software systems to facilitate adapting the software to customer requirements or the execution environment. Diversity has an impact on all phases of the software development process. Appropriate means and organizational structures are required to deal with the additional complexity introduced by software variability...
Conference Paper
Full-text available
Desktop tools are steadily being turned into web applications. Tool integration then becomes a question of website integration. This work uses Web Augmentation techniques for this purpose. An integration layer is deployed on top of the existing Web-based tools that augments the rendering of those tools for the integration experience. Layers are spe...
Conference Paper
Security and Dependability (S&D) have become mandatory requirements while engineering embedded systems in some industrial sectors. Typically, S&D requirements are developed ad-hoc for each system, preventing further reuse beyond domain-specific boundaries. In recent times, S&D patterns have been introduced to provide reusable solutions. Those patte...
Conference Paper
To a larger extent than in other software applications, embedded systems commonly require the participation of a mixture of engineers that collaboratively produce a piece of software. This makes this area particularly prone to Domain Specific Languages (DSLs). By raising the abstraction level, DSLs facilitate the understanding of a DSL specificatio...
Conference Paper
The complexity in embedded systems is increasing steadily due to richer functionalities offered by more powerful hardware to attain market demands. Model Driven Engineering(MDE) is a promising approach for handling this complexity by using models which help to capture several concerns of these systems. In this paper we analyze the modeling of embed...
Article
The conception and design of Resource Constrained Embedded Systems is an inherently complex endeavor. In particular, non-functional requirements from security, dependability and variability are exacerbating this complexity. Recent times have seen a paradigm shift in terms of design through the combination of multiple software engineering paradigms...
Conference Paper
Software Factories pose a paradigm shift that promises to turn application assembly more cost effective through systematic reuse. These advances in software industrialization have however reduced the cost of coding applications at the expense of increasing assembling complexity, i.e., the process of coming up with the final end application. To alle...
Conference Paper
Full-text available
We present a general approach to the incremental development of model-based applications using endogenous transformations, i.e. transformations whose input and output models conform to the same metamodel. Our work describes these transformations as model deltas that, when composed, deliver a complete model. We establish a relationship between a met...
Conference Paper
Full-text available
Model-Based Systems Engineering (MBSE) is an emerging engineering discipline whose driving motivation is to provide support throughout the entire system life cycle. MBSE not only addresses the engineering of software systems but also their interplay with physical systems. Quite frequently, successful systems need to be customized to cater for the c...
Article
Full-text available
The conception and design of software-intensive systems is an inherently complex endeavor. We experienced ourselves this complex-ity while engineering a wind turbine control system. Such complexity was faced by combining Software Product Line Engineering and Model-Driven Engineering. However, the application of both paradigms de-manded considerable...
Conference Paper
A software product line (SPL) is a family of related program variants in a well-defined domain, generated from a set of features. A fundamental difference from classical application development is that engineers develop not a single program but a whole family with hundreds to millions of variants. This makes it infeasible to separately check every...
Conference Paper
In software product line engineering, feature composition generates software tailored to specific requirements from a common set of artifacts. Superimposition is a popular technique to merge code pieces belonging to different features. The advent of model-driven development raises the question of how to support the variability of software product l...
Conference Paper
Done well, the blend of Model Driven Development (MDD) and Software Product Lines (SPL) offers a promising approach, mixing abstraction from MDD and variability from SPL. Although Model Driven Product Lines have flourished recently, the focus so far has been mostly on how to cope with the variability of models. This focus on model variability has l...
Article
Done well, the combined use of Model Driven Development (MDD) and Software Product Lines (SPL) oers a promising paradigm for software engineering. Such combination of abstraction from MDD and variability from SPL is particularly powerful in the eld of softwareintensive systems. Although this eld has ourished recently, the focus so far has been most...
Conference Paper
Full-text available
Software Product Lines aim at capturing the variability and commonality of a family of related programs that share a common set of assets. Variation points capture variabil- ity on the artifacts that constitute a product line. Depend- ing on the feature configuration, the variation points are bound according to instantiation logic or mechanism to r...
Conference Paper
Implementing software product lines is a challenging task. Depending on the implementation technique the code that realizes a feature is often scattered across multiple code units. This way it becomes difficult to trace features in source code which hinders maintenance and evolution. While previous effort on visualization technologies in software p...
Conference Paper
Families of products are steadily emerging for distinct settings such as embedded systems, navigational systems, financial applications or even web applications. This shifts the attention from individual product-centric development to software product line development where the focus is on constructing reusable assets from which customer-specific p...
Article
Software product lines (SPL) usually consist of code and non-code artifacts written in different languages. Often they are created by decomposing legacy applications into features. To handle different artifacts uniformly (code, doc- umentation, models, etc.), current SPL technologies either use an approach that is so general that it works on charac...
Article
Feature refactoring is the process of decomposing a system's code into a set of modules, called features, that are a means for communicating commonalities and variabilities to stakeholders. As features encapsulate functionality, different compositions of features yield a family of different systems. Previous work describes how feature decomposition...
Conference Paper
Software product line is a paradigm to develop a family of software products with the goal of reuse. In this paper, we focus on a scenario in which different products from different product lines are combined together in a third product line to yield more elaborate products, i.e., a product line consumes products from third product line suppliers....
Conference Paper
Full-text available
Step-wise refinement is a powerful paradigm for developing a com- plex program from a simple program by adding features incrementally where each feature is an increment in program functionality. Existing works focus on object-oriented representations such as Java or C++ artifacts. For this paradigm to be brought to the Web, refinement should be rea...
Conference Paper
Full-text available
Model Driven Development (MDD) is an emerging paradigm for software construction that uses models to specify programs, and model transformations to synthesize executables. Feature Oriented Programming (FOP) is a paradigm for software product lines where programs are synthesized by composing features. Feature Oriented Model Driven Development (FOMDD...
Conference Paper
Software architectures represent the design of a system for describing its main relevant parts. Recently, recording and documenting architectural design decisions has attracted the attention of the software architecture community. Design decisions are an important piece during the architecting process that must be explicitly documented, but there i...
Conference Paper
Collaborations are a frequently occurring class of crosscutting concerns. Prior work has argued that collaborations are better implemented using Collaboration Languages (CLs) rather than AspectJ-like Languages (ALs). The main argument is that aspects flatten the objectoriented structure of a collaboration, and introduce more complexity rather than...
Conference Paper
Full-text available
Portlets strive to play at the front end the same role that Web services currently enjoy at the back end, namely, enablers of application assembly through reusable services. However, it is well known in the component community that, the larger the component, the more reduced the reuse. Hence, the coarse-grained nature of portlets (they encapsulate...
Conference Paper
Recent advances in Software Engineering have reduced the cost of coding programs at the expense of increasing the complexity of program synthesis, i.e. metaprograms, which when executed, will synthesize a target program. The traditional cycle of configuring-linking-compiling, now needs to be supplemented with additional transformation steps that re...
Conference Paper
Full-text available
Families of programs are steadily emerging in assorted domains where Software Product Line (SPL) paradigm provides a cost-effective development approach. Feature Oriented Programming (FOP) is a specific approach to SPL development where features not only sketch increments in program functionality, but are the building blocks of programs. There exis...
Article
Full-text available
Metaprogramming is the concept that program synthesis is a computation. Generative programming is about developing metapro-grams that synthesize other programs. Our intention goes one step be-yond: we aim to generate metaprograms, which when executed, will gen-erate a target program of a product line. This work describes the Gen-eRative metaprOgram...
Article
Full-text available
Reporting for analysis is a common demand to database programmers. Unlike dynamic data analysis, reporting tend to be foreseeable. Despite this fact, staff waste their time programming similar reports time and again, where reports are often built from scratch with little if any reuse at all. Based on the predictability and similarity among reports,...
Conference Paper
Full-text available
Abstract Feature refactoringis the process of decomposing a program into a set of modules, called features, that encapsulate increments in pro- gram functionality. Different compositions,of features yield differ- ent,programs. ,As programs ,are ,defined ,using ,multiple representations, such as code, makefiles, and documentation, fea- ture refactor...
Conference Paper
Full-text available
Families of applications are steadily emerging for distinct settings such as embedded systems, navigational systems, financial applications or even web applications. This moves the attention from single application development to Software Product Line (SPL) development where the focus is on constructing reusable artefacts of the assembly line from...
Conference Paper
Full-text available
The promotion of a clear separation between artifact construction and artifact assembling is one of the hallmarks of software product lines. This work rests on the assumption that the mechanisms for producing products consider- ably quicker, cheaper or at a higher quality, rest not only on the artifacts but on the assembling process itself. This le...
Conference Paper
Full-text available
A Portlet is a Web component that processes requests and generates dynamic content. Portlet consumers (e.g. a portal) use Portlets as pluggable user interface components. Typically, a Portlet is rendered as a window in the portal, the Portlet being a main building block for portal construction. The recent delivery of standards, namely, Web Services...
Conference Paper
Web service technology has proved its way as a function integration enabler. The next step is to achieve application integration whereby one appli- cation is made available within the context of a consumer application, and this can also include the interface. This is the aim of the WSRP initiative, spon- sored by OASIS. This initiative is standardi...
Conference Paper
Full-text available
Virtual co-branding moves to the Web a popular practice in the physical world whereby a customer partner syndicates the services (e.g. product retail) of a provider partner in his own portal. However; virtual brand integration is more than offering each brand products in the same virtual space. Other aspects such as reliability, usability or qualit...
Article
Full-text available
Feature Models (FM) are used to represent commonality and variabil-ity in Software Product Lines. Since the first proposal by Kang, the notation of FM has evolved in different ways: introducing cardinalities, using UML or XML notations, etcetera. In addition, the use of FMs is not only restricted to domain analysis because it is widely accepted tha...

Network

Cited By

Projects

Project (1)