You are on page 1of 44

UNIT 41 - PROGRAMMING IN JAVA

BTEC HND IN COMPUTING & SYSTEMS DEVELOPMENT


“Royal ICT Hub” – Class Scheduling System F/601/1528

Table of Contents
1.1 Principles of Java.......................................................................................................5
1.1.1 Encapsulation....................................................................................................5
1.1.2 Data Abstraction...............................................................................................6
1.1.3 Polymorphism...................................................................................................6
1.1.4 Inheritance........................................................................................................7
1.2 Features and Characteristics of Java.........................................................................8
1.2.1 Features............................................................................................................8
2 Task 2..............................................................................................................................10
2.1 JVM Environment....................................................................................................10
2.1.1 Advantages of JVM..........................................................................................10
3 Task 3..............................................................................................................................11
3.1 Use case Diagram....................................................................................................11
3.2 Class Diagram..........................................................................................................12
3.3 Sequence Diagram..................................................................................................12
3.4 Activity Diagram......................................................................................................12
3.5 Entity Relationship Diagram....................................................................................13
4 Task 4..............................................................................................................................14
4.1 Class Diagram Explanation......................................................................................14
4.1.1 Class Student...................................................................................................14
4.1.2 Class Course....................................................................................................14
4.1.3 Class Timetable...............................................................................................15
4.1.4 Class Subject....................................................................................................15
4.2 Use case Diagram Explanation................................................................................16
4.2.1 Use case Administrator...................................................................................16
5 Task 5..............................................................................................................................17
5.1 B..............................................................................................................................17
5.1.1 Evidence of Polymorphism..............................................................................17
5.1.2 Evidence of Encapsulation...............................................................................17
5.1.3 Evidence of Inheritance...................................................................................17

PUBUDU KAVISHKA
ESOFTETRO COLLAGE – NUWARA ELIYA
pubudukavishka@gmail.com
PUBUDU KAVISHKA 1
“Royal ICT Hub” – Class Scheduling System F/601/1528

5.1.4 Evidence of Aggregation.................................................................................17


5.2 C..............................................................................................................................18
5.2.1 IF Statements..................................................................................................18
5.3 D..............................................................................................................................19
5.3.1 Try Catch.........................................................................................................19
5.4 E..............................................................................................................................20
5.4.1 Integrated Development Environment (IDE)...................................................20
5.5 Test Cases...............................................................................................................24
6 Analysis of the Test Cases...............................................................................................30
7 Security...........................................................................................................................36
7.1 Security Features Included......................................................................................36
7.1.1 Authentication Levels......................................................................................36
7.1.2 Others.............................................................................................................36
7.2 Future Recommendations.......................................................................................36
8 Task 10............................................................................................................................37
8.1 Questionaries’.........................................................................................................37
8.2 Feedback.................................................................................................................38
8.3 Future Recommendations.......................................................................................40
9 Appendix.........................................................................................................................41
9.1 Gantt chart for Royal Hub Information System.......................................................41
References..............................................................................................................................42

PUBUDU KAVISHKA 2
“Royal ICT Hub” – Class Scheduling System F/601/1528

List of Figures
Figure 1: Use Case Diagram........................................................................................10
Figure 2: Class Diagram...............................................................................................11
Figure 3: Entity Relationship Diagram........................................................................12
Figure 4: Class Student................................................................................................13
Figure 5: Class Course.................................................................................................13
Figure 6: Class Timetable............................................................................................14
Figure 7: Class Subject.................................................................................................14
Figure 8: Use Case – Admin........................................................................................15
Figure 9: Control Structure..........................................................................................17
Figure 10: Control Structure 2.....................................................................................17
Figure 11: Error Handling Try Catch...........................................................................18
Figure 12: Error Handling Try Catch 2........................................................................18
Figure 13: Drag and Drop Designer.............................................................................19
Figure 14: Output Log..................................................................................................20
Figure 15: File Structure..............................................................................................20

PUBUDU KAVISHKA 3
“Royal ICT Hub” – Class Scheduling System F/601/1528

List of Tables
No table of figures entries found.

