In the last years, appropriate user interaction design patterns for Web Applications have been defined to improve the development and quality of such applications. Identifying which interaction design patterns are implemented in the Web client pages of an existing application may make easier some maintenance tasks, such as the re-engineering of the user interfaces.
In this paper a method to support the automatic identification of interaction design patterns implemented in a Web client page is proposed. The method is based on reverse engineering techniques aiming to search the page code for those features characterizing a pattern.
Insights demonstrate that more than 1.5 billion applications and recreations are downloaded each month. Think about this, each 100-200 individuals have an inclination and an application is right away worked for that. Presently it is reasonable why the requirement for Android application advancement is expanding so quickly Android training in Nagpur enables the understudies to learn Android programming and Android application improvement.
Industrial training, at Resistive Technosource are, Job-oriented training, providing for, professionals, students on platforms like, DOTNET, JAVA, ANDROID, EMBEDDED SYSTEMS, PHP etc.
Whitepaper - using RFPMonkey.com for non-RFP usesrfpmonkey
This paper offers some creative uses for certain RFP automation tools such as to support FAQs, self-serve research sites, technical support knowledge bases, etc.
Universal Java Beans with DB2 from 1999, early Internet workMatthew Perrins
A presentation from 1999 explaining , early MVC with JavaScript and Dynamic HTML work with WebTop, before Web 2.0 was main stream and Integration with Patent US 6442541 B1 http://www.google.co.uk/patents/US6442541, storing it here for some history
Insights demonstrate that more than 1.5 billion applications and recreations are downloaded each month. Think about this, each 100-200 individuals have an inclination and an application is right away worked for that. Presently it is reasonable why the requirement for Android application advancement is expanding so quickly Android training in Nagpur enables the understudies to learn Android programming and Android application improvement.
Industrial training, at Resistive Technosource are, Job-oriented training, providing for, professionals, students on platforms like, DOTNET, JAVA, ANDROID, EMBEDDED SYSTEMS, PHP etc.
Whitepaper - using RFPMonkey.com for non-RFP usesrfpmonkey
This paper offers some creative uses for certain RFP automation tools such as to support FAQs, self-serve research sites, technical support knowledge bases, etc.
Universal Java Beans with DB2 from 1999, early Internet workMatthew Perrins
A presentation from 1999 explaining , early MVC with JavaScript and Dynamic HTML work with WebTop, before Web 2.0 was main stream and Integration with Patent US 6442541 B1 http://www.google.co.uk/patents/US6442541, storing it here for some history
Android is a product stage created by Google they move in the direction of making applications which can be effectively got to on handsets or cell phones, cell phones additionally are enhancing their highlights step by step to stay aware of the applications being created. Android classes in Pune train their understudies how to make new applications utilizing Android and also creating Android as a programming.
SAP EP Admin Online Training
SAP EP is a web based application that is fast gaining popularity among organizations worldwide and that is why you need to take up our SAP EP Admin online training. With a curriculum designed by domain experts this course is bound to keep your career curve ahead of those of the rest.
What is SAP EP Admin?
SAP Enterprise Portal or EP, created by SAP AG, is primarily a web based environment that enables users to get a perspective of the information required by them all consolidated in one place. EP will revolve around the user, presenting them with a n environment created exclusively for them displaying data from various sources all in one place.
Best Apple IOS Training in Chennai | Best Iphone Training in ChennaiCore Mind
Apple IOS Training in Chennai provided by Iphone Certified Experts. We are the Best Iphone Training Institute in Chennai.
http://www.coremindtech.training/mobile-application-training/apple-ios-training-in-chennai/
IGEEKS is a Bangalore based Training & Recruitment company.
We offers osoftware training courses starting from absolute beginner level to advanced levels.Providing high quality training at affordable fees is our core value. All our trainers are working IT professionals with rich experience. We work with our students in developing the right skills they need to build their career in present competitive environment. We have flexible batch times to suit the timings of graduating students and working professionals.
Presenter manual J2EE (specially for summer interns)XPERT INFOTECH
XPERT INFOTECH imparts qualitative training in .NET, ASP.NET, PHP, PHP++, JAVA, J2EE, ORACLE DBA, ORALE D2K, RIA, SEO, WEB DEVELOPMENT, MOBILE APPLICATIONS DEVELOPMENT, ANDROID and other latest technologies. The training is designed for the BCA/MCA/B.E./B-Tech students who want to speed up their technical skills and proficiencies into real time development environment.
The heterogeneous and dynamic nature of components making up a Web Application, the lack of effective programming mechanisms for implementing basic software engineering principles in it, and undisciplined development processes induced by the high pressure of a very short time-to-market, make Web Application maintenance a challenging problem. A relevant issue consists of reusing the methodological and technological experience in the sector of traditional software maintenance, and exploring the opportunity of using Reverse Engineering to support effective Web Application maintenance.
The Ph.D. Thesis presents an approach for Reverse Engineering Web Applications. The approach include the definition of Reverse Engineering methods and supporting software tools, that help to understand existing undocumented Web Applications to be maintained or evolved, through the reconstruction of UML diagrams. Some validation experiments have been carried out and they showed the usefulness of the proposed approach and highlighted possible areas for improvement of its effectiveness.
IPC07 Talk - Beautiful Code with AOP and DIRobert Lemke
This presentation at the International PHP Conference 2007 in Frankfurt, Germany outlines the concepts of Domain Driven Design, supported by techniques such as Aspect Oriented Programming and Dependency Injection. A practical example was shown, using a recent snapshot of the upcoming FLOW3 Framework.
Building tomorrow's web with today's toolsJames Pearce
Few have the chance to create web-based mobile services from scratch. After years of investment in existing platforms (such as content management systems), how can you re-use your content, your servers, and your knowledge and evolve them to meet the mobile challenge?
These slides are from a presentation given at 360|Flex covering ways of customizing your Adobe Flex application. For more information on the topic, check out the book at http://www.cveflex.com
An Approach for Model Based Testing of Augmented Reality Applications.pdfPorfirio Tramontana
The popularity of Augmented Reality (AR) applications has strongly been increased with the worldwide
success of the Pokemon Go videogame released by Niantic in 2016. However, AR offers tangible benefits
in many further areas beyond entertainment, such as advertisement, education, navigation, maintenance,
health, and so on. With the growing spread and success of AR applications in these fields, there has also
been a growing necessity for approaches and technologies for assuring the quality of these applications,
such as testing. A few technologies and frameworks have been recently proposed supporting the
implementation and execution of test scripts that can be used to exercise the applications, but there still
is a lack of effective techniques and tools for the automatic generation of executable test cases. In this
paper, we investigate the possibility of using Model Based Testing techniques to generate executable
test scripts from Finite State Machines modeling the behaviour of the GUI of AR applications, similarly
to other GUI based applications. We have applied several model coverage criteria to design test suites
and we have shown the feasibility of this approach by testing two small example applications involving
Unity3D and Vuforia technologies
Towards the Generation of Robust E2E Test Cases in Template-based Web Applica...Porfirio Tramontana
Capture and Replay techniques provide a well known
solution for End-To-End (E2E) testing of Web applications.
They allow a tester to generate test scripts without
requiring advanced programming skills. For this reason, they
are very popular in acceptance and regression testing activities.
These techniques are affected by the issue of fragility of the
produced test cases, which may break even if small changes
are operated in the user interface, without modifications of the
app functionality. To overcome this issue, several approaches for
either generating robust test cases or automatically repairing
broken test cases have been proposed. In this paper we propose an
alternative solution that aims at improving the testability of Web
applications for generating robust test cases. This solution applies
to Web applications developed with template-based technologies.
It is based on the template source code automatic injection of
additional hook attributes and on the proposal of a new type
of locators based on such hooks. These locators aid the unique
retrieval of the user interface items involved in test cases. We
validated our technique in the context of a continuous integration
and delivery processes of template-based web applications that
was developed from scratch. The study showed that the use of
hook-based locators can improve the robustness of test cases
generated by a Capture & Replay testing tool, introducing
relevant savings in the regression test case repairing activity.
More Related Content
Similar to Recovering Interaction Design Patterns in Web Applications
Android is a product stage created by Google they move in the direction of making applications which can be effectively got to on handsets or cell phones, cell phones additionally are enhancing their highlights step by step to stay aware of the applications being created. Android classes in Pune train their understudies how to make new applications utilizing Android and also creating Android as a programming.
SAP EP Admin Online Training
SAP EP is a web based application that is fast gaining popularity among organizations worldwide and that is why you need to take up our SAP EP Admin online training. With a curriculum designed by domain experts this course is bound to keep your career curve ahead of those of the rest.
What is SAP EP Admin?
SAP Enterprise Portal or EP, created by SAP AG, is primarily a web based environment that enables users to get a perspective of the information required by them all consolidated in one place. EP will revolve around the user, presenting them with a n environment created exclusively for them displaying data from various sources all in one place.
Best Apple IOS Training in Chennai | Best Iphone Training in ChennaiCore Mind
Apple IOS Training in Chennai provided by Iphone Certified Experts. We are the Best Iphone Training Institute in Chennai.
http://www.coremindtech.training/mobile-application-training/apple-ios-training-in-chennai/
IGEEKS is a Bangalore based Training & Recruitment company.
We offers osoftware training courses starting from absolute beginner level to advanced levels.Providing high quality training at affordable fees is our core value. All our trainers are working IT professionals with rich experience. We work with our students in developing the right skills they need to build their career in present competitive environment. We have flexible batch times to suit the timings of graduating students and working professionals.
Presenter manual J2EE (specially for summer interns)XPERT INFOTECH
XPERT INFOTECH imparts qualitative training in .NET, ASP.NET, PHP, PHP++, JAVA, J2EE, ORACLE DBA, ORALE D2K, RIA, SEO, WEB DEVELOPMENT, MOBILE APPLICATIONS DEVELOPMENT, ANDROID and other latest technologies. The training is designed for the BCA/MCA/B.E./B-Tech students who want to speed up their technical skills and proficiencies into real time development environment.
The heterogeneous and dynamic nature of components making up a Web Application, the lack of effective programming mechanisms for implementing basic software engineering principles in it, and undisciplined development processes induced by the high pressure of a very short time-to-market, make Web Application maintenance a challenging problem. A relevant issue consists of reusing the methodological and technological experience in the sector of traditional software maintenance, and exploring the opportunity of using Reverse Engineering to support effective Web Application maintenance.
The Ph.D. Thesis presents an approach for Reverse Engineering Web Applications. The approach include the definition of Reverse Engineering methods and supporting software tools, that help to understand existing undocumented Web Applications to be maintained or evolved, through the reconstruction of UML diagrams. Some validation experiments have been carried out and they showed the usefulness of the proposed approach and highlighted possible areas for improvement of its effectiveness.
IPC07 Talk - Beautiful Code with AOP and DIRobert Lemke
This presentation at the International PHP Conference 2007 in Frankfurt, Germany outlines the concepts of Domain Driven Design, supported by techniques such as Aspect Oriented Programming and Dependency Injection. A practical example was shown, using a recent snapshot of the upcoming FLOW3 Framework.
Building tomorrow's web with today's toolsJames Pearce
Few have the chance to create web-based mobile services from scratch. After years of investment in existing platforms (such as content management systems), how can you re-use your content, your servers, and your knowledge and evolve them to meet the mobile challenge?
These slides are from a presentation given at 360|Flex covering ways of customizing your Adobe Flex application. For more information on the topic, check out the book at http://www.cveflex.com
An Approach for Model Based Testing of Augmented Reality Applications.pdfPorfirio Tramontana
The popularity of Augmented Reality (AR) applications has strongly been increased with the worldwide
success of the Pokemon Go videogame released by Niantic in 2016. However, AR offers tangible benefits
in many further areas beyond entertainment, such as advertisement, education, navigation, maintenance,
health, and so on. With the growing spread and success of AR applications in these fields, there has also
been a growing necessity for approaches and technologies for assuring the quality of these applications,
such as testing. A few technologies and frameworks have been recently proposed supporting the
implementation and execution of test scripts that can be used to exercise the applications, but there still
is a lack of effective techniques and tools for the automatic generation of executable test cases. In this
paper, we investigate the possibility of using Model Based Testing techniques to generate executable
test scripts from Finite State Machines modeling the behaviour of the GUI of AR applications, similarly
to other GUI based applications. We have applied several model coverage criteria to design test suites
and we have shown the feasibility of this approach by testing two small example applications involving
Unity3D and Vuforia technologies
Towards the Generation of Robust E2E Test Cases in Template-based Web Applica...Porfirio Tramontana
Capture and Replay techniques provide a well known
solution for End-To-End (E2E) testing of Web applications.
They allow a tester to generate test scripts without
requiring advanced programming skills. For this reason, they
are very popular in acceptance and regression testing activities.
These techniques are affected by the issue of fragility of the
produced test cases, which may break even if small changes
are operated in the user interface, without modifications of the
app functionality. To overcome this issue, several approaches for
either generating robust test cases or automatically repairing
broken test cases have been proposed. In this paper we propose an
alternative solution that aims at improving the testability of Web
applications for generating robust test cases. This solution applies
to Web applications developed with template-based technologies.
It is based on the template source code automatic injection of
additional hook attributes and on the proposal of a new type
of locators based on such hooks. These locators aid the unique
retrieval of the user interface items involved in test cases. We
validated our technique in the context of a continuous integration
and delivery processes of template-based web applications that
was developed from scratch. The study showed that the use of
hook-based locators can improve the robustness of test cases
generated by a Capture & Replay testing tool, introducing
relevant savings in the regression test case repairing activity.
Development and diffusion of Mobile applications go forward at a tremendous rhythm, due to the always increasing impact of smartphones and other mobile devices on people’s habitudes but many applications are uninstalled and discarded by users when they experience the presence of bugs. Functional testing represents a crucial activity in the context of mobile applications, and there is a large request in both industry and scientific community for mobile testing methodologies, techniques and tools. In particular, since these activities are usually repetitive, expensive and time consuming, there is a remarkable request for automated techniques and tools supporting them.
This talk will provide a view of the state-of-the-art on techniques and tools supporting the automation of functional testing of mobile applications, including model based, model learning, search based, user session based and random testing techniques.
A technique for parallel gui testing of android applicationsPorfirio Tramontana
There is a large need for effective and efficient testing processes and tools for mobile applications, due to their continuous evolution and to the sensitivity of their users to failures. Industries and researchers focus their effort to the realization of effective fully automatic testing techniques for mobile applications. Many of the proposed testing techniques
lack in efficiency because their algorithms cannot be executed in parallel. In particular, Active Learning testing techniques usually relay on sequential algorithms.
In this paper we propose a Active Learning technique for the fully automatic exploration and testing of Android applications, that parallelizes and improves a general algorithm proposed in the literature. The novel parallel algorithm has been implemented in the context of a prototype tool exploiting a component-based architecture, and has been experimentally evaluated on 3 open source Android applications by varying different deployment configurations.
The measured results have shown the feasibility of the proposed technique and an average saving in testing time between 33% (deploying two testing resources) and about 80% (deploying 12 testing resources).
Reverse Engineering of Data Models from Legacy Spreadsheets-Based Systems: An...Porfirio Tramontana
Nevertheless spreadsheets were originally designed for computing purposes and for commercial applications, they are often used in industry to implement Information Systems, thanks to the functionalities offered by integrated scripting languages and ad-hoc frameworks (e.g., Visual Basic for Applications). This technological solution allows the adoption of Rapid Application Development processes for the quickly development of Spreadsheets-based Information Systems, but the resulting systems are quite difficult to be maintained and very difficult to be migrated to other architectures such as Database-oriented Informative Systems or Web applications. In this paper we present an approach for reverse engineering the data model from an Excel spreadsheet-based system in the context of a process of migration to a Web based application based on a MVC architecture. The proposed approach was successfully applied in a real context of a company operating in the automotive industry. The main contribution of this paper is represented by the Data Model Reverse Engineering activity that is the basis of the Migration process.
Reverse Engineering Techniques: from Web Applications to Rich Internet Applic...Porfirio Tramontana
Web systems evolved in the last years starting from static websites to Web applications, up to Ajax-based Rich Internet Applications (RIAs). Reverse Engineering techniques followed the same evolution, too. The authors and many other WSE contributors proposed a lot of innovative and effective ideas providing important advances in the reverse engineering field. In this paper, we will show the historical evolution of reverse engineering approaches for Web Systems with particular attention to the ones presented in the WSE events.
Over the last fifteen years, Web applications have evolved from the early simple and hyper-text based ones into the more complex, interactive, usable and adaptive applications of the new generations. New paradigms, architectures, and technologies for developing Web-based systems continuously emerge and transform this specific context. At the same time, new techniques and tools for effectively testing them have been proposed. This paper reports some relevant contributions about the Web application testing topic that appeared in the past editions of the Web Systems Evolution international symposium (WSE) and discusses some future trends for this specific field.
Towards a Better Comprehensibility of Web Applications: Lessons Learned from ...Porfirio Tramontana
The rapid diffusion of Internet has triggered a growing request for new Web sites and Web Applications (WA).
Due to the pressing market demand, new WAs are usually developed in a very short time, while existing WAs are modified frequently and quickly. In these conditions, the well-known software engineering principles are not usually applied, as well as well-defined software processes and methodologies are rarely adopted. As a consequence, WAs usually present disordered architectures, poor or non-existing documentation, and can be analyzed, comprehended and modified with a considerable effort.
Reverse engineering methods and tools are being proposed in order to reduce the effort required to comprehend existing WAs and to support their maintenance and evolution. In this paper, the experimentation of a reverse engineering approach is described. Experimentation was carried out with the aim of assessing which characteristics of a WA mostly affect comprehensibility. The results of the experiments highlighted a set of techniques and best practices that should be applied for producing best analyzable and maintainable WAs.
Comprehending Web Applications by a Clustering Based Approach Porfirio Tramontana
The number and the complexity of web applications are increasing dramatically to satisfy the market requests, and the need of effective approaches for comprehending them is growing accordingly. Recently, some reverse engineering methods and tools have been proposed to support the comprehension of a web application; the information recovered by these tools is usually rendered in graphical representations. However, the graphical representations become progressively less useful with large-scale applications, and do not support adequately the comprehension of the application.
In this paper, to overcome this limitation, we propose an approach based on a clustering method for decomposing a web application (WA) into groups of highly functionally related components. The approach is based on the definition of a coupling measure between interconnected components of the WA that takes into account both the typology and the topology of the connections. The coupling measure is exploited by a clustering algorithm that produces a hierarchy of clustering. This hierarchy allows a structured approach to the comprehension of the web application to be carried out. The approach has been experimented with on medium sized web applications and produced interesting and encouraging results.
Warranting the access to Web contents to any citizen, even to people with physical disabilities, is a major concern of many government organizations. Although guidelines for Web developers have been proposed by international organisations (such as the W3C) to make Web site contents accessible, the wider part of today’s Web sites are not completely usable by peoples with sight disabilities.
In this paper, two different approaches for dynamically transforming Web Pages into Aural Web Pages, i.e. pages that are optimised for blind peoples, will be presented. The approaches exploit heuristic techniques for summarising Web pages contents and providing them to blind users in order to improve the usability of Web sites. The techniques have been validated in an experiment where usability metrics have been used to assess the effectiveness of the Web page transformation techniques.
Techniques and Tools for Rich Internet Applications TestingPorfirio Tramontana
The User Interfaces of Rich Internet Applications (RIAs) present a richer functionality and enhanced usability than the ones of traditional Web applications which are obtained by means of a successful combination of heterogeneous technologies, frameworks, and communication models. Due to its increased complexity, dynamicity, and responsiveness, testing the user interfaces of an RIA is more complex than testing the user interfaces of a traditional Web application and requires that effective and efficient testing techniques are proposed and validated. In this paper we analyse the most critical open issues in RIA testing automation and propose a classification framework that characterizes existing RIA testing techniques from four different perspectives. Driven by this classification, we present a set of testing techniques that can be used for automatically and semi-automatically generating test cases, for executing them and evaluating their results. Some examples of applying the proposed techniques for testing real Ajax applications will also be shown in the paper.
Thanks to Rich Internet Applications (RIAs) with their enhanced interactivity, responsiveness and dynamicity, the user experience in the Web 2.0 is becoming more and more appealing and user-friendly. The dynamic nature of RIAs and the heterogeneous technologies, frameworks, communication models used for implementing them negatively affect their analyzability and understandability. Consequently, specific software techniques and tools are needed for supporting RIA comprehension. This paper presents DynaRIA, a tool for the comprehension of RIAs implemented in Ajax that is based on dynamic analysis. It provides functionalities for recording and analyzing user sessions from several perspectives, and for producing various types of abstractions and visualizations about the run-time behavior of the application. In order to evaluate this tool, four case studies involving different comprehension tasks of Ajax applications have been executed. The experimental results showed the usefulness and effectiveness of the tool that provided a valid support for Ajax comprehension in reverse engineering, debugging, testing and quality assessment contexts.
A GUI Crawling-based Technique for Android Mobile Application TestingPorfirio Tramontana
As mobile applications become more complex, specific development tools and frameworks as well as cost-effective testing techniques and tools will be essential to assure the development of secure, high-quality mobile applications.
This paper addresses the problem of automatic testing of mobile applications developed for the Google Android platform, and presents a technique for rapid crash testing and regression testing of Android applications. The technique is based on a crawler that automatically builds a model of the application GUI and obtains test cases that can be automatically executed. The technique is supported by a tool for both crawling the application and generating the test cases. In the paper we present an example of using the technique and the tool for testing a real small size Android application that preliminary shows the effectiveness and usability of the proposed testing approach.
Using Dynamic Analysis for Generating End User Documentation for Web 2.0 Appl...Porfirio Tramontana
The relevance of end user documentation for improving usability, learnability and operability of software applications is well known. However, software processes often devote little effort to the production of end user documentation due to budget and time constraints, or leave it not up-to-date as new versions of the application are produced. In particular, in the field of Web applications, due to their quick release time and the rapid evolution, end user documentation is often lacking, or it is incomplete and of poor quality. In this paper a semi-automatic approach for user documentation generation of Web 2.0 applications is presented. The approach exploits dynamic analysis techniques for capturing the user visible behaviour of a web application and, hence, producing end user documentation compliant with known standards and guidelines for software user documentation. A suite of tools support the approach by providing facilities for collecting user session traces associated with use case scenarios offered by the Web application, for abstracting a Navigation Graph of the application, and for generating tutorials and procedure descriptions. The obtained documentation is provided in textual and hypertextual formats. In order to show the feasibility and usefulness of the approach, an example of generating the user documentation for an existing Web application is presented in the paper.
Considering Context Events in Event-Based Testing of Mobile Applications Porfirio Tramontana
A relevant complexity factor in developing and testing mobile apps is given by their sensibility to changes in the context in which they run. As an example, apps running on a smartphone can be influenced by location changes, phone calls, device movements and many other typologies of context events.
In this paper, we address the problem of testing a mobile app as an event-driven system by taking into account both context events and GUI events. We present approaches based on the definition of reusable event patterns for the manual and automatic generation of test cases for mobile app testing.
One of the proposed testing techniques, based on a systematic and automatic exploration of the behaviour of an Android app, has been implemented and some preliminary case studies on real apps have been carried out in order to explore their effectiveness.
As mobile applications become more complex and business-critical, use of well-defined software engineering techniques becomes essential to assure the necessary software quality. In particular, testing and its automation play a strategic part for assuring the quality of applications that are often developed by small teams, working on strict timelines and under the pressure of short time-to-market. This paper presents an automated GUI based testing technique for Android apps. The technique is based on a ripper that automatically explores the GUI with the aim of exercising the application and revealing run-time crashes. At the same time, the ripper builds a GUI model and an executable test suite based on the JUnit test framework. The technique has been evaluated by an experiment where the ripper has been used to test a real Android application. The experiment has shown the fault-detection capability of the technique and its cost-effectiveness in smoke testing processes.
This paper presents a toolset for GUI testing of Android applications. The toolset is centered on a GUI ripper that systematically explores the GUI structure of an application under test with the aim of firing sequences of user events and exposing failures of the application. The toolset supports the execution of a testing procedure that automatically performs crash testing of subject applications and provides test results made of several artifacts. The paper illustrates some examples of using the toolset for testing real Android applications.
Thanks to Rich Internet Applications (RIAs) with their enhanced interactivity, responsiveness and dynamicity, the user experience in the Web 2.0 is becoming more and more appealing and user-friendly. The dynamic nature of RIAs and the heterogeneous technologies, frameworks, communication models used for implementing them negatively affect their analyzability and understandability. Consequently, specific software techniques and tools are needed for supporting RIA comprehension. This paper presents DynaRIA, a tool for the comprehension of RIAs implemented in Ajax that is based on dynamic analysis. It provides functionalities for recording and analyzing user sessions from several perspectives, and for producing various types of abstractions and visualizations about the run-time behavior of the application. In order to evaluate this tool, four case studies involving different comprehension tasks of Ajax applications have been executed. The experimental results showed the usefulness and effectiveness of the tool that provided a valid support for Ajax comprehension in reverse engineering, debugging, testing and quality assessment contexts.
Rich Internet Application Testing Using Execution Trace Data Porfirio Tramontana
The rapid and growing diffusion of Rich Internet Applications (RIAs) with their enhanced interactivity, responsiveness and dynamicity is sharpening the distance between Web applications and desktop applications, making the Web experience more and more appealing and user-friendly. This paper presents a technique for testing RIAs that generates test cases from application execution traces, and obtains more scalable test suites thanks to testing reduction techniques. Execution traces provide a fast and cheap way for generating test cases and can be obtained either from user sessions, or by crawling the application or by combining both approaches. The proposed technique has been evaluated by a preliminary experiment that investigated the effectiveness of different approaches for execution trace collection and of several criteria for reducing the test suites. The experimental results showed the feasibility of the technique and that its effectiveness can be improved by hybrid approaches that combine both manually and automatically obtained execution traces of the application.
An AHP-based Framework for Quality and Security EvaluationPorfirio Tramontana
Nowadays, there is a large diffusion of open and dynamic cooperative architectures that are based on services (SOA). In general, a customer is not only interested in service functionalities, but also in its quality (i.e. performance, cost, reliability, security and so on). In this scenario, models, techniques and tools supporting the effective selection of the service that provides the better quality are needed. In this paper, we propose an evaluation framework that includes a flexible quality meta-model for formalizing Customer and Provider views of quality, and a decisional model defining a systematic approach for comparing offered and requested quality of services. We will also illustrate the applicability of the framework in a Web Service scenario.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Recovering Interaction Design Patterns in Web Applications
1. Recovering Interaction
Design Patterns in Web
Applications
P. Tramontana
A.R. Fasolino
Dipartimento di Informatica e Sistemistica
University of Naples Federico II, Italy
G.A. Di Lucca
RCOST – Research Centre on Software Technology
University of Sannio, Benevento, Italy
1
2. Web Interaction Design Patterns
The design of User Interface is a critical phase
of Web Applications development
Many quality attributes of Web Applications depends
on the interface (Usability, Accessibility, …)
Use of interaction patterns speed up design and
implementation of high quality Web Applications
Identification of Web Interaction Design Patterns
helps us for the comprehension, maintenance,
reengineering, reuse of Web Application
2
3. Web Interaction Design Pattern catalogues
Some catalogues of Web Interaction Design
Patterns have been proposed
Martin van Welie in website www.welie.com
reports a list comprehending many different
patterns
An abstract description of each pattern is
provided by natural language …
not enough to support automatic identification!
3
4. An example of WIDP Description:
the Login pattern
Problem The users need to identify themselves so that stored data about/of
them can be used in the process they are in.
Context When users frequently return to a site that uses large amounts of data
about or belonging to the users, it is convenient to have users enter that
information once and use it again for future visits to the site. Usually the
information that is stored is personal information and can include name, age,
gender, shipping addresses, stock portfolio, bank account numbers and credit
card numbers. In order to be able to access their data, users must complete their
Registration first.
For many site types it can be convenient to store information of/about visitor.
Often these are E-commerce Site, Community Site or Web-based Application
such as electronic banking applications.
Solution When needed, ask the users to login using a combination of a
username and a password
4
5. Identification of WIDPs
Examples of Login pattern What are the common
characteristics of the login
pattern implementations?
• a Form
• a text field
• a password field
• a submit button
• word ‘password’
• ...
5
6. User Interface Model
Clues useful to support the identification of WIDPs may be recovered
analyzing HTML structures and textual part of Client Pages
Page Text Keyword
UI Fragment Client Page Web Page
Anchor link
Table
Form Text link
Textarea
Row Image
Password
Input Field Button
Cell Submit
Reset
Hidden
File
Image Radio
Checkbox Select
6
7. Features
Structural features
a table with 2 or more rows in the page
2 or more anchors in the page
a form in the page
a password field in the page
Lexical features
any of the words ‘login’, ‘username’ (a login
synonym), ‘nome utente’ (an italian translation for
login or username) in the page
What are the most characteristics
features for a given WIDP? 7
8. Characterization of Patterns’ features
Given a pattern a feature is characteristic
one if:
it is “frequently” retrieved in the implementation
of the pattern and
It isn’t “frequently” retrieved in the
implementation of any other pattern
8
9. Measure of the Characterization
Given a set of implementations of each pattern
(training set) we define:
Frequency of a Feature F for a Pattern P
Occ( wp, F )
Freq( P, F ) = ∑ t ( P ) Card (TrainingSet ( P))
wp∈TrainingSe
Specificity of a Feature F for a Pattern P
Freq( P, F ) − Average( F ) ifFreq ( P, F ) > Average( F )
Spec( P, F ) =
0 Elsewhere
Characterization Weight of a Feature F for a Pattern P
CW ( P, F ) = Freq ( P, F ) * Spec( P, F )
9
10. A Three-phase approach to identify Web
Interaction Design Patterns in Web Pages
The identification of patterns is based on the analysis of the occurrences of the
characteristic features present in the pages
CW (Pattern,
Feature)
Training Set Validated
Training Validation
patterns
Candidate
Web pages Candidature Pages with
Patterns
10
11. Training Phase
A training set of Web Pages actually containing
samples of each pattern have to be selected.
Training Web Pages:
May be written using different human languages (e.g.
English and Italian)
May belong to different application domains
May be developed with different programming styles
(e.g. automatically generated or manually developed)
For each couple (pattern, feature) the
Characterization Weight value is evaluated
11
12. Candidature phase
for each pattern and for each Web Page, an
index of the probability that a pattern P is
contained in a Web Page WP is evaluated
∑ CW ( P, f ) * Occ(WP, f )
f ∈FeatureSet ( P )
Likelihood (WP, P) =
∑ CW ( P, f )
f ∈FeatureSet ( P )
We assume that a pattern is contained in a Web Page if
the Likelihood value is greater than a fixed threshold
Controlled experiments have been carried out to evaluate the threshold
value maximizing the number of correct candidatures
12
13. Validation phase
The correctness of the (Web Page, Pattern)
couples proposed during the Candidature phase
must be assessed by an expert that verifies if
the Web Page actually contains the proposed
Pattern
Web Pages containing validated patterns may
be added to the training set of the pattern
13
14. Architecture of the system
Likelihood Pattern Threshold
Web pages Reverse
Engineering Evaluator Identifier
Tool
WA Pattern Pattern
Information Repository Validator
Repository
CW Tuner
Reverse Validated
Training Engineering CW Evaluator
patterns
Set Tool
14
15. Experimentation
Experiments have been carried out:
To validate the approach
To tune the value of the decision threshold
To measure the degree of correctness of the patterns
automatically identified by the system
Experiments involved:
6 Web Interaction Design Patterns (Guestbook, Login,
Poll, Registration, Search, Sitemap)
216 Features (180 structural features and 36 lexical
features)
15
16. Pattern List
a view of the list of messages written
Guestbook by the visitors of a website
Login
an authentication module for
inserting personal identification
information needed to access to
private services
Poll
a module to insert a vote for a poll
a module to insert personal data
Registration needed to register to a service
Search
a module to insert keywords for a
search on a search engine
Sitemap
a view of the map of the pages of a
website
16
23. Evaluation of the Characterization Weight
The Characterization Weight
has been evaluated
analyzing a Training set Best Poll CW
comprehending 108 Web
Pages Features
Each Web Page of the Word ‘poll’ 0,5644125
Training Set contains only 2 or more select buttons 0,4741561
one of the considered
in a form
pattern
Word ‘vote’ 0,4399831
Pattern #
Guestbook 15 Word ‘results’ 0,4216681
Login 25 2 or more radio button in 0,3189687
Poll 13 a table
Registration 14
1 radio button in a cell 0,3031277
Search 20
Sitemap 21
23
24. Recall and Precision
To assess the correctness of the results of the approach
the Recall and Precision measures have been defined:
Recall : Number of correct candidate couples (web page,
pattern) / Number of couples (web page, pattern) to identify
Precision: Number of correct candidate couples (web page,
pattern) / Number of candidate couples (web page, pattern)
24
25. Preliminary Identification Test
A preliminary test has been carried out to assess the
effectiveness approach
The preliminary identification test involves the same Web
Pages constituting the Training Set
Recall and Precision values have been evaluated,
varying threshold value
25
26. Preliminary Identification Test
Threshold0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1
Recall 46/108 69/108 89/108 93/108 101/108 106/108 107/108 108/108
% 43% 64% 82% 86% 94% 98% 99% 100%
Precision 46/49 69/75 89/112 93/135 101/174 106/234 107/325 108/487
% 94% 92% 79% 69% 58% 45% 33% 22%
A good trade-off between Recall and Precision has been reached
for Threshold=0.6
False positives and true negatives are due to the extreme similarity
between some implementations of the patterns
26
27. Identification Test
Another experiment has been carried out, involving a
test set of 108 Client Pages that have been extracted
from the WWW
Each of the Web Pages belonging to the test set
contains zero, one or more patterns
An expert software engineering stated which and how
many patterns were included in the set of pages
27
28. Identification Test
Threshold0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1
Recall 20/55 31/55 44/55 45/55 51/55 52/55 54/55 54/55
% 36% 56% 80% 82% 93% 95% 98% 98%
Precision 20/24 31/39 44/67 45/112 51/171 52/229 54/347 54/590
% 83% 79% 66% 40% 30% 23% 16% 9%
A good trade-off between Recall and Precision has been reached (again) for Threshold=0.6
The performance are worst than in preliminary test but are quite acceptable
28
29. Conclusions
Automatic identification of Web Interaction
Pattern is not a simple task:
Interaction functionality may be implemented in much
different ways
An approach has been proposed to identify
Patterns implemented in Web Pages on the
basis of the identification of the common
features characterizing the pattern
Experiments that have been carried out shows
the feasibility of the proposed approach
29
30. Future Works
Further assessing experiments must be
carried out to measure the correctness of
the results of the approach by varying:
The number of patterns to identify
The number of samples in the training set
The set of features (e.g. adding features
resulting from the combination of the basic
features considered in the presented
experiment)
30
Editor's Notes
A Reverse Engineering approach to: Identify WIDPs Support the refinement of the description of WIDPs
The Frequency of a Feature indicates how much frequently the feature occurs in the considered set of implementations of a pattern Specificity of a Feature indicates if and how much this feature is more frequent in the implementation of a pattern instead than in the implementations of the other patterns Characterization Weight is an index of the correlation between the presence of a feature and the presence of a pattern in a Client page It takes into account Frequency and Specificity of the feature for the pattern
In the Training phase a matrix of Characterization Weight for each Pattern and for each considered feature is evaluated In the Candidature phase, hypothesis about the presence of patterns in Web pages are proposed on the basis of retrieved features In the Validation phase an expert assess es the correctness of the candidatures. Pages containing a pattern are added to the training set
In the Candidature phase, hypothesis about the presence of patterns in Web pages are proposed on the basis of retrieved features
In the higher part, components needed to the Candidature Phase In the lower part, components needed to the Training Phase In the middle part, repositories and Validation Components
As an example, we can see that the more characteristic features of the poll pattern are the word vote, poll and result and the occurrence of 2 or more select buttons in a form
The test is carried out automatically: there is no need of human intervention
Recall and Precision values are enough encouraging about the effectiveness of the approach