Outline... - PowerPoint PPT Presentation

About This Presentation
Title:

Outline...

Description:

www.cs.ru.ac.za – PowerPoint PPT presentation

Number of Views:15
Avg rating:3.0/5.0
Slides: 19
Provided by: acza
Category:
Tags: jaxb | outline

less

Transcript and Presenter's Notes

Title: Outline...


1
(No Transcript)
2
Outline...
  • Recap What is my project about?
  • The purpose of this project
  • What I set out to do.
  • What I actually did.
  • Summary
  • Questions

3
What is my project about?
  • Well the extended title says it all, really..
  • Remote, web-based, real time control of
    scattered media stations
  • Remote controlling something from a different
    physical location
  • Web-based control over a network (www or LAN,
    MAN, WAN etc)
  • Real-time the effects of your actions can be
    seen instantaneously
  • Control directing the behavior of
  • Scattered located in amany different areas
  • Media Station a device used for the
    dissemination of visual or audio media

4
What is my project about? ...
  • More about media stations
  • The media station being controlled in this
    project is essentially a compact PC with a large
    plasma TV for its display.
  • Dom's project was all about how to control the
    screen layout of such a device

5
The purpose of this project.
  • A need exists for real time control of scattered
    media delivery stations, especially in the
    advertising industry, where up to the minute
    information and fresh content is very important.
  • Our hypothesis is that a system can be developed
    that will provide real time control of one or
    more media delivery stations, using inexpensive
    and freely available tools.

6
What I set out to do.
  • Investigate some of the issues surrounding
  • a)the control of media stations
  • b)the development of a system for their control
  • Develop a working system as a proof of concept
  • a)using freely available and inexpensive tools
  • b)in as short a time as possible
  • c)with a focus on later adaption of the system to
    other uses (in other industries)

7
What I actually did )
  • Investigation
  • General remote control of media stations
  • Should have very strong security restrictions in
    place due to the public nature of such a system.
  • Control should be done by as few authorised
    people as possible.
  • All control should be directed through a central
    authority.
  • Changes should be logged and should include a
    reference to the user.
  • Changes should be easily reversable

8
What I actually did ) ...
  • Investigation
  • General remote control of media stations...
  • All changes should be atomic and should obey good
    RDBMS behavior...
  • Any node is a distributed system can go down at
    any time, even halfway through a change
  • Changes must therefore happen atomically, or be
    reversed.
  • The entire system state should be a reflection of
    a single data source.
  • A database of all system information should be
    maintained.
  • Changes to any part of the system should only
    occur in response to a change in the content of
    this database
  • This way, one can be guaranteed that the
    information in the database reflects the true
    state of the system.

9
What I actually did ) ...
  • Investigation
  • Developing a system for control
  • Use good OO design principles!
  • Separate presentation and logic
  • Keep it as modular and generalised as possible
  • Facilitates later modification, easy
    understanding and easy expansion
  • Use widely available technologies
  • Control should not involve complex software
    installation
  • Be as hardware and OS 'agnostic' as possible.
  • Control should be quick, easy and available to
    any authorised user on any platform.

10
What I actually did ) ...
  • Investigation
  • Developing a system for control...
  • Use a '3 tier' model
  • 1. Control interface
  • 2. Server/Databse combination
  • 3. One or more media systems
  • The control interface should do little on its
    own, apart from talk to the Server.

11
What I actually did ) ...
  • Investigation
  • Developing a system for control...
  • The Server should be the 'brain' and 'braun' of
    the system
  • It should listen to the control interface
  • It should change the database according to the
    control's communications
  • It should send control data to the affected media
    stations if the database changes sate.
  • Use a common communication protocol between tiers
    and a common language for data storage

12
What I actually did ) ...
  • Developed a 'semi' working system
  • Tried to stick as closely to my design
    suggestions as possible.
  • Used a 3 tier approach, but only managed to
    implement the control interface.

13
The control interface
  • Decided to use an ebbedded application in a web
    browser
  • Chose to use a Java Applet.
  • Why Java?
  • Large set of functionality through the standard
    libraries
  • Widespread technology many people have the Java
    Plugin installed already.
  • No installation required navigate to the page
    and go.
  • Strong networking support

14
The control Interface
  • Follows the structure of the data as closely as
    possible (heirarchical)
  • Reads and writes XML, using the fairly new Java
    API for XML Binding (JAXB)
  • How JAXB works