PUBUDU KAVISHKA 4
“Royal ICT Hub” – Class Scheduling System F/601/1528

Task 1
Java is a cross-platform high level programming language which is widely used in the
world today. It was originally developed by Sun Microsystems and released in 1995,
it is now owned by Oracle. Java can be found in almost every household electronic
item and runs on a variety of platforms, such as Windows, Mac OS, and various
versions of UNIX.

[CITATION Not16 \l 1033 ]

1.1 Principles of Java


Java is an Object Orientated programming language. All Object Oriented
programming languages all share the same principles. Given below are the main 4
principles of Object Oriented Programming (OOP):

1. Encapsulation
2. Abstraction
3. Polymorphism
4. Inheritance

1.1.1 Encapsulation
Encapsulation is hiding data from assessors and mutators by using some restrictions.
Encapsulation is access by modifiers. It helps to make the program more secure.

1.1.1.1 Modifiers
Modifiers are keywords that modify the definition of a class. Given below are the
main types of modifiers.

 Private
o This is the default modifier
o This type of class can only be accessed by members of the certain
class.
o It cannot be accessed by other classes or members other than the
members of the certain class.
 Public
o This class can be accessed by any part of the program, it is public.

PUBUDU KAVISHKA 5
“Royal ICT Hub” – Class Scheduling System F/601/1528

 Protected
o Access is limited to within the class definition and any class that
inherits from the class
 Internal
o Access is limited exclusively to classes defined within the current
project.

 Protected Internal
o All members in current project and all members in derived class can
access the variables.

1.1.1.2 Who is an Assessor?


Assessor is a method that is used to ask the object about itself.

1.1.1.3 Who is a Mutator?


Mutator is the one who modify the properties of objects.

With the use of encapsulation we can make sure that when changing the object’s code
it would not affect other code in the program.

1.1.2 Data Abstraction


Abstraction means filtering out certain object’s properties and operations so that the
problem that needs information will get the right amount of information. This is the
best technique we can use where different types of problems require different amount
of information, even though those problems are in the same general area.

1.1.3 Polymorphism
Polymorphism simply means one object having different forms at different times.

In object oriented programming polymorphism refers to that an operation acts


differently according the nature of the object.

Main operations of polymorphism are:

o Function overloading
o Operator overloading

PUBUDU KAVISHKA 6
“Royal ICT Hub” – Class Scheduling System F/601/1528

o Method overloading

1.1.4 Inheritance
A class is a category of objects. An object is an instance of a class. As an instance of a
class, an object that has all the characteristics on its class. This is inheritance. The
main types of inheritance are:

 Public Inheritance
 Private Inheritance
 Protected Inheritance

[ CITATION Ray05 \l 1033 ]

PUBUDU KAVISHKA 7
“Royal ICT Hub” – Class Scheduling System F/601/1528

1.2 Features and Characteristics of Java


1.2.1 Features
1.2.1.1 Java is Compiled and Interpreted
Java uses a two staged system to compile and interpret java files. At first Java
compiles and converts the file into a byte code file which can be interpreted by any
platform and turned into machine code.

1.2.1.2 Platform Independent


This means that the Java program can be run on different Operation Systems and on
different hardware without causing any compatibility issues, this is because Java uses
a two staged system which converts the Java file into byte code which can be
interpreted into any platform.

1.2.1.3 Simple
Specially, the syntax in Java is very similar to C and C++, but Java is much simpler
than these languages. This simplicity and the fact that Java is a strong language,
makes Java a powerful programming language.

1.2.1.4 Object Oriented


Java is a fully object oriented programming language, which means that the program
is organized as a cooperative collection of objects that are instances of certain classes
whose classes are all members of a hierarchy of classes linked with inheritance.

1.2.1.5 Secure
Java is designed in a way which makes arbitrary addresses in memory inaccessible by
the program, this is made by not using memory pointers, and this makes Java
programs more secure over networks.

1.2.1.6 Garbage Collection


It is a runtime process which clears memory which was occupied by objects that are
no longer useful.

1.2.1.7 Distributed
Java uses TCP/IP protocols such as HTTP and FTP to enable networking which
makes the program to access objects across the network via URLs.

