ELPHelperII

ELP Helper
MSE Project Presentation II
Aghsan Ahmad
Major professor: Dr. Hankley
Presentation Outline:







Action Items from Presentation I
Architecture Design
Test Plan
Formal Requirements Specification
Architecture Prototype
Formal technical inspection letters
Questions
Action Item(1)Verifications
- Each student has a unique test number.
 - No recommendation for new students
 - If there is a null level for a student that implies there is no
grade neither recommendation.
 for new students:
students placement level matches their Excel sheet -->
According to the TestNo.
 for returning students
placement level matches their Excel sheet --> According to
the TestNo. and a teacher recommendation.

Action Item (2) Forms and Reports

In my project I will use Crystal Reports for
Visual Studio.NET to generate reports;
these reports will be printed by the clerk.
My project scope covers printing students’
reports, not sending them to students by
email.
Action Item (3) Generating data

ELP will give me data testing to test my
program besides using generator data tool to
generate random data (EMS Data
Generator). The tool will generate 1000 of
record for student information and their
scores.
Action Item (4) COCOMO model estimates






I followed these steps to estimate the cost and the size of
the my project
Determine and count five information domain
characteristics: inputs, outputs, inquiries, files, and
external interfaces.
Compute the Function Points following the formula:
FP =  UFP  [0.65 + 0.01  (Fi)], which Fi are
“complexity adjustment values”.
Calculate the Source Lines of Code with the help of the
AFP and the Language Factor (LF).
After that I applied the COCOMO formula for the
application program.
COCOMO model estimates
The COCOMO formula for the application program:
 Delivered Source Instructions (KDSI) = 1.7655 K
 Programmer Effort (PM) = 2.4 × (KDSI) ^1.05 =
4.4 programmer-month
 Development Time in month (TDEV) = 2.5 ×
(PM) 0.38 = 4.4 months
Architecture Design for the client
application (Clerk)
The Architecture Design for the
client application is based on a
two-tier architecture which
contains of
1- Presentation and Business
Tier
3- Data Tier.
Page flow diagram for the client
application (Clerk)
C#.NET Application forms
Architecture Design for the web
application (Teacher)
The Architecture Design for
the web application is based on
a three-tier architecture which
contains of three logic tiers:
1- Presentation
2- Business
3- Data.
Page flow diagram for the web
application (Teacher)
Domain Model
Domain Model(2)
Sequence Diagrams (Add a
New Student)
Sequence Diagrams (Search)
Sequence Diagrams (Teacher
Login)
Sequence Diagrams (Teacher
Recommendation)
Test Plan
Type of testing

Unit testing, using NUnit testing tool.

Performance testing using JMeter tool.
Test Plan
The following items will be tested
Adding new students
Import EPT scores
Placement returning students
Formal Requirements Specification
Constraints
 Each student has a unique test number.
 No recommendation for new students
 If there is a null level for a student that implies there is no
grade neither recommendation.
 for new students:
students placement level matches their Excel sheet -->
According to the TestNo.
 for returning students
placement level matches their Excel sheet --> According to
the TestNo. and a teacher recommendation.
Formal Requirements Specification (1)
Each student has a unique test number.
context Student
inv UniqueTestNo:
Student.allInstances -> forAll(S1, S2
|S1 <> S2 implies S1.TestNo <>
S2.TestNo)

Formal Requirements Specification (2)
- No recommendation for new students
context s: Student
inv noRecomNewStudents:
s.status = #new implies s.recommendation ->
isEmpty()

Formal Requirements Specification (3)
If there is a null level for a student that
implies there is no grade neither
recommendation.
context s: Student
inv nulLevelNoGradeNoRec:
s.curr_level= #null implies
s.recommendation-> isEmpty() and s.grade
-> isEmpty()

Formal Requirements Specification (4)
for new students:
students placement level matches their Excel
sheet --According to the TestNo.
 for returning students
placement level matches their Excel sheet -->
According to the TestNo. and a teacher
recommendation.

context s: Student
inv Placement :
if s.status = #new and s.flagImportCurrentSeme=
#yes then
lookup (s.grade)->forAll(sc|sc.l = curr_level)
--not a new student
else
(lookup(s.grade)->forAll(sc|sc.l = curr_level) )
(if sc.l == s.placed= #curr) then
(if
(s.recommendation.AchivementScore >= 80) )
then
( (s.placed = #newLevel) )
else
(s.curr_level= #newLevel)
endif
endif
endif
Prototype
Formal technical inspection
The letters are submitted by 2 MSE students :


Reshma Sawant
Vamsi Mummaneni
Letters are posted online at
Question