Upload
myles-strickland
View
218
Download
1
Tags:
Embed Size (px)
Citation preview
Collaboration Services Specification
MITRE
Dr. Mark T. MayburyExecutive Director
Information Technology Center
http://www.mitre.org/resources/centers
a
CI ISCENTER FOR INTEGRATED
INTELLIGENCE SYSTEMS
“Technical Solutions that Make a Difference”
Organization: G060Project: 03986078-AA
204/19/23 12:33
MITREG060
Evolution of Market Offerings
AsynchronousCollaborationSolutions
SynchronousCollaborationSolutions
Integrated CollaborationEnvironments
0 Document-centric, share information and ideas
0 Email
0 Bulletin boards / discussion databases
0 Information sharing tools / Intranets
0 Group calendaring
0 Meeting-centric, interactive and share in creation process
0 Supports formal and ad hoc collaborations
0 Text chatter
0 Shared whiteboards
0 Application sharing / screen sharing
0 LAN-based video and audio conferencing
0 Place-based, support all models of collaboration
- Synchronous and asynchronous
- People as core component
- Persistence
404/19/23 12:33
MITREG060
Collaboration Server Architecture (Services)
Co
nte
xt
Instru
me
nta
tion
Dire
cto
ry
Co
nfe
renc
ing
Pro
ces
s
Arc
hive
Se
curity
Do
cu
me
nt
Se
arch
To
ol
Users/Participants/Roles
Se
ma
ntic
Co
llab
Asymmetric Collaboration
Event Support
Interactive Multimodal Participants
504/19/23 12:33
MITREG060
Services View
Object Request Broker
Object Services
ApplicationObjects
Common FacilitiesC4ISRFinancial Medical
Collaboration Facilities
TaskManagement
User Interface
SystemsManagement
InformationManagement
Context Participant Conference
Vertical Markets
Horizontal Facilities
604/19/23 12:33
MITREG060
Context (1 of 2)
0 Contexts are the persistent, objective focal point for organizing and containing activities, people/agents, information/data, and applications.
0 They also provide the integration point for- Conferences- Instrumentation- Context-specific capabilities- Security
0 Foundation for collaboration metaphor- End-user experience metaphor?
704/19/23 12:33
MITREG060
Context (2 of 2)
0 Contexts maintain- A list of Participants- A ConferenceManager for conferences- A Folder of user-published objects
0 Contexts may relate to- Plan nodes (objectives)- Process- Organization (logistics cell)- Functional area- Individual users (private offices)- Reimplement room/building metaphor
0 Ability to join a context is regulated by Role-based access controls
804/19/23 12:33
MITREG060
Context Directory
0 Maintains the searchable directory of Contexts0 Creates locally-hosted Contexts0 Registers Contexts hosted elsewhere
904/19/23 12:33
MITREG060
Role
0 Participants present a set of Roles they are representing in a Context or Conference
0 Roles are both informational and used for access control0 A tree rooted at “all users” relates all roles0 Access control by name via personal roles0 Credentials are used to authenticate the proposed use of a
Role
all users
logistics
humanuser
admin
Smith
securityofficer
Doe
1004/19/23 12:33
MITREG060
Context
Context Participant
ContextMember
Conference
ContextDirectory
Credential
CollabRole
Folder
1104/19/23 12:33
MITREG060
Context Distribution
0 Design allows Contexts to be hosted on distinct physical machines- If a Context will primarily be used on a particular LAN,
it can be moved there- Reduce network bandwidth, improve latency- Still available to outside users- Suggested that centers of excellence may leave
contexts available during day-to-day use- Will be attempted in phase 2
0 Context Server design could be replicated- Not necessary for distributed demo- Will be investigated as time and priority permits
1204/19/23 12:33
MITREG060
What do Contexts and Roles do for me?
0 Contexts provide a workspace management tool- Switch between sets of tools, data and collaborators by
switching contexts- Facilitates discovery of people and useful information
for users working similar problems0 Roles control access to tools and data
- …but also provide cues to which visualizations are appropriate for a particular user’s task
0 Role will be related to eventual security architecture0 To be effective, Role and Context information must be
propagated throughout the JFACC system- User interface across the system needs this- Back-end tools may need Role/Credential information
to decide access
1304/19/23 12:33
MITREG060
Participant
0 Models a “user” of the system- Human user or software agent- Independent of location/connection
0 Contains information required to visually present the Participant (name, rank, email address)
0 Has a set of Roles known to be available0 Lists Contexts currently a member of
1404/19/23 12:33
MITREG060
Participant Directory
0 Searchable directory of Participants- By role- By name- By search language (soon)
0 Maintains availability information0 Delivers “pages” or “instant messages” to Participants
and Roles- Could easily fall back to email/pager/… for
disconnected Participants0 Is this the authoritative directory service for users in the
JFACC system?
1504/19/23 12:33
MITREG060
Participant
Participant
HumanParticipant
SoftwareParticipant
Credential
CollabRoleParticipantDirectory
1604/19/23 12:33
MITREG060
Conference
0 A Conference is a single-medium collaboration0 Provides
- A roster of Participants and their Roles in the Conference
- Media type and suggested application- Access control
0 A ConferenceManager organizes and manages Conferences inside of a Context
1704/19/23 12:33
MITREG060
Conference
Context
Participant ConferenceConferenceParticipant
SchemaConference
DataConference
McastConference
Credential
CollabRole
ConferenceManager
NodeController
...
1804/19/23 12:33
MITREG060
Conference design
0 Conference is designed as an interface0 JCS supports third-party integration of sessional
collaboration systems against the Conference API0 Conference objects may be hosted anywhere on the
network0 Network impact dependent on Conference implementation
- For example, chatter Conferences typically contain a message exploder collocated with the Conference object
- Audio/video conferences as MulticastConference communicate peer-to-peer
1904/19/23 12:33
MITREG060
Conference implementations
0 TextConference implements basic chat capabilities0 MulticastConference models multicast streaming media
conferences- vat (audio), nv (video), wb (whiteboard)- Allows heterogeneous clients for a media type
0 DataConference provides a simple generic event distribution mechanism with support for roster and late join- Suggested base for application developers- SDK includes Java-oriented API
2004/19/23 12:33
MITREG060
C2SchemaConference (under development)
0 Supports synchronous collaboration on C2Schema objects0 Users work on tentative “draft” objects to be eventually
relinked to plan0 Provides field-level change notification0 An additional application-specific channel allows
broadcast of view-specific events (scrolling around map, presentation change)
0 Current implementation uses CORBA DII0 FineC2 support in design phase