SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
Active Components as a Method for Coupling
Data and Services – A Database-Driven
Application Development Process
Beat Signer and Moira C. Norrie
Department of Computer Science
Vrije Universiteit Brussel
1050 Brussels, Belgium

http://vub.academia.edu/BeatSigner
                                         2 December 2005
Motivation
                                              package org.penAndPaper;
                                              import java.io.IOException;
                                              ...

                                              public class PaperPoint {

                                                  Rectangle slide1
                                                    = new Rectangle(10,10,70,50);

                                                  // if input within slide1 then
                                                  // execute application logic

                                              }




ICOODB, July 3, 2009   Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Problems
      No separation of data objects (e.g design elements) and
          application logic
              changes to the design require a recompilation
              limited reusability of application logic
      Authoring of paper interface requires programming
              designer has to be a programmer
              programming rather than authoring approach
      Design elements cannot easily be reused with different
          application logic variants
              replication of code



ICOODB, July 3, 2009                 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Active Component Approach
      Database driven application development where the
          database contains
              data objects
              active components (application logic)
      Data objects can be associated with active components at
              instance level
              type level
              role level (classification)
      Access to data object might trigger the execution of an
          active component
              active component runtime environment
              database-driven application logic on server and/or client side

ICOODB, July 3, 2009                Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Active Component
      Active component contains data about a service
              name
              identifier
              timeout
              parameters
                 - key/value string pairs

      Active component runtime environment executes the
          corresponding application logic
              service binding
              initialisation




ICOODB, July 3, 2009                    Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Active Component Runtime Environment




ICOODB, July 3, 2009   Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Active Component Registry




      Binding of identifier to stub and logic components
      Reconfigurable at runtime




ICOODB, July 3, 2009     Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Server-side Functionality




ICOODB, July 3, 2009   Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Client-side Functionality




ICOODB, July 3, 2009   Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Client- and Server-side Funtionality




ICOODB, July 3, 2009   Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Active Component Stub and Logic




ICOODB, July 3, 2009   Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Active Component Example
      package org.ximtec.iserver.activecomponent.logic;
       public class CommandLine extends EmptyLogic {
      }

      package org.ximtec.iserver.activecomponent.stub;
      import java.io.IOException;
      ...
      public class CommandLineStub extends SingleEventStub {
       public static final String PARAM_COMMAND = "command";

       public void finish() {
        try {
         Runtime.getRuntime().exec(getParameter(PARAM_COMMAND));
        }
        catch (IOException e) {
         LOGGER.log(Level.SEVERE, Constant.EMPTY_STRING, e);
        }
       } // finish
      }

ICOODB, July 3, 2009         Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Active Component Stub Example ...




ICOODB, July 3, 2009   Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Client and Server AC Interaction




ICOODB, July 3, 2009   Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Active Components
                           Button                                               Image

                           Slider                                               Sound

                          Slider2D                                              Movie

                        DateSelector                                        SQLClient

                          Browser                                         XCMRequest

                         MapSelector                                     CommandLine

                          Capture                                 PaperPointControl

                        CaptureAndIcr                                PaperPointAnnot

                       CaptureAndSpeak                                            ...

ICOODB, July 3, 2009            Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Slider / Slider2D Active Component




ICOODB, July 3, 2009   Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Slider2D Active Component
      Slider2D active component properties
              startValueX
              endValueX
              stepsizeX
              invertedX
              startValueY
              endValueY
              stepsizeY
              invertedY




ICOODB, July 3, 2009         Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Authoring




ICOODB, July 3, 2009   Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Active Component Editor
                                                                            PP_SLIDE_SELECTOR

                                                                  Show slide 1

                                                                  command        showSlide

                                                                  slide          1




ICOODB, July 3, 2009   Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Other Use Cases
      Rich internet applications
              active component runtime environment within browser
      "Internet of Things"
              active component runtime environment for augmented
               physical objects
              lightweight solution for database updates (e.g. sensor data)
      Implicit service execution at object access time
              service associated at instance, type or role level
              media service components




ICOODB, July 3, 2009               Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Media Service
      No longer deal with "raw" media types




ICOODB, July 3, 2009    Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Ongoing and Future Work
      Integration of concepts into the ODBMS
              role-driven service invocation
              separation of intrinsic (type) and extrinsic object behaviour
      Communication between different active components
      AC runtime environments for alternative programming
          languages




