Web Based Student Registration System Requirements
The project that is being carried out involves designing of a student registration system that is web based. The system should be able to allow the university students to register for their courses online and to choose classes that they are going to attend. The system should also allow the student to see the class timetables and schedules as well as printing an slip showing that that they have registered for their courses. Therefore to ensure that the architecture of the software that will be used is gotten right, there is need to choose the right specification technique to be used to describe the requirements (Bass, Clements & Kazman, 2003). The technique that is to be employed or chosen must be able to provide all the necessary information that will aid in developing the software needed .Factors such as quality attributes, security, reliability as well as modifiability are taken into consideration when settling on the requirement specification technique to use.
Requirement Specification Technique for the Web Based Student Registration System
For the web based student registration system, the specification technique that is used to identify and state the requirements for the software required is the Use Case Analysis Technique with the aid of the Unified Modeling Language (UML) to represent the information required. This chosen technique involves the use of blocks that clearly shows the interactions between the various actors and the system (Armour & Miller 2000). It clearly defines the interaction between the system and those people that use it. The actors in this web based student registration system are the students and the registrar’s office. Therefore, this technique will clearly show how the system, the students and the office of the registrar interact during the functioning of the system.
This help in determining the functional requirements of the software required clearly. Since functionality had been identified as the major determining factor, the Use Case Analysis Method is therefore the best technique to use. However, because other factors such as the choice of technology and hardware to be used must also be taken into consideration, supplemental documentation is also needed in order to give the required additional information on the requirements of the software to be incorporated into the web based student registration system. This technique was settled on as it will clearly give the architectural significant requirements of the software needed by clearly showing the functioning of the system and relationship between the various actors and scenarios (Gooma, 2005). Furthermore, the Case Use Analysis technique allows for carrying out functional testing and generation of various test cases which will facilitate enable the creation of fully functional software that will help achieve the mission and objectives of this web based registration system project (Gooma, 2005).
Requirements for Registering Students
From use case analysis technique the registration process has two actors; the students and the office of the registrar. The Unified Modeling Language is used to depict the actors, cases and scenario of the registration process below.
Student System Registrar
560070377190004945380377190004824095121285001893570121285View Registration Status
00View Registration Status
1893570356235Course Status Viewing
00Course Status Viewing
3638552076450017716516256000189357029845Register for Course
00Register for Course
1893570316865Retrieve student Data
00Retrieve student Data
From the UML documentation, it is seen that in the process of registering the student, the student will access the system to check or see his or her registration status as well as the course status. The student will then proceed with the registration process where necessary. The office of the registrar will then access the system to retrieve the information on the student. When the student accesses the system, it should be able to allow the student see whether he or she has registered or not. The student then views the list of courses that are available and whether he or she is eligible to register for the courses with the class schedules also being displayed. The student then completes his or her registration process.
To further capture the requirements needed in the student registration process, the Use Case Analysis was used and the diagram below was developed to show the actions that take place during the registration process.
From the diagram showing the actions that take place during the registration process, the requirements for the registering a student can be grouped into three. The student identifier is the first requirement. Before the student can register for a course, the system should be able to provide a user access point through personal accounts that will be used for subsequent registrations. It should provide the user with a registration page and a login page. The students using the system should be able to answer the necessary question that will be used for identification during subsequent registrations .Therefore the software should be able to allow students to login using their email addresses and a personal identification number(PIN).This will enable the system to identify the students before they register for a course.
Actions during Registration Process
2715260313055Retrieve Eligibility to Register
00Retrieve Eligibility to Register
1213485755015001679575281749500320992522999700012433302061210004756151635125001243330144589500320992594424500-19052530475Display Registration Confirmation
00Display Registration Confirmation
24663402614295Retrieve Registration Confirmation
00Retrieve Registration Confirmation
25273001856105Update Student Database
00Update Student Database
25273001252220List Courses and Units
00List Courses and Units
2527300449580Retrieve Course and Units
00Retrieve Course and Units
The second requirement for the registration of the student is the course codes and units. The software to be used should be able to analyze the eligibility of a student to register, display available courses and units, the class time tables and schedules. The system should only be able to allow students register for those courses that they are eligible to register for.
The third category of the requirements that the software developed should have is the action codes. The system should have action code such as add course, delete course and confirm course.
Components of the Software Requirements Specification
In order to register for a course, the student will first of all need to create a personal account that he or she uses to login. The software will provide the account creation page as well as the login page. When the student inputs his login information into the system, the software verifies the credentials of the student from the information stored in the database. The software should provide the students with all the necessary information in their registration accounts. Some of the information that the software should have in the student’s profile include the name of the student, the registration number, department, year of study, email address/ fax, phone number and personal Identification Number (PIN).
After verification and login in the next stage is the selection of courses. The software should use the credentials of the students and the information on the student in the database to verify the eligibility to register for a course and unit. The software that is to be used should provide the student with some sort of assistance during the registration process to ensure the registration is done correctly. It should return an error when a student tries to register for a course that he or she is not eligible for or when the course is full. In addition, the software should be able to alert the student if the student tries to register for a course that he or she has already completed or that do not exist. It should furthermore alert the student when the student chooses and registers for classes that are conflicting. This will enable the student to alter his or her choice and pick classes that do not conflict on the schedule. This function will ensure that students register for classes that they will be able to attend
Finally, in order to ensure smooth registration, the software should provide action codes for adding courses, removing courses or changing courses. It should also provide a means for resolving registration error. For example when a student registers for a course at first time and wishes to change it before login out, the software should allow the student to edit his or her choices before submitting the registration.
Verification and Validation Plan
In order to ensure that the software is able to carry the functional requirements that it is intended to do, verification and validation will be done at every stage of the software development. The use of the User Case Analysis to determine the specification requirements of the software was intentionally used in order to help also in the functionality testing and in generating the test cases (Burdman, 1999). After developing the software, object oriented rapid prototyping technique will be employed to help test the functionality of the registration system software. The functioning of the prototype will be checked against the stated functional requirements of the intended software. This will be done so that the right software with proper functionality is developed. In cases where the tests are done and the intended functions are not performed, modification will be necessary before moving to the next stage of development. This will ensure that the functions specifications are fully met.
Armour, F. & Miller, G. (2000). Advanced Use Case Modeling: Software Systems. Boston, MA: Addison-Wesley
Bass, L., Clements, P., & Kazman, R. (2003) Software Architecture in Practice, Second Edition. Boston, MA: Addison-Wesley
Burdman, J. (1999). Collaborative Web Development: Strategies and Best Practices for Web Teams. New York: Addison-Wesley
Clements, P., Kazman, R., & Klein, M. (2002). Evaluating Software Architectures: Methods and Case Studies. Boston, MA: Addison-Wesley.
Gooma, H. (2005). Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures. Boston, MA: Addison-Wesley.