• 2018-07
  • 2018-10
  • 2018-11
  • 2019-04
  • 2019-05
  • 2019-06
  • 2019-07
  • 2019-08
  • 2019-09
  • 2019-10
  • 2019-11
  • 2019-12
  • 2020-01
  • 2020-02
  • 2020-03
  • 2020-04
  • 2020-05
  • 2020-06
  • 2020-07
  • 2020-08
  • 2020-09
  • 2020-10
  • 2020-11
  • 2020-12
  • 2021-01
  • 2021-02
  • 2021-03
  • 2021-04
  • 2021-05
  • Some studies have integrated the use of cloud computing


    Some studies have integrated the use of cloud computing with user interfaces in the domain of our proposal (i.e. UI). In [24] the authors work with Android devices to achieve more flexibility in the user interfaces by making use of information about the environment (for example, with an ambient light sensor, battery status, user interaction, etc.). The service we have developed is also designed to store information about the environment, including the ability to capture the user's interaction with the components because of Node.js server communication management. In the literature, there are other notable works that are not directly related to cloud computing, but with GUIs built from components or services. In [45] the authors analyzed the features of building mashup GUIs using W3C widgets, and proposed an extension of the widget model. The reason for extending this model is to support a variety of component communication patterns. In contrast, our proposal developed a mechanism that hides the communication process in the W3C component implementation, by using communication ports. In [26], the authors proposed use of MDA modeling to develop Web 2.0 applications such as mashup. For UML constraints they TPMPA receptor make use of a profile developed specifically for this domain. In our case, instead of a UML profile, we restricted the modeling language by using a domain-specific language [23] to describe our architectures and COTSgets component types.
    Conclusions and future work Our approach proposes the use of another DSL to specify components. Thus, the possible application domains are restricted to those software architectures built from components that meet our component definition. We call our type of component COTSget, from the combination of COTS and “gadget” where gadget may be any software appliance that can work alone or as a piece of architecture. Such components are medium or high-granularity that encapsulate some functionality and can interact with other elements of the architecture through their interfaces. Therefore, inspired by the description of third-party COTS components, our DSL defines interfaces, properties and dependencies. This language can also provide some information about the implementation, packaging and marketing of each component. In summary, the main contributions of the approach presented in this paper are the following: Apart from its contributions, our approach has some limitations that must be taken into account. One of the most important shortcomings is the mandatory adaptation of components and architectures to fit the proposed languages. Furthermore, only those components which (a) can be implemented following the specifications and (b) are intended to communicate with other components of the architecture can be part of this approach. Other limitations are more related to its practicality. Therefore, as future work, we intend to apply the infrastructure to different real systems, and provide it with new capabilities. One of our main goals is to apply elements from the field of “Business Intelligence” [35] and its uses from cloud computing through “Big Data” [1]. Big Data involves a massive amount of data collected from different sources over time and aims to facilitate the task of analyzing this data using cloud services. Thus, in our approach, user interaction with the components could be recorded for future decision making, for example, to tailor the user interface to their specific needs. Regarding the use of MDE technologies, there are different possibilities that can greatly complement this work. Processing operations or refactoring of models can be used to adapt or modify software architectures (at run-time), for example, from changes in context or due to user interaction [39]. Both the use of mediators and solutions based on “trading” can also provide an interesting mechanism for the resolution of different platform-dependent configurations from the same platform-independent architecture [8].