PUBUDU KAVISHKA 8
“Royal ICT Hub” – Class Scheduling System F/601/1528

1.2.1.8 Multithreaded
This is one of the main features of Java, this enable the Java program to share the
CPU simultaneously using threads to make the execution of the program efficient.

[ CITATION Eso2 \l 1033 ]

PUBUDU KAVISHKA 9
“Royal ICT Hub” – Class Scheduling System F/601/1528

2 Task 2
2.1 JVM Environment
JVM is a virtual machine or simply said “a computer within a computer”, JVM is a
platform-independent execution environment that converts Java byte code into
machine language and executes it. Most programming languages compile source code
directly into machine code that is designed to run on a specific microprocessor
architecture or operating system, such as Windows or UNIX.

It is very useful because it allows the Java program to run on any operating system
because it creates its own machine on the host system. This makes the program more
secure because even if an attacker can compromise the system he/she’s access is
limited to the virtual machine, so only in rare occasions the attacker can compromise
the host machine.

[ CITATION Van13 \l 1033 ]

2.1.1 Advantages of JVM


Given below are the two main advantages of JVM:

2.1.1.1 Platform Independence


Java bytecode can be written once and then run on multiple platforms. Java bytecode
does not need to be ported to a specific hardware environment because it runs in the
Java Virtual Machine.

2.1.1.2 Security
The Java Virtual Machine has built-in security features that allow programmers to
write highly secure Java programs. It also prevents malicious software from
compromising the Operating System (OS) because it keeps Java applications from
interacting with Operating System resources.

[ CITATION Tim15 \l 1033 ]

PUBUDU KAVISHKA 10
“Royal ICT Hub” – Class Scheduling System F/601/1528

3 Task 3
3.1 Use case Diagram

Figure 1: Use Case Diagram

PUBUDU KAVISHKA 11
“Royal ICT Hub” – Class Scheduling System F/601/1528

3.2 Class Diagram

Figure 2: Class Diagram

3.3 Sequence Diagram


3.4 Activity Diagram

PUBUDU KAVISHKA 12
“Royal ICT Hub” – Class Scheduling System F/601/1528

3.5 Entity Relationship Diagram

Figure 3: Entity Relationship Diagram

PUBUDU KAVISHKA 13
“Royal ICT Hub” – Class Scheduling System F/601/1528

4 Task 4
4.1 Class Diagram Explanation
4.1.1 Class Student

Figure 4: Class Student

Name: Student

Attributes: regNo (Primary Key), NIC, DOB, batchNo and date

Methods: Learn (), Register (), viewGrades () and viewTimeTable ().

4.1.2 Class Course

Figure 5: Class Course

Name: Course

Attributes: CID (Primary Key), Fee, Major, Description, Instructor and instructor
is a multivalued attribute.

Methods: Lectured ()

PUBUDU KAVISHKA 14
“Royal ICT Hub” – Class Scheduling System F/601/1528

4.1.3 Class Timetable

Figure 6: Class Timetable

Name: Timetable

Attributes: TID (Primary Key), Date, startTime and endTime.

Methods: BeignInserted (), BeignUpdated (), BeignViewed ().

4.1.4 Class Subject

Figure 7: Class Subject

Name: Subject

Attributes: Sid (Primary Key) and Name.

Methods: BeignLectured () and GiveGrades ().

PUBUDU KAVISHKA 15
“Royal ICT Hub” – Class Scheduling System F/601/1528

4.2 Use case Diagram Explanation


4.2.1 Use case Administrator

Figure 8: Use Case – Admin

 The administrator must enter the default username and password to log in to
the main dashboard.
 The main dashboard includes uses cases: Course Details and Maintain
Timetable.
 The

PUBUDU KAVISHKA 16
“Royal ICT Hub” – Class Scheduling System F/601/1528

5 Task 5
5.1 B
5.1.1 Evidence of Polymorphism
5.1.2 Evidence of Encapsulation
5.1.3 Evidence of Inheritance
5.1.4 Evidence of Aggregation

PUBUDU KAVISHKA 17
“Royal ICT Hub” – Class Scheduling System F/601/1528

