辅导案例-ELEC 5620 MODEL

欢迎使用51辅导,51作业君孵化低价透明的学长辅导平台,服务保持优质,平均费用压低50%以上! 51fudao.top

ELEC 5620 MODEL BASED SOFTWARE ENGINEERING
Semester 2, 2020

Homework Automatic Grading System Project
Requirements Documentation,
Architecture Design and System Modeling
















Group 5
Lingyu Ma 480251822
Ruiyou Ma 500622036
Yingchao Ye 480157100
Ruojin Li 480228411






2020.10.25










1.Introduction 3
2.Requiements 4
2.1 Ad hoc Requirement 4
2.2 Feature Diagram 5
2.3 Use case Diagram 6
2.4 Use case specifications 7
3.System Modelling 11
3.1 Architecture Analysis and Design 11
3.2 System Model Structure 13
3.2.1 Class Diagram 13
3.2.2 Object Diagrams 14
3.3 System Model Behavior 15
3.3.1 Activity Diagrams 15
3.3.2 Interaction Diagrams 25
3.3.3 State machine Diagrams 35
3.4 Package Diagram 43
3.5 Deployment Diagram 44
4.System Assumption and Shortcomings 45
4.1 System Assumption 45
4.1.1 System assumption for clients 45
4.1.2 System assumption for AutoGrading System 45
4.1.3 System assumption for homework system 45
4.2 Shortcomings 45
5.Contribution 46











2
1.Introduction
Nowadays, because of the condition of COVID19, more students have to study at home via
the internet. For teachers, they not only have to teach their students by video but also public
the requirements of homework on the internet too. Therefore, a homework automatic grading
system needs to be built to make some convenience for teachers and students. In this
system, students can do their homework online or download their homework requirements
and upload homework they finished. Teachers also can upload the requirements and answer
for homework. In this way, the system can auto-grade some homework and let teachers
check or regrade the homework.

The report is mainly divided into five parts, introduction, requirements, system modelling,
system assumption and shortcomings and contribution. In the requirements section, a brief
description of the requirements and functions of the entire system is given. Feature diagram,
use case diagram and use case specifications clearly express what the system needs to do.

In the system modelling part, first select the viewpoint for architecture analysis and design,
and then provide class diagrams and object diagrams to support the system model structure.
Next, use activity diagrams, interaction diagrams and state machine diagrams to illustrate
the system model behaviour. Finally, the package diagram and deployment diagram are
provided to make the system structure clearer.

At the end of this report, the system’s assumptions and existing shortcomings are discussed,
and each team member’s contribution in this article is explained.




3
2.Requiements
2.1 Ad hoc Requirement
1.system can let users register.
2.system can let users log in.
3.system can remind students of their homework due date.
4.system can let students do homework online.
5.system can let students upload their homework.
6.system can let teachers upload their homework requirements.
7.system can let teachers recheck students’ homework.
8.system can let teachers grade students’ homework.
9.system can let parents check their children’s homework and marks.
10.system can automatically try to grade as much homework as it can.

Target users:
Students, teachers and parents of primary and secondary schools.

4
2.2 Feature Diagram

Fig2.2.1

After entering the automatic scoring system, the user first needs to log in. After logging in, it
is divided into three systems: students, teachers, and parents. Teachers can post
homework, check completed homework, grade homework, and post homework answers.
Among them, to grade the homework, you can choose to keep the automatically graded
results or re-mark. Parents can check their children's achievements. Students can find
homework, do homework, and get grades. Homework is divided into online homework and
document homework. Online homework is submitted directly after completion online, and the
document homework is downloaded and submitted locally after completion.
5
2.3 Use case Diagram

Fig2.3.1 Use case diagram of homework auto-grading system

In this diagram, it is clear to find different kinds of users have different rights for this system.
Teachers can upload the requirements of homework and check or regrade their students’
homework. Students can upload or do their homework online. And parents of students can
also check this homework. After teachers upload the answers to homework, the system can
auto-grade the related homework.

6
2.4 Use case specifications

1.system can let related students register
Name Goal Level Precondition Success
Condition
Failure
Condition
Trigger
Register Register
an account
System None Users
provide all
his
personal
details
Personal
details
are not
sufficient
Users
want to
have an
account
1.User visits the web page
2.User clicks the Register button
3.User fills the form of personal details
4.User submits the form
5.System announce user that his account is registered successfully

