187,679 research outputs found

    Engineering adaptive web applications

    Get PDF
    [no abstract

    h-ubu: An Industrial-Strength Service-Oriented Component Framework for JavaScript Applications

    No full text
    Industrial track: Effective Industry Use of Software-Engineering ToolsInternational audienceIn the last years, we developed web applications requiring a large amount of JavaScript code. These web applications present adaptation requirements. In addition to platform-centric adaptation, applications have to dynamically react to external events like connectivity disruptions. Building such applications is complex and we faced sharp maintainability challenges. This paper presents h-ubu, a service-oriented component framework for JavaScript allowing building adaptive applications. h-ubu is used in industrial web applications and mobile applications. h-ubu is available in open source, as part of the OW2 Nanoko project

    A web-based approach to engineering adaptive collaborative applications

    Get PDF
    Current methods employed to develop collaborative applications have to make decisions and speculate about the environment in which the application will operate within, the network infrastructure that will be used and the device type the application will operate on. These decisions and assumptions about the environment in which collaborative applications were designed to work are not ideal. These methods produce collaborative applications that are characterised as being inflexible, working on homogeneous networks and single platforms, requiring pre-existing knowledge of the data and information types they need to use and having a rigid choice of architecture. On the other hand, future collaborative applications are required to be flexible; to work in highly heterogeneous environments; be adaptable to work on different networks and on a range of device types. This research investigates the role that the Web and its various pervasive technologies along with a component-based Grid middleware can play to address these concerns. The aim is to develop an approach to building adaptive collaborative applications that can operate on heterogeneous and changing environments. This work proposes a four-layer model that developers can use to build adaptive collaborative applications. The four-layer model is populated with Web technologies such as Scalable Vector Graphics (SVG), the Resource Description Framework (RDF), Protocol and RDF Query Language (SPARQL) and Gridkit, a middleware infrastructure, based on the Open Overlays concept. The Middleware layer (the first layer of the four-layer model) addresses network and operating system heterogeneity, the Group Communication layer enables collaboration and data sharing, while the Knowledge Representation layer proposes an interoperable RDF data modelling language and a flexible storage facility with an adaptive architecture for heterogeneous data storage. And finally there is the Presentation and Interaction layer which proposes a framework (Oea) for scalable and adaptive user interfaces. The four layer model has been successfully used to build a collaborative application, called Wildfurt that overcomes challenges facing collaborative applications. This research has demonstrated new applications for cutting-edge Web technologies in the area of building collaborative applications. SVG has been used for developing superior adaptive and scalable user interfaces that can operate on different device types. RDF and RDFS, have also been used to design and model collaborative applications providing a mechanism to define classes and properties and the relationships between them. A flexible and adaptable storage facility that is able to change its architecture based on the surrounding environments and requirements has also been achieved by combining the RDF technology with the Open Overlays middleware, Gridkit

    Architectural Modifiability Considerations for Designing a Multi-device Web Application Platform

    Get PDF
    AbstractThe mobile web has enabled applications to become available anywhere, anytime and on any device. Numerous emerg- ing web applications have the ability to execute and collaborate across a wide range of web-enabled devices. However, due to the increasing variety of target delivery contexts, the development of such mobile applications has led to a strong need for adaptive software engineering. To address this significant issue, webinos was designed. Webinos is a multi-device distributed platform for ubiquitous web-based applications. In this paper we discuss the architectural modifiability tactics and patterns that were considered for the design of the webinos platform. Moreover, we reflect on the implementation details of realizing such a modifiable architectural design

    Adaptive model for web engineering methods to develop multi web applications in agile environment

    Get PDF
    Model Driven Web Engineering (MDWE) is an application of a model driven paradigm in the domain of web software development. MDWE is helpful because technologies and platforms of web applications constantly evolve into Web Engineering Methods (WEMs). The evolution of web applications has consequently introduced new features and challenges, therefore existing WEMs need to be improved. These WEMs have failed to develop modern web applications’ features. Furthermore, no single WEM is capable of covering the whole lifecycle phases. These issues decrease the usability. In addition, the Interaction Flow Modeling Language (IFML) as a recent method has also not been able to address them. This thesis developed a new WEM, Useable Adaptive Agile IFML (UAA-IFML) to solve these issues in several steps. In this research, mixed methods used were qualitative and quantitative methodologies. In the first step, a new adaptive model was defined for supporting the features of multi-web applications. The new model was developed via an adaptive model into the IFML metamodels known as Adaptive IFML (AIFML). In the second step, IFML was enriched through MockupDD for covering lifecycle, known as Agile IFML (A-IFML). This is because MockupDD provides an agile environment, hence agile lifecycle can solve the lifecycle issue. In the third step, a new adaptive model and agile process were combined as Adaptive Agile IFML (AAIFML). This integration increased the usability of the IFML method. In presenting the usability of AA-IFML, experimentation of the framework was extended to evaluate the usability of WEMs. Besides, feedbacks on the usability of AA-IFML were obtained from developers around the world using three instruments, namely performing tasks, answering questionnaires, and interviewing experts. Analysis on the feedback indicated a 20% improvement usability of the AA-IFML compared with current IFML. The findings have shown that the UAA-IFML is beneficial for developers, as they would only need to use one method to design modern web application features in the whole lifecycle phases

    Harnessing customized built-in elements -- Empowering Component-Based Software Engineering and Design Systems with HTML5 Web Components

    Full text link
    Customized built-in elements in HTML5 significantly transform web development. These elements enable developers to create unique HTML components tailored with specific design and purpose. Customized built-in elements enable developers to address the unique needs of web applications more quickly, supporting consistent user interfaces and experiences across diverse digital platforms. This study investigates the role of these features in Component-Based Software Engineering (CBSE) and Design Systems, emphasizing the benefits of code modularity, reusability, and scalability in web development. Customized built-in elements enable developers to address the unique needs of web applications more quickly, supporting consistent user interfaces and experiences across diverse digital platforms. The paper also discusses the difficulties and concerns that must be addressed when creating customized built-in elements, such as browser compatibility, performance optimization, accessibility, security, styling, and interoperability. It emphasizes the importance of standardization, developer tooling, and community interaction in order to fully realize the potential of these features. Looking ahead, customized built-in elements have potential in a variety of applications, including the Internet of Things (IoT), e-commerce, and educational technologies. Their incorporation into Progressive Web Apps (PWAs) is expected to further improve web experiences. While obstacles remain, the article concludes that HTML5 customized built-in elements are a driver for web development innovation, allowing the production of efficient, adaptive, and user-centric web applications in an ever-changing digital context.Comment: 13 pages, 5 figures, 15th International Conference on Web services & Semantic Technology (WeST 2023

    An Engineering Method for Adaptive, Context-aware Web Applications

    Get PDF
    Users of Web-based software encounter growing complexity of the software resulting from the increasing amount of information and service offering. As a consequence, the likelihood that users employ the software in a manner compatible with the provider's interest decreases. Depending on the purpose of the Web application, a provider's goal can be to guide and influence user choices in information and service selection, or to assure user productivity. An approach at addressing these goals is to adapt the software's behavior during operation to the context in which it is being used. The term context-awareness originates in mobile computing, where research projects have studied context recognition and adaptation in specific scenarios. Context-awareness is now being studied in a variety of systems, including Web applications. However, how to account for context in a Web Engineering process is not yet established, nor is a generic means of using context in a Web software architecture. This dissertation addresses the question of how context-awareness can be applied in a general-purpose, systematic process for Web application development: that is, in a Web Engineering process. A model for representing an application's context factors in ontologies is presented. A general-purpose methodology for Web Engineering is extended to account for context, by putting in relation context ontologies with elements of the application domain. The application model is extended with adaptation specifications, defining at which places in the application adaptation to context is to occur, and according to what strategy. Application and context models are system interpretable, in order to support automatic adaptation of a system's behavior during its operation, that is, consequently to user requests. Requirements for a corresponding Web software architecture for context are established first at the conceptual level, then specifically in a content-based architecture based on an XML stack. The CATWALK software framework, an implementation of an architecture enabling adaptation to context is described. The framework provides mechanisms for interpreting application and context models to generate an adaptive application, meaning to generate responses to user requests, where the generation process makes decisions based on context information. For this purpose, the framework contains default implementations for context recognition and adaptation mechanisms. The approach presented supports a model-based development of Web applications which adapt to context. The CATWALK framework is an mplementation for model interpretation in a run-time system and thus simplifies the development of Web applications which adapt to context. As the framework is component-based and follows a strict separation of concerns, the default mechanisms can be extended or replaced, allowing to reduce the amount of custom code required to implement specific context-aware Web applications or to study alternative context inference or adaptation strategies. The use of the framework is illustrated in a case study, in which models are defined for a prototypical application, and this application is generated by the framework. The purpose of the case study is to illustrate effects of adaptation to context, based on context description and adaptation specifications in the application model

    Developing BP-driven web application through the use of MDE techniques

    Full text link
    Model driven engineering (MDE) is a suitable approach for performing the construction of software systems (in particular in the Web application domain). There are different types of Web applications depending on their purpose (i.e., document-centric, interactive, transactional, workflow/business process-based, collaborative, etc). This work focusses on business process-based Web applications in order to be able to understand business processes in a broad sense, from the lightweight business processes already addressed by existing proposals to long-running asynchronous processes. This work presents a MDE method for the construction of systems of this type. The method has been designed in two steps following the MDE principles. In the first step, the system is represented by means of models in a technology-independent manner. These models capture the different aspects of Web-based systems (these aspects refer to behaviour, structure, navigation, and presentation issues). In the second step, the model transformations (both model-to- model and model-to-text) are applied in order to obtain the final system in terms of a specific technology. In addition, a set ofEclipse-based tools has been developed to provide automation in the application of the proposed method in order to validate the proposal.Torres Bosch, MV.; Giner Blasco, P.; Pelechano Ferragud, V. (2012). Developing BP-driven web application through the use of MDE techniques. Software and Systems Modeling. 11(4):609-631. doi:10.1007/s10270-010-0177-5S609631114Andrews, T., Curbera, F., Dholakia, H., Goland, Y., Klein, J., Leymann, F., Liu, K., Roller, D., Smith, D., Thatte, S., Trickovic, I., Weerawarana, S.: Business process execution language for Web services version 1.1 (May 2003)Barna, P., Frasincar, F., Houben, G.J.: A workow-driven design of Web information systems. In: Wolber, D., Calder, N., Brooks, C., Ginige, A. (eds.) ICWE, ACM, pp. 321–328Bakshi, K., Karger, D.R.: Semantic Web applications. In: Proceedings of the ISWC 2005 Workshop on End User Semantic Web Interaction (November 2005)Brambilla M., Ceri S., Fraternali P., Manolescu I.: Process modeling in Web applications. ACM Trans. Softw. Eng. Methodol. 15(4), 360–409 (2006)Brambilla, M., Preciado, J.C., Trigueros, M.L., Sánchez-Figueroa F.: Business process-based conceptual design of rich internet applications. In: ICWE, pp. 155–161 (2008)Brambilla, M., Butti, S., Fraternali, P.: Webratio bpm: a tool for designing and deploying business processes on the Web. In: ICWE, pp. 415–429 (2010)Business process modeling notation (BPMN). OMG final adopted specification. dtc/06-02-01 (February 2006)Ceri, S., Fraternali, P., Bongio, A.: Web modeling language (Webml): a modeling language for designing Web sites. In: Proceedings of the 9th international World Wide Web conference on Computer networks : the international journal of computer and telecommunications networking, Amsterdam, The Netherlands, pp. 137–157. North-Holland Publishing Co., The Netherlands (2000)Davis J.: Open Source SOA. Manning Publications Co, Greenwich (2009)Distante, D.: Reengineering legacy applications and Web transactions: an extended version of the UWA transaction design model. Ph.D. thesis, University of Lecce, Italy (2004)Distante D., Rossi G., Canfora G., Tilley S.R.: A comprehensive design model for integrating business processes in Web applications. Int. J. Web Eng. Technol. 3(1), 43–72 (2007)Duhl, J.: Rich internet applications. Technical report, IDC (November 2003)Fons, J.: OOWS: A model driven method for the development of web applications. Ph.D. thesis, Universidad Politécnica de Valencia (2008)Fons, J., Pelechano, V., Pastor, O., Valderas, P., Torres, V.: Applying the OOWS model-driven approach for developing web applications. The internet movie database case study. In: Web Engineering: Modelling and Implementing Web Applications. Human–Computer Interaction Series, pp. 65–108. Springer, London (2008)Fowler, M.: Inversion of control containers and the dependency injection pattern. http://martinfowler.com/articles/injection.html (January 2004)Gershenfeld N., Krikorian R., Cohen D.: The internet of things. Sci Am 291(4), 76–81 (2004)Giner P., Cetina C., Fons J., Pelechano V.: Developing mobile business processes for the internet of things. IEEE Pervasive Comput. 9, 18–26 (2010)Gómez J., Cachero C., Pastor O.: Extending a conceptual modelling approach to Web application design. In: Wangler, B., Bergman, L. (eds) CAiSE. Lecture Notes in Computer Science, vol. 1789, pp. 79–93. Springer, London (2000)Goth G.: The task-based interface: not your father’s desktop. IEEE Software 26(6), 88–91 (2009)Holmes, T., Tran, H., Zdun, U., Dustdar, S.: Modeling human aspects of business processes—a view-based, model-driven approach. In: ECMDA-FA, pp. 246–261 (2008)Kappel, G., Pröll, B., Reich, S., Retschitzegger, W. (eds): Web Engineering—The Discipline of Systematic Development of Web Applications. Wiley, England (2006)Koch, N.: Software Engineering for Adaptive Hypermedia Systems: Reference Model, Modeling Techniques and Development Process. Ph.D. thesis, Ludwig-Maximilians-University Munich, Germany (2001)Koch N., Kraus A., Cachero C., Meliá S.: Integration of business processes in Web application models. J. Web Eng. 3(1), 22–49 (2004)Limbourg, Q., Vanderdonckt, J.: Usixml: a user interface description language supporting multiple levels of independence. In: ICWE Workshops, pp. 325–338 (2004)Linaje M., Preciado J.C., Sánchez-Figueroa F.: Engineering rich internet application user interfaces over legacy Web models. IEEE Internet Comput. 11(6), 53–59 (2007)Link, S., Hoyer, P., Schuster, T., Abeck, S.: Model-driven development of human tasks for workflows. In: ICSEA ‘08: Proceedings of the 2008 third international conference on software engineering advances, Washington, DC, USA, pp. 329–335. IEEE Computer Society, Washington, DC (2008)Marcos, E., Cáceres, P., Castro, V. D.: An approach for navigation model construction from the use cases model. In: CAiSE Forum. Held in conjunction with the 16th Conference On Advanced Information Systems Engineering (June 2004)Pietschmann, S., Voigt, M., Meissner, K.: Adaptive rich user interfaces for human interaction in business processes. In: Proceedings of the 10th International Conference on Web Information Systems Engineering (WISE 2009), WISE, pp. 351–364. Springer LNCS (October 2009)Schwabe D., Rossi G.: An object oriented approach to Web-based applications design. Theor. Pract. Object Syst. 4(4), 207–225 (1998)Schmid H.A., Rossi G.: Modeling and designing processes in e-commerce applications. IEEE Internet Comput. 8(1), 19–27 (2004)Schwinger W., Retschitzegger W., Schauerhuber A., Kappel G., Wimmer M., Pröll B., Cachero C., Casteleyn S., Troyer O.D., Fraternali P., Garrigós I., Garzotto F., Ginige A., Houben G.J., Koch N., Moreno N., Pastor O., Paolini P., Pelechano V., Rossi G., Schwabe D., Tisi M., Vallecillo A., van der Sluijs K., Zhang G.: A survey on Web modeling approaches for ubiquitous Web applications. IJWIS 4(3), 234–305 (2008)Sousa K.S., Mendona H., Vanderdonckt J.: A model-driven approach to align business processes with user interfaces. J. UCS 14(19), 3236–3249 (2008)Sukaviriya, N., Sinha, V., Ramachandra, T., Mani, S.: Model-driven approach for managing human interface design life cycle. In: MoDELS, pp. 226–240 (2007)Tedre M.: What should be automated?. Interactions 15(5), 47–49 (2008)Torres, V., Giner, P., Bonet, B., Pelechano, V.: Adapting BPMN to Public Administration. In: Proceedings BPMN 2010 Springer’s Lecture Notes in Business Information Processing (LNBIP). Postdam, Germany (to appear)Troyer, O.D., Casteleyn, S.: Modeling complex processes for Web applications using wsdm. In: Proceedings of the Third International Workshop on Web-Oriented Software Technologies (held in conjunction with ICWE2003), IWWOST2003 (2003
    corecore