5.2 C
5.2.1 IF Statements

Figure 9: Control Structure

This control structure is used to make the user who is logging in to the system to enter
different credentials to make them given different permissions.

Figure 10: Control Structure 2

The above given control structure is used to enter details into a table only if the count
of students in that batch is lesser than 50.

PUBUDU KAVISHKA 18
“Royal ICT Hub” – Class Scheduling System F/601/1528

5.3 D
5.3.1 Try Catch

Figure 11: Error Handling Try Catch

Figure 12: Error Handling Try Catch 2

PUBUDU KAVISHKA 19
“Royal ICT Hub” – Class Scheduling System F/601/1528

5.4 E
5.4.1 Integrated Development Environment (IDE)
The IDE used in the development process of the Royal ICT Hub Information System
is Netbeans IDE.
5.4.1.1 Reasons to choose Netbeans
 Faster
 Free
 Drag and Drop Designer
 Stable

5.4.1.2 User-Friendliness
5.4.1.3 Designer
Netbeans IDE provides very user-friendly user interface in the development of the
Graphical User Interface (GUI) of the system, this is mainly because of the drag and
drop designer which enables the developer to develop complicated GUIs with ease.

Figure 13: Drag and Drop Designer

PUBUDU KAVISHKA 20
“Royal ICT Hub” – Class Scheduling System F/601/1528

5.4.1.4 Output Log


Netbeans IDE provides a very useful output log which displays all the errors,
warnings and log outputs of the system. This output log is very useful in
troubleshooting and debugging.

Figure 14: Output Log

5.4.1.5 File Structure


This IDE provides us with great file structure view which enables the developer to
easily navigate between files.

Figure 15: File Structure

PUBUDU KAVISHKA 21
“Royal ICT Hub” – Class Scheduling System F/601/1528

PUBUDU KAVISHKA 22
“Royal ICT Hub” – Class Scheduling System F/601/1528

PUBUDU KAVISHKA 23
“Royal ICT Hub” – Class Scheduling System F/601/1528

5.5 Test Cases

Test ID 1
Function being test Login
Inputs Username = “Admin” , Password = “pass”
Expectable outcomes Open Student Registration window
Table 1

Test ID 2
Function being test Login
Inputs Username= “professor” , Password = “prof”
Expectable outcomes Open Grades window
Table 2

Test ID 3
Function being test Login
Inputs Username= “student” , Password = “stud”
Expectable outcomes Open viewGrades window
Table 3

Test ID 4
Function being test Login
Inputs Correct Username , Wrong Password
Expectable outcomes Message box displaying “Invalid credentials”
Table 4

Test ID 5
Function being test Login Function
Inputs Correct Password, Wrong Password
Expectable outcomes Message box displaying “Invalid credentials”
Table 5

Test ID 6
Function being test Student Registration
Inputs regNo, Name, DOB, NIC, Contact, Batch No., Course ID
Expectable outcomes Message box “Student registered successfully”
Table 6

PUBUDU KAVISHKA 24
“Royal ICT Hub” – Class Scheduling System F/601/1528

Test ID 7
Function being test Student Registration
Inputs Course ID which students in the batch exceeds 50
Expectable outcomes Message box displays “The number of students allowed in
this batch has maxed!”
Table 7

Test ID 8
Function being test Student Registration - Delete
Inputs Reg. No.
Expectable outcomes Message box displays “Student deleted successfully”
Table 8

Test ID 9
Function being test Student Registration - Update
Inputs Updated details about the student
Expectable outcomes Message box “Student details updated Successfully”
Table 9

Test ID 10
Function being test Student Registration - Clear
Inputs Click the “Clear” button
Expectable outcomes Empty all textboxes

Test ID 11
Function being test Course – Add Course
Inputs Major, Degree, Description, Fee, Instructor 1, Instructor 2
Expectable outcomes Message box “Course record added successfully”
Table 10

Test ID 12
Function being test Course - Search
Inputs Course ID
Expectable outcomes All details about the course should be displayed on
relevant boxes
Table 11

