1 / 30

NODAL : A Filesystem for Ubiquitous Collaboration

NODAL : A Filesystem for Ubiquitous Collaboration. Lee Iverson SRI International leei@ai.sri.com. High-performance Teams. Teams should be more than sum of parts Rapidly make decisions Make the right decisions Respond quickly to new tasks Rapidly allocate resources

olisa
Download Presentation

NODAL : A Filesystem for Ubiquitous Collaboration

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. NODAL:A Filesystem forUbiquitous Collaboration Lee Iverson SRI International leei@ai.sri.com

  2. High-performance Teams Teams should be more than sum of parts • Rapidly make decisions • Make the right decisions • Respond quickly to new tasks • Rapidly allocate resources • Reuse previous work in context • Integrate remote members effectively

  3. Ubiquitous Collaboration • Development of rich, complete, adaptive, exploitable knowledge archive for teams. • Facilitation, recording and indexing of dialogue and processes of decision making • What? • Who and when? • Why?

  4. Barriers High cost of entry • Extra work to get data into shared repository • Much relevant data is never entered • Failure to interoperate with legacy applications and work models High cost of exploitation • Inadequate search and reuse • Not integrated with tools • No support for dependencies/relationships

  5. Example:Software Development • Products: • Design documents • Source code • Documentation • Papers • Marketing documents • Discussion: • Email • Chat

  6. Example:Software Development • Relationships and dependencies are critical but implicit • Maintaining dependencies requires great effort • Expensive, unreliable • Combination of products and discussions form a knowledge base • Currently unexploitable

  7. Example: Proposals • Products: • Background research • Proposal proper • Costing • Bios • Integrated, online product and knowledge base more critical when collaborators physically distributed

  8. OHS/DKR • Open Hyperdocument System • Open standard • All kinds of documents • Tools for creating and manipulating… • Dynamic Knowledge Repositories • Recorded dialog • Collective IQ

  9. Data Knowledge Context OHS/DKR:Proposed Organization Brain metaphor

  10. Data Knowledge Context OHS/DKR: Data • Filesystem & Database • Data Model for Documents • Content and Structure • Communication model(s) • Security/Privacy • Auditing & Attribution Neurons

  11. Data Knowledge Context OHS/DKR: Knowledge • Semantics • Explicit knowledge • RDF/DAML • Topic maps • Object models Long term memory

  12. Data Knowledge Context OHS/DKR: Context • User interfaces • Perception and action • User modelling • Intention • Action • User adaptation Short term memory, Perception

  13. The Data Layer: Requirements • Distributed – network oriented • Application independence • Cross-platform • Cross-language • Cross-application • Shareable and reusable content • Built-in security/privacy model • Change attribution and auditing • Legacy document and application support

  14. The Data Layer: Requirements • Flexible communication model • Synchronous • Asynchronous • Hyperlinking • To/from any context • Stability through changes • Rich search facilities

  15. NODAL: The Data Layer • Network-Oriented Data Abstraction Language • Web-based filesystem and database • Granularity below file level • General, extensible data model • Fully addressable content • Inherent hyperlinking and reuse • Radical simplicity and generality

  16. NODAL: Filesystem • Traditional filesystem model • Hierarchical directories • Documents • Accessible by HTTP/S • Documents all typed (MIME) • Encoder/decoder • Type of root node of document data model

  17. NODAL: Type System • Atomic types: • boolean, integer, character, octet, float, double • Node types (collections): • Struct – like C struct • Sequence – indexible sequence • Map – extensible dictionary • Language for extending/composing types

  18. NODAL: Data Model • Document is graph of nodes • Accessible from root node • Nodes reusable • Within and between documents • String is: <sequence itemType=“character”>

  19. NODAL: Navigation • Every data item addressable by URI • Paths: • Document URI specifies root node • Path operators for moving through node graph • Every path expressible as URI • Hyperlinks (dependencies): • Any set of URIs can be linked • Embedded and external links managed

  20. NODAL: Metadata • Node is basic unit of granularity • Extend filesystem principles inside documents • Every node has: • Unique ID • Version and transaction history • Permission record

  21. NODAL: Communication • Local memory store (cache) • Storage interface (transactional) • Wire protocol(s) • XML-RPC • SOAP • OAA • SQL binding (PostgreSQL, Oracle, etc.) • Lightweight databases (Berkeley DB)

  22. NODAL: Search • Simple search language • SQL as model • Structure and content • Usable as content filter (views) • Always up-to-date • Possible integration with P2P search • Gnutella • NEVRLATE

  23. NODAL: Application Model • Design data model • Adopt/adapt document format • MIME type & encoding plugin • Build application on top of NODAL API • Object model > data model • A shared, collaborative application!

  24. NODAL: Legacy Applications • Filesystem interface via WebDAV • Traditional distributed filesystem over HTTP • COM+/CORBA applications expose controls • Windows applications (Office) augmentable • Linux (GNOME/KDE) expose CORBA controls

  25. New capabilities • All documents integrated into reusable knowledge base • Live collaboration recorded and integrated into knowledge base • Dependencies easily tracked and notifications processed • Automatic processes integrated with manual

  26. Why Open Source? Ubiquity: Create an industry, not an application Web model: • Simple, open standards • Open source implementations • Free, end-user applications

  27. Open Source Funding? • Government funding • Agencies becoming more aware of the advantages of open source efforts • Foundations • Mostly educational • Enlightened corporations • Sun, IBM, HP, MSDW, … • Venture capital?

  28. Open Source Funding? • Service model • Companies pay for service and development of open source technologies they depend on • Client has much greater control of development process than with proprietary software • In-house developers can easily work with others “Given enough eyeballs, all bugs are shallow.”

  29. Competition • None really. • Alternatives all smaller scope • Groove • Successor to Lotus Notes • Proprietary, Windows-specific • Integration of DB and UI • Must build new applications (SDK)

  30. Competition • Subversion • Version control for software development • Purely asynchronous model • Incremental path from CVS • No direct access to document structure

More Related