SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
The “Virtual Beamer”

Paolo Somaglia             Rocco Giovanni Versaci
  (708683)                       (708259)




           Academic year 2007-2008
Assignment description

 • Implement a “virtual beamer” to share a
   presentation over a LAN/WiFi local network
       – Requirements:
              • Functional
                    – The lecturer creates a session and selects the files (HTML and/or PDF)
                    – Students and lecturer’s slides are constantly synchronized
                    – The lecturer can see the list of students
                    – The lecturer can relinquish control to any student willing to ask
                      questions about any different part of the presentation, and then take it
                      back
                    – Students can join and part the presentation at any moment
              • Non-Functional
                    – The designed system should take as much load as possible off the
                      lecturer’s workstation
                    – No hard-coded network addresses



Paolo Somaglia and Rocco Giovanni Versaci       Academic year 2007-2008                      1
Hypotheses

 • Each Jini instance is reliable
 • Every process is reliable
 • All communication channels are reliable
 • No malicious users will participate in the
   lecture
 • The lecturer prefers not to be interrupted for
   managing join/part requests manually




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   2
Supported file formats

 • Both of the proposed file formats are
   supported:
       – PDF files
       – HTM, HTML files (“complete pages”)
       – JPG files




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   3
Jini service used in the project

 • JavaSpace
       – For sharing the files that constitute the presentation
 • Jeri, Naming Service, Discovery Service,
   Leasing Service
       – For publishing, looking up and downloading service
         proxies
 • Event Service
       – For synchronizing the presentation among the
         various peers




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   4
Class diagram of the “logic layer”




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   5
Class diagram of the “view layer”




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   6
Deployment view




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   7
Run-time view




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   8
Starting the server (lecturer)




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   9
Starting the presentation




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   10
Slide-exchange protocol




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   11
The slides

 • A presentation comprises several files to be
   transmitted to the clients (students)
 • Every file is to be written in each student’s
   Javaspace: therefore, it is represented by an
   EntryFile class (which extends Entry class)
 • Each EntryFile contains a sequence number
   and the total number of files to be sent
 • The receiver collects the files in order, up to
   the “maximumSequenceNumber-th” one.


Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   12
Starting the client (student)




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   13
Starting the client (student) (cont’d)




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   14
Further notes

 • Every command issued by the lecturer is
   executed locally and then transmitted to each
   student’s listener
 • Once the lecturer has released the control to a
   student, his interface freezes and that of the
   newly appointed “leader” is activated.
       – At that point, every time the student issues a
         command, it is first sent to the lecturer and then
         propagated to all the other students.




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   15
The end




                                Thanks for watching!




Paolo Somaglia and Rocco Giovanni Versaci   Academic year 2007-2008   16

Weitere ähnliche Inhalte

Ähnlich wie Virtual Beamer - Jini-Based Academic Project

Lectures On Demand: delivering traditional lectures over the web
Lectures On Demand: delivering traditional lectures over the webLectures On Demand: delivering traditional lectures over the web
Lectures On Demand: delivering traditional lectures over the web
ronchet
 
Implementing a new Flexi Format, the how’s and whyfor’s
Implementing a new Flexi Format, the how’s and whyfor’sImplementing a new Flexi Format, the how’s and whyfor’s
Implementing a new Flexi Format, the how’s and whyfor’s
Charles Darwin University
 
00 introduction-mobile-programming-course.ppt
00 introduction-mobile-programming-course.ppt00 introduction-mobile-programming-course.ppt
00 introduction-mobile-programming-course.ppt
Jussi Pohjolainen
 
Java-Brochure-English(gsggsgshshssh).pdf
Java-Brochure-English(gsggsgshshssh).pdfJava-Brochure-English(gsggsgshshssh).pdf
Java-Brochure-English(gsggsgshshssh).pdf
rohanthombre2
 

Ähnlich wie Virtual Beamer - Jini-Based Academic Project (20)

Lectures On Demand: delivering traditional lectures over the web
Lectures On Demand: delivering traditional lectures over the webLectures On Demand: delivering traditional lectures over the web
Lectures On Demand: delivering traditional lectures over the web
 
Course Possibilities & Architecture
Course Possibilities & ArchitectureCourse Possibilities & Architecture
Course Possibilities & Architecture
 
Mootie13 XML in Action: Scalable Course Development
Mootie13 XML in Action: Scalable Course Development Mootie13 XML in Action: Scalable Course Development
Mootie13 XML in Action: Scalable Course Development
 
Innovations in EAP oral assessment: the IOA project
Innovations in EAP oral assessment: the IOA projectInnovations in EAP oral assessment: the IOA project
Innovations in EAP oral assessment: the IOA project
 
Implementing a new Flexi Format, the how’s and whyfor’s
Implementing a new Flexi Format, the how’s and whyfor’sImplementing a new Flexi Format, the how’s and whyfor’s
Implementing a new Flexi Format, the how’s and whyfor’s
 
M1 M69 2009
M1 M69 2009M1 M69 2009
M1 M69 2009
 
Sakai11 LA opensyllabus
Sakai11 LA opensyllabusSakai11 LA opensyllabus
Sakai11 LA opensyllabus
 