ICOODB, July 3, 2009               Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Conclusions
      Database-driven application development
              reusability due to separation of data objects and services (ACs)
              flexible configuration of active component services
              instance, type and role-driven service invocation
      Client- and server-side execution of application logic
              autonomous component-based client-server interaction
      Automatic deployment of services to the client side
              simplifies updates of client-side application logic
      Authoring rather than programming approach
              rapid prototyping (growing set of active components)



ICOODB, July 3, 2009               Beat Signer - Department of Computer Science - bsigner@vub.ac.be
Further Information
      Beat Signer, Fundamental Concepts for Interactive
          Paper and Cross-Media Information Spaces,
          ISBN 978-3-8370-2713-6, May 2008




ICOODB, July 3, 2009     Beat Signer - Department of Computer Science - bsigner@vub.ac.be

Contenu connexe

Similaire à Active Components as a Method for Coupling Data and Services – A Database-Driven Application Development Process

IRJET- Object Detection and Recognition for Blind Assistance
IRJET- Object Detection and Recognition for Blind AssistanceIRJET- Object Detection and Recognition for Blind Assistance
IRJET- Object Detection and Recognition for Blind AssistanceIRJET Journal
 
Genomic Computation at Scale with Serverless, StackStorm and Docker Swarm
Genomic Computation at Scale with Serverless, StackStorm and Docker SwarmGenomic Computation at Scale with Serverless, StackStorm and Docker Swarm
Genomic Computation at Scale with Serverless, StackStorm and Docker SwarmDmitri Zimine
 
11.location based spatial query processing in wireless system
11.location based spatial query processing in wireless system11.location based spatial query processing in wireless system
11.location based spatial query processing in wireless systemAlexander Decker
 
11.location based spatial query processing in wireless system
11.location based spatial query processing in wireless system11.location based spatial query processing in wireless system
11.location based spatial query processing in wireless systemAlexander Decker
 
3.[10 13]location based spatial query processing in wireless system
3.[10 13]location based spatial query processing in wireless system3.[10 13]location based spatial query processing in wireless system
3.[10 13]location based spatial query processing in wireless systemAlexander Decker
 
A Survey on Automated Waste Segregation System Using Raspberry Pi and Image P...
A Survey on Automated Waste Segregation System Using Raspberry Pi and Image P...A Survey on Automated Waste Segregation System Using Raspberry Pi and Image P...
A Survey on Automated Waste Segregation System Using Raspberry Pi and Image P...IRJET Journal
 
IoT 기반 건설 지능화와 BIM
IoT 기반 건설 지능화와 BIMIoT 기반 건설 지능화와 BIM
IoT 기반 건설 지능화와 BIMTae wook kang
 
A Framework for Developing Pervasive Cross-Media Applications based on Physic...
A Framework for Developing Pervasive Cross-Media Applications based on Physic...A Framework for Developing Pervasive Cross-Media Applications based on Physic...
A Framework for Developing Pervasive Cross-Media Applications based on Physic...Beat Signer
 
IRJET - NETRA: Android Application for Visually Challenged People to Dete...
IRJET -  	  NETRA: Android Application for Visually Challenged People to Dete...IRJET -  	  NETRA: Android Application for Visually Challenged People to Dete...
IRJET - NETRA: Android Application for Visually Challenged People to Dete...IRJET Journal
 
High Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in AdtechHigh Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in AdtechC4Media
 
WebEngLab _201911
WebEngLab _201911 WebEngLab _201911
WebEngLab _201911 KAISTWebEng
 
Applications Of Mems In Robotics And Bio Mems Using Psoc With Metal Detector ...
Applications Of Mems In Robotics And Bio Mems Using Psoc With Metal Detector ...Applications Of Mems In Robotics And Bio Mems Using Psoc With Metal Detector ...
Applications Of Mems In Robotics And Bio Mems Using Psoc With Metal Detector ...IOSR Journals
 
IRJET- Full Body Motion Detection and Surveillance System Application
IRJET-  	  Full Body Motion Detection and Surveillance System ApplicationIRJET-  	  Full Body Motion Detection and Surveillance System Application
IRJET- Full Body Motion Detection and Surveillance System ApplicationIRJET Journal
 
Optical Recognition of Handwritten Text
Optical Recognition of Handwritten TextOptical Recognition of Handwritten Text
Optical Recognition of Handwritten TextIRJET Journal
 
