[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
RE: [ecf-dev] Shared Editor Workflow Proposal
|
This is a great start. We have a project that we've started
where we're trying to put shared tools for distributed teams into our academic
environment (https://sourceforge.wpi.edu/sf/sfmain/do/viewProject/projects.webfoot)
and this description of shared editing fist right in. Now, if we can just get
our ECF server set up and go through a simple plug-in project with it, this will
be a good starting use case for one of our sub-projects.
I have seen some of the mail about some examples, etc. I
hope that more comes along. Documentation for getting started seems to be the
biggest roadblock to us getting started with ECF here.
The concepts are great, hopefully we'll be able to
contribute something in the next few months.
--Gary
---------------------------------------------------------------------------------
Gary
Pollice
gpollice@xxxxxxxxxx
Professor of
Practice, Computer Science
gpollice@xxxxxxxxxxxx (alternate)
Worcester Polytechnic Institute
Office: 508-831-6793
100 Institute
Road
Mobile: 978-798-0019
Worcester, MA
01609-2280
<http://www.cs.wpi.edu/~gpollice/>
Hi!
Now that we've got (albeit inefficient and overly
simplified) shared editor code that validates the concepts, what thoughts out
there are there for:
1. how an shared editor session is created
(initialized)
2. how a session is joined
3. how a session
(client instance) disconnects
4. how a session (group) disconnects
(is any peer able to terminate session, or only creator?)
Just as
somewhere to start, what about:
1. "Initiate shared session" or "Share
editor" action attached to Package Explorer view for an IResource under
"team".
a. Assumption being ECF connection (provider,
connection parameters,etc. are defined in a ECF preference page in
preferences.
b. If the container creation is successful, what useful
visual indicator can we use such that use knows a given editor is
shared? (can we decorate or override the image associated with an
editor?, what about using the status bar?, or simply changing the text of the
editor tab to "file1.txt (shared)")
c. At an ECF level, this
would create a container for available shared editor sessions. This
would serve as a simple "presence" container. (Should we utilize the
existing presence plugin? What other options are there?) In the
future this container could handle things like authentication, etc..
2.
A new workbench INewFileWizard wizard named "Connect to shared editor" or
"Shared editor session" is defined. A user would then create the shared
file as any other file type. In this model, I see all peers except the
session creator to have "temporory" copies of the shared file. So only
for the creator does the file map to a "real" file in a project. I think
this is the safest/simplest way of keeping Bad Things from happening. It
is then up to the creator to approve any changes and commit them to a content
repository. Again this shared editor session file wizard would utilized
ECF connection metadata from a preference page (maybe the user should enter it
in the wizard?) The wizard would consist of a table of all existing
shared editor instances. This information comes from the ECF container
created in 1.c. The user selects a session, and a new editor opens with
a volatile copy of the IDocument model.
3. Editing happens. ECF
chat/VOIP/whatever is used in combination perhaps for discussion while shared
editing is occurring. "Jane, what do you think about this interface
instead..." (Another approach would be to initiate a shared editor
session from a different type of ECF communication. chat, etc..
This might be handled by dragging a file into an ECF chat window. That
action would execute the same action connected to the team menu.)
4.
Any client except creator, by closing the editor kills their connection to the
container. The editor is never dirty. There is are no additional
actions required for this functionality.
5. The creator client editor
is dirty upon first edit. It is the responsibility of the creator to
save the file to disc, or reject changes by closing without saving.
There is are no additional actions required for this
functionality.
Thoughts? This perspective is from "shared editor
out". I'm interested in a more holistic perspective also. IMHO, I
do feel that setting ECF connection parameters once (per perference page) is
better than setting them per session. I think that teams using shared
editors will use a consistent ECF provider/connection, and using shared
editing is more usable when not having to mess with connection data each time
a session is
created/joined.
thanks
ken