Test ID 13
Function being test Course -_Delete
Inputs Course ID
Expectable outcomes Message box “Course deleted successfully”
Table 12

Test ID 14
Function being test Course - Update
Inputs Updated details about the course in the relevant textboxes
Expectable outcomes Message box “Course details updated successfully”

PUBUDU KAVISHKA 25
“Royal ICT Hub” – Class Scheduling System F/601/1528

Test ID 15
Function being test Course - Clear
Inputs Click the “Clear” button
Expectable outcomes Empty all textboxes
Table 13

Test ID 16
Function being test Subjects - Add
Inputs Subject Name, Course ID
Expectable outcomes Message box displays “Subject added Successfully”
Table 14

Test ID 17
Function being test Subjects - Search
Inputs Subject ID
Expectable outcomes All details about the subject should be displayed on
relevant boxes
Table 15

Test ID 18
Function being test Subject - Delete
Inputs Subject ID
Expectable outcomes Message box displays “Subject deleted successfully” and
the records about the relevant subject will be deleted.
Table 16

Test ID 19
Function being test Subjects - Update
Inputs Updated details about the subject in the relevant
textboxes.
Expectable outcomes Message box displaying “Record Updated Successfully”
Table 17

Test ID 20
Function being test Subjects - Refresh
Inputs Click on the “Refresh” button
Expectable outcomes Refresh the data table
Table 18

Table 19

PUBUDU KAVISHKA 26
“Royal ICT Hub” – Class Scheduling System F/601/1528

Test ID 21
Function being test Timetable - Add
Inputs Date, Start Time, End Time, Course ID
Expectable outcomes Message box “Timetable added Successfully”
Table 20

Test ID 22
Function being test Timetable - Search
Inputs Time Table ID
Expectable outcomes All details about the relevant Timetable ID in the relevant
textboxes
Table 21

Test ID 23
Function being test Timetable - Update
Inputs Updated details about the timetable entered in the relevant
textboxes.
Expectable outcomes Message box “Timetable Updated Successfully”
Table 22

Test ID 24
Function being test Timetable - Delete
Inputs Timetable ID
Expectable outcomes Message box displays “Timetable deleted successfully”
and delete the relevant record from the database.
Table 23

PUBUDU KAVISHKA 27
“Royal ICT Hub” – Class Scheduling System F/601/1528

Test ID 25
Function being test Timetable - Refresh
Inputs Click on the “Refresh” button
Expectable outcomes Refreshes the data Grid
Table 24

Test ID 26
Function being test View Timetable
Inputs Course ID
Expectable outcomes All timetables related to the course ID will be displayed
Table 25

Test ID 27
Function being test Grades – Add Grades
Inputs Reg. No, Subject ID , Grade
Expectable outcomes Message box “Grade added Successfully”
Table 26

Test ID 28
Function being test Student Grades Search
Inputs Reg. No, Subject ID
Expectable outcomes Show the relevant Grade
Table 27

Test ID 29
Function being test Student Grades - Refresh
Inputs Click on the “Refresh” button
Expectable outcomes All results of the student into the table
Table 28

Test ID 30
Function being test Student Grades - Update
Inputs Updated details about the student’s grade.
Expectable outcomes Message box “Grade Updated Successfully”
Table 29

Test ID 31
Function being test Student Grades - Delete
Inputs Reg. No., Subject ID
Expectable outcomes Message box “Record Deleted Successfully”
Table 30

PUBUDU KAVISHKA 28
“Royal ICT Hub” – Class Scheduling System F/601/1528

Test ID 32
Function being test View Grades
Inputs Reg. No.
Expectable outcomes All grades results relevant to the student displayed on the
data Grid.
Table 31

PUBUDU KAVISHKA 29
“Royal ICT Hub” – Class Scheduling System F/601/1528

6 Analysis of the Test Cases

Test ID 1
Expectable outcomes Open Student Registration window
Actual outcome Open Student Registration window
Evidence F1
Result (Pass / Fail) Pass
Table 32

Test ID 2
Expectable outcomes Open Students’ Grades window
Actual outcome Open Students’ Grades window
Evidence F2
Result (Pass / Fail) Pass
Table 33

