Version: Inception, Completed 9/5/2002

Use Case Model

This is the use case model for the StickSync project. The following table shows the use cases we have identified. Each title links to the corresponding use case. The status column indicates the current status of the use case.

A List of Use Cases for the StickSync Project
Title Status
Add File fully dressed
Propagate File Change casual
Remove File title only
Add Directory title only
Remove Directory title only
Propagate Directory Change title only
Change File Location title only
Change Directory Location title only
Start System title only
Select PMSD brief
Select Synchronization Partner brief
Replace Faulty PMSD title only

A sketch of the use case context diagram will go here.

Return to top

Add File

Primary Actor

User

Stakeholders and Interests

Preconditions

System is started on computer containing file to be synchronized. User has selected a PMSD and synchronization partner. (See use cases Select PMSD and Select Synchronization Partner.)

Postconditions

System "knows" the file is to be synchronized to a particular remote computer via the selected PMSD.

Main Success Scenario

1.  User selects a file to be synchronized.

2.  System records that the file is to be synchronized to the selected remote computer via the selected PMSD.

Extensions

1a.  System detects that user does not have permission to read file.

1.  System informs user of permission problem.

2.  Use case ends.

1b.  System detects that user does not have permission to write file.

1.  System warns user that he/she may not be able to synchronize changes made on the remote computer to the local computer.

Special Requirements

None are apparent !!!

Technology and Data Variations List

None identified !!!

Frequency of Occurence

Sporadic. Simultaneous executions of Add File are not possible, since data structures used by the system are assumed to be locked.

Open Issues

Return to top

Propagate File Change

Main Success Scenario

On the local computer, the User requests synchronization for a file that was previously added to the PMSD via use case Add File. The local computer's file has changed since it was added and is newer than the version of the file recorded on the selected PMSD for the selected synchronization partner, and the version of the file recorded on the PMSD has not changed since it was last synchronized. Thus the System tells the user what the status of the file is, and records the contents and last modification time of the the local computer's file on PMSD.

Alternate Scenarios

If the local computer's file has not changed since it was last synchronized, and is older than the version of the file recorded on the selected PMSD for the selected synchronization partner, and if the version of the file on the PMSD has changed since it was last synchronized, then the System asks the user if they would like the change applied. The User requests that the changes be applied, and the system applies the changes recorded on the PMSD to the local computer's file, and updates the information recorded on the PMSD about the file.

If the local computer's file has changed since it was last synchronized with the selected PMSD for the selected synchronization partner, and if the version of the file on the PMSD has also changed since it was last synchronized, then the System asks the user if they would like to merge the changes. The User requests that the changes be merged, and the system attempts to combine the changes into a single file on the local computer. If successful, then the system updates the information recorded on the PMSD about the local computer's file and records the current time as the last modification time of the file. If unsuccessful, then the System writes the PMSD version of the file to the same directory as the local computer's file, using a different unique file name. The system then tells the User that the files could not be merged.

If the System does not have a record of the location of the selected file on the local computer (for the given PMSD and synchronization partner), then the System requests that the user select a location on the local computer.

Return to top

Remove File

Return to top

Add Directory

Return to top

Remove Directory

Return to top

Propagate Directory Change

Return to top

Change File Location

Return to top

Change Directory Location

Return to top

Start System

Return to top

Select PMSD

User mounts a PMSD on the local computer. User starts System. User tells System to use the PMSD. System ensures that the PMSD contains data structure for recording synchronization partners.

Return to top

Select Synchronization Partner

This case assumes that User has started System and selected a PMSD. User selects one of the synchronization partners available on the PMSD. System records the selection.

Return to top

Replace Faulty PMSD

Return to top

Last modified Tuesday, April 8, 2003.

This web page is for the StickSync project, developed as an example for Com S 362 at Iowa State University. Please direct any comments or questions about this project to Gary T. Leavens at leavens@cs-DOT-iastate-DOT-edu or Curtis Clifton at cclifton@cs-DOT-iastate-DOT-edu (after replacing -DOT- with `.').