Software as a service (SaaS) applications serve users in many organizations from a single application instance running in a cloud. Common SaaS requirements are customization such as hiding and adding fields, managing boilerplate text, and influencing look and feel and a service API for retrieving and manipulating data and enabling registration of listeners (applications outside the cloud that are notified by the SaaS application of events). Deep-link navigation into the SaaS application enables visual integration with local apps. This session’s speakers share their best practices, having developed three rich Oracle ADF Faces RC SaaS apps, with demos of the customization, using Meta Data Services (MDS) and the SOA interface across the cloud.
Castle in the clouds - Building the Connexys SaaS application with Fusion Mid...Lucas Jellema
SaaS applications serve users in many organizations from a single application instance running in a cloud. Common SaaS requirements include: customization including hiding and adding fields, managing boilerplate text & influencing the look & feel and a Service API for retrieving and manipulating data as well as allowing registration of listeners - applications outside the cloud that are notified by the SaaS application of events. Deep link navigation into the SaaS application allows visual integration with local apps.
Connexys provides a SaaS application (150+ customers) to support human resource and recruitment processes. The Connexys NextGen application is developed on Fusion Middleware using ADF. The application has an impressive number of specific SaaS enhancements (some inspired by Salesforce.com) that make it a compelling & competitive SaaS offering.
ADF in Action - getting (re)acquainted with Oracle’s premier application deve...Lucas Jellema
ADF is the strategic application development framework for Oracle, a core element in Fusion Middleware. ADF can be used to create large scale, enterprise applications. It can be used to create entirely license free applications. It can be used to create cloud applications and also applications that can be used from all kinds of mobile devices.
This presentation provides an overview of ADF:
what it consists of,
what it can be used for,
what it is better not used for,
how does it compare to APEX and how well does it integrate with Oracle Database.
What does it take to (learn how to) develop ADF applications is an important question that is addressed.
The presentation features several demonstrations of the both the first HelloEmployees application as well as a number of advanced ADF mechanisms such as Data Visualization, Personalization and Security.
If you have not recently - or ever at all - seen ADF in action, and application development does take place in your organization, this session is a valuable quick introduction and overview.
Running ADF Faces on Tablets and Mobile PhonesSteven Davelaar
This presentation discusses all aspects of running ADF Faces applications on tablets and mobile devices.Topics include:
- Adaptive/responsive design using both client-side and server-side techniques
- Leveraging touch gestures
- Using HTML 5 Input Types
- Integrating with device features
- Planned enhancements in ADF Faces for improving mobile rendering
Oracle Alta UI Patterns for Enterprise Applications and Responsive UI Supportandrejusb
Alta UI brings ADF enterprise application to a completely new level. Forget about plain boring interfaces from the past, nowadays enterprise users should have much cleaner and robust interfaces for the job to be done. This is where Alta UI comes into play - it offers a set of ready made patterns, developers could use them for dashboards and CRUD screens. Besides modern and appealing UI patterns, Alta UI provides support for UI responsiveness. This enables to render the same screens on different devices, with different screen resolutions. Displayed content is adjusted automatically, based on the available screen size. Attendees are going to learn how to upgrade to Alta UI and how to use the most of its offered functionality.
Castle in the clouds - Building the Connexys SaaS application with Fusion Mid...Lucas Jellema
SaaS applications serve users in many organizations from a single application instance running in a cloud. Common SaaS requirements include: customization including hiding and adding fields, managing boilerplate text & influencing the look & feel and a Service API for retrieving and manipulating data as well as allowing registration of listeners - applications outside the cloud that are notified by the SaaS application of events. Deep link navigation into the SaaS application allows visual integration with local apps.
Connexys provides a SaaS application (150+ customers) to support human resource and recruitment processes. The Connexys NextGen application is developed on Fusion Middleware using ADF. The application has an impressive number of specific SaaS enhancements (some inspired by Salesforce.com) that make it a compelling & competitive SaaS offering.
ADF in Action - getting (re)acquainted with Oracle’s premier application deve...Lucas Jellema
ADF is the strategic application development framework for Oracle, a core element in Fusion Middleware. ADF can be used to create large scale, enterprise applications. It can be used to create entirely license free applications. It can be used to create cloud applications and also applications that can be used from all kinds of mobile devices.
This presentation provides an overview of ADF:
what it consists of,
what it can be used for,
what it is better not used for,
how does it compare to APEX and how well does it integrate with Oracle Database.
What does it take to (learn how to) develop ADF applications is an important question that is addressed.
The presentation features several demonstrations of the both the first HelloEmployees application as well as a number of advanced ADF mechanisms such as Data Visualization, Personalization and Security.
If you have not recently - or ever at all - seen ADF in action, and application development does take place in your organization, this session is a valuable quick introduction and overview.
Running ADF Faces on Tablets and Mobile PhonesSteven Davelaar
This presentation discusses all aspects of running ADF Faces applications on tablets and mobile devices.Topics include:
- Adaptive/responsive design using both client-side and server-side techniques
- Leveraging touch gestures
- Using HTML 5 Input Types
- Integrating with device features
- Planned enhancements in ADF Faces for improving mobile rendering
Oracle Alta UI Patterns for Enterprise Applications and Responsive UI Supportandrejusb
Alta UI brings ADF enterprise application to a completely new level. Forget about plain boring interfaces from the past, nowadays enterprise users should have much cleaner and robust interfaces for the job to be done. This is where Alta UI comes into play - it offers a set of ready made patterns, developers could use them for dashboards and CRUD screens. Besides modern and appealing UI patterns, Alta UI provides support for UI responsiveness. This enables to render the same screens on different devices, with different screen resolutions. Displayed content is adjusted automatically, based on the available screen size. Attendees are going to learn how to upgrade to Alta UI and how to use the most of its offered functionality.
Force.com is the world's leading cloud platform that lets you build apps rapidly using configuration-driven development and powerful programmatic logic. With Force.com, you can design mobile, social, and real-time apps in the cloud five times faster than with traditional software development approaches.
Watch this webinar to learn about:
:: how Force.com streamlines app development life cycles
:: how Force.com's open architecture facilitates integration with other systems
:: the basics you need to get started building your first app in the cloud
Watch the recording on YouTube:
http://youtu.be/ee1ncea0eeE
This presentation uncover what is CSS architecture and why it is important to have one. Most of the modern CSS architectures based on principles/rules outlined in this presentation.
oracle oa framework training | oracle oa framework training courses | oa fram...Nancy Thomas
oracle oa framework training | oracle oa framework training courses | oa framework course
Website : http://www.todaycourses.com
Oracle OAF Online Training Concepts :
Introduction to Oracle Applications and OAF
Oracle Applications Framework
OAF and MVC
OAF Process Flow
More about OAF
JDeveloper Overview
JDeveloper Features
Building OAF Application in JDeveloper
Configuring JDeveloper Preferences
Basics of the Model
Understand the basics of BC4J
Understand an Entity Object
Understand a View Object
Understand an Application Module
Basics of the View
Understand the terminology
Building a basic OA Framework page
List of Values
Building Search Regions
oracle oa framework training, oracle oa framework training courses, oa framework tutorial, oa framework training, oracle application framework (oaf) in
oracle r12 training, oaf demo online, oaf free videos, oaf video training online, oaf training india, oracle application testing suite, oracle application
framework (oaf) in oracle r12 training tutorials, oaf training, oaf tutorial, oa framework
Slides from a presentation I did demonstrating the new features of SharePoint 2013 as well as a simple App I created which talks to a service on Windows Azure.
Accompanying article is at: http://www.shailensukul.com/2012/10/sharepoint-2013-swordfish-app.html
Castle in the Clouds: SaaS Enabling JavaServer™ Faces Applications (JavaOne 2...Lucas Jellema
SaaS applications are typically web applications that serve users in many customer organizations from a single instance that runs in the cloud, controlled by the SaaS provider. All customers share a single instance of the application while having private data access. SaaS applications are usually multi-lingual (or at least multi-terminology), multi-time zone and -country and run 24/7. There is a number of common requirements for SaaS applications, such as: self service management of users and roles, customization of the application for the needs of a specific customer organization including hiding and adding fields and changing the boilerplate text, specification of customer specific default values and validation rules and influencing the look and feel. Deep link navigation into the SaaS application should be supported as well as the ability to embed context sensitive links from the SaaS application. In addition, facilities for importing and exporting data to and from the SaaS application are crucial as well as support for 'SOA on the cloud' : SaaS application should publish Services for retrieving and manipulating data as well as registering listeners that the SaaS application invokes when specific events occur.
This presentation tells our story of the development of three SaaS style applications based on JavaServer Faces over the past two years. It will introduce the best practices we have arrived at for implementing the requirements listed above. The presentation will include several demonstrations of both the customization and the service interface of JSF based SaaS applications.
Even shorter:
SaaS applications serve users in many organizations from a single application instance that runs in the remote cloud. SaaS applications are usually multi-lingual (or at least multi-terminology) and run 24/7. Common requirements for SaaS applications include: customization including hiding and adding fields and managing boilerplate text and influencing the look & feel. Deep link navigation into the SaaS application allows visual integration between the SaaS application and local apps or SaaS running in another cloud. Facilities for importing and exporting data to and from the SaaS application are crucial. SaaS applications ideally also publish Services for retrieving and manipulating data as well as allow registration of listeners - applications outside the SaaS cloud that are invoked by the SaaS application when specific events occur.
This is our story of developing three SaaS JSF applications in the past two years. It shows the best practices we have arrived at for implementing SaaS requirements. It includes demos of both the customization and the service interface.
Target Audience
Experienced Java Web Developers, preferably familiar with JavaServer Faces
Key Points
What are typical requirements for SaaS style web applications?
Best practices for implementing customization features in JSF applications
How to implement deep link navigation into JSF web applications
An infrastructure for registering and notifying remote listeners for business events in JSF applications
Outline
Intro of SaaS style application
Brief overview of our business cases + discussion on typical requirements for SaaS application
Focus on Customization (various aspects)
Focus on (remote) Integration (deep link, service api, remote event listeners)
Summary & road ahead
Code Samples:
Approach to factory, organization (customer) and user level application settings
Deep Link navigation into JSF application
Register Remote Listener with SaaS application + notification upon business event
Force.com is the world's leading cloud platform that lets you build apps rapidly using configuration-driven development and powerful programmatic logic. With Force.com, you can design mobile, social, and real-time apps in the cloud five times faster than with traditional software development approaches.
Watch this webinar to learn about:
:: how Force.com streamlines app development life cycles
:: how Force.com's open architecture facilitates integration with other systems
:: the basics you need to get started building your first app in the cloud
Watch the recording on YouTube:
http://youtu.be/ee1ncea0eeE
This presentation uncover what is CSS architecture and why it is important to have one. Most of the modern CSS architectures based on principles/rules outlined in this presentation.
oracle oa framework training | oracle oa framework training courses | oa fram...Nancy Thomas
oracle oa framework training | oracle oa framework training courses | oa framework course
Website : http://www.todaycourses.com
Oracle OAF Online Training Concepts :
Introduction to Oracle Applications and OAF
Oracle Applications Framework
OAF and MVC
OAF Process Flow
More about OAF
JDeveloper Overview
JDeveloper Features
Building OAF Application in JDeveloper
Configuring JDeveloper Preferences
Basics of the Model
Understand the basics of BC4J
Understand an Entity Object
Understand a View Object
Understand an Application Module
Basics of the View
Understand the terminology
Building a basic OA Framework page
List of Values
Building Search Regions
oracle oa framework training, oracle oa framework training courses, oa framework tutorial, oa framework training, oracle application framework (oaf) in
oracle r12 training, oaf demo online, oaf free videos, oaf video training online, oaf training india, oracle application testing suite, oracle application
framework (oaf) in oracle r12 training tutorials, oaf training, oaf tutorial, oa framework
Slides from a presentation I did demonstrating the new features of SharePoint 2013 as well as a simple App I created which talks to a service on Windows Azure.
Accompanying article is at: http://www.shailensukul.com/2012/10/sharepoint-2013-swordfish-app.html
Castle in the Clouds: SaaS Enabling JavaServer™ Faces Applications (JavaOne 2...Lucas Jellema
SaaS applications are typically web applications that serve users in many customer organizations from a single instance that runs in the cloud, controlled by the SaaS provider. All customers share a single instance of the application while having private data access. SaaS applications are usually multi-lingual (or at least multi-terminology), multi-time zone and -country and run 24/7. There is a number of common requirements for SaaS applications, such as: self service management of users and roles, customization of the application for the needs of a specific customer organization including hiding and adding fields and changing the boilerplate text, specification of customer specific default values and validation rules and influencing the look and feel. Deep link navigation into the SaaS application should be supported as well as the ability to embed context sensitive links from the SaaS application. In addition, facilities for importing and exporting data to and from the SaaS application are crucial as well as support for 'SOA on the cloud' : SaaS application should publish Services for retrieving and manipulating data as well as registering listeners that the SaaS application invokes when specific events occur.
This presentation tells our story of the development of three SaaS style applications based on JavaServer Faces over the past two years. It will introduce the best practices we have arrived at for implementing the requirements listed above. The presentation will include several demonstrations of both the customization and the service interface of JSF based SaaS applications.
Even shorter:
SaaS applications serve users in many organizations from a single application instance that runs in the remote cloud. SaaS applications are usually multi-lingual (or at least multi-terminology) and run 24/7. Common requirements for SaaS applications include: customization including hiding and adding fields and managing boilerplate text and influencing the look & feel. Deep link navigation into the SaaS application allows visual integration between the SaaS application and local apps or SaaS running in another cloud. Facilities for importing and exporting data to and from the SaaS application are crucial. SaaS applications ideally also publish Services for retrieving and manipulating data as well as allow registration of listeners - applications outside the SaaS cloud that are invoked by the SaaS application when specific events occur.
This is our story of developing three SaaS JSF applications in the past two years. It shows the best practices we have arrived at for implementing SaaS requirements. It includes demos of both the customization and the service interface.
Target Audience
Experienced Java Web Developers, preferably familiar with JavaServer Faces
Key Points
What are typical requirements for SaaS style web applications?
Best practices for implementing customization features in JSF applications
How to implement deep link navigation into JSF web applications
An infrastructure for registering and notifying remote listeners for business events in JSF applications
Outline
Intro of SaaS style application
Brief overview of our business cases + discussion on typical requirements for SaaS application
Focus on Customization (various aspects)
Focus on (remote) Integration (deep link, service api, remote event listeners)
Summary & road ahead
Code Samples:
Approach to factory, organization (customer) and user level application settings
Deep Link navigation into JSF application
Register Remote Listener with SaaS application + notification upon business event
AD303: Building Composite Applications for IBM Workplace Collaboration Servic...Brian O'Gorman
Lotusphere 2006 session.
AD303: Building Composite Applications for IBM Workplace Collaboration Services and IBM Workplace Managed Client Applications
Brian O'Gorman & Stanley Dunne
Introduction On Integrating Translation Applications, Wcm To Achieve A Common...Dhiraj Makam
How to maximize the return of investment and achieve a business goal which gives a strategic advantage in a dynamic market where having a localized website is key to either become a leader or “an also ran.”
CCI 2019 - PowerApps for Enterprise Developerswalk2talk srl
Il potenziale di PowerApps per la creazione di applicazioni aziendali rende la piattaforma molto apprezzata per la maggior parte delle applicazioni di cui le aziende hanno bisogno internamente.
Ma quando le richieste iniziano a includere la possibilità di lavorare offline, integrare i servizi di Azure, incorporare un'applicazione PowerApps, creare e riutilizzare componenti personalizzati o utilizzare connettori personalizzati per dati e servizi aziendali o gestire il ciclo di vita di un'app, le cose diventano più complicate.
In questa sessione vedremo come sfruttare i meccanismi e le funzionalità che PowerApps include per soddisfare queste esigenze.
By Fabio Franzini
WSO2 Product Release Webinar: WSO2 Dashboard Server 2.0WSO2
To view the recording of this webinar please use below URL:
http://wso2.com/library/webinars/2016/03/wso2-product-release-webinar-wso2-dashboard-server-2.0/
WSO2 Dashboard Server 2.0 is a successor of WSO2 User Engagement Server, and it has several new features incorporated out of the box, and provides a personalized user experience to various users from the system administrator to the CEO of the company. This webinar will discuss the following topics
Architecture and flow of the WSO2 Dashboard Server
Introduction and demonstration on the new features including
Creating, adding and deleting dashboards
Designing dashboards
Personalizing dashboards
Publisher subscriber support
Role based access control of the dashboards
Integration with WSO2 Identity Server and configuring SSO
Deployment and scalability
CCF 4 XAP has been designed to exploit XAP capabilities on the cloud and leverage XAP scalability, low latency and high-throughput features when deployed in such dynamic environment
The term "software multitenancy" refers to a software architecture in which a single instance of software runs on a server and serves multiple tenants. A tenant is a group of users who share a common access with specific privileges to the software instance.
Introduction to web application development with Vue (for absolute beginners)...Lucas Jellema
In this slide deck I show you how you can easily and quickly create quite rich web applications with Vue 3 – without having to study complex concepts or understand many technical details. I have only recently learned how to work with Vue 3 myself and now is the best time for me to share my learning experience (and my enthusiasm) with you. I know what I found essential to understand and what most got me excited in these early steps (what was a little bit hard to grasp). I believe that I can present my steps and guide you to experience the same fun and have a similarly gratifying experience. I am not an expert in this subject – I have barely learned how to walk and that is why I can help you with these first steps with Vue.
In this deck, I do not explain how Vue works. I do not really know that. I will show you how to work with it and how to create web applications that are functional, appealing, fast and responsive.
The approach I am taking is straightforward:
• I will tell you a little bit about web development, browsers and reactive frameworks
• I will show the hello world of Vue applications
• I will explain about components and nesting, events, data binding and reactive behavior and demonstrate these concepts
• I will introduce Vue UI Component libraries – and with no effort at all we will launch our application to the next level – with rich components to explore, manipulate, visualize data collections
• We will publish the web application from our development environment to where the whole world could see it – using GitHub Pages
• As bonus topic – we discuss state management
At the end of this session you will be able to quickly create a simple yet rich web application with Vue 3. You have a starting point to further evolve your skills with the many online resources I am convinced that you will enjoy your newfound powers and the simplicity and power of Vue 3.
Note: a tutorial accompanies this slide deck - see https://github.com/lucasjellema/code-face-vue3-intro-reactiive-webapps-aug2023/blob/main/README.md
Making the Shift Left - Bringing Ops to Dev before bringing applications to p...Lucas Jellema
Designing, agreeing on, implementing and testing the application is our first challenge. But it does not end there. Applications require tender love and care when they are live. Application Operations needs to be in place along with the functionality of the application. AppOps is the process of making sure that the applications are executed as required and that any problems are detected, reported and dealt with. Some mechanisms used in AppOps: transaction tracing, log analysis, post-data-exchange-checks, health checking of all systems involved, in-production-testing of end-to-end data flows. Additionally, AppOps takes care of configuration management, scaling, cost management, technical life cycle management on solution components. In this session, we will take a closer look at what is required to keep those applications going and how we do ops by design from early on in the agile process.
Lightweight coding in powerful Cloud Development Environments (DigitalXchange...Lucas Jellema
Cloud Based Development environments allow software engineers to work in a new and refreshing way. The development environment runs in the cloud, based on a coded environment definition and with the sources from a specific branch in a Git repository. The environment can be quite powerful in memory, CPU and storage. Development can be done from a lightweight device such as a Chromebook or even a tablet. Switching between different environments becomes a breeze, collaborating in an environment is easily done. Using network tunneling, the IDE could run locally against the remote workspace and remote ports can be accessed on localhost. This session demonstrates both Gitpod and Github Codespaces - similar SaaS offerings with generous free tiers. They are great for quick investigation into new technologies, for working through tutorials and for contributing to open source projects. You will smile at the ease and elegance of engineering your software in this way.
Apache Superset - open source data exploration and visualization (Conclusion ...Lucas Jellema
Introducing Apache Superset - an open source platform for data exploration, visualization and analysis - co-starring Trino and Steampipe for providing SQL access to many non-SQL data sources.
CONNECTING THE REAL WORLD TO ENTERPRISE IT – HOW IoT DRIVES OUR ENERGY TRANSI...Lucas Jellema
Enterprise IT systems are deaf, blind and highly insensitive. They do not know what is going on in the outside world. Through Internet of Things technology, we provide eyes, ears and hands that allow enterprises to learn about and react in real time to events in the physical world. The energy transition at a major Dutch energy company (Eneco) is powered by IoT technology – to steer and sometimes curtail windmills and solar farms and to coordinate local energy production and trade. This session shows you how the physical world was connected to the customer portals and apps, asset management systems and Kafka platform through the Azure cloud based IoT Hub en Edge, digital twin, serverless functions, timeseries datastores and streaming data analysis. It is a story about technological innovation on top of existing foundations and of a vision for business and our society at large.
Help me move away from Oracle - or not?! (Oracle Community Tour EMEA - LVOUG...Lucas Jellema
I hear this aspiration from a growing number of organizations. Sometimes as a quite literal question. This however is merely half of a wish. Apparently, organizations want to quit with one thing — but have not yet stipulated what they desire instead. What is the objective that is pursued here? Only to get rid of Oracle? It will become clear why you should give a considerable thought about dropping Oracle, or any other vendors’ technology, when you’re not pleased with your current IT situation. You need to focus on the actual problems and objectives and define the suitable roadmap to fit your real needs. It turns out that the quest is usually for modernization and flexibility - and Oracle can very well be a part of that future.
Organizations with decades of investment in Oracle technology sometimes (and increasingly) express a wish to move away from Oracle. In this session, we will first explore where the desire to move away from Oracle might come from. Then we describe what the term Oracle represents — more than 2.000 products on all layers in the technology stack and in different business areas. Finally, we map out what the ‘moving away from’ consists of: defining where you ‘move to’ and subsequently actually going there.
It will become clear why you should give considerable thought about dropping Oracle, or any other vendors’ technology, when you’re not pleased with your current IT situation. You need to focus on the actual problems and objectives and define the suitable roadmap to fit your real needs. It turns out that the quest is usually for modernization and flexibility - and Oracle can very well be a part of that future.
Original storyline in this Medium Article: https://medium.com/real-vox/what-if-companies-say-help-me-move-away-from-oracle-ffbbc95afc4f
IoT - from prototype to enterprise platform (DigitalXchange 2022)Lucas Jellema
In 2019 the company started a small scale IoT project: smart meters in consumer homes, a cloud based IoT platform for device management, metrics collecting, monitoring and real time data processing. From the initial 12 devices and this single use case, the initiative has rapidly scaled, to tens of thousands devices - including entire wind parks and solar farms - and seven substantial business cases, not just for harvesting data but increasingly for real time actuation. The IoT Platform is feeding the brain at the heart of the enterprise - through an event streaming platform and an API platform. It supports complex operations with anomaly detection on metrics streams and device and communication monitoring. This session tells about the eye catching business cases - what are business objectives and results - and explains the journey since the start. It continues the story presented at DigitalXchange 2020 - discussing technical challenges and solutions as well as organizational aspects. Areas of particular interest: edge processing, data analytics and machine learning.
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...Lucas Jellema
Pitch: The movie The Matrix made it clear: The Architect is powerful. How to be(come) and IT architect? What do you do, what do you need to know, is it fun and why? Using real world examples, core principles and useful tools, this session introduces the subtle art of designing and realizing flexible IT architectures. </p><p>Taking a step back to get and create an overview, frequently asking why to get to the real intention, bringing aspects such as cost, scale, time and change and business strategy into the design and bridging the gap between business owners, process managers and technical specialists. One way to define the responsibility of an IT architect. In this session, we will discuss what is expected of the architect and what you need to do for that and what you could use to get it done. How do you get started as an architect, how to grow in that role? We discuss a number of real life architectural challenges and solution design. And discuss a number of architecture principles, patterns, and powers to apply. Never stop programming - but perhaps rise to the architecture challenge too.
Notes: Many IT professionals aspire to become architects. Many architects wonder what it is they have to do. After 27 years in IT I find I have slowly and steadily moved into a role that I can probably use the label architect for, although still with some reluctance. What exactly does that mean - IT architect? While I may not have all answers and the ultimate truth and wisdom, I do have many architectural challenges to discuss and some core principles to share and a number of tips, tricks and tools to recommend that will help anyone get started or grow in a role as architect for software and IT systems. Elements that make an appearance include cloud, agile, DevOps, microservices, persistence, business, powers of persuasion, diagramming, cost, security, software engineering, data.
Outline: - two real world examples (one new business initiative, one running and struggling project) and how to approach them with an architect's mind - core principles to apply , patterns to us, what to unearth (the power question of WHY) - architecture products: what do you deliver as an architect; how do you ensure agility? - how to be effective? bringing your design to life - communication with stakeholders/powers of persuasion, monitoring adherence, being pragmatic but not lose grip; - anecdotal evidence from several small and large product teams - the good and also the ugly (architectural oversights and the consequences)
some specific answers to address - how much technical knowledge and programming skills does an architect require? What other knowledge is required and how to stay on top of your game? how to get going: first steps towards be(com)ing and architect?
Steampipe - use SQL to retrieve data from cloud, platforms and files (Code Ca...Lucas Jellema
Introduction to Steampipe - a tool for retrieving data and metadata about cloud resources, platform resources and file content - all through SQL. Data from clouds, files and platforms can be joined, filtered, sorted, aggregated using regular SQL. Steampipe offers a very convenient way to get hold of data that describes the environment in detail.
Automation of Software Engineering with OCI DevOps Build and Deployment Pipel...Lucas Jellema
Automation of software delivery has several advantages. Prevention of human error is certainly one. Consistent and complete execution of tried and tested build and deployment tasks as the only way to apply changes in the live environment. Once the pipelines have been set up, the engineers can focus on the software and applying the required changes to it. To bring that software all the way to production is a breeze. Oracle Cloud Infrastructure offers the DevOps service, introduced in the Summer of 2021. This service comes with git style code repositories, build servers and build pipelines, artifact repositories as well as deployment pipelines. This session introduces OCI DevOps and demonstrates how software can be built and deployed on OKE Kubernetes, Compute Instance VMs and Oracle Functions. From simple source code an application is put in production without manual intervention in the build and deployment process.
Introducing Dapr.io - the open source personal assistant to microservices and...Lucas Jellema
Dapr.io is an open source product, originated from Microsoft and embraced by a broad coalition of cloud suppliers (part of CNFC) and open source projects. Dapr is a runtime framework that can support any application and that especially shines with distributed applications - for example microservices - that run in containers, spread over clouds and / or edge devices.
With Dapr you give an application a "sidecar" - a kind of personal assistant that takes care of all kinds of common responsibilities. Capturing and retrieving state, publishing and consuming messages or events. Reading secrets and configuration data. Shielding and load balancing over service endpoints. Calling and subscribing to all kinds of SaaS and PaaS facilities. Logging traces across all kinds of application components and logically routing calls between microservices and other application components. Dapr provides generic APIs to the application (HTTP and gRPC) for calling all these generic services – and provides implementations of these APIs for all public clouds and dozens of technology components. This means that your application can easily make use of a wide range of relevant features - with a strict separation between the language the application uses for this (generic, simple) and the configuration of the specific technology (e.g. Redis, MySQL, CosmosDB, Cassandra, PostgreSQL, Oracle Database, MongoDB, Azure SQL etc) that the Dapr sidecar uses. Changing technology does not affect the application, but affects the configuration of the Sidecar. Dapr can be used from applications in any technology - from Java and C#/.NET to Go, Python, Node, Rust and PHP. Or whatever can talk HTTP (or gRPC).
In this Code Café I will introduce you to Dapr.io. I will show you what Dapr can do for you (application) and how you can Dapr-izen an application. I'll show you how an asynchronously collaborative system of microservices - implemented in different technologies - can be easily connected to Dapr, first to Redis as a Pub/Sub mechanism and then also to Apache Kafka without modifications. Then we do - with the interested parties - also a hands-on in which you will apply Dapr yourself . In a short time you get a good feel for how you can use Dapr for different aspects of your applications. And if nothing else, Dapr is a very easy way to get your code with Kafka, S3, Redis, Azure EventGrid, HashiCorp Consul, Twillio, Pulsar, RabbitMQ, HashiCorp Vault, AWS Secret Manager, Azure KeyVault, Cron, SMTP, Twitter, AWS SQS & SNS, GCP Pub/Sub and dozens of other technology components talk.
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...Lucas Jellema
For a long time I have been reluctant to actively contribute to an open source project. I thought it would be rather complicated and demanding – and that I didn't have the knowledge or skills for it or at the very least that they (the project team) weren't waiting for me.
In December 2021, I decided to have a serious input into the Dapr.io project – and now finally to determine how it works and whether it is really that complicated. In this session I want to tell you about my experiences. How Fork, Clone, Branch, Push (and PR) is the rhythm of contributing to an open source project and how you do that (these are all Git actions against GitHub repositories). How to learn how such a project functions and how to connect to it; which tools are needed, which communication channels are used. I tell how the standards of the project – largely automatically enforced – help me to become a better software engineer, with an eye for readability and testability of the code.
How the review process is quite exciting once you have offered your contribution. And how the final "merge to master" of my contribution and then the actual release (Dapr 1.6 contains my first contribution) are nice milestones.
I hope to motivate participants in this session to also take the step yourself and contribute to an open source project in the form of issues or samples, documentation or code. It's valuable to the community and the specific project and I think it's definitely a valuable experience for the "contributer". I looked up to it and now that I've done it gives me confidence – and it tastes like more (I could still use some help with the work on Dapr.io, by the way).
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...Lucas Jellema
Apache Kafka is one of the best known enterprise grade message brokers – created at LinkedIn, donated to the Apache software foundation and used in an ever growing number of organizations to provide a backbone for asynchronous communication. This session introduces Apache Kafka – history, concepts, community and tooling. In a hands on lab, participants will create topics, publish and consume messages and get a general feel for Kafka. Simple microservices are developed in NodeJS – publishing to and consuming from Apache Kafka.
Dapr.io has support for Apache Kafka. Using Kafka through Dapr is very straightforward as is explained and demonstrated and applied in a second handson lab – with applications in various programming languages. Participants will even be able to exchange events across their laptops – through a cloud based Kafka broker.
Use of Apache Kafka in several architecture patterns is discussed – such as data integration, microservices, CQRS, Event Sourcing – along with a number of real world use cases from several well known organizations. The Kafka Connector framework is introduced – a set of adapters that allow us to easily connect Kafka to sources and sinks – where respectively change events are captured from and messages are published to.
Bonus Lab: Apache Kafka is ran on Kubernetes as is Dapr.io. Multiple mutually interacting microservices are deployed on the same local Kubernetes cluster.
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)Lucas Jellema
This session does a quick recap of microservices: why do we want them, what problems do they solve and what are the principles around designing and implementing them? The Dapr.io runtime framework for distributed applications is introduced. Dapr provides a sidecar (almost like a personal assistant to a manager) to an application or microservice, a companion process that handles common tasks such as storing and retrieving state, consuming and publishing messages and events, invoking external services and other microservices as well as handling incoming requests. Participants will do a handson lab with Dapr.io and learn how to quickly implement interactions with various technologies, including Redis and MySQL.
Node(JS) is introduced – a server side JavaScript-based programming language that can be used well for implementing microservices. Some of the main characteristics of NodeJS are discussed (functional programming, asynchronous flows, NPM package manager) as well as common use cases (handle incoming HTTP requests, invoke REST APIs). In the second lab, Node and Dapr are used together to implement microservices that interact with databases and message brokers and each other – in a decoupled fashion.
6Reinventing Oracle Systems in a Cloudy World (RMOUG Trainingdays, February 2...Lucas Jellema
The cloud is changing many things. Even the decision to not (yet) adopt cloud is one to make explicitly. Now is a time for any organization to reconsider the IT landscape. For each system we should make a conscious ruling on its roadmap. The 6R model suggests six ways to move a system forward.
This session uses the 6R model and applies it specifically to Oracle technology based systems: what are the options and considerations for Oracle Database, Oracle Fusion Middleware, custom applications, and other red components? What future should we consider and how do we choose? The paths chosen by several Oracle-heavy users is presented to illustrate these options and the decision making process. Oracle Cloud Infrastructure and Autonomous Database play a role, as do Azure IaaS and Azure Managed Database as well as on premises systems. Latency, recovery, scalability, licenses, automation, lock-in, skills, and resources all make their appearance.
Help me move away from Oracle! (RMOUG Training Days 2022, February 2022)Lucas Jellema
Organizations with decades of investment in Oracle technology sometimes (and increasingly) express a wish to move away from Oracle. In this session, we will first explore where the desire to move away from Oracle might come from. Then we describe what the term Oracle represents -- more than 2.000 products on all layers in the technology stack and in different business areas. Finally, we map out what the 'moving away from' consists of: defining where you 'move to' and subsequently actually going there.
It will become clear why you should give considerable thought about dropping Oracle, or any other vendors' technology, when you're not pleased with your current IT situation. You need to focus on the actual problems and objectives and define the suitable roadmap to fit your real needs. It turns out that the quest is usually for modernization and flexibility - and Oracle can very well be a part of that future.
DevOps is a term used in many places and unfortunately also to mean many different things. This presentation (largely in Dutch) paints the DevOps picture. While it may not give a clear cut definition (there does not seem to be one) it certainly makes clear what DevOps is about, what objectives and origins are and which factors enable and drive DevOps.
Conclusion Code Cafe - Microcks for Mocking and Testing Async APIs (January 2...Lucas Jellema
Microcks is a tool for API Mocking and Testing. In this presentation an overview of the support in Microcks for asynchronous APIs - the event publishing and consuming behavior of services and applications
Cloud native applications offer scalability, flexibility, and optimal use of compute resources. Serverless functions interacting through events, leveraging cloud capabilities for persistent storage and automated operations take organization to the next level in IT. This session demonstrates polyglot Functions interacting with native cloud services for events and persistence (Object Storage and NoSQL Database) and leveraging the Key and Secrets Vault, Monitoring and Notifications services for operational control. A lightweight API Gateway is used to expose APIs to external consumers. Infrastructure as Code is the guiding principle in deploying both cloud resources and application components, through OCI CLI and Terraform. This session leverages many cloud native (enabling) services in Oracle Cloud Infrastructure. The session will introduce concepts, then spend most of the time on live demonstrations. All sources are shared with the audience, to allow participants to create the same application in their own cloud tenancy. What is so great about Cloud Native Applications? How do you create one? I will explain the first and demonstrate the second. On Oracle Cloud Infrastructure, using services that anyone can use for free, I will live create a cloud native application that streams, persists, notifies, scales, monitors Benefits: - get to know many different OCI services - understand the meaning, purpose and benefits of cloud native development - learn how to take your own first steps in OCI - for free!
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
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.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
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.
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/
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
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
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...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.
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
Quantum Computing: Current Landscape and the Future Role of APIs
Castle in the Clouds: SaaS-Enabling Oracle ADF Faces Applications
1. Castle in the Clouds: SaaS-Enabling Oracle ADF Faces Applications Oracle Open World 2009 Wednesday, 14thOctober Lucas Jellema AMIS, The Netherlands
2. Overview What makes an application ‘SaaS’? And why provide an application as SaaS Requirements of SaaS applications Focus on Customization Integration & SOA across the cloud Deep Linking, Mash Up and UI Services Services API Remote Events Listeners Summary and Road Ahead
3. Software as a Servicecommon characteristics Single instance of standard application & database Running in a shared infrastructure, 24/7 Managed by central administration team Delivered over the internet to web browsers Used by individuals from many organizations Multi-tenant with multiple users each Globally distributed & multi-lingual user community Licence model based on usage metrics Service Level Agreement to specify quality of service
4.
5. Software as a Service(perceived) benefits Small up-front investment Quick startup – ‘turn on the software tap’ Professional administration with guaranteed performance and application availability Low TCO through ‘economies of scale’ Dynamic Scalability Rapid evolution of new features and bug resolution – quick deployment Quick adoption of new technology Community to create, foster & share best practices
6. Software as a Serviceconcerns & potential disadvantages Dependence on 3rd party for Security, Availability & Performance, Scalability Data outside the own infrastructure Standard application – not at all tailor-made Our own terminology, fields, default values, validation rules, workflow How does SaaS application integrate with Our SOA & EDA, Mash Up/Portal and Workflow Identity Management and Single Sign On How to prevent lock-in with the SaaS provider
7. SaaSRequirements: Integration across the cloud Make SaaS application integrate with IT backbone of the organization using the SaaS SOA & EDA, workflow management, identity management, email server and other shared central facilities Two-way, based on open standards, geared towards both programmatic and UI integration
8. SaaS Requirements Customization Allow organizations and individuals to tailor the ‘standard’ application for better fit Within the single instance of the SaaS application Easy, dynamic, run-time, self-service in browser Multi-version on single ‘url and database’ SaaS customers can upgrade to new versions of the SaaS application when they want to
9. Application ‘levels of reality’ Factory Customer Customer Organization B Organization A End User End User
10. Application Mode Switcher Application Managers can switch between Application Modes To view and manipulate the application at the selected level
11. Application Rollout process… Development in the Factory Production-time refining Customer (organization) specific implementation By SaaS Helpdesk, on site consultant, Application Admin End User (dynamic, run-time) Personalization
12. Proposal Let’s approach every end user application as a SaaS application! Both standard and custom applications
13. Desirable SaaS features & facilities Dynamic, Wiki-like, context-sensitive help Integration with incident registration Automatic passing of page, context data & logging ‘Simulate user’ option for the service desk SLA metrics and application usage monitoring Self Service style application management ‘Toggle’ between factory, organization and user Integrated workflow & collaboration Communication (email, chat), task list, tagging, … “Register interest in” – notification of events
14. Customization Allow tailoring of terminology to organization Dynamic, run-time resource bundle management Resource Bundles per organization (and individual) Support for adding/hiding fields Configuration of application behavior through organization and user level preferences Personalization (my…) features for fine tuning Workflow and task configuration Configure menus and add new items Fine tune look & feel – e.g. skins, styles, logos
15. Customizing terminology Boilerplate text – prompt, title, button label, messages, help,… - come from resource bundles Built in support for i18n – language & country Typically held in property files deployed in WAR We need to implement resource bundles that can be updated and refreshed at run time Or at least extended with any overrides of default values keys that support the notion of organization specific versions of bundle entries in addition to factory ones maintenance facilities with self service support That presents bundle entries in understandable format
16. Implementing Self Service Customization of Resource Bundles Resource Bundle implemented as class (extend ListResourceBundle) that read from database Keys are constructed as: <base_key>_<org_id> And even <base_key>_<org_id>_<user_id> JSF page refers to resources through intermediate bean: #{bundleHandler[‘baseKey’]} The bundleHandler bean first tries user specific key; if not found then org key and then base key It can also access several resource bundles – first the dynamic, database based one with overrides
17. Custom(izing) fields Some fields are never used by some organizations and are therefore ‘in the way’ or they may even be legally forbidden in a country! Every organization finds the application lacking with one or more fields but no two organizations ahree on which fields… To allow optimal customization, a SaaS application ideally allows Customization of standard items Addition of custom items embedded in pages And associated with data records like ‘regular’ items
18. Application Settings for customizing application behavior Some Application Behavior is developed as dynamically configurable Through Preferences or Application Settings Display: Locale, Format, Units for Height and Weight (converter parameters), feature on/off Business logic: Default Values for new records, Validation parameters, Field & Button Authorization Styling: Images, Fonts, Colors, Skins/Themes Settings can be configured at Factory (default), Organization and User level At run-time through self service pages
20. Application Settings Data Model Application Settings Customized Settings * Name o Factory Value o Allowable Values o Description o Data Type o Level Updatable o Updatable By * OrgId o Value o UserId o Comment mm/dd/yyyy Date Format dd-mm-yyyy dd-mm-yy Use Photo N Y Y Metric/Imperial m N … i
21. Application Personalization We are all individuals We are all individuals We are all individuals We are all individuals We are all individuals We are all individuals We are all individuals We are all individuals We are all individuals We are all individuals We are all individuals I’m not…
22. Personalization Features – My… options My Navigation History My Favorites (quick links, bookmarks) My own custom properties (‘flex fields’) My Date Format, Weight/Height units, Currency, Default Values My lingo in titles, labels, prompts & messages Personalized Menu-structure … (my logo!)
23. Demo SaaS style Customization in JSF Run Time Management of Organization specific Resource Bundles Change the boilerplate text defined in the factory Create organization and user specific resources Influencing application behavior through application settings at organization level Configure date format pattern Specify customized highlight definitions Toggle between user/organisation/factory scope
24.
25.
26. Run Time form-customization One application, multiple marketing labels Each label requires a slightly different set of items – in a potentially different sequence To be defined and applied at run-time Solution: After the JSF component tree is built in memory, let a JSF PhaseListener traverse it and Set rendered to false Change the order of panelFormLayout children based on the current context and the meta data
29. ADF Customization facilitiesRun Time ‘Change Persistence’ ADF Change Persistence: built-in run-time customizations for several components Table, Collapsible/Disclosable Panels, Panel Splitter Change persistence can also be leveraged programmatically for custom run-time changes changing an attribute value, adding or removing a facet, adding or removing a child component, reordering child components, moving a child component to a different parent
30. ADF Customization facilitiesDesign time ADF Customization Developer uses declarative customization Start with the base application Create specialized versions of XML based application artefacts like JSF page definition For every possible context in one or more dimensions At run time: users work with an application specially customized based on the actual context Multiple versions of artefactsare managed in the MDS repository
31. ADF Customization facilitiesRun time WebCenter Composer Application manager or content editor can ‘edit’ the application at run time Add or remove items in customizable regions Rich content elements, portletsand registered taskflows Edit content, configure portlets, rearrange items Create new pages with dynamic content items
32. Multi-version SaaS Application Pre Oracle Database 11gR2: tough! separate database schemas and dynamic data source selection With Oracle Database 11gR2: easy! Using Edition Based Redefinition Multiple versions of database objects in the same schema – on a common set of tables The application (version) specifies at connect time which ‘edition’ of the database to use Come to my session S310492 Monday 17:30 - 18:30, Moscone South, Room 305
34. SOA across the cloud SaaS A SaaS B CMS Social API internet internal LDAP WorkflowEngine App D App C Validation Service Service API Service API CMS Email IM Fax 34
35. Integration and SOA across the cloud Service API as programmatic alternative to UI RSS, SOAP, REST Event Listener registration to be notified by SaaS Service Registration (Dependency Injection) Authentication/Authorization, Translation, Validation, Workflow, Communication Identity cross referencing (SaaS & local identifier) Deep Link API for context sensitive navigation UI Services (Portlets) to fit into Mashups & Portals Data Export, Synch & Import – bulk facilities “internet service bus” – integrating multiple SaaSs 35
36. SOA across the cloud: data & operations 36 SaaS A service dependency injection SaaS B CMS Social API Export Service API Service API RSS listenerregistration internet internal LDAP WorkflowEngine App D App C Validation Service Service API Service API CMS Email IM Fax
37. SOA across the cloud: UI / Navigation / Process/Presentation 37 SaaS B SaaS A Deep link Interface CMS Deep link Interface Social API Portlet API HTMLPages Portlet API RSS RSS internet internal ToDo News WorkflowEngine App D App C Portlet API Portlet API RSS CMS Email IM Fax
38. SaaS A SaaS A service dependency injection SaaS B SaaS B Deep link Interface CMS CMS Deep link Interface Portlet API HTMLPages Portlet API Export RSS Service API Service API RSS RSS listenerregistration internet internet internal internal ToDo News LDAP WorkflowEngine WorkflowEngine App D App C App D App C Portlet API Portlet API Validation Service Service API Service API RSS CMS CMS Email IM Fax Email IM Fax 38
40. Publishing ADF Application as (remotely embeddable) Portlet Any ADF Task Flow can be published as a standard (WSRP) Portlet Using WebCenter Framework Without development restrictions Well, … almost that is Note that ADF applicationscan consume remoteportlets as well Using WebCenter WebCenter (Remote Portlet Provider)
41.
42. Selecting this task will bring up a popup loaded through a deep link into SaaS A
43. Presenting the ‘Update Job’ page with the details of Scott loadedService API RSS ToDo News WorkflowEngine
44. Implementing Deep Linking in JSF URL like http://host/SaaSApp/UpdateJob/Scott Cookie provides hook for Single Sign On ServletFilter intercepts and redirects to proper JSF page – after storing parameters in the request JSF PhaseListener intercepts the request to the page and prepares the backing beans Using the request parameters JSF page is rendered with proper data context When the user is done, the JSF application could update the task by calling the workflow engine SAPI publish a SaaS event 42
45. Demonstrating the SaaS Service API SaaS A HTMLPages Create a new Employee Call the SaaS API to propagate the new employee record Right after succesful transaction commit Inspect the new record in the SaaS UI Portlet API Service API RSS App D
48. Event is routed to the remote listener that calls the App D Service API that “does something with it”Service API RSS listenerregistration App D Service API DB
52. SaaS in the Multi-Org world SaaS B SaaS A br />CMS Social API Export Service API Service API RSS Portlet API Portlet API HTMLPages internet App Y App X App D Service API Service API Service API App Z WorkflowEngine 48
53. 49 Summary and ConclusionSaaS and the road ahead SaaSapplications need special facilities Customization & personalization Service API (UI and programmatic), Event support SLA management, metrics monitoring & self service Multiple parallel application versions Most applications could do with the same facilities: let’s regard all applications as SaaS!
54. 50 Summary and Conclusions Enterprise Service Bus and Portal/Mashup connect the SaaSapplications With WebServices API and Event/Listener model Through embeddable Portlets with params/events ADF Faces & EL support dynamic front ends Custom facilities like dynamic resource bundles ADF design-time customization and WebCenter Composer run-time customization Multi-version is enabled through Oracle Database 11gR2 Edition Based Redefinition
55. Resources Presentation and demos are on our blog http://technology.amis.nl/blog Contact me at:lucas.jellema@amis.nl
Editor's Notes
Data by 3rd party:No access from internal systems security risks foreign regulation & legislation (Patriot Act)Risk SaaS provider collapseSwitch to another SaaS providerIntegration how to programmatically interact with SaaS application how to push events from SaaS to local EDA/Enterprise Service Bus how to synchronize data between SaaS and local database how to integrate application in (local) Portal and Mashup: publish UI Services (Portlets) from SaaS