Anil Kumar Rai
Anil Kumar RaiAnil Kumar Rai
Anil Kumar Raianil rai
 
Design of an IT Capstone Subject - Cloud Robotics
Design of an IT Capstone Subject - Cloud RoboticsDesign of an IT Capstone Subject - Cloud Robotics
Design of an IT Capstone Subject - Cloud RoboticsITIIIndustries
 
Design of an IT Capstone Subject - Cloud Robotics
Design of an IT Capstone Subject - Cloud RoboticsDesign of an IT Capstone Subject - Cloud Robotics
Design of an IT Capstone Subject - Cloud RoboticsITIIIndustries
 
Curriculum Vitae
Curriculum VitaeCurriculum Vitae
Curriculum Vitaebutest
 

Similaire à Active Components as a Method for Coupling Data and Services – A Database-Driven Application Development Process (20)

IRJET- Object Detection and Recognition for Blind Assistance
IRJET- Object Detection and Recognition for Blind AssistanceIRJET- Object Detection and Recognition for Blind Assistance
IRJET- Object Detection and Recognition for Blind Assistance
 
Genomic Computation at Scale with Serverless, StackStorm and Docker Swarm
Genomic Computation at Scale with Serverless, StackStorm and Docker SwarmGenomic Computation at Scale with Serverless, StackStorm and Docker Swarm
Genomic Computation at Scale with Serverless, StackStorm and Docker Swarm
 
11.location based spatial query processing in wireless system
11.location based spatial query processing in wireless system11.location based spatial query processing in wireless system
11.location based spatial query processing in wireless system
 
11.location based spatial query processing in wireless system
11.location based spatial query processing in wireless system11.location based spatial query processing in wireless system
11.location based spatial query processing in wireless system
 
3.[10 13]location based spatial query processing in wireless system
3.[10 13]location based spatial query processing in wireless system3.[10 13]location based spatial query processing in wireless system
3.[10 13]location based spatial query processing in wireless system
 
A Survey on Automated Waste Segregation System Using Raspberry Pi and Image P...
A Survey on Automated Waste Segregation System Using Raspberry Pi and Image P...A Survey on Automated Waste Segregation System Using Raspberry Pi and Image P...
A Survey on Automated Waste Segregation System Using Raspberry Pi and Image P...
 
IoT 기반 건설 지능화와 BIM
IoT 기반 건설 지능화와 BIMIoT 기반 건설 지능화와 BIM
IoT 기반 건설 지능화와 BIM
 
Lecture 2_IoT.pptx
Lecture 2_IoT.pptxLecture 2_IoT.pptx
Lecture 2_IoT.pptx
 
A Framework for Developing Pervasive Cross-Media Applications based on Physic...
A Framework for Developing Pervasive Cross-Media Applications based on Physic...A Framework for Developing Pervasive Cross-Media Applications based on Physic...
A Framework for Developing Pervasive Cross-Media Applications based on Physic...
 
IRJET - NETRA: Android Application for Visually Challenged People to Dete...
IRJET -  	  NETRA: Android Application for Visually Challenged People to Dete...IRJET -  	  NETRA: Android Application for Visually Challenged People to Dete...
IRJET - NETRA: Android Application for Visually Challenged People to Dete...
 
High Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in AdtechHigh Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in Adtech
 
WebEngLab _201911
WebEngLab _201911 WebEngLab _201911
WebEngLab _201911
 
Applications Of Mems In Robotics And Bio Mems Using Psoc With Metal Detector ...
Applications Of Mems In Robotics And Bio Mems Using Psoc With Metal Detector ...Applications Of Mems In Robotics And Bio Mems Using Psoc With Metal Detector ...
Applications Of Mems In Robotics And Bio Mems Using Psoc With Metal Detector ...
 
IRJET- Full Body Motion Detection and Surveillance System Application
IRJET-  	  Full Body Motion Detection and Surveillance System ApplicationIRJET-  	  Full Body Motion Detection and Surveillance System Application
IRJET- Full Body Motion Detection and Surveillance System Application
 
Optical Recognition of Handwritten Text
Optical Recognition of Handwritten TextOptical Recognition of Handwritten Text
Optical Recognition of Handwritten Text
 
Anil Kumar Rai
Anil Kumar RaiAnil Kumar Rai
Anil Kumar Rai
 
