File Version Maintenance Utility
Brain Soft Inc. is a software development company. The company has various departments, such as software development, marketing, finance, and technical writing.
The technical writing department has only a few employees. These employees create user manuals for the products that are developed by the company. In order to meet the quality standards, the technical writers perform peer reviews for every document created in the department.
The company uses a centralized system to store the documents created by the technical writers. Every employee in the technical writing department has rights to view and modify the documents created by others. After creation, a document may be updated several times by several users. However, the current system stores only the latest version of a document. This is a major drawback because sometimes an older version of the file may be required for reference. To eliminate this drawback, the company wants to use an application that can maintain all versions of a document.
Your team has been asked to develop a File Version Maintenance Utility. The utility should maintain all the versions of a file. When a user modifies a file, the current version of the file should be stored separately before the update operation is executed. The application should also keep a record of:
n The date and time of the modification.
n The name of the user who has modified the file.
Design Specifications
The File Version Maintenance Utility should be designed to meet the following specifications:
n It should be a console-based application for a standalone machine.
n It should provide menu options to perform various activities.
n For every file maintained by the utility, a history folder should be maintained. The history folder shouldcontain the previous versions of the file.
n A user needs to provide a user name and password to log on to the utility.
n Users are of two types, normal users and administrators.
n After successful logon, a normal user can perform the following tasks:
l Add, modify, delete, and view files
l View previous versions of a file
n A user with administrative rights should be able to perform the following tasks after logging on:
l Add, modify, delete, and view files
l View previous versions of a file
l Create new user accounts
n When a user edits a file, the current version of the file should be copied to the History folder. After that,the modifications in the file should be saved.
n The different versions of a file need to be stored with different names in the history folder. The name of aversion can be chosen in the <File Name>_<Version Number> format. For example, the first two versions of a file named EmployeeDetails.txt can be stored in the History folder as EmployeeDetails_1.txt and EmployeeDetails_2.txt.
n A user can list the version history of a file. After listing the various versions of the file, the user can view anyversion of the file by providing the version number.
n A user can also replace the current version of the file with any of its previous versions.
n When a file is deleted, its complete version history should also be deleted.
No comments:
Post a Comment