View
217
Download
0
Embed Size (px)
Citation preview
2
Original Idea
SoDA = Source Documentation Archive use the Internet to allow users to attach
textual comments to an existing source file tree
all users can see new comments (newsticker-like)
support the Rotor research community
3
FreeSoDA
store any kind of document, not only code and comments
offer Web services for accessing the document database
use a rich client seamlessly notify clients about changes
in the database
5
Important Features
allow users to create links between semantically related documents
allow for filtering of what is shown on the screen (views and styles)
offer root documents for navigation protect documents against deletion and
overwriting
9
Services for Normal Users
logon/logoff for a project open/close a view insert/delete a document/link edit a link/document description download a document trigger a refresh ("view update")
12
Services for Administrators
create/delete users create projects define user groups and assign roles define document/link types define views
all administrative tasks can be easily performed via the client
14
Technical Problems
need sessions and transactions, but SOAP is stateless
need notification scheme need caching to get performance need ability to add file trees need useful layout algorithms
15
Solutions
define FreeSoDA message format store all state in SQL database mimic observer design pattern two-level caching scheme in the server;
caching in the client; transmit deltas external archives "cycle" layouter; "spring" layouter
16
Notifications
can't use client-based Web services: this would require running a Web server on each client
the server notifies the client by sending a message to a client TCP port
this TCP port is made known to the server when establishing the session
23
More Things Ahead
add searching and bookmarks write proxy server for browser access study and enhance the client usability implement server replication host Microsoft Rotor
24
Check It Out Yourself...
the official FreeSoDA web page & client download:http://freesoda.ipd.uni-karlsruhe.de
RCD guest login:server http://freesoda.ipd.uni-karlsruhe.de/freesodausername guest and password guest
get a regular RCD account:send mail to [email protected]