Network

Mimosa permits several users to access the same file simultaneously. When several users want to access the same file, the version saved by the latest user overrides all other versions. If several users want to modify the same file, there must be some agreed rules how it is done, but the preferred way is to use the File|Network selection in File menu of Mimosa. Note that this functionality is a generalisation of File|File Add selection in File menu, which enables synchronising of two Mimosa files. When this command is repeated several times, it is possible to combine as many files user wants. It is also possible to use the selection File|File pre-check to check for possible conflicts of two files before they are combined. Note that combining any two files does not change their content on disk. The result of the combnation resides in the memory and it should be stored on disk with a different name.

Mimosa utilises its own sophisticated database system, which is not record-based. The reason is that all elements in this database are dependent on each other (courses, components, timetable items and so on), and therefore a traditional record-based approach cannot be applied, since it violates the integrity of the items. This means that you cannot edit or extract any item of the database without endangering to break its structure.

Since all data items in Mimosa depend on each other, it is practically impossible to access the same file simultaneously, as in the case of many database applications, where the file structure is composed of independent data records. For instance, if some of the users wants to edit some of the components, the change is reflected to all courses, timetables and bookings which are dependent on it, and so on. This dependency indirectly affects all items in a single Mimosa file, and while one user is about to make any change in the file, all other users have to wait until the task is completed, in order to keep the file intact. Since this kind of setting is not very user-friendly, networking is performed by combining or merging the files.

The Network concept of Mimosa enables a lot of flexiblity and users can easily change the working habits between network and single file access at any time. However, it is a good practice to follow the rules below:

  1. Use the same codes for components in all files (to enable conflict checking).
  2. Use the same week schema in all files (to ensure that lectures fall in same weeks).
  3. Use different codes for scourses in all files (to prevent that two or more users do not edit the same course).
  4. Use different Mimosa file names such as peter.mfw, paul.mfw and mary.mfw (to prevent file overwrites).

Before starting using the commands File|Network or File|File Add, you should start from a single Mimosa file where at least the components have been created and all weeks defined. This file is then saved with different file names to all users. If you are about to change the component codes or the weeks, it is wise to inform the other users about that.

When users want to share their files to other users, they select the command File|Network|Write to network, which stores a text file copy of the file into a folder which is accessible by all users and which is defined in File|Network|Select network folder. When all users have stored their files in this folder, the command File|Network|Read from network shows a list of stored files (in the sample case peter.mxt, paul.mxt and mary.mxt), which can then been combined selectively in any order with the Mimosa file user has read into memory. All conflicts are then removed from this combined file, and it can then be stored with a different file name (for security reasons).

This method allows the users to combine the files of other users in various ways and it also prevents from making mistakes accidentally.

Files are combined in the computer memory, and the files on the disk has not been modified. Since the resulting file may have conflicts or it may contains elements that the user does not want to have in the original file, it is always safer to store the content of the computer memory on disk with a different file name, until the user is accepted the changes that has been made. Note that when users combine several files, the combined file tends to grow, and when other users remove unnecessary courses or components, they are not removed from the combined file.

If the name of the current Mimosa file is peter.mfw and you are aboutto combine the files of Paul (paul.mxt) and Mary (mary.mxt) with this file, it is advised that you do the following:

  1. Save the current file in memory (peter.mfw) on disk with File|Save
  2. Invoke Network|Read from network
  3. Save the resulting file on disk with File|Save as... and use another file name, such as all.mfw, containing the result of all combined files
  4. Analyse the conflicts and check its content

Note that you can also split the resulting file into smaller parts with File|File Split... and you can use the above instructions also, if you are about to use the selection File|File Add... to combine files one by one.