Architecture Design: For ELP Helper
Architecture Design: For ELP Helper
Aghsan Ahmad
CIS 895 – MSE Project
Kansas State University
TABLE OF CONTENTS
1. Introduction…………………………...…………………………………….… 2
2. Architecture of the System …............................................................................ 2
2.1. Presentation Tier........……………………………………………………..…3
2.2. Business Tier …..…………….………………………………………….......4
2.2.1. Class Descriptions …………………………………..………………….. 4
2.2.2. Sequence Diagrams…………………………………...………………… 9
2.3. Data Tier (Database) ……………………………………………….……... 11
1. Introduction
The purpose of this document is to provide an architectural design for the ELP Helper. The
design will show the presentation tier, the middle tier, composing of class and sequence
diagrams, and the data tier. Each class will have a brief description about its purpose.
Figure1. Two-tier Architecture Diagram (The client application for the clerk).
List of groups, and classes .aspx The web page for selecting the specific group and
class to recommend their students
List of studentsName.aspx The web page for selecting the specific student to
recommend her/him.
Evaluation.aspx The screen has a check box to recommend a student
and write his/her class achievement.
The diagram below captures the page flow (ASP.NET Web forms) model for the Teacher.
The Student class is used to define the entire student’s general information, such as
- Student First /last Name which are typed by the clerk into the textbox.
- Major that is typed by the clerk into textbox.
- Test number which is a Pk in the student table.
- Student ID which is an Id number form the KSU and not all of students have it.
- Country that is listed into the combo box, so the clerk can select it from the list
- Category which is listed into the combo box, so the clerk can select it from the list, it
could be either G (Graduate), UG (undergraduate), or ELP student
- Birthday which is selected form the DateTimePicker that is supported by .NET with the
date format.
- Language which is listed into the combo box, so the clerk can select it from the list
In addition, there are an initial Date which determines the date that student came to the ELP
school and it is selected form the DateTimePicker toolbox.
However, this class has many methods can deal with students’ information. PlaceStudent(int
total, int StudTestNumber) method is called when the clerk clicks on the import and
placement button to import students’ score from the excel file and then place them based on
their total score. PrintScore() is a method which is called when the clerk clicks on the print
score report button to print a report using crystal report technique.
2.2.1.2 Student Scores
StudentScore class associates with the Student class, (many to one) that means for each student
has more than one StudentScore. StudentScore Class has many attributes which are:
- Student TestNumber that is a foreign key.
- RecordNumber is the PK in the StudentScore table.
- Reading Score, Listing Score, Structure Score, Essay Score that are imported from the
excel sheet.
- Total Score is the summation from the above scores.
- Level for each course which is determined after calculating the total scores, these are the
output of the program, they are (136, 138,140,150,152,and KSU which is advance level)
For more details, you can see the code in the function “buttonAssign”
- StudSemester which is listed into the combo box, so the clerk can select it from the list, it
can be (summer, fall, or spring).
- StudentYear is entered by the clerk which can be (2008, 2009...).
These 2 last attributes describe the year and the semester for the groups which are created
for each semester.
- classOrder which is attribute to let the program keep tracking for each student in each
semester, and makes a different between a new student and a returning student, it is
incremented by 1 into the program code.
2.2.1.3 Group
This class has all groups’ information that is created by the clerk. Its attributes are:
- Group level which is listed in the combo box. they are (136, 138,140,150,152,and KSU
which is advance level)
- Group date is selected form the DateTimePicker toolbox
- Group semester which is listed into the combo box, so the clerk can select it from the
list, it can be (summer, fall, or spring).
- Group Name which is a PK, (Group Name = Year + Subject name+ Level+ Group’s
Name), in this formula we could be sure that each group has a different name in each
semester.
There are 2 methods in the Group class which are GetStudent that is called when the clerk
clicks on the get student button, and MakeGroup that is called when the clerk sets the group
properties, and get the student and save it in the database.
2.2.1.4 Teacher
2.2.1.5 StudentSession
StudenSession class has many operations, such as AddStudent method which is called when the
clerk clicks on the Add button to add a new student. AddTeacher method is called when the
clerk creates a new teacher in the database and give the teacher a default username and password
which can be changed when the teacher log in in his/her account via web, SearchStudent
method is called when the clerk clicks on the search button. The search method might be by the
student first name or last name. SearchGroup method is called when the clerk selects the group
name from the combo box and hits search by group.
2.2.1.6 TeacherSession
The TeacherSession class support teacher required operations, such as Login (), Signout(), and
Modify(). Login method is called when the teacher clicks on the login button. Signout method is
called when the teacher clicks on the sign out button, Modify () method is called when a teacher
clicks on the change button to change his/her password.
Reading class has many attributes to evaluate the student’s performance during the semester.
This class associates with Group class, and Student class. It has several attributes:
- ClassAchievement is typed by the teacher into textbox and it represents how many
parentages the student did in the class during the semester.
- Credit it is presented as a ratio box, the teacher can check either credit or not
- DaysAttended, Home work, Test taken is typed by the teacher and represent how many
parentages the student Attend and did in the homework, and test during the semester.
- Comprehension, Homework_study, Vocabulary, and ReadingSpeed are represented by a
reation box, and entered by the teacher. For each attribute has 3 option 1 if the student
didn’t do very well, 2 if the student did a good job, 3 represents excellent work.
2.2.2. Sequence Diagrams
2.2.2.3. Grouping
2.2.2.4. Search
2.2.2.5. Teacher Login