Design of an IT Capstone Subject - Cloud Robotics
Design of an IT Capstone Subject - Cloud RoboticsDesign of an IT Capstone Subject - Cloud Robotics
Design of an IT Capstone Subject - Cloud Robotics
 
Design of an IT Capstone Subject - Cloud Robotics
Design of an IT Capstone Subject - Cloud RoboticsDesign of an IT Capstone Subject - Cloud Robotics
Design of an IT Capstone Subject - Cloud Robotics
 
Curriculum Vitae
Curriculum VitaeCurriculum Vitae
Curriculum Vitae
 
Luigy Bertaglia Bortolo - Poster Final
Luigy Bertaglia Bortolo - Poster FinalLuigy Bertaglia Bortolo - Poster Final
Luigy Bertaglia Bortolo - Poster Final
 

Plus de Beat Signer

Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)Beat Signer
 
Indoor Positioning Using the OpenHPS Framework
Indoor Positioning Using the OpenHPS FrameworkIndoor Positioning Using the OpenHPS Framework
Indoor Positioning Using the OpenHPS FrameworkBeat Signer
 
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...Beat Signer
 
Cross-Media Technologies and Applications - Future Directions for Personal In...
Cross-Media Technologies and Applications - Future Directions for Personal In...Cross-Media Technologies and Applications - Future Directions for Personal In...
Cross-Media Technologies and Applications - Future Directions for Personal In...Beat Signer
 
Bridging the Gap: Managing and Interacting with Information Across Media Boun...
Bridging the Gap: Managing and Interacting with Information Across Media Boun...Bridging the Gap: Managing and Interacting with Information Across Media Boun...
Bridging the Gap: Managing and Interacting with Information Across Media Boun...Beat Signer
 
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming Curricula
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming CurriculaCodeschool in a Box: A Low-Barrier Approach to Packaging Programming Curricula
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming CurriculaBeat Signer
 
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions Beat Signer
 
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...Beat Signer
 
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)Beat Signer
 
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)Interaction - Lecture 10 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)Beat Signer
 
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...Beat Signer
 
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)Beat Signer
 
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...Beat Signer
 
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...Beat Signer
 
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)Beat Signer
 
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)Beat Signer
 
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)Beat Signer
 
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...Beat Signer
 
Introduction - Lecture 1 - Information Visualisation (4019538FNR)
Introduction - Lecture 1 - Information Visualisation (4019538FNR)Introduction - Lecture 1 - Information Visualisation (4019538FNR)
Introduction - Lecture 1 - Information Visualisation (4019538FNR)Beat Signer
 
Towards a Framework for Dynamic Data Physicalisation
Towards a Framework for Dynamic Data PhysicalisationTowards a Framework for Dynamic Data Physicalisation
Towards a Framework for Dynamic Data PhysicalisationBeat Signer
 

Plus de Beat Signer (20)

Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
 
Indoor Positioning Using the OpenHPS Framework
Indoor Positioning Using the OpenHPS FrameworkIndoor Positioning Using the OpenHPS Framework
Indoor Positioning Using the OpenHPS Framework
 
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...
 
Cross-Media Technologies and Applications - Future Directions for Personal In...
Cross-Media Technologies and Applications - Future Directions for Personal In...Cross-Media Technologies and Applications - Future Directions for Personal In...
Cross-Media Technologies and Applications - Future Directions for Personal In...
 
Bridging the Gap: Managing and Interacting with Information Across Media Boun...
Bridging the Gap: Managing and Interacting with Information Across Media Boun...Bridging the Gap: Managing and Interacting with Information Across Media Boun...
Bridging the Gap: Managing and Interacting with Information Across Media Boun...
 
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming Curricula
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming CurriculaCodeschool in a Box: A Low-Barrier Approach to Packaging Programming Curricula
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming Curricula
 
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions
 
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
 
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
 
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)Interaction - Lecture 10 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
 
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
 
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
 
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
 
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visual...
 
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
 
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
 
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
Data Representation - Lecture 3 - Information Visualisation (4019538FNR)
 
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4...
 
Introduction - Lecture 1 - Information Visualisation (4019538FNR)
Introduction - Lecture 1 - Information Visualisation (4019538FNR)Introduction - Lecture 1 - Information Visualisation (4019538FNR)
Introduction - Lecture 1 - Information Visualisation (4019538FNR)
 
