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 .
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 [ (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) = 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
Prototype
Formal technical inspection The letters are submitted by 2 MSE students : Reshma Sawant Vamsi Mummaneni Letters are posted online at
Question