Test ID 3
Expectable outcomes Open viewGrades window
Actual outcome Open viewGrades window
Evidence F3
Result (Pass / Fail) Pass
Table 34

Test ID 4
Expectable outcomes Message box displaying “Invalid credentials”
Actual outcome Message box displaying “Invalid credentials”
Evidence F4
Result (Pass / Fail) Pass
Table 35

Test ID 5
Expectable outcomes Message box displaying “Invalid credentials”
Actual outcome Message box displaying “Invalid credentials”
Evidence F5
Result (Pass / Fail) Pass
Table 36

PUBUDU KAVISHKA 30
“Royal ICT Hub” – Class Scheduling System F/601/1528

Test ID 6
Expectable outcomes Message box “Student Registered successfully”
Actual outcome Message box “Student Registered successfully”
Evidence F6
Result (Pass / Fail) Pass
Table 37

Test ID 7
Expectable outcomes Message box displays “The number of students allowed in
this batch has maxed!”
Actual outcome Message box displays “The number of students allowed in
this batch has maxed!”
Evidence F7
Result (Pass / Fail) Pass
Table 38

Test ID 8
Expectable outcomes Message box “Student Deleted successfully”
Actual outcome Message box “Student Deleted successfully”
Evidence F8
Result (Pass / Fail) Pass
Table 39

Test ID 9
Expectable outcomes Message box “Student details updated Successfully”
Actual outcome Message box “Student details updated Successfully”
Evidence F9
Result (Pass / Fail) Pass
Table 40

Test ID 10
Expectable outcomes Empty all Textboxes
Actual outcome Empty all Textboxes
Evidence F10
Result (Pass / Fail) Pass
Table 41

Test ID 11
Expectable outcomes Message box “Course record added successfully”
Actual outcome Message box “Course record added successfully”
Evidence F11
Result (Pass / Fail) Pass

PUBUDU KAVISHKA 31
“Royal ICT Hub” – Class Scheduling System F/601/1528

Table 42

Test ID 12
Expectable outcomes All details about the course should be displayed on
relevant boxes
Actual outcome All details about the course should be displayed on
relevant boxes
Evidence F12
Result (Pass / Fail) Pass
Table 43

Test ID 13
Expectable outcomes Message box “Course deleted successfully”
Actual outcome Message box “Course deleted successfully”
Evidence F13
Result (Pass / Fail) Pass
Table 44

Test ID 14
Expectable outcomes Message box “Course details Updated successfully”
Actual outcome Message box “Course details Updated successfully”
Evidence F14
Result (Pass / Fail) Pass
Table 45

Test ID 15
Expectable outcomes Empty all text boxes
Actual outcome Empty all text boxes
Evidence F15
Result (Pass / Fail) Pass
Table 46

Test ID 16
Expectable outcomes Message box displays “Subject added Successfully”
Actual outcome Message box displays “Subject added Successfully”
Evidence F16
Result (Pass / Fail) Pass
Table 47

PUBUDU KAVISHKA 32
“Royal ICT Hub” – Class Scheduling System F/601/1528

Test ID 17
Expectable outcomes All details about the subject should be displayed on
relevant boxes
Actual outcome All details about the subject should be displayed on
relevant boxes
Evidence F17
Result (Pass / Fail) Pass
Table 48

Test ID 18
Expectable outcomes Message box displays “Subject deleted successfully” and
the records about the relevant subject will be deleted.
Actual outcome Message box displays “Subject deleted successfully” and
the records about the relevant subject will be deleted.
Evidence F18
Result (Pass / Fail) Pass
Table 49

Test ID 19
Expectable outcomes Message box displaying “Record Updated Successfully”
Actual outcome Message box displaying “Record Updated Successfully”
Evidence F19
Result (Pass / Fail) Pass
Table 50

Test ID 20
Expectable outcomes Refresh the data table
Actual outcome Refresh the data table
Evidence F20
Result (Pass / Fail) Pass
Table 51

Test ID 21
Expectable outcomes Message box “Timetable added Successfully”
Actual outcome Message box “Timetable added Successfully”
Evidence F21
Result (Pass / Fail) Pass
Table 52

