This section deals with performance issues, as well as develop process and standards, and target users.
3.1. System-related non-functional requirementsThe CSTutor tool will have a variety of general characteristics. For instance, the system will be reliable and not crash very often. The system should be robust and respond to hardware or software failure gracefully although for this tool, it is not a major concern. The data contained within the CSTutor tool should be accurate. If it is not, the tool could spread a great deal of misinformation. The system itself must be fully functional and 100 percent correct. Security and privacy are not a major concern and there are no safety issues to speak of. The system should be fully portable. The system does not require any user modifiability or extensibility. The CSTutor tool is designed to be used by novice computer users and should be very easy to use.
In terms of time, this Lesson really depends on how long it takes the user to fully comprehend the material. Some users may be able to understand everything through the first run, other users may require multiple times to past the quizzes. Also the time depends on the length of the lessons. For grading the quizzes, it should only take about 10 seconds to 1 minute. The longer time is for the short-answer, where the system matches keywords. If the quiz only comprises of multiple choice type answers, the grading of the quiz is much quicker. Also clicking through the lesson will be almost instantaneous. Also it may take some time searching through the FAQ database, depending on how big the database has grown. We also limit the number of lessons the available disk space a user has on his or her hard drive. We also have a limit of 100 nodes per lesson, plus 100 objects per node.Our system does not require any specific hardware besides a computer with internet connection. We expect our system will run on both PCs, Macs, and Linux. We also do not need to have data be able to transfer between other applications, thus no features are planned at this moment. We also expect our system to conform to ISO standards in that when we create the system, we will have passed the ISO standards. Our system will never crash, we expect the system to run as long as the operating system is still running. Our data is as accurate as the creator of the lesson. Anyone can create a lesson, so we cannot guarantee the lessons are full of accurate data. The system will have 100 percent correctness. We do not have many security settings. The only security setting is for the administrator and editor of each lesson to be able to modify the data inside the lessons. We only reveal IDs, we do not require or store any private data of the users, thus we have kept the privacy information to a minimum. Our system does not have many modifiable or extendable features because we have defined the overall layout we feel will is best at the moment. We have designed this tool with ease of use in mind; we made most features represented in a GUI format, with mouse drag-and-drop features.
3.2. Process-related non-functional requirements
It should take two quarters to complete this project. One quarter for specification write-up, and the next quarter for implementing the specs. The cost would be our grade, and we feel it should be an "A." The system comes with a manual and installation CD. Installation requires an internet connection because the administrator must load some data off the servers to gain information about classes, teachers, and student IDs. After that, the user just installs the program to hard drive of the computers using the program. The program should allow us to get an "A." We expect mainly instructors to make lessons, while students are the users taking the lessons. We will put a disclaimer explaining that all information the users puts on his or her lesson will not be copyrighted material, and anyone can look and use his or her information unless specified otherwise.
3.3. Personnel-related non-functional requirements
Currently all the developers of this specification are obtaining a BS in computer science or computer engineering. Any person with basic computer skills can use our program.