340 likes | 509 Views
CRMS Customer Relationship Management System Graduate Committee Dr. Daniel Andresen (Major Professor) Dr. Torben Amtoft Dr. Mitchell L. Neilsen. MSE Project Presentation II -Hamsa Gayatri Palepu. Agenda.
E N D
CRMSCustomer Relationship Management SystemGraduate Committee Dr. Daniel Andresen (Major Professor) Dr. Torben Amtoft Dr. Mitchell L. Neilsen MSE Project Presentation II -Hamsa Gayatri Palepu
Agenda • Action Items From Phase1 presentation 1 • Architecture Design 2 • Test Plan 3 • Formal Requirement Specification 4 • Architecture Prototype 5 • Formal Technical Inspection Letters 6 • Demo 7 • Questions ?? 4
Action Item 1 • The Functional Requirements in Vision Document 1.0 were not elaborate. • The modified requirements elaborating the Input, Processing and Output are in more detail in the Vision Document 2.0 and the Architecture design document.
Action Item 2 • For phase 2, I have the design ready for my project including the page flow and also the test plan document. • Small demo of the project after the Phase II presentation.
Test Plan – Test Items • Managing Registration Process • Managing Login Process • Assigning User Roles • Query Creation/Ticket Creation • Check Status • Assigning Tickets to Tech Users • Change Ticket Status • Send Email Response • Search Ticket • Create a Ticket Sub-Category • Sign Off
Types of Testing • Unit Testing —It tests if the individual units of source code are working properly. Unit testing will be done using Microsoft Visual Studio IDE. • Integration Testing— All the modules involved in the project will be integrated together and tested accordingly as a whole system. • System Testing—The system testing is performed to test the entire system and to see whether all the critical requirements are satisfied or not. The JMeter testing tool will be used for this. • Performance & Load Testing— The JMeter testing tool will be used for this. The test result shows how the performance varies with the load, given as number of users vs response time. • Usability Testing_ Usability testing is used to evaluate CRMS by testing it on users to measure the usability, or ease of use. Usability testing is used to evaluate CRMS by testing it on users to measure the usability, or ease of use. Two people will perform set of tasks and observations are made.
Formal Requirements Specification • --Constraints • Unique User Names • A Ticket is always associated with only one Customer. • A Ticket is assigned to at-most one Tech User. • A Ticket is always associated with only one Status. • A Ticket is always associated with only one Priority. • A Ticket is always associated with only one Category. • A Ticket is always associated with only one SubCategory. • A SubCategory is always associated with only one Category
Constraints • --Unique User Names context User inv UniqueUerNames: User.allInstances->forAll(U1,U2|U1<>U2 implies U1.UserName <> U2.UserName) • -- A Ticket is always associated with only one Customer context Ticket inv HasOwner self.OfUser->size = 1 && self.OfUser.InRole->size = 1 && self.OfUser.InRole->includes(Role.AllInstances->Select( R:Role | R.RoleName ='Customer')) • -- A Ticket is assigned to at-most one Tech User context Ticket inv Assingments self.AssignedTo->size <= 1 && self.AssignedTo.InRole->size <= 1 && ( self.AssignedTo->size = 0 || self.AssignedTo.InRole->includes(Role.AllInstances->Select( R:Role | R.RoleName = 'TechUser')) )
Constraints • -- A Ticket is always associated with only one Status context Ticket inv HasStatus self.AssignedStatus->size = 1 • -- A Ticket is always associated with only one Priority context Ticket inv HasPriority self.AssignedPriority->size = 1 • -- A Ticket is always associated with only one Category context Ticket inv HasCategory self.AssignedCategory->size = 1 • -- A Ticket is always associated with only one SubCategory context Ticket inv HasSubCategory self.AssignedSubCategory->size = 1
Constraints • -- A SubCategory is always associated with only one Category context SubCategory inv AssociatedToCategory self.CategoryOf->size = 1
Operations • -- Update Ticket Context Ticket :: UpdateTicket(Customer : string, TechUser : string, StatusID : int, PriorityID : int, CategoryID : int, SubCategoryID : int) post OfUser : self.OfUser ->includes(U : User | U.UserName = Customer) post AssignedTo: self.AssignedTo ->includes(U : User | U.UserName = TechUser) post AssignedStatus: self.AssignedStatus ->includes(U : Status | U.StatusID = StatusID) post AssignedPriority: self.AssignedPriority ->includes(U : Priority | U.PriorityID = PriorityID) post AssignedCategory: self.AssignedCategory ->includes(U : Category | U.CategoryID = CategoryID) post AssignedSubCategory: self.AssignedSubCategory->includes(U : SubCategory| U.SubCategoryID = SubCategoryID) • -- Assign Role Context User :: AssignRole(RoleID: int) pre NoRole : self.InRole->size = 0 post HasRole: self.InRole->includes(R:Role | R.RoleID = RoleID) post HasRole: self.InRole->size = 1
Formal Technical Inspection Letters Submitted by Two MSE students : • Sandhya Bathini • Vineetha Kadiyala Letters are posted online: http://people.cis.ksu.edu/~hamsa/CIS-895MseProject/Phase2.htm