2.system can let related students log in.
Name Goal Level Precondition Success
Condition
Failure
Condition
Trigger
Login Login
system
System User has an
accounts
User logs
in with the
correct
account
and
password
User logs
in with
the
wrong
account
and
passwor
d
Users
want to
log in the
system
1.User visits the web page
2.User logs in the system by his account and password
3.System announce user that he logs in successfully

3.system can remind students of their homework due date.
Name Goal Level Precondition Success
Condition
Failure
Condition
Trigger
Due date
warning
Send an
announce
ment to
the user if
the due
date is
coming
System User has at
least one
due.
The
system
announce
s user at a
correct
time
User has
no due
date
The
System
needs to
announce
user the
due date is
coming
1.User visits the web page
7
2.User logs in the system by his account and password
3.System announces user which due date is coming

4.system can let students do homework online.
Name Goal Level Precondition Success
Condition
Failure
Condition
Trigger
Do
homework
Complete
homework
System User logs
into the
system
The
teacher
has
granted
permission
Teachers
did not open
permissions
Users
want to do
homework
online

1.The student user logs into the system.
2.The student user clicks the homework button.
3.The student user does the homework online.
4.The student user submits the homework after completing it.

5.system can let students upload their homework.
Name Goal Level Precondition Success
Condition
Failure
Condition
Trigger
Upload
homework
The teacher
can see the
uploaded
homework
in the
background
System User logs
into the
system
The
teacher
has
opened the
upload
permission
The teacher
did not
open the
upload
permission
Users want
to upload
homework

1.The student user logs into the system.
2.The student user clicks the homework upload button.
3.The student user uploads the completed homework.
4.The system shows that the upload was successful.

6.system can let teachers upload their homework requirements.
Name Goal Level Precondition Success
Condition
Failure
Condition
Trigger
Post
requireme
nts
Upload
homework
requirement
s for
students
system User must
be a teacher
homework
requireme
nts post
and can
be shown
on the
student
account
homewor
k
requirem
ents are
not
sufficient
Teachers
want to
give
students
new
homework

8
1.Teacher user logs into the system.
2.Teacher user clicks the post new homework button.
3.Teacher user posts the homework requirements and uploads related files.
4.Teacher user clicks the post button and the system will send this requirement to students.

7.system can let teachers recheck students’ homework.
Name Goal Level Precondition Success
Condition
Failure
Condition
Trigger
Check
homework
check the
homework
graded by
the system
system User must be a
teacher
teachers
can
receive
the
graded
homework
and check
it
no
homework
uploaded
or graded
teachers
want to
check the
homewor
k

1.Teacher user logs into the system.
2.Teacher user clicks the homework received link and it will show the teacher all the
homework submitted by the students.
3.Teacher user clicks the check button and looks through the graded homework.

8.system can let teachers regrade students’ homework.
Name Goal Level Precondition Success
Condition
Failure
Condition
Trigger
Grade
homework
Grade the
homework
system
cannot
grade
system User must be a
teacher
Teachers
receive
the
homework
uploaded
by the
students
no
homewor
k
uploaded
or
graded
when the
homework
can’t be
graded by
the system

1.Teacher user logs into the system.
2.Teacher user clicks the homework received link and it will show the teacher all the
homework submitted by the students.
3.Teacher user clicks the grade button and grades the homework.



9
9.system can let parents check their children’s homework and marks.
Name Goal Level Precondition Success
Condition
Failure
Condition
Trigger
Parents
check
homework
and marks
Parents
understand
students’
academic
performance
System User logs
into the
system
The
student has
submitted
the work
and the
system and
the teacher
have
graded it.
The student
did not
submit the
homework
or the
system and
the teacher
did not
grade
Parents care
about
students'
academic
performance

1.Users (parent) log into the system.
2.User(parent) click the student grade button
3.The system shows the homework and grade to parents.

10.system can automatically grade homework.
Name Goal Level Precondition Success
Condition
Failure
Condition
Trigger
Auto
grading
Grade the
homework
students
submitted
System Homeworks
have been
submitted
by students
The
system
can read in
the
homework
students
submitted
Teachers
didn’t
upload the
answer and
students
didn’t
upload the
homework
Teachers
want the
system
automatic
ally grade
homework
s

1.The system shows the homework has been submitted.
2.Teacher users post answers to the AutoGrading system.
3.The AutoGrading system matches the answers to homeworks.
4.The AutoGrading system grades homeworks.


