代写C代码 代做C程序 C辅导 C家教

远程写代码 Debug 讲解答疑 不是中介,本人直接写

微信: ittutor QQ: 14061936 Email: ittutor@qq.com

导航

 

 
Executive Summary 
This document presents the requirements and preliminary analysis for a system to be developed by a CSCI222 software 
development team. This system will implement the functionality desired as part of a movie management system (e-Movies).  
A preliminary outline of project plans is also given.  
 
Disclaimer 
 @MrClient Inc.  has tried to make this proposal as complete as possible at time of printing. Details are subject to change with notice. Feedback and  
suggestions for modifications are welcome.  
  
Overview 
e-Movies will provide a simple, easy-to-use application that allows users to maintain information about movies and 
perform searches for movies based on various common characteristics, such as title, date of release, etc.  The system 
will be capable of importing information from IMDB (http://www.imdb.com), an internet repository of movies that have 
been released.   
e-Movies Requirements 
The requirements are divided into two major groups: functional and non-functional requirements. The priority of 
requirements has been decided on the basis of our negotiation with the clients.  
Functional requirements 
 
User Management 
Requirement #: FuncReq_UM_1  Use case #:  
Description: The system should allow an admin user to create, edit and 
delete a user. Details of a user include username, password, full name, and 
whether the user is an admin or a normal user.  
 
Rank of importance: High 
 
Requirement #: FuncReq_UM_2  Use case #:  
Description: The system shall allow user to log in to the system. If the given 
“username” and “password” is incorrect, the system provides an appropriate 
error message. 
 
If the system determines that the user's password is invalid, the user will be 
required to re-enter the password.  
Rank of importance: High 
 
Requirement #: FuncReq_UM_3  Use case #:  
Description: If the user is unable to enter the correct password after three 
tries, their record is marked as “locked” and they are not allowed to login in the 
system. The system will display a message to inform the user that they will  
 
2
 
have to contact the admin to get it unlocked. 
Rank of importance: High 
 
Requirement #: FuncReq_UM_4  Use case #:  
Description: The system shall encrypt and decrypt user passwords using a 
Caesar cipher
1
 
Rank of importance: Medium 
 
Requirement #: FuncReq_UM_5  Use case #:  
Description: The system shall allow the user to change their login password. 
A valid password must contain at least 8 characters and must include at least 
a number and a letter. 
Rank of importance: Medium 
 
Movie Management 
 
Requirement #: FuncReq_MM_1  Use case #:  
Description: The system should allow an admin user to create, edit and 
delete a movie. Details of a movie include title, director(s), date of release, 
genre(s), country(s), runtime (in minutes), and keyword(s). Note that a movie 
may have multiple directors, be released in multiple countries, have multiple 
genres, and have multiple keywords.  
 
Rank of importance: High 
 
Requirement #: FuncReq_MM_2  Use case #:  
Description: The system should keep track of the user who creates a movie 
entry and display all the movies created by the user. The user should also be 
able to see all other movies created by other users.  
 
Rank of importance: High 
 
 
                                                       
1
 Details of a Caesar cipher are available at http://en.wikipedia.org/wiki/Caesar_cipher  
 
3
 
Requirement #: FuncReq_MM_3  Use case #:  
Description: The system should allow the user to browse and retrieve movie 
information in alphabetical order. 
Rank of importance: Medium 
 
Requirement #: FuncReq_MM_4  Use case #:  
Description: The system shall allow the user to search for movies based on 
movie title, director(s), genre(s), country(s) and keyword(s). 
Rank of importance: Medium 
 
 
 Storage management 
Requirement #: FuncReq_SM_1  Use case #: 
UC_QU_03 
Description: The system should allow users to save all data including movies 
and user data (i.e. e-Movies profile) into a file or multiple files.  
 
Rank of importance: High 
 
 
Requirement #: FuncReq_SM_2  Use case #: 
UC_QU_03 
Description: The system should allow users to open an e-Movies profile from 
an existing file(s).  
 
Rank of importance: High 
 
 
Movie Importing 
Requirement #: FuncReq_MI_1  Use case #:  
Description: The system should allow the user to import movie data from two 
files provided by IMDB (movies.list and genres.list attached).  Note that a 
movie may have multiple genres. 
 
Rank of importance: Low 
  
 
4
 
Requirement #: FuncReq_MI_2  Use case #:  
Description: The system should detect duplicates by doing basic comparison 
between the new movie information (i.e. title) and those that are currently 
stored by the system.  When a duplicate is identified, the system should 
prompt the user with three options: “Skip”, “Merge”, and “Abort”. 
If the user chooses:  
  “Skip” – the system shall skip the current movie and process the next 
movie (in the import files). 
  “Merge” – the system shall merge the movie’s details from the import 
files with what have been stored in the system.  
  “Abort” – the system shall stop the import operation.  
  
Rank of importance: Low 
 
Requirement #: FuncReq_MI_3  Use case #:  
Description: When importing a movie, the system should extract some words 
from the title and set them as the keywords for the movie.  
  
Rank of importance: Low 
 
Non-Functional requirements 
Speed 
ID  N1 
Description   The application can open an existing e-Movies profile within 60 seconds and 
save an existing profile within 2 seconds 
Priority  Low 
 Size 
ID  N2 
Description   The application does not take too much space on personal computers. It takes 
below 5 MB 
Priority  High 
  
  
 
5
 
Ease of use 
ID  N3 
Description   Training time is about 15 minutes for a normal user to use all functions of the 
application 
Priority  High 
 
Programming language  
ID  N4 
Description  This project should be implemented using C++ 
Priority  High 
  
User Interface 
ID  N5 
Description  This application is required be written as a text based or GUI based program. 
Priority  High 
  
Operating System 
ID  N6 
Description   The system will run on an Ubuntu Linux OS in ordinary terminal sessions. 
Priority  High 
 
Help function 
 ID  N7 
Description  The application will support the help function to help users to use application 
Priority  Low 
 
  
  
 
6
 
Elaboration 
This section provides some preliminary elaboration which shows an example of a use case, a preliminary class 
diagram and a sequence diagram2
. You will need to further define (or redefine entirely) those artefacts to 
complete the elaboration phase.  
 
Use case – Create a new movie (you need to refine this use case and develop other major use 
cases) 
 
 
Flow of Events  
Use case UC_AP_01: Create a New Appointment 
 
Basic Flow 
Step  Description 
1. User opens Movie Management. 
 
To begin this use case: 
The system responds by: 
Displaying a form which allows user to create new 
movie, search, view, edit and delete movies.  
 
2. User chooses to create a new 
appointment 
 
The system responds by: 
Displaying a form on which user can input 
information related to a new movie. 
 
3. User enters information about the 
new appointment and confirms it by 
pressing “OK” button. 
The system responds by: 
Adding the new movie in to the list of movies. 
 
The use case ends. 
                                                       
2
 This design is on the basis of leading to a database and GUI implementation. If you plan to implement a text-based interface and file-
based system, you will need to change this design significantly.   
 
7
 
Exception flows 
To Be Added. 
A preliminary class diagram (you need to refine this class diagram or develop a different class 
diagram). You would need to develop a class diagram for the entire system. 
You are strongly encouraged to design the system using the Boundary – Control – Entity 
design style.  
 
 
 
 
 
A sequence diagram for creating a movie (you need to develop other sequence diagrams describing other use 
cases). Note that your sequence diagrams may be different, depending on your design (e.g. classes in the 
class diagram, the use cases, etc.) 
 

相关推荐