CSCI577b – Spring 2013– Team 6 – RDCR, ARB 1 Team 06: Student Scheduling System • Client: David Klappholz – Stevens Institute of Technology CS Dept. • Douglass Kinnes - Project Manager • Alexey Tregubov - System Architect • Mihir Daptardar - Operational Concept Engineer • Ihsan Tolga - Life Cycle Planner • Simone Lojeck - IV&V, Quality Focal Point 07/04/22 1
58
Embed
CSCI577b – Spring 2013– Team 6 – RDCR, ARB1 Team 06: Student Scheduling System Client: David Klappholz – Stevens Institute of Technology CS Dept. Douglass.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
1
Team 06: Student Scheduling System
• Client: David Klappholz– Stevens Institute of Technology CS Dept.
Overall Project Evaluation The Team worked well together during the past semester to accomplish
goals and resolve issues. The products have developed into near complete, highly descriptive project
artifacts, reminiscent of industry documents. Risks, that were identified, appear to have been addressed. Issues that were
identified were mitigated promptly.
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
5
• Set of Test Cases will confirm satisfaction of Minimum Marketable Features:• Construct Schedule• Student Specify Courses• Enter Degree Requirements
• Detailed Test Cases will confirm incorporation of requirements (as captured in Winbook) into software.
• 3 top level Test Cases defined to cover critical constraints:• TC-01: Student Plan Construction• TC-02: Degree/Course Maintenance• TC-03: Level of Service
Test Plan and Cases - Overview
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
6
• Test Case Satisfies Minimum Marketable Features:• Construct Schedule• Student Specify Courses
• Sub Test Cases will Test Requirements: • WC_1345• WC_1346• WC_1347• WC_1348• WC_1352• WC_1353• WC_1354• WC_1512
Test Plan and Cases: TC-01: Study Plan Construction
*Subset of Test Case Parameters
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
7
• Test Case Satisfies Minimum Marketable Feature:• Enter Degree Requirements
• Sub Test Cases will Test Requirements: • WC_1329• WC_1349• WC_1350
Test Plan and Cases: TC-02: Degree/Course Maint.
Test Case Number TC-02-01: Degree Program Creation
Test Item Item evaluates the ability of the admin user to add degree programs.
Test Priority M (Must have)
Input Specifications User will log into the system and attempt add degree programs.
Expected Output Specifications System will update database with admin user’s information.
Pass/Fail Criteria Admin user will be able to enter information into the system.
Dependencies TC-02-04
Traceability None
Test Case Number TC-02-02: Degree Requirements Addition
Test Item Item evaluates the ability of the admin user to add degree requirements.
Test Priority M (Must have)
Input Specifications User will log into the system and attempt to add degree requirements
Expected Output Specifications System will update database with admin user’s information.
Pass/Fail Criteria Admin user will be able to enter information into the system.
Dependencies TC-02-03, TC-02-04
Traceability None
Test Case Number TC-02-03: Course Group Addition
Test Item Item evaluates the ability of the admin user to add course groups.
Test Priority M (Must have)
Input Specifications User will log into the system and attempt to add course group information.
Expected Output Specifications System will update database with admin user’s information.
Pass/Fail Criteria Admin user will be able to enter information into the system.
Dependencies None
Traceability None
Test Case Number TC-02-04: Course Addition
Test Item Item evaluates the ability of the admin user to add courses.
Test Priority M (Must have)
Input Specifications User will select the links that will lead to the New Course page, then enter the data to identify the course (title, Course Prefix, Course Number, Credits, Schedule year, Semester offered, Prereqs, CoReqs
Expected Output Specifications System will update database with admin user’s information.
Pass/Fail Criteria Admin user will be able to enter information into the system.
Dependencies TC-02-02
Traceability None *Subset of Test Case Parameters
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
8
• Test Case Satisfies All 3 Minimum Marketable Features:• Construct Schedule• Student Specify Courses• Enter Degree Requirements
• Sub Test Cases will Test Reqs:
Test Plan and Cases: TC-03: Level of Service
Test Case Number TC-03-01: Trivial Test Case
Test Item Item evaluates the total system with a trivial input case.
Test Priority M (Must have)Input Specifications User will log into the system and attempt to
input simulated student information into the appropriate User Interface prior to initiating study plan generation.
Expected Output Specifications
System will generate study plan based on user’s inputs and provide study plan in a manner available to the user.
Pass/Fail Criteria Study plan generated will satisfactorily incorporate the student’s and advisor’s constraints into a plan.
Dependencies NoneTraceability TC-03-02, TC-03-03
Test Case Number TC-03-02: Solvable Test Case
Test Item Item evaluates the total system with a solvable input case.
Test Priority M (Must have)Input Specifications User will log into the system and attempt to input
simulated student information into the appropriate User Interface prior to initiating study plan generation.
Expected Output Specifications
System will generate study plan based on user’s inputs and provide study plan in a manner available to the user.
Pass/Fail Criteria Study plan generated will satisfactorily incorporate the student’s and advisor’s constraints into a plan.
Dependencies TC-03-01Traceability TC-03-03
Test Case Number TC-03-03: Impossible Test Case
Test Item Item evaluates the total system with an impossible input case. It is an impossible case where the user has made decisions which can not be resolved into a valid study plan. This test case confirms that when issues arise, that the system addresses the problems accordingly. This involves appropriate communication to the user that there is an issue and some troubleshooting to identify the offending inputs, so the user can rectify the situation and try again.
Test Priority M (Must have)Input Specifications User will log into the system and attempt to input simulated student information into the appropriate
User Interface prior to initiating study plan generation. .
Expected Output Specifications
System will provide an error message to the user identifying that a study plan solution could not be identified due to the inputs: CS 492, CS 392, CS 385
Pass/Fail Criteria Study plan failed to find a solution for the student’s and advisor’s constraints.
System purpose Proposed new system Benefit-chain diagram System boundary Desired capabilities and goals
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
11
System Purpose
Why do we need the system?The purpose of the system is to generate a semester-by-semester study plan for undergraduate computer science students studying at Stevens Institute of technology based on their inputs.
Is there a current system?Yes, but the current system is a manual. A brief description of the system is as follows:
The students have to schedule an appointment with the advisor Once an appointment is granted, they have to let the advisor know about
their graduation date and courses they wish to take The advisor then drafts a schedule based on the inputs
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
12
Proposed new system
•Here is a very brief and general overview about new proposed system:
The student logs into the system Upon successful login, the student has to choose his degree and input his
desired semester and year of graduation The student then chooses his/her preferred courses and other
requirements (transfer credits, internship credits, etc.) The system would then construct a student plan which tries to satisfy the
students requirements
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
13
Benefit Chain Diagram
Develop, deliver and fill the system with initial data
Developers
Stevens’ students
Stevens’ advisors
Hold training sessions
Inform new students about the
system
Efficient study plan
construction
Reduce students
frustration
Reduce number of
errors in Study plans
Students are aware about the system
Automated system for study plan construction
Faster study planconstruction
Assumptions:1. Students and advisers will use new system.2. Available courses and degree requirements will be kept up to date.
Automated system for study plan construction,
that check errors
Stevens’ course directors
Keep degree requirements and available courses in the
system up to date
Keep the systemup to date
Enhance the system
Software maintainers
System administrators
Move server from USC hosting to Stevens hosting
and maintain the server
Stabilizing the system
Migrating the system
Save time
Students are aware about the system, that helps them
automatically construct study plan
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
14
System Boundary
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
15
Desired capabilities and goals
System Capabilities:
The system should be able to construct a custom schedule based on the inputs of the student
If the inputs are too rigid, the system then should relax the constraints and come up with a alternate schedule
If the inputs are out of bounds, then the system should either suggest or ask the student to change or modify the inputs
constraints.The prototype algorithm will solve the course constraints. 1 1
2 User Interface Prototype
We are forming mock-up user interface prototypes before starting implementing them in Java.
2 1
3 Test-case for constraint solver
We are implementing draft a test-case (courses, constraints) to test the scheduling algorithm.
3 1
4 Formalism for Specifying
Requirements
We are documenting a formalism document as a implementation guideline for future development phase.
2 1
5 Mathematical Model
We are forming a mathematical model in which we will define the course information and constraints.
1 2
6 Solver Library We are defining the software architecture for best interconnection between the modules and database
connection.
2 2
7 Entering Course Information
Input
Administrative side will be able to enter course information. Thus we are implementing prototypes related to input
format and specifications.
2 2
8 Controller Modules
Implementing controller classes operating between user interface and database for data inputting, schedule
constructing with provided data from solver, authentication for administrative side.
2 2
Life Cycle Plan
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
5004/21/23
Life Cycle Plan
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
51
Project Plan
Rebaselined Foundations Phase (CS577b)
3 Weeks focused on
Implementing solver module, controller / UI
PLAY framework
Preparing for RDCR ARB
Development Phase
10 Weeks, 5 Modules
Relaxation for response time
Weekly sprints
Developed concurrently in steps by two main teams
More time/focus on modules with more risk.
Life Cycle Plan
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
52
Project Plan (Development Phase)
Modules
Each module is split into pieces
For each piece there are programming, unit tests and function tests.
For each module there are unit tests and function tests for brought together pieces.
There are always two pieces being developed/implemented at one time.
Team A: Alex, Mihir (DB, Research, Solver/Algo)
Team B: Doug, Ihsan (Views, Controllers, Wrapper)
With Simone doing module tests, CCD Preparation.
After implementing controller modules and UI, Team B will move in Team A with respect to the related risk.
Life Cycle Plan
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
53
Feasibility Evidence
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
54
Feasibility Evidence
Revised / Added Risk Assessment Traceability Matrix Definition of Done
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
55
Risk AnalysisRisks
Risk ExposureRisk MitigationsPotential
MagnitudeProbability
LossRisk
Exposure
Undeveloped complex algorithm 6 636 Developing an early algorithm during
Foundations Phase as a prototype which works with a smaller domain.
Long response (for study plan building) time compared to the requirements. 5 6 30
Prototyping constraint solver module with test-case information in the foundation phase for benchmarking and feedback..
Not designated maintainers.5 3 15
It is mentioned to the client (Nature of CS577a/b schedule) since it is client side’s responsibility to maintain system after the transition phase. Stevens web hosting maintainers may be responsible for this role.
The interface required by the customer and provided by the development team may be different.
4 3 12Prototyping complete user interfaces in the foundation phase and give feedbacks from the customer about its defects and strong points and setting a final agreement upon them.
Team process inexperience related to ICSM methods. 3 3
9 Following ICSM EPG guideline, package reviews by TAs and evaluations.
Requirements Volatility (New procedures by Stevens management) 2 3
6 Prototyping, weekly negotiations
Feasibility Evidence
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
56
NDI/NCS Operability
NDI/NCS Products PurposesCHOCO Java Library To use its defined functions/classes
in the “solver” module. It is an open source library thus it brings no extra cost for the project.
Apache Web Server It will be used for setting the software running on school’s webpage.
MySQL It is used for implementing database entities and module. (course information, constraints.)
PLAY Framework* It provides a strong basis for web-based application, saves time on implementing user interface and controllers. Besides it is open source.
Feasibility Evidence
CSCI577b – Spring 2013– Team 6 – RDCR, ARB
57
Traceability Matrix
OCD WinWin Agreement SSAD Test CaseOC-1 WC_1512 UC-6 TC-01
2 Solver algorithm can work with given simulated inputs.
3 Core user interface implemented and can get simulated inputs as arguments for algorithm.
4 Core controller classes implemented and they can pass data from user interface to solver algorithm and construct study plan with given data from solver.
5 Controller classes can log the testers in by using given simulated user privileges.
6 Core database module implemented and connected with solver algorithm to retrieve course data.
7 Tester (User) can navigate through the system and template screens by clicking button on user interface. System opens with main screen and general user interface to lead the tester.
8 Study plan construction response time limit is relaxed.