10
3.System Modelling
3.1 Architecture Analysis and Design
The system should be analysed by the logical viewpoint. The logical viewpoint focuses on
functions, including not only the functions visible to the user but also the "auxiliary functions"
that must be provided to realize the user functions. The design of the logical viewpoint builds
an object model from the perspective of objects to establish logical layering, module division,
module functions, and inter-module dependencies. This architecture focuses on functional
requirements, that is, what services the system needs to provide users. Therefore, using this
architecture makes the system structure clearer, bridges the gap between functional
requirements and technical implementation, and brings great benefits to subsequent
development and code writing.


Fig3.1 Class Diagram
11

Fig3.2 Sequence Diagram of “students do homework online”


In the class diagram, Client, Students, Teachers, Parents and Homeworks are the functions
visible to the user, and the rest are auxiliary functions for realizing user functions. This
Sequence diagram reflects that in this operation, there are two classes involved.

12
3.2 System Model Structure
3.2.1 Class Diagram

3.2.1.1 Class Diagram

The whole system is divided into 9 classes. They are Client, AccountKeeper, Students,
Teachers, Parents, HomeworkBuilder, AnnounceSystem, Homeworks, AutoGrading. Client
has three kinds of users(students, teachers, parents) which all depend on the account stored
in AccountKeeper. Client should have at least one student and one teacher, but can have no
parent. Students can control Homeworks because they can upload their homework to
Homeworks and get the due dates from Homeworks. Teachers can control
HomeworkBuilder, Homeworks and Autograding, because they can create new homework
by HomeworkBuilder, check and regrade homework in Homeworks and upload answers to
Autograding. AutoGrading can also control Homeworks because after autograding, it should
set the grade of related homework in Homeworks. Homeworks can control
AnnouncesSystem because whenever a due date of homework in Homeworks is coming,
AnnounceSystem should get this message from Homeworks and post an announcement to
users.
13
3.2.2 Object Diagrams

3.2.2.1 Object Diagram of releasing grade

The teacher object will confirm the automatically graded homework and set the final grade.
The student object and parent object can see the result through the homework object.

3.2.2.2 Object Diagram of registering/logging in

When the customer object registers, it provides the user type, name, gender, age, student
ID, password, and school, and stores these information in the AccountKeeper object.

3.2.2.3 Object Diagram of building homework

The teacher object creates a homework object through the homeworkBuilder object, and the
homework object publishes an announcement to the AnnounceSystem object. Student
objects can find homework objects.

14

3.2.2.4 Object Diagram of doing homework

Student object could download and upload the offline homeworks.
Student object could browse online and submit online homeworks.
3.3 System Model Behavior
3.3.1 Activity Diagrams
(1)

Fig3.3.1.1 Activity diagram of signing in

15
After clicking the register button, users need to fill a form with sufficient personal details to
register successfully. If not, they need to fill that form again.
(2)

Fig3.3.1.2 Activity diagram of login

After typing in the account and password and submitting them, the system will check
whether the account and password filled are correct. Only these two are correct, the system
will let the user login.

16
(3)

Fig3.3.1.3 Activity diagram of announcing user their due dates

After login the system, the welcome page will show users their due date. If they do not have
a due date coming, the welcome page will show nothing.

17
(4)

Fig3.3.1.4 Activity diagram of doing online homework

After the student user logs in, if the teacher has opened the permissions, he can enter the
online homework page, complete the homework online and submit it. After the submission is
successful, the system will prompt that it has been submitted. If the permission is not open,
the system will inform the student.



18




(5)

Fig3.3.1.5 Activity diagram of doing document homework

After the student user logs in, if the teacher has opened the permissions, he can download
the document assignment and submit it after completing the assignment locally. After the
submission is successful, the system will prompt that it has been submitted. If the permission
is not open, the system will inform the student.

19
(6)

Fig3.3.1.6 Activity diagram of uploading requirements

After the teacher user logs in to the system, he clicks the publish new assignment button,
and if all the conditions required to publish the homework are completed, it will be published
successfully. If not completed, return to the create homework page to add information.



20
(7)

Fig3.3.1.7 Activity diagram of rechecking requirements

The teacher user logs into the system and enters the graded homework list page. If there is
a homework that needs to be checked again, select one to check, and return to the list after
completion, until all checks are completed.