15
ltxsdschema xmlnsxsd"http//www.w3.org/2001/XMLS
chema"gt ltxsdannotationgt
ltxsddocumentation xmllang"en"gt Media
System Schema for the project 'Remote
Control of Scattered Media Stations'
Created 22-10-2003 by Roger Gordon
lt/xsddocumentationgt lt/xsdannotationgt
ltxsdelement name"mediaSystem"
type"MediaSystemType"/gt ltxsdcomplexType
name"MediaSystemType"gt ltxsdsequencegt
ltxsdelement name"owner" type"xsdstring"/gt
ltxsdelement name"contactNumber"
type"xsdstring"/gt ltxsdelement
name"contactEmail" type"xsdstring"/gt
ltxsdelement name"localSystem"
type"LocalSystem" minOccurs"0"
maxOccurs"unbounded"/gt lt/xsdsequencegt
ltxsdattribute name"name" type"xsdstring"
use"required"/gt lt/xsdcomplexTypegt
ltxsdcomplexType name"LocalSystem"gt
ltxsdsequencegt ltxsdelement
name"location" type"xsdstring"/gt
ltxsdelement name"iPAddress" type"xsdstring"/gt
ltxsdelement name"lANBandwidth"
type"xsdint"/gt ltxsdelement name"contact"
type"xsdstring"/gt ltxsdelement
name"contactNumber" type"xsdstring"/gt
ltxsdelement name"mediaSource"
type"MediaSource" minOccurs"0"
maxOccurs"unbounded"/gt ltxsdelement
name"mediaStation" type"MediaStation"
minOccurs"0" maxOccurs"unbounded"/gt
lt/xsdsequencegt ltxsdattribute name"name"
type"xsdstring" use"required"/gt
lt/xsdcomplexTypegt ltxsdcomplexType
name"MediaSource"gt ltxsdsequencegt
ltxsdelement name"mediaURL" type"xsdanyURI"/gt
ltxsdelement name"mediaType" type"xsdstring"/gt
ltxsdelement name"stream" type"xsdboolean"/gt
lt/xsdsequencegt ltxsdattribute
name"name" type"xsdstring" use"required"/gt
lt/xsdcomplexTypegt ltxsdcomplexType
name"MediaStation"gt ltxsdsequencegt
ltxsdelement name"location" type"xsdstring"/gt
ltxsdelement name"screenHeight"
type"xsdint"/gt ltxsdelement
name"screenWidth" type"xsdint"/gt
ltxsdelement name"contact" type"xsdstring"/gt
ltxsdelement name"contactNumber"
type"xsdstring"/gt ltxsdelement
name"partition" type"Partition" minOccurs"1"
maxOccurs"unbounded"/gt lt/xsdsequencegt
ltxsdattribute name"name" type"xsdstring"
use"required"/gt lt/xsdcomplexTypegt
ltxsdcomplexType name"Partition"gt
ltxsdsequencegt ltxsdchoicegt ltxsdgroup
ref"SplitGroup"/gt ltxsdelement
name"mediaSpace" type"MediaSpace"/gt
lt/xsdchoicegt lt/xsdsequencegt
lt/xsdcomplexTypegt ltxsdgroup
name"SplitGroup"gt ltxsdsequencegt
ltxsdelement name"isVertical" type"xsdboolean"/
gt ltxsdelement name"splitPosition"
type"xsdint"/gt ltxsdelement
name"leftOrTop" type"LeftOrTop"/gt
ltxsdelement name"rightOrBottom"
type"RightOrBottom"/gt lt/xsdsequencegt
lt/xsdgroupgt ltxsdcomplexType
name"MediaSpace"gt ltxsdsequencegt
ltxsdelement name"width" type"xsdint"/gt
ltxsdelement name"relativeWidth"
type"xsdboolean"/gt ltxsdelement name"height"
type"xsdint"/gt ltxsdelement
name"relativeHeight" type"xsdboolean"/gt
ltxsdelement name"x" type"xsdint"/gt
ltxsdelement name"relativeX" type"xsdboolean"/gt
ltxsdelement name"y" type"xsdint"/gt
ltxsdelement name"relativeY" type"xsdboolean"/gt
ltxsdelement name"content" type"Content"
minOccurs"1" maxOccurs"unbounded"/gt
lt/xsdsequencegt ltxsdattribute
name"number" type"xsdint" use"required"/gt
lt/xsdcomplexTypegt ltxsdcomplexType
name"Content"gt ltxsdsequencegt
ltxsdelement name"repeat" type"xsdint"/gt
ltxsdelement name"start" type"xsdstring"/gt
ltxsdelement name"stop"
type"xsdstring"/gt lt/xsdsequencegt
ltxsdattribute name"mediaName" type"xsdint"
use"required"/gt lt/xsdcomplexTypegt
ltxsdcomplexType name"LeftOrTop"gt
ltxsdsequencegt ltxsdelement
name"partition" type"Partition"/gt
lt/xsdsequencegt lt/xsdcomplexTypegt
ltxsdcomplexType name"RightOrBottom"gt
ltxsdsequencegt ltxsdelement
name"partition" type"Partition"/gt
lt/xsdsequencegt lt/xsdcomplexTypegt lt/xsdsche
magt
16
(No Transcript)
17
Summary
  • Freely available tools can be used to develop a
    system for the real time control of scattered
    media stations
  • I developed a partly working implementation of
    such a system

18
  • Questions?
Write a Comment
User Comments (0)
About PowerShow.com