UbiDisco is the Service Discovery architecture developed for UbiCollab (check www.ubicollab.org for more informations).
This presentation has been showed at the "First International Joint Conference on Ambient Intelligence", November 10th-12th, Malaga, Spain.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
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
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
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
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Smart environments often contain embedded resources that can be used to enhance the experience of the users.
Applications need to continuously reconfigure themselves based on the current context of the users as the users move around.
Automation of resource associations in smart environments requires a first initial step: the discovery and integration of the resources into the our personal computing systems.
There are two main approaches: indirect network-based (or registry-based) discovery and direct tag-based discovery.
Let’s see some examples.
--
Within network-based discovery we include both conventional resource discovery architectures often used to connect computers, like installing a driver or browsing a printer server, (hence developed with a network topology in mind) and the new applications/services stores born mobile platforms like iPhone/Android.
The user is here usually engaged in browsing a long list of discovered services or apps and in some cases has to remember network addresses, passwords or service names, some systems try to help the choice guessing what the user need sorting the list of results by the closest or most used services.
The user interaction paradigm adopted by these systems, even if we assist in great improvements on mobile platforms, can still be trivial for some users, like elderly or diseased people, that are not used to interact with a computer or a modern smartphone.
----
Traditionally we’re used to install a new device using a cd-driver or for instance browsing a printer server for a printer. These are registry-based architectures, traditionally used to connect computers and developed with a network topology in mind. Ubiquitous systems need a higher degree of user centeredness. It is the intention of the user in focus and not the network topology.
We could have registry-based discovery architectures. These have traditionally been used to connect computers, and implemented with network topology in mind. These Conventional RD consist, for instance, browsing a print server or a shared directory. Ubiquitous systems require a higher degree of user-centeredness. It is the intention of the user that is in focus when discovering new resources, and not the network topology.
As opposite to network-based discovery, a recent line of research has focused on supporting integration of resources using embedded tags, like RFID or QRCodes. This approach requires a user-initiated action like touching or scanning a tag with a mobile device. The tag is used to obtain an augmented representation of the resource, we’ve been seeing some applications for advertisement...
In order to discover a service the user need to stand in front of a service advertisement and need to explore his physical proximity in order to find the desired service.
Beside this mechanism is quite immediate in term of user interaction, the user need to have a software to decode the tag and must be in line of sight with the service, so he might not be aware of other services in the environment.
--
This mechanism is quite immediate but still require to download a client for each tag-standard and sometimes to send data to a server to get the tag decoded. Moreover just few smartphones are equipped with a RFID reader.
Direct tag-based discovery utilizes the properties of the physical space such as proximity and visibility, and eliminates a number of risks for "misfiring" i.e. finding the wrong resources
We believe that both of these two approaches are important. But they are often developed in parallel with little integration, leading to a fragmentation of the user experience in service discovery processes.
To reach the goal of start using a newly encountered service, the user has to have available on his mobile several clients, each of them targeting a precise discovery protocol standard or sometimes even just a service domain or an application. Each client exposes a different user interface, and some of these are not designed to be used by classes of population such as elderly or children.
And the clients must usually be downloaded from internet and installed in conventional ways
Here we present a system called UbiDisco (Ubiquitous Discovery system), which runs on mobile devices called UbiNodes.
UbiDisco integrates and unifies multiple discovery mechanisms in an open and extensible architecture, adopting an user-center approach, and taking users’ situations and needs as starting point.
We have done it combining the benefits of different discovery mechanisms, allowing the development of plugins for our system; where each plugin implements a single discovery mechanism, that can be also just made for a specific scenario, plus we’re adding to each specific protocol an overhead of information to guarantee a coherent user experience across the different plugins.
Moreover plugins are mutually discoverable.
--
In fact, UbiDisco enables a seamless combination of direct tag-based and indirect network-based discovery.
To foster intelligibility of our system to the users, we coined the term of Discovery Actions.
A Discovery Action is the physical or mental act the user needs to perform in order to start operating the newly encountered resource.
Thanks to the concept of Discovery Actions, UbiDisco abstracts away the differences between finding a resource using direct tag-based or an indirect network-based discovery. The user is represented by a list of "Actions" that includes examples of both approaches. The goal is to "Add Service", and the focus is on the related “action” not on the technology used. Some actions involve physical activity (e.g. taking a photo, pointing to an object) while others involve a mental activity (e.g. browsing a list of resources), but the user goes through similar and consistent interaction mechanisms.
For testing purposes we prototyped three discovery actions: touch an RFID tag, take a photo of a QRCode, and type a number; let see a short demo.
----
New discovery mechanisms can be developed for addressing specific scenario.
and a uniform user interaction mechanism,
We integrated these concepts in a remote-health-care scenario. A smart device, a T-Shirt sensor-enabled for blood pressure recording, is sent to the user -presumably an elderly with chronic dizzies- that need constant remote monitoring, avoiding him to go to the hospital for regular checks.
The user is able to install the device without any further assistance, and and interact with it by an application also developed for this test,
We made a video which shows this scenario.
UbiDisco runs on the top of a bigger project called UbiCollab, which aims to support collaboration in a wide arena of scenarios.
The concept of human grid constitutes the grounds of UbiCollab. A human grid denotes a collection of (geographically distributed) users and the resources each of them has available in his physical vicinity, that therefore need first to be discovered.
The interaction with the HumanGrid is mediated by a UbiNode, a smartphone which runs the whole UbiCollab distribution, including UbiDisco. Running UbiDisco on generic hardware, represent a further giustification of adopting a pluggable architecture for discovery: not all the devices that runs UbiDisco could be available an RFID reader or a camera.
--
Collaboration happens in a wide arena of scenarios, from learning at school, remote meeting at work, remote healthcare.
Our Idea of collaboration is embodied by the human grid, a collection of geographically distributed people and the resource each of them have available in their physical vicinity. In this grid, people can initiate a collaboration instance which works as a shared context for cooperation.
A commonality among all the possible scenario is the need to external devices and services in order to enhance the user’s experience, and indeed the need of a service discovery mechanism.
Collaboration covers a central role in our life, since is not relegated to meeting rooms, but it comes with people on-the-way both for work and leisure.
The concept of human grid constitutes our vision of ubiquitous collaboration. A human grid denotes a collection of (geographically distributed) users and the resources each of them has available in their physical vicinity.
The core part of the human grid is the collaboration instance. A CI represent the collaboration intention of the users, and works as shared context for cooperation. 
UbiCollab’s vision is about supporting a natural, context-aware collaboration in a wide arena of scenarios using mobile and ubiquitous technologies.
Users interacts with the human grid through a UbiNode: a smartphone running the UbiCollab platform.
Systems make use of the information coming from the pervasive devices.
People need tool tailored for supporting their own cooperation process, as well as connects with third-party collaboration services/devices.
-We are in the early stages of evaluating our platform on real users. UbiDisco and the implemented discovery actions have been subject to focus group and hands-on testing by end users of primarily technical background. Preliminary results have shown potential for improvements in the usability area, while the system has shown a good reliability.
-We’re working to port the platform to Android and iOS devices
-We need to investigate more discovery actions, like “say a name” or “point to a service” and more proxies