Towards a Framework for Dynamic Data Physicalisation
Towards a Framework for Dynamic Data PhysicalisationTowards a Framework for Dynamic Data Physicalisation
Towards a Framework for Dynamic Data Physicalisation
 

Dernier

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 

Dernier (20)

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 

Active Components as a Method for Coupling Data and Services – A Database-Driven Application Development Process

  • 1. Active Components as a Method for Coupling Data and Services – A Database-Driven Application Development Process Beat Signer and Moira C. Norrie Department of Computer Science Vrije Universiteit Brussel 1050 Brussels, Belgium http://vub.academia.edu/BeatSigner 2 December 2005
  • 2. Motivation package org.penAndPaper; import java.io.IOException; ... public class PaperPoint { Rectangle slide1 = new Rectangle(10,10,70,50); // if input within slide1 then // execute application logic } ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 3. Problems  No separation of data objects (e.g design elements) and application logic  changes to the design require a recompilation  limited reusability of application logic  Authoring of paper interface requires programming  designer has to be a programmer  programming rather than authoring approach  Design elements cannot easily be reused with different application logic variants  replication of code ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 4. Active Component Approach  Database driven application development where the database contains  data objects  active components (application logic)  Data objects can be associated with active components at  instance level  type level  role level (classification)  Access to data object might trigger the execution of an active component  active component runtime environment  database-driven application logic on server and/or client side ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 5. Active Component  Active component contains data about a service  name  identifier  timeout  parameters - key/value string pairs  Active component runtime environment executes the corresponding application logic  service binding  initialisation ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 6. Active Component Runtime Environment ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 7. Active Component Registry  Binding of identifier to stub and logic components  Reconfigurable at runtime ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 8. Server-side Functionality ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 9. Client-side Functionality ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 10. Client- and Server-side Funtionality ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 11. Active Component Stub and Logic ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 12. Active Component Example package org.ximtec.iserver.activecomponent.logic; public class CommandLine extends EmptyLogic { } package org.ximtec.iserver.activecomponent.stub; import java.io.IOException; ... public class CommandLineStub extends SingleEventStub { public static final String PARAM_COMMAND = "command"; public void finish() { try { Runtime.getRuntime().exec(getParameter(PARAM_COMMAND)); } catch (IOException e) { LOGGER.log(Level.SEVERE, Constant.EMPTY_STRING, e); } } // finish } ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 13. Active Component Stub Example ... ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 14. Client and Server AC Interaction ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 15. Active Components Button Image Slider Sound Slider2D Movie DateSelector SQLClient Browser XCMRequest MapSelector CommandLine Capture PaperPointControl CaptureAndIcr PaperPointAnnot CaptureAndSpeak ... ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 16. Slider / Slider2D Active Component ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 17. Slider2D Active Component  Slider2D active component properties  startValueX  endValueX  stepsizeX  invertedX  startValueY  endValueY  stepsizeY  invertedY ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 18. Authoring ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 19. Active Component Editor PP_SLIDE_SELECTOR Show slide 1 command showSlide slide 1 ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 20. Other Use Cases  Rich internet applications  active component runtime environment within browser  "Internet of Things"  active component runtime environment for augmented physical objects  lightweight solution for database updates (e.g. sensor data)  Implicit service execution at object access time  service associated at instance, type or role level  media service components ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 21. Media Service  No longer deal with "raw" media types ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 22. Ongoing and Future Work  Integration of concepts into the ODBMS  role-driven service invocation  separation of intrinsic (type) and extrinsic object behaviour  Communication between different active components  AC runtime environments for alternative programming languages ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 23. Conclusions  Database-driven application development  reusability due to separation of data objects and services (ACs)  flexible configuration of active component services  instance, type and role-driven service invocation  Client- and server-side execution of application logic  autonomous component-based client-server interaction  Automatic deployment of services to the client side  simplifies updates of client-side application logic  Authoring rather than programming approach  rapid prototyping (growing set of active components) ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be
  • 24. Further Information  Beat Signer, Fundamental Concepts for Interactive Paper and Cross-Media Information Spaces, ISBN 978-3-8370-2713-6, May 2008 ICOODB, July 3, 2009 Beat Signer - Department of Computer Science - bsigner@vub.ac.be