The Whys and Wherefores of Wookie
The Whys and Wherefores of WookieThe Whys and Wherefores of Wookie
The Whys and Wherefores of Wookie
 
00 introduction-mobile-programming-course.ppt
00 introduction-mobile-programming-course.ppt00 introduction-mobile-programming-course.ppt
00 introduction-mobile-programming-course.ppt
 
Echo-Assignment (iMoot 2013)
Echo-Assignment (iMoot 2013)Echo-Assignment (iMoot 2013)
Echo-Assignment (iMoot 2013)
 
Eng 317H Syllabus
Eng 317H SyllabusEng 317H Syllabus
Eng 317H Syllabus
 
Durham Bb Conf 2009 Lecture and Event Capture
Durham Bb Conf 2009 Lecture and Event CaptureDurham Bb Conf 2009 Lecture and Event Capture
Durham Bb Conf 2009 Lecture and Event Capture
 
Industry - The Evolution of Information Systems. A Case Study on Document Man...
Industry - The Evolution of Information Systems. A Case Study on Document Man...Industry - The Evolution of Information Systems. A Case Study on Document Man...
Industry - The Evolution of Information Systems. A Case Study on Document Man...
 
Open Syllabus in Sakai 2.6: up and running
Open Syllabus in Sakai 2.6:  up and runningOpen Syllabus in Sakai 2.6:  up and running
Open Syllabus in Sakai 2.6: up and running
 
Eng 317 syllabus fall 2020
Eng 317 syllabus fall 2020Eng 317 syllabus fall 2020
Eng 317 syllabus fall 2020
 
Diverse 2013
Diverse 2013Diverse 2013
Diverse 2013
 
Eng 317 Syllabus Summer 2021
Eng 317 Syllabus Summer 2021Eng 317 Syllabus Summer 2021
Eng 317 Syllabus Summer 2021
 
REC:all Exploring the potential of lecture capture in universities and higher...
REC:all Exploring the potential of lecture capture in universities and higher...REC:all Exploring the potential of lecture capture in universities and higher...
REC:all Exploring the potential of lecture capture in universities and higher...
 
Eng 317H Syllabus
Eng 317H SyllabusEng 317H Syllabus
Eng 317H Syllabus
 
Java-Brochure-English(gsggsgshshssh).pdf
Java-Brochure-English(gsggsgshshssh).pdfJava-Brochure-English(gsggsgshshssh).pdf
Java-Brochure-English(gsggsgshshssh).pdf
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Kürzlich hochgeladen (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
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)
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
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
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
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
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
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
 
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
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Virtual Beamer - Jini-Based Academic Project

  • 1. The “Virtual Beamer” Paolo Somaglia Rocco Giovanni Versaci (708683) (708259) Academic year 2007-2008
  • 2. Assignment description • Implement a “virtual beamer” to share a presentation over a LAN/WiFi local network – Requirements: • Functional – The lecturer creates a session and selects the files (HTML and/or PDF) – Students and lecturer’s slides are constantly synchronized – The lecturer can see the list of students – The lecturer can relinquish control to any student willing to ask questions about any different part of the presentation, and then take it back – Students can join and part the presentation at any moment • Non-Functional – The designed system should take as much load as possible off the lecturer’s workstation – No hard-coded network addresses Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 1
  • 3. Hypotheses • Each Jini instance is reliable • Every process is reliable • All communication channels are reliable • No malicious users will participate in the lecture • The lecturer prefers not to be interrupted for managing join/part requests manually Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 2
  • 4. Supported file formats • Both of the proposed file formats are supported: – PDF files – HTM, HTML files (“complete pages”) – JPG files Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 3
  • 5. Jini service used in the project • JavaSpace – For sharing the files that constitute the presentation • Jeri, Naming Service, Discovery Service, Leasing Service – For publishing, looking up and downloading service proxies • Event Service – For synchronizing the presentation among the various peers Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 4
  • 6. Class diagram of the “logic layer” Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 5
  • 7. Class diagram of the “view layer” Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 6
  • 8. Deployment view Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 7
  • 9. Run-time view Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 8
  • 10. Starting the server (lecturer) Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 9
  • 11. Starting the presentation Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 10
  • 12. Slide-exchange protocol Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 11
  • 13. The slides • A presentation comprises several files to be transmitted to the clients (students) • Every file is to be written in each student’s Javaspace: therefore, it is represented by an EntryFile class (which extends Entry class) • Each EntryFile contains a sequence number and the total number of files to be sent • The receiver collects the files in order, up to the “maximumSequenceNumber-th” one. Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 12
  • 14. Starting the client (student) Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 13
  • 15. Starting the client (student) (cont’d) Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 14
  • 16. Further notes • Every command issued by the lecturer is executed locally and then transmitted to each student’s listener • Once the lecturer has released the control to a student, his interface freezes and that of the newly appointed “leader” is activated. – At that point, every time the student issues a command, it is first sent to the lecturer and then propagated to all the other students. Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 15
  • 17. The end Thanks for watching! Paolo Somaglia and Rocco Giovanni Versaci Academic year 2007-2008 16