21
(8)

Fig3.3.1.8 Activity diagram of regrading requirements

The teacher user logs into the system and enters the graded homework list page. If there are
homework assignments that need to be regraded, select one for grading, and return to the
list after completion, until all grading is completed.

22
(9)

Fig3.3.1.9 Activity diagram of parents checking the grade

Parents could see the grades after homework been submitted unless they are not submitted
or marked.
23
(10)

Fig3.3.1.10 Activity diagram of automatically grade

Teachers could post answers to the system and then the system could match answers to the
homework. Finally, the system can grade homework automatically.

24
3.3.2 Interaction Diagrams
(1)

Fig3.3.2.1 Interaction diagram of sign in

After clients fill the form, AccountKeeper needs to check whether the information client filled
is sufficient. If yes, AccountKeeper will save this information. If no, clients need to fill that
form again.

25


(2)

Fig3.3.2.2 Interaction diagram of login

After clients submit their accounts and passwords, AccountKeeper needs to check whether
the accounts and passwords they typed are correct. If yes, the clients will be set as students
or teachers or parents.

26
(3)

Fig3.3.2.3 Interaction diagram of announcing due date

After login successfully, AccountKeeper will try to find all due dates related to that account.
Once some due dates are found, AnnounceSystem will announce the user those due dates.






27

(4)

Fig3.3.2.4Interacation diagram of doing online homework

After successfully logging in, the student requests the online homework page, and the
homework class will check the permissions. If the permissions are turned on, they can do the
homework online and submit it. If permissions are not turned on, the system will remind
students.

28
(5)

Fig3.3.2.5 Interaction diagram of doing document homework

After successfully logging in, the student requests the document homework page, and the
homework class will check the permission. If the permission is turned on, the homework can
be downloaded to the local and submitted after completion. If permissions are not turned on,
the system will remind students.








29
(6)

Fig3.3.2.6 Interaction diagram of uploading homework requirements

After logging in, teachers could post homeworks to the HomeworkBuilder. Then, if
homeworks are successfully created, the HomeworkBuilder could save homework to the
keeper and the homeworks would be shown on the homework page.

30
(7)

Fig3.3.2.7 Interaction diagram of rechecking homeworks

After logging in, teachers could get student homeworks and find student grades from the
homework system before regarding homeworks.


31
(8)

Fig3.3.2.8 Interaction diagram of regrading homeworks

The teacher user logs in to the system, if there is an assignment that needs to be graded
again, please select one to grade, and return to the list when finished, until all grades are
completed.







32


(9)


Fig 3.3.2.9 Interaction diagram of parents checking the grade

After parents login and finding the homework, homework system needs to return homework,
as well as grades to them in the condition of homework, have been submitted and marked.



33



(10)

Fig 3.3.2.10 Interaction diagram of automatically grade

After teachers posting the answers, the AutoGrading system needs to get student homework
from the homework system and match answers itself. Finally, the AutoGrading system could
send grades to the homework system.

34
3.3.3 State machine Diagrams
(1)

Fig3.3.3.1 State machine diagram of sign in

When users visit the auto-grading system firstly, the system will show the login/sign-in page
to users. Once they click the register button, the system will show them a page to fill their
personal information. Only if that information is sufficient, the system will pop up an
announcement that they have registered successfully.

35
(2)

Fig3.3.3.2 State machine diagram of login

The system always shows the login/sign-in page to users firstly. After users type in their
accounts and passwords, the system will check whether those accounts and passwords are
correct in the database. Only after passing that check, the system will show the welcome
page to users.

36
(3)

Fig3.3.3.3 State machine diagram of announcing due dates

After logining in, the system will show the welcome page to users, and the coming due dates
will be shown on that page automatically.


37
(4)

Fig3.3.3.4 State machine diagram of doing online homework

The user must first successfully log in to the system. After requesting the online homework
page, the system will confirm whether the permission is open. Only if the permission is open,
students can enter the online homework page and submit the homework after completing the
online homework. Otherwise, the system will prompt that the student permission is not open.
(5)

Fig3.3.3.5 State machine diagram of doing document homework

The user must first successfully log in to the system, and after requesting the document
homework page, the system will confirm whether the permission is open. Only if the
permission is open, students can download the homework document and submit it to the
system after completing the homework locally. Otherwise, the system will prompt that the
student permission is not open.

38
(6)

