The ROAF Mission Statement
If you have read the Book or have gone through the first Menu 'The Vision' reflecting 'the making of' you are well prepared to join the Mission 'to make it real'. If you have not you can read the reVision, which is summing up the Vision for this practical Mission Statement. For a productive community collaboration on a software product it is useful, if not vital, to get a common understanding of the desired outcome somewhere at the horizon. Therefor it is important to read this Mission Statement in order to avoid disappointments and raise wrong expectations.
----- Before going into coding it is always advised to outline the Project or Mission. Since the Book was written a long while ago the next pages will revise the Vision to form a reVision. As demonstated in the Book the succeeding step should be the Analysis as a fundament for a Work Breakdown Structure (WBS) that subdivides the Project to enable different Developers to work independantly while sticking to well defined Interfaces, also known as Contracts in Business Logic.
roaf v1.0: The Book Mission
The Vision of a Live Real World Simulation was driving the development of the roaf v1.0 Software rolled out in the Book and published on this Website. This Vision describes a system that does not exist yet - it's a Vision ;), but can become real in the near future? The ROAF Vision assumes that every (or many) objects are tracked continuously and that a client JVM can communicate with the server (and vice versa) anytime and as needed.
In order to simulate this scenario the roaf v1.0 software represents a GPS Tracking System (called a RealObjectsApplication) with programmable (and potentially virtual) Tracking Devices (called RealObjects) connected via RMI connections. The idea is to experience the current development (not science fiction!) of Real Time Tracking and design Real World Scenarios to be combined in Real Time - live!
The entire framework was developed as a pure Java Stand alone application. The roaf v1.0 Software and the sample Application can be installed easily to represent a Real World Simulation Environment .
Nevertheless the roaf v1.0 Software is not prepared to actually connect Tracking Devices - yet.
roaf v2: The roaf.de/velopers Mission
The gap from roaf v1 to roaf v2 can be seen as the step into the Real World, technically speaking. Version 1 can be used to implement futuristic software and will be formed to Version 2 with subversions v1.x.y. In a first step OpenGTS serves as a Java Source Repository for GTS Development as it points the path to connect Real World Scenarios with simulated Real World Objects. The technical predefinition of v2.0 can be outlined as:
It might seam a little early to define the next major version, but please note that this definition is purely technical. The semantic development remains completely untouched by this definition. Yet it will tie the roaf.de/velopers together and help to separate semantics from technology.
The initial intention of writing the Book was to teach Java by going through the majority of Java Tutorials while sticking to one single application. The Vision was intentionally picked as an open end Project by trying to reflect reality, or different aspects of the Real World. Naturally this can never be achieved one hundred percent. Anyhow the Application can be designed to come closer to Reality with every Development Cycle.
How is the ROAF implemented? By choosing .. java .. open source ..
- The RTT is the Turing Test applied in the ROAF: As long as a RealObject can not be distinguished from an Object in Reality it is handled as being real and does not violate any Server Rules.
- The ROAF is ....
- The ROAF is ....
The RTT Challenge
The heart of the the ROApp Framework is the ROAF Turing Test, which should be applied to distinguish real objects from simulated objects. In the best case these objects should be able to coexist and the simulations should be smart enough to move around in the virtual world without raising conflicts.
The heart (or service) of most Tracking Systems is the (Event Notification) Rules-Engine. The ROAF architecture has introduced Rules and more strict Laws to validate Real Objects behavior. So this Engine should be improved to generate Events and propagate them to (RO- and ROApp-) Listeners. For Real World continuous Plausibility Testing is one of the main Roaf Challenges to coordinate real objects with simulated objects.
Life Cycle Development
With a growing number of data sources the clients data can be validated against each other to detect conflicts and become more and more authentic and serve as a reliable source for live real world data !
» The Real Object Application Framework
- is a toolkit to model the world
- is a Collection of Interfaces and Abstract Classes
- is taking the web 2.0 to the web 3.D
a live projection of the real world «
A Mission has a similar meaning as a Project - it defines a concrete goal to achieve. In Software Terms a Framework is nothing you can run out of the Box. Therefor the ROAF v2 Development would be ineffective in Terms of a Quick Start and Learning Curve. For a large acceptance the Software should supply a Reference Application that can be installed quickly and used easily, before it can be bend to serve a dedicated purpose.
From the current perspective the London Chase Scenario (from the Book) can still serve as a Demo. It wouldn't make sense to go into details at this point, but a quick peek in the App market can provide a lot of inspiration. For example you can easily find applications providing public traffic schedules, sometimes live data. If you have read the Book, you will remember that public transportation can serve as a precise four dimensional grid for the ROApp Framework!