ASSIGNMENT FRONT SHEET <No.3>
Qualification BTEC HND Diploma in Computing and Systems Development
Unit number and
title Unit 41: Programming in Java
Assignment due Assignment submitted
Learner’s name Assessor name
Learner declaration:
I certify that the work submitted for this assignment is my own and research sources are fully acknowledged.
Learner signature Date
Grading grid P4. 1 P4. 2 P4. 3 P4. 4 P4. 5 M3 D1 D2 D3
Assignment title Research Proposal
In this assignment, you will have opportunities to provide evidence against the following criteria. Indicate the page numbers where the evidence can be found.
Assessment criteria Expected evidence Task
no.
Assessor’s Feedback
LO4. Be able to test and document Java solutions
4.1 critically review and test a Java
programming solution
Produce a test plan and execute it.
5
4.2 analyse actual test results against
expected results to identify discrepancies
Give a conclusion after
conducting a test plan. Show the percentage of the tests run correctly or incorrectly.
4.3 evaluate
independent feedback on a developed Java
Produce questionnaires for colleagues to independently test your program. Analysis of the feedback from the
4.4 create user
documentation for the developed Java
The program should include user manual.
4.5 create technical documentation for the support and
The technical booklet must be developed.
Assessment criteria Expected Evidence Feedback
(note on Merit/Distinction if applicable)
Merit descriptor No. (M1) Merit descriptor No. (M2) Merit descriptor No. (M3) Distinction descriptor No. (D1)
Distinction descriptor No. (D2)
Distinction descriptor No. (D3)
Summative feedback
Assessor’s
4.1 critically review and test a Java programming solution
Criticaly review
The desktop application which is created provides a solution for the given problem Student Management System. This is a desktop application which provides the information about the student, class, course and management of the testing system.
The review of the solution:
Students and staff have the unique id and password to login. After login they can view details in the system.
After login, student can choose a course and do testing. He/she can also view their result after testing, they can view their marks.
Staff can view all the details of the system. They have the right to remove, edit or add the student and also have the right to add or edit or remove the teacher as well as also have the right to remove, edit or add new class. On the other hand they can add and edit student’s mark.
Staff can view the students result after testing. They can also view the updates which are provided by the application.
Advantages:
This system is very simple and easy to use
The system offert an effective management for the school
The system offert an directly testing for student which is very helpful in studying Disadvantage:
This application is only suitable for small system.
There are so many functions which are not provided such as: timetable for students, present checking, teacher management…
It doesn’t offert a connection between the school with student’s parent. Test plan
1. Scope of The Tests
1.1 The Student Management System Application version 1.0
1.2 The documents: Requirement Document, Analysis Document, Coding Document, Design Document, Database Document.
1.3 Testing time: from December 15st 2016 to Jan 15st 2017 2. Testing Environment:
2.1 Testing app: All the features developed in SMS 2.2 Software
Documentation tool Microsoft word 2013 Scheduling tool Microsoft project 2013
IDE Eclipse Mars
Netbean 8.1
JDK JDK 1.8
DBMS Microsoft SQL Server 2012
Operating System Windows 8.1, 10, Linux 2.3 Hardware
Client 8 laptops, 5 desktops
2.4 Resources
Worker Specific Responsibilities/Comments Test Manager Provide management oversight
Responsibilities: provide technical direction, accuquire appropriate resources
Test Designer Identifies, priorities and implements test cases
Responsibilites: generate test plan, evaluate effectiveness of test effort System Tester Executes the test
Responsibilites: executes tests, log results, recover from errors,
document defects
Test System Administrator Ensures test environment and assets are managed and maintained
Responsibilites: administer test management system, manage worker access to test system
Designer Identifies and defines the operations, attributes
Responsibilites: identifies and defines the test class, identifies and defines the test packages
Implementer Implements and unit tests the test classes and test packages
Responsibilites: create the test classes and packages implemented in the test suite
2.5 Participating organizations: Colleagues
2.6 Manpower requirements: Requirement Document, Analysis Document, Coding Team, Analysis Team, Testing Team
2.7 Preparation and training required of the test team: Senior System Analyst 3. Test Detail (For Each Test):
3.1 Test identification: Test UI, Test features
3.3 Cross- reference to relevant design document and the requirement document: Requirement Document, Analysis Document, Coding Document, Design Document, Database Document
3.4 Test class: student class, search class, course class, mark class, testing class, update class, login class.
3.5 Test level (unit, integration or system tests)
a) Unit: States, transaction, data flow, functionally, UI b) Integration: Error handling, functionally, performance
c) System: States, Transaction, data flow coverage, functionally, UI, error handling, operation, reliability,date/time and configuration options 3.6 Test case
A. Student Test Case
a) Test case of Log in and Log out Use case
b) Fail to login the system when providing invalid username
c) Fail to login the system when providing valid username and invalid password
d) Fail to login the system when providing empty username e) Fail to login the system when providing empty password f) Doing testing without answer questions
g) Doing testing when out of time
h) Doing testing with some correct answers B. Admin Test Case
a) Test case of Log in and Log out Use case
b) Fail to login the system when providing invalid username
c) Fail to login the system when providing valid username and invalid password
d) Fail to login the system when providing empty username e) Fail to login the system when providing empty username C. Admin Test Case – Student Features
a) Admin add student with valid information
b) Fail to add student with id that already exists in the system c) Fail to add student when one or some or all fields are empty
d) Fail to add student when inputting special character(s) to one or some or all fields
e) Fail to add student when inputting special character(s) to phone number field
g) Fail to add student when inputting email field not well formatted h) Update a student with valid information
i) Fail to update student when one or some or all fields are empty
j) Fail to update student when inputting special character(s) to one or some or all fields
k) Update student cancel l) Delete student
m) Delete student cancel
D. Admin Test Case – Class Features a) Admin add class with valid information
b) Fail to add class with id that already exists in the system c) Fail to add class when one or some or all fields are empty
d) Fail to add class when inputting special character(s) to one or some or all fields
e) Fail to add class when inputting special character(s) to phone number field
f) Update a class with valid information
g) Fail to update class when one or some or all fields are empty
h) Fail to update class when inputting special character(s) to one or some or all fields
i) Update class cancel j) Delete class
k) Delete class cancel
E. Admin Test Case – Course Features a) Admin add course with valid information
b) Fail to add course with id that already exists in the system c) Fail to add course when one or some or all fields are empty
d) Fail to add course when inputting special character(s) to one or some or all fields
e) Update a course with valid information
f) Fail to update course when one or some or all fields are empty
g) Fail to update course when inputting special character(s) to one or some or all fields
h) Update course cancel i) Delete course
j) Delete course cancel
F. Admin Test Case – Mark Features a) Admin add mark with valid information
b) Fail to add mark with id that already exists in the system c) Fail to add mark when one or some or all fields are empty
fields
e) Update a mark with valid information
f) Fail to update mark when one or some or all fields are empty
g) Fail to update mark when inputting special character(s) to one or some or all fields
h) Update mark cancel i) Delete mark
j) Delete mark cancel
G. Admin Test Case – Result Features a) Test show student result
H. Admin Test Case – Search Features a) Search with input field is empty b) Search with courseid invalid c) Search with courseid valid d) Search with studentid valid e) Search with studenid invalid f) Search with studentid empty I. Test Case – Test UI
a) Test GUI run exactly or not
b) Test GUI on other OS (Windows, Linux,..)
3.7 Special requirements: Measurements of response times, Security
requirements: Fast response time and good performance, all the requirement met the standard of security
3.8 Data to be recorded: Yes
4. Test Schedule (For Each Test or Test Group) including time estimates for the following:
4.1 Preparation: 1 week 4.2 Testing: 2 weeks
4.3 Error correction: 2 weeks 4.4 Regression test: 1 week
4.2 analyse actual test results against expected results to identify discrepancies
Function
)
Function1 Test case of Log in and Log out Use case
Function2 Fail to login the system when providing invalid username
Function3 Fail to login the system when providing valid username and invalid password
Function4 Fail to login the system when providing empty username Function5 Fail to login the system when providing empty password Function6 Doing testing without answer questions
Function7 Doing testing when out of time
Function8 Doing testing with some correct answers Function9 Test case of Log in and Log out Use case
Function10 Fail to login the system when providing invalid username
Function11 Fail to login the system when providing valid username and invalid password
Function12 Fail to login the system when providing empty username Function13 Fail to login the system when providing empty username Function14 Admin add student with valid information
Function15 Fail to add student with id that already exists in the system Function16 Fail to add student when one or some or all fields are empty
Function17 Fail to add student when inputting special character(s) to one or some or all fields
Function18 Fail to add student when inputting special character(s) to phone number field
Function19 Fail to add student when inputting date of birth field not well formatted
Function20 Fail to add student when inputting email field not well formatted Function21 Update a student with valid information
Function22 Fail to update student when one or some or all fields are empty Function23 Fail to update student when inputting special character(s) to one or
some or all fields Function24 Update student cancel Function25 Delete student
Function26 Delete student cancel
Function27 Admin add class with valid information
Function28 Fail to add class with id that already exists in the system Function29 Fail to add class when one or some or all fields are empty
Function30 Fail to add class when inputting special character(s) to one or some or all fields
Function31 Fail to add class when inputting special character(s) to phone number field
Function32 Update a class with valid information
Function33 Fail to update class when one or some or all fields are empty
Function34 Fail to update class when inputting special character(s) to one or some or all fields
Function35 Update class cancel Function36 Delete class
Function37 Delete class cancel
Function38 Admin add course with valid information
Function39 Fail to add course with id that already exists in the system Function40 Fail to add course when one or some or all fields are empty
Function41 Fail to add course when inputting special character(s) to one or some or all fields
Function42 Update a course with valid information
Function43 Fail to update course when one or some or all fields are empty Function44 Fail to update course when inputting special character(s) to one or
some or all fields Function45 Update course cancel Function46 Delete course
Function47 Delete student cancel
Function48 Admin add mark with valid information
Function49 Fail to add mark with id that already exists in the system Function50 Fail to add mark when one or some or all fields are empty
Function51 Fail to add mark when inputting special character(s) to one or some or all fields
Function52 Update a mark with valid information
Function53 Fail to update mark when one or some or all fields are empty
Function54 Fail to update mark when inputting special character(s) to one or some or all fields
Function55 Update mark cancel Function56 Delete mark
Function57 Delete student cancel Function58 Test show student result
Function59 Search with input field is empty Function60 Search with courseid invalid Function61 Search with courseid valid Function62 Search with studentid valid Function63 Search with studenid invalid
Function64 Search with studentid empty Function65 Test GUI run exactly or not
Function66 Test GUI on other OS (Windows, Linux,..)
Test num ber What is being tested Expected outcome Actual outcome Pa ss or fail Evidence 1 Student dob String ‘MM/dd/yyy y’ (‘12/03/199 0’) String (‘12/03/199 0’) Pas s Successful 2 Student name String ‘xxxx’ (‘jeans’) String (‘jeans’) Pas s Successful 3 Student phone number String ‘xxxxxxxx’ (‘01920384 7’) String (‘123’) Fail 4 Student address String ‘xxxxxxxxx x’ (‘ho chi minh’) String (‘ho chi minh’) Pas s Successful 5 Student passwo rd String ‘xxxxx’ (‘111’) String (‘ ’) Fail 6 Course name String ‘xxxxxxx’ String (‘java basic’) Pas s Successful
(‘java basic’) 7 Course ID String ‘xxxx’ (‘c01’) String (‘ ’) Fail 8 Class name String ‘xxxxx’ (‘BT004‘) String (‘BT004’) Pas s Successful 9 Student mark int (>=0, <=10) (7) int (15) Pas s 10 Course level int (>=0, <=10) (5) int (12) Fail
No Function code Passed Failed Untested Total Test Cases
1 Function1 10 2 3 15
2 Function2 10 3 2 15
3 Function3 10 2 3 15
5 Function5 12 2 1 15 6 Function6 12 2 1 15 7 Function7 10 3 2 15 8 Function8 10 3 2 15 9 Function9 10 2 3 15 10 Function10 11 3 1 15 11 Function11 10 2 3 15 12 Function12 12 3 0 15 13 Function13 12 3 0 15 14 Function14 10 3 2 15 15 Function15 12 2 1 15 16 Function16 12 3 0 15 17 Function17 10 2 3 15 18 Function18 12 2 1 15 19 Function19 11 2 2 15 20 Function20 10 3 2 15 21 Function21 10 2 3 15 22 Function22 12 2 1 15 23 Function23 12 2 1 15 24 Function24 10 3 2 15 25 Function25 11 2 2 15 26 Function26 11 3 1 15 27 Function27 11 3 1 15 28 Function28 10 2 3 15 29 Function29 10 2 3 15 30 Function30 10 3 2 15 31 Function31 12 3 0 15 32 Function32 10 3 2 15 33 Function33 11 2 2 15 34 Function34 10 3 2 15 35 Function35 12 3 0 15 36 Function36 12 2 1 15 37 Function37 10 3 2 15 38 Function38 11 3 1 15 39 Function39 11 2 2 15 40 Function40 12 3 0 15 41 Function41 10 3 2 15 42 Function42 10 3 2 15 43 Function43 10 2 3 15
44 Function44 12 3 0 15 45 Function45 12 2 1 15 46 Function46 11 2 2 15 47 Function47 11 2 2 15 48 Function48 10 3 2 15 49 Function49 12 2 1 15 50 Function50 12 2 1 15 51 Function51 10 3 2 15 52 Function52 11 2 2 15 53 Function53 11 2 2 15 54 Function54 10 3 2 15 55 Function55 12 3 0 15 56 Function56 12 3 0 15 57 Function57 11 3 1 15 58 Function58 12 3 0 15 59 Function59 11 2 2 15 60 Function60 11 3 1 15 61 Function61 11 2 2 15 62 Function62 11 2 2 15 63 Function63 10 2 3 15 64 Function64 10 2 3 15 65 Function65 11 2 2 15 66 Function66 10 2 3 15 Sub total 719 163 108 990 Test coverage: 89%
Test successful coverage: 72,6% Test fail coverage: 16,4%
4.3 evaluate independent feedback on a developed Java program solution and make recommendations for improvements
Feedback Questions Very
Good Good Normal
So Bad 1. What do you think about the UI of this
application?
8 2 4 1
2. What do you think about the functions of this application?
10 2 2 1
3. This application is friendly using? 9 3 3 0
4. What do you think about error handling of this application?
11 2 1 1
5. This application is good for managing big system? 5 6 4 0 Summarize 43(57,3% ) 15(20 % 14(18,6 %) 3(4,1 %)
Based on above figure, I can see that the system has got good feedbacks from users, the interface is pretty much interactive but can provide more features on the main screen. Overdrafts facility can be revised. More programming and object oriented concepts can be incorporated in the further implementation of the proposed solution.
What has implemented is just a contrived functionality of any student management system. As per the requirements few more facilities can be incorporated in the system.
List of the improvements which can be done in application are as follows:
One new feature such as the notification should be like shedule for students and teachers, the students and the management can have a reminder related to the events, exams and about any program.
There must be one more feature gallery which can have the pictures of the students or teacher.
There must be one more feature in case of any problem the students can directly communicate with the management.
1 2 3 4 6 5
The feature such as students view must be there where students can share their views related to the college.
4.4 create user documentation for the developed Java program solution
Double click on app.jar file on the desktop, the program will launch login form as below
Figure: Login Screen
Control Details
1 Input username
2 Input password
3 Choose if you are admin 4 Choose if you are student
5 Click on this button will login to the system 6 Click on this button will close the program
1 2 3 4 5 6 8 7 9 10 11 12 Figure: Student Feature Control Details
1 click on this button will add new student to the system
2 click on this button will update student information 3 click on this button will remove student from the
system
4 click on this button will reset form on the left side 5 Input date of birth
6 Input address
7 Input gender
8 Input phone number
9 Input password
10 Input class
11 Input student name
1 2 3 4 5 6 7
Figure: Class Feature
Control Details
1 click on this button will add new class to the system 2 click on this button will update class information 3 click on this button will remove class from the
system
4 click on this button will reset form on the left side
5 Input class id
6 7 8 9 1 2 3 4
Figure: Course Feature
21
5
Control Details
1 click on this button will add new course to the system
2 click on this button will update course information 3 click on this button will remove course from the
system
4 click on this button will reset form on the left side
5 Input testing
6 Input course id
7 Input course name
5 6 7 8 1 2 3 4
Figure: Mark Feature
Control Details
1 click on this button will add mark to the system 2 click on this button will update mark information 3 click on this button will remove mark from the
system
4 click on this button will reset form on the left side
5 Input class name
6 Input student id
7 Input course name
1 2
Figure: Search student via ClassID
23
Control Details
1 Input classid
Figure: Search student via StudentID
4.5 create technical documentation for the support and maintenance of a Java program solution
System Requirements For the application Student Management System 1. JRE 1.6 and higher
2. Minimum 512 MB RAM
3. Operating system Linux/ Windows/ Mac 4. Hard Disk Space 200 MB
5. MS SQL Server Management Studio 2008 or later Compiling and Running Application
Control Details
1 Input studentid
Here are the steps for compiling and running your first Swing program with the Java SDK
1. Download the Latest Release of the Java Platform
2. Backup database file sql.bak along with the application to MS SQL Studido 3. Run the Program: Double click on app.jar file on the desktop to run the
application
If running application successfully, a login form will show, using admin id ‘abc’ password ‘123’ to login to the system
Login form: this is used to log in to the application
Below flow chart displays the details on how this application works:
Flow of application :
1. User accesses the application
2. Application determines whether it is normal user or admin user
a) Add new teacher, student, faculty, class, course, mark
b) Remove existing teacher, student, faculty, class, course, mark in the system
c) Update existing teacher, student, faculty, class, course, mark in the system
d) Search information
e) Show result information of student
4. If user is normal user, it will allow to perform below actions: a) Choose course to do testing
b) View detail result after testing
Conclusion
This application has been made to understand the basic concepts and features of java programming and desktop applications. It illustrated the fundamentals of inheritance, classes and objects, Bytecode, JVM and so on. It helped me enhancing my java programming skills. I have got the better understanding of Netbeans and java. I have achieved the clarity in implementing programming solution through designing models such as UML class diagram and so on. The student management system has been made according to the requirements specified in the case study.