PUBUDU KAVISHKA 33
“Royal ICT Hub” – Class Scheduling System F/601/1528

Test ID 22
Expectable outcomes All details about the relevant Timetable ID in the relevant
textboxes
Actual outcome All details about the relevant Timetable ID in the relevant
textboxes
Evidence F22
Result (Pass / Fail) Pass
Table 53

Test ID 23
Expectable outcomes Message box “Timetable Updated Successfully”
Actual outcome Message box “Timetable Updated Successfully”
Evidence F23
Result (Pass / Fail) Pass
Table 54

Test ID 24
Expectable outcomes Message box displays “Timetable deleted successfully”
and delete the relevant record from the database.
Actual outcome Message box displays “Timetable deleted successfully”
and delete the relevant record from the database.
Evidence F24
Result (Pass / Fail) Pass
Table 55

Test ID 25
Expectable outcomes Refreshes the data Grid
Actual outcome Refreshes the data Grid
Evidence F25
Result (Pass / Fail) Pass
Table 56

Test ID 26
Expectable outcomes All timetables related to the course ID will be displayed
Actual outcome All timetables related to the course ID will be displayed
Evidence F26
Result (Pass / Fail) Pass
Table 57

PUBUDU KAVISHKA 34
“Royal ICT Hub” – Class Scheduling System F/601/1528

Test ID 27
Expectable outcomes Message box “Grade added Successfully”
Actual outcome Message box “Grade added Successfully”
Evidence F27
Result (Pass / Fail) Pass
Table 58

Test ID 28
Expectable outcomes Show relevant Grade
Actual outcome Show relevant Grade
Evidence F28
Result (Pass / Fail) Pass
Table 59

Test ID 29
Expectable outcomes All results of the student into the table
Actual outcome All results of the student into the table
Evidence F29
Result (Pass / Fail) Pass
Table 60

Test ID 30
Expectable outcomes All details in the subject table into the table.
Actual outcome All details in the subject table into the table.
Evidence F30
Result (Pass / Fail) Pass
Table 61

Test ID 31
Expectable outcomes Message box “Record Deleted Successfully”
Actual outcome Message box “Record Deleted Successfully”
Evidence F31
Result (Pass / Fail) Pass
Table 62

Test ID 32
Expectable outcomes All grades results relevant to the student displayed on the
data Grid.
Actual outcome All grades results relevant to the student displayed on the
data Grid.
Evidence F32
Result (Pass / Fail) Pass
Table 63

PUBUDU KAVISHKA 35
“Royal ICT Hub” – Class Scheduling System F/601/1528

7 Security
7.1 Security Features Included
7.1.1 Authentication Levels
 Admin – The administrator is the one who has full control of the system.
She/he has a separate username and a password to login. The admin does not
have full control over the database.
 Professor – The professor can only access the forms Grades and View
Grades. She/he has a separate username and a password to login. He can only
insert Grades to the system, he cannot directly alter the system.
 Student – The students can only view their grades and view timetables. The
student cannot update content on the database.

7.1.2 Others
The password field in the login form has password characters, this means that the user
cannot see the password that they are typing in plaintext. This prevents a social
engineering attack technique called Shoulder Surfing.

7.2 Future Recommendations


I hope to implement these security features on further revisions of the system:

 Implement separate credentials for different users.


 Encrypt data on the database.
 Users being able to edit their usernames and passwords.
 Put .java files and classes inside .dll files.

PUBUDU KAVISHKA 36
“Royal ICT Hub” – Class Scheduling System F/601/1528

8 Task 10
8.1 Questionaries’
1) Are all the requirements satisfied using the system?
Yes No
2) Do you feel comfortable with the user interface?
Yes No
3) Do you want this system to be more user friendly?
Yes No
4) Do you think this system is practical?

Yes No

5) Do you feel secure with using this system?


Yes No
6) Does the system load quickly?
Yes No
7) How would you rate the performance of the system?
Low Medium High
8) What are your suggestions to improve this system?
…………………………………………………………………………………
…………………………………………………………………………………
………………………………………………………………………………....
9) Do you have any suggestions about adding new features to this system?
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
10) What were the features of this system which compromised its user
friendliness?
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………