Fig3.3.3.6 State machine diagram of posting homework requirements

After logging in, teachers could click the homework upload button and the system will show
the create-homework page. Then, it will show the upload success page after homework
successfully being created and submitted. Finally, new homework will be stored in the
system database.

39
(7)

Fig3.3.3.7 State machine diagram of rechecking homeworks

Teachers always need to login firstly, then, they could visit graded homework files in the
graded homework list page. In the next step, they could click on the homeworks that need to
be rechecked in the graded homework displayed page and finish these homeworks. Finally,
teachers could check the graded homework and move on to the next student’s homework.

40
(8)

Fig3.3.3.8 State machine diagram of regrading homeworks

The teacher user logs in to the system and then enters the hierarchical homework list page.
If there is an assignment that needs to be graded again, select one to grade, and return to
the list when finished, until all grades are completed.

41
(9)

Fig 3.3.3.9 State machine diagram of parents checking grade

When the user name and password are correct, parents could login and enter the homework
page. Once the homework has been submitted, parents could see the homework, then the
grade showed to them if homework has been marked.

(10)

Fig 3.3.3.10 State machine diagram of automatically grade

After logging in, teachers could enter and browse the homework page in the students’
homework page. Then, they could see if students have submitted homework and put
answers to the system. The system will match answers to submitted homework and
automatically grade them.
42
3.4 Package Diagram

Fig 3.4.1 Package Diagram
The Keeping package in Homework used to store the homework which teachers and
students uploaded. The Building package used to build new homework operated by
teachers. The Managing package used to check or regrade or auto-grade the homework
stored in the Keeping package. The Keeping package in AccountManagement used to store
the user details, accounts and passwords. The Creating package used to create new
homework. The UI package used to show a user interface which depends on different
accounts to users.

43
3.5 Deployment Diagram

Fig 3.5.1 Deployment Diagram
This deployment diagram displays the execution architecture of our homework auto-grade
web. We will use the personal laptop MSI GS75 as our local server and Alibaba Cloud as
our online server. We will have five databases to store our three different types of users,
homework and the answers of the homework. We will use the Catalina environment in
Tomcat JSP server to develop our web. Our website’s name is ‘www.auto-grade.com. It will
initially have login.html, welcome.html and homework.html. The objects JavaScript files
(students.js, parents.js, teacher.js, homeworks.js…) will be stored into the web.jar file.


44
4.System Assumption and Shortcomings
4.1 System Assumption
4.1.1 System assumption for clients
1. Clients include teachers, students and parents.
2. Only teachers could modify the grade of homeworks.
3. All the students and parents will be responsible for at least one teacher.
4.1.2 System assumption for AutoGrading System
1. The AutoGrading system is assumed to grade homeworks automatically with
matching the answers which have been submitted. Otherwise, the system cannot
work.
2. This system could only be operated by teachers and be shown to them.
3. This system could only read in the answers to multiple choice questions and to fill in
the blank questions.
4.1.3 System assumption for homework system
1. Parents could only see the homework system. But the homework system could be
shown to all clients.
2. Homework system includes online homeworks and document homeworks.
4.2 Shortcomings
4.2.1No communication function
There is no communication function designed in this system. If a communication platform
can be added into this system, it is more convenient for students, parents and teachers to
communicate. For students, they can post some questions to teachers directly online. For
teachers and parents, they can talk about how to improve the children’s learning skill or how
to fix some risks of their children.
4.2.2The system cannot auto-grade all homework
Because of lack of some technology support like image identification or semantic
recognition, this system cannot auto-grade all homework like writing and drawing. What can
be auto-graded is really limited.





45
5.Contribution

Name SID Contribution
Lingyu Ma 480251822 use cases, use case diagram,class diagram,activity
diagram, interaction diagram, state machine diagram,
package diagram, deployment diagram
Ruiyou Ma 500622036 use cases, feature diagram,class diagram,activity
diagram, interaction diagram, state machine diagram,
package diagram, deployment diagram
Yingchao Ye 480157100 use cases, use case diagram, object diagram, activity
diagram, interaction diagram, state machine diagram,
system assumption.
Ruojin Li 480228411 use cases, feature diagram, object diagram,
architecture analysis and design, activity diagram,
interaction diagram, state machine diagram



46

欢迎咨询51作业君
51作业君

Email:51zuoyejun

@gmail.com

添加客服微信: abby12468