PUBUDU KAVISHKA 37
“Royal ICT Hub” – Class Scheduling System F/601/1528

PUBUDU KAVISHKA 38
“Royal ICT Hub” – Class Scheduling System F/601/1528

8.2 Feedback
Name Q.1 Q.2 Q.3 Q.4 Q.5 Q.6 Q.7
Miss. Melisha Fernando Yes Yes No Yes Yes Yes High

Mr. Kabilan Viswanathan Yes Yes Yes Yes Yes Yes Medium

Mr. Jude Perera

Mr. Kavindha Ranasinghe

Mrs. Kishokanth Kumar


Table 64: Feedback 1 - 7

Name Q.8
Miss. Melisha Fernando Make the system a bit more user friendly and
Secure.

Mr. Kabilan Viswanathan Make the color scheme more eye catching.

Mr. Jude Perera It’s good if the users have their separate accounts.
If it can handle semantic error if would be effective

Mr. Kavindha Ranasinghe Make the system more pleasing.

Mrs. Kishokanth Kumar It’s good if the data get encrypted.

Table 65: Feedback 8

PUBUDU KAVISHKA 39
“Royal ICT Hub” – Class Scheduling System F/601/1528

Name Q.9
Miss. Melisha Fernando None

Mr. Kabilan Viswanathan A password reset function will be useful.

Mr. Jude Perera A neat admin dashboard will be useful.

Mr. Kavindha Ranasinghe A function to customize the UI.

Mrs. Kishokanth Kumar Making users to create their own accounts will ne
effective.

Table 66: Feedback 9

Name Q.10
Miss. Melisha Fernando Splash Screen

Mr. Kabilan Viswanathan Bad color scheme

Mr. Jude Perera Navigation Scheme.

Mr. Kavindha Ranasinghe None

Mrs. Kishokanth Kumar The color scheme definitely reduced the user-
friendliness.

Table 67: Feedback 10

PUBUDU KAVISHKA 40
“Royal ICT Hub” – Class Scheduling System F/601/1528

8.3 Future Recommendations


I would include the below given features in the next revision of the system to increase
its efficiency and user-friendliness.

 Encrypted data transfer


 Separate user accounts
 Improved navigation scheme
 Improved UI design
 User input validation.

PUBUDU KAVISHKA 41
“Royal ICT Hub” – Class Scheduling System F/601/1528

9 Appendix
9.1 Gantt chart for Royal Hub Information System
Time
No Task
1st month 2nd month 3rd month
Weeks Weeks Weeks
1 2 3 4 5 6 7 8 9 10 1 12
1
01. Analysis the requirements
specification
03. Develop requirements for
new system
04. Develop prototype
05. Approve prototype
06. Apply changes in prototype
07. Approve prototype
08. Develop system layout
09. Develop system
10. User testing
11. Implement system
12. Test full system
13. Perform QA
14. Deploy system to customer
15. Give training to user
Table 68: Gantt chart

PUBUDU KAVISHKA 42
“Royal ICT Hub” – Class Scheduling System F/601/1528

References
Beal, V., 2013. Webopedia. [Online]
Available at: http://www.webopedia.com/TERM/J/JVM.html
[Accessed 3 2016].
Esoft, n.d. Features of JAVA. In: Esoft, ed. Programming in JAVA. s.l.:Esoft, pp. 2-3.
Lewallen, R., 2005. Code Better. [Online]
Available at: codebetter.com/raymondlewallen/2005/07/19/4-major-principles-of-
object-oriented-programming/
[Accessed 2015].
Point, T., n.d. Tutorials Point. [Online]
Available at: http://www.tutorialspoint.com/java/
[Accessed 26 April 2016].
Tim Lindholm, Frank Yellin, Gilad Bracha, Alex Buckley, 2015. The Java® Virtual
Machine Specification. [Online]
Available at: http://docs.oracle.com/javase/specs/jvms/se8/html/index.html
[Accessed 26 3 2016].

PUBUDU KAVISHKA 43

You might also like