Академический Документы
Профессиональный Документы
Культура Документы
Index
1. Introduction
a. Goals and Objectives
b. Statement of Scope
c. Software Context
d. Major Constraints
2. User Scenarios
a. User Profiles
b. Use-cases
c. Use-case Diagrams
d. Use-case Descriptions
3. Data Model
a. Data Objects
b. Relationships
c. Complete Data Model
5. Behavioral Model
a. Events and States
b. State-chart Diagram
7. Test Cases
a. Classes of Test
b. Expected Software Response
c. Performance Bounds
Muhammad Salman Habib Page 3 1/15/2009
Introduction
The goal of designing software for a “Day care center” is to provide a complete Day Care
Management system, keeping the day care provider and clients in mind. It is essentially
an electronic filing cabinet that maintains a complete record of clients and employee
information. The clients are the customers that is, parents and children. The system
maintains information such as parents and child address and their personal data in a
database. The software system is modeled and designed such that it has the seamless
integration between all feature based elements that makes it very user friendly. Users of
the software have the ability to add/update/delete all information based on their access
levels. Secure entry into the system is envisaged through all employees being identified
by a unique login ID and given password. Family & child data collection is a
fundamental requirement for all Child Care businesses. Our collection capabilities are
robust and simple with an ease of use that makes the task of data entry quick and
efficient.
The objective of the software is to build a tool for the use for a day care management
With the following features:
1. Create data base for family and child information with features: Parent names,
addresses, phone numbers, email addresses, emergency contacts, authorized
pickups, Child Name, Birth Date, and Class.
6. Users be divided into groups and access is granted on a per group basis.
8. Account activity reports and receipt printing. Track each family’s balance
including their child care billing history of registration fees, tuition charges,
family discounts and payments received. Billing History, history of registration
fees, tuition charges, family discounts and payments
10.We also aim to design the software to be much user friendly, all the interfaces to
be self descriptive and interactive.
b. Statement of Scope:
As per the requirements of the client, different functionality has been designed keeping in
view the constraints of time and manpower. The major software inputs are the parents and
child information and major outputs are billing forms, receipts etc. The software very
closely matches the requirements laid down by the end users, viz. Employees,
Administrators. It maintains a data repository containing the information related to each
child. It has the required features of parent and child information, tracking each child for
Muhammad Salman Habib Page 5 1/15/2009
information related to his/her done through interface which manages efficiently and
thoroughly all issues related to child. There are requirements, which are desirable and
would increase the scope of the final product if incorporated in the project. One such
feature is incorporating additional features such making appointments and contract
renewals through web based service, which would be added in near future, due to time
constraints. All major functionality, which falls in the category of essential and desirable
prioritization of the day care centre software, will be implemented with an attempt to
model the future priority needs as well if time permits.
REQUIREMENT PRIORITIES
c. Software Context:
As per the requirements of the client, different functionality has been designed keeping
in view the constraints time and manpower. The major software inputs are the parents and
child information and major outputs are billing forms, receipts etc. The software very
closely matches the requirements laid down by the end users, viz. Employees,
Administrators. It maintains a data repository containing the information related to each
child, parent. It has the required features of tracking each child for information related to
each individual done through interface which manages efficiently and thoroughly all
issues related to child development and needs. There are requirements, which are
desirable and would increase the scope of the final product if incorporated in the project.
One such feature is incorporating additional features such making appointments and
contract renewals through web based service, which would be added in near future, due
to time constraints. All major functionality, which falls in the category of essential and
desirable prioritization of the day care centre software, will be implemented with an
attempt to model the future priority needs as well if time permits.
d. Major Constraints:
There are few points that we have not covered like loss of unsaved data, any sort of
security feature. No restoring facility has been provided. Our software system is not
redundant that is there is no backup facility. The system also depends on the network that
Muhammad Salman Habib Page 8 1/15/2009
is its speed. If the speed of the network is not sufficient there is a likelihood of slow
response. DOTNET framework has to be installed on the web server since the software
runs of DOTNET environment. And moreover we need a high performance web server
for good performance.
Usage Scenario
a. User Profiles:
The user profiles are divided into three types in this system.
1. Parent:
A parent will have the accessibility to view their child’s information and schedule.
They are restricted to very low profile when compared to others.
2. Employee:
An employee can view the billing information of all children along with viewing
and updating the privileges given to parent.
3. Administrator:
He can access, view, delete and update all the information available in the
website. He is given all the privileges.
b. Use-Cases:
A Use-Case Diagram is used to depict the main aspects of the system and the
ways a user can interact with the system. Separate use cases and their description follows
the Use-case diagram below.
Muhammad Salman Habib Page 9 1/15/2009
Manage Children
Manage Classes
«uses»
«uses»
Manage Activities
«uses»
«uses»
«uses»
«uses»
Manage Child
«uses» Immunization
«uses» «uses»
«uses»
«uses» Manage child «uses»
Employee
«uses» Schedule
«uses» «uses»
«uses» «uses»
Login
«uses»
Parent
Admin
«uses»
Manage Payments on
«uses» Child A/C
Manage Billing on
Child A/C
Manage Expenses
This is the system use-case diagram that displays all the different tasks that are
accomplished by the system. Following this, we will have brief description of each of
these use-cases.
Muhammad Salman Habib Page 10 1/15/2009
d. Use-Case Descriptions:
1. Manage Children:
«uses»
Admin
Objective: Admin and Employee will be able to add, delete and update child
information.
Post-condition: NA
Main Flow:
1. System displays a form with editable fields for child's information. For Add, it
would be empty fields and for Edit child info, there will be child information for
selected child
2. Admin/Employee fills out new child information or edits the existing child info
[A1]
3. Admin/Employee hits submit button on the page
4. System saves the child information in database
5. System notifies the user
Muhammad Salman Habib Page 11 1/15/2009
Alternative flow: A1
2. Manage Class:
«uses»
«uses»
Admin
Main Flow:
1. Employee/Admin can either select a class from dropdown list and modify the
fields and edit it, or they can add a new class and finally click submit.
Muhammad Salman Habib Page 12 1/15/2009
2. On submit, the system performs validation and adds the class to database or
updates the class.
Alternative Flow:
1. Employee/Admin can select one class from drop down list, and can click delete
button.
2. System asks for confirmation and on confirm, system deletes the class from
database.
3. Manage Activities:
«uses»
Admin
Main Flow:
1. Employee/Admin can either select an activity from dropdown list and modify the
fields and edit it, or they can add a new activity and finally click submit
2. On submit, the system performs validation and adds the class to database or
updates the activity
Muhammad Salman Habib Page 13 1/15/2009
Alternative Flow:
1. Employee/Admin can select one activity from drop down list, and can click delete
button.
2. System asks for confirmation and on confirm, system deletes the activity from
database.
«uses»
«uses»
Employee Manage Child
Immunization
«uses»
Parent
Admin
Objective:
Employee/Admin can add child immunization information, Admin can also update or
delete an immunization record
Main Flow:
Muhammad Salman Habib Page 14 1/15/2009
Alternative flow:
«uses»
«uses»
Employee Manage Child
Immunization
«uses»
Parent
Admin
Objective:
Add or delete a class or activity in a child's schedule, A parent can only view child
schedule, cant update it
Pre-condition: User has logged into the system as Employee or Admin, to view Parent
have to be logged in as parent
Main Flow:
Alternative flow:
6. Login:
«uses»
«uses»
Login
Employee «uses»
Parent
Admin
Objective: Log the user into the system and direct him to the proper interface(webpage)
Pre-condition: NA
Main Flow:
1. System shows the user a login screen with editable boxes for Username, Password
and a dropdown menu for category: Employee, Admin or Parent
2. User puts username and password and then selects a category from the dropdown
list
3. User hits submit
4. System authenticates the username and password
Muhammad Salman Habib Page 17 1/15/2009
Alternative Flow:
1. If the username and password don’t match, the system shows login screen again
«uses»
«uses»
Employee Manage Parent Info
«uses»
Parent
Admin
Objective: Admin and Employee will be able to add, delete and update Parent
information.
Post-condition: NA
Main Flow:
1. System displays a form with editable fields for parent's information. For Add, it
would be empty fields and for Edit child info, there will be Parent information for
selected parent
Muhammad Salman Habib Page 18 1/15/2009
2. Admin/Employee fills out new child information or edits the existing parent info
and selects the child(/children) the parent is associated with [A1]
3. Admin/Employee hits submit button on the page
4. System saves the parent information in database
5. System notifies the user
Alternative flow: A1
«uses»
Manage Payments on
Child A/C
Admin
Objective: Admin should be able to add update or delete a payment to a child's account
Post-condition: Admin user can add update or delete records for payment to a child
account
Muhammad Salman Habib Page 19 1/15/2009
Main Flow:
«uses»
Manage Billing on
Child A/C
Admin
Objective: Admin should be able to add update or delete a bill to a child's account
Post-condition: Admin user can add update or delete records for billing from a child
account
Muhammad Salman Habib Page 20 1/15/2009
Main Flow:
«uses»
Manage Expenses
Admin
Post-condition: Admin user can add update or delete records for day care expenses into
the system
Main Flow:
1. System displays a button saying Add Expense on top, and displays all the
expenses records below it, with edit and delete buttons [A1]
2. User goes to edit expenses page with blank editable fields for add entry or
editable fields with data for the selected record
3. User makes changes to the fields and hits submit button
4. System does the validation and adds an entry in the database
5. User is notified
Data Model
a. Data objects:
The major data objects that we are using in the system are basically the main entities that
are described in the requirements.
• Child
• Parent
Muhammad Salman Habib Page 22 1/15/2009
• Classes
• Activities
• Schedule
• Billing
• Payment
• Expense
We will describe them as classes in the next section and identify their essential attributes
and essential operation that are performed on these objects.
b. Relationships:
We identify the relationships between two or more Data objects and describe them below:
class -Manages
* -Has
1 schedule -has Child
* -Has
*
* * *
* * *
activity * *
*
billing
* -Views
*
Parent *
*
-Views
Parent *
-Views payment
* *
*
-Manages
-Manages *
* * -Manages
*
-Manages -Manages
Employee -Manages Expenses
-Manages -Manages
* *
*
* * *
Admin Employee
Muhammad Salman Habib Page 23 1/15/2009
The next section will take each of these data object and describe them as a class,
mentioning the important attributes and operations.
a. Class Diagrams:
Here we have all the classes that we will consider for designing the system. We take care
that all the Use-cases that we want to accomplish and all the operations can be performed
by the use of following classes.
1.
child
-SSN
-Name
-BirthDate
-Gender
-FirstContactParent
+AddChild()
+UpdateChild()
+DeleteChild()
4.
Class
-ClassID
-ClassName
-Instructor
-Description
-Timing1
-Timing2
+AddClass()
+UpdateClass()
+DeleteClass()
5.
Activity
-ActID
-ActName
-Instructor
-Description
-Timing
+AddActivity()
+UpdateActivity()
+DeleteActivity()
Muhammad Salman Habib Page 25 1/15/2009
6.
ChildSchedule
-SchID
-ChildID
-ClassAct
-ClassID
-ActID
+AddSchedule()
+UpdateSchedule()
+DeleteSchedule()
7.
BillingInfo
-BillingID
-BillingDescription
-BillingAmount
+AddBill()
+UpdateBill()
+DeleteBill()
8.
PaymentInfo
-PaymentID
-PaymentDescription
-PaymentAmt
+AddPayment()
+UpdatePayment()
+DeletePayment()
9.
ExpenseInfo
-ExpenseID
-ExpenseDesc
-ExpenseAmt
+AddExpense()
+UpdateExpense()
+DeleteExpense()
Muhammad Salman Habib Page 26 1/15/2009
Our software system is a simple, user friendly web based solution. It has no external
system interfaces and no external machine interfaces. It has only a human interface that
is a GUI(Graphical User Interface). GUI is basically the interface description of the
software system contained in the requirement documentation. There are three types of
human interfaces in our system namely employee, parent, administrator which will be
interacting with the software system. Although we can have an external system interface
by maintaining database in a different server but the depends on the size of the database
The behavioral model indicates how software will respond to external events or stimuli. It
depicts the dynamic behavior of the system as a function of specific events and time.
These specific events are triggered by the actors who use the system.
There are three types of actors in this system depending on their access levels.
1. Parent:
A parent can login and only view class schedule, billing information and immunization
information of his/her child. He cannot make any type of modifications to the information
displayed.
2. Employee (Staff):
An employee’s accessibility is also limited. An Employee can view and make changes to
class schedules, activities, and child and parent information and also to immunization
information.
Muhammad Salman Habib Page 27 1/15/2009
3. Administrator:
Events:
Event: Login User
Actor: Parent/Employee/Administrator
Actor: Employee/Administrator
States:
A state is any observable mode of behavior and a state diagram depicts the actions taken
as a consequence of a particular event. The whole system is divided into 3 states namely
depending on the access levels. Two other states are also defined to enter and exit the
system.
1. Login user:
By entering a valid user id, password and the type of user, he will gain access to
the system.
Muhammad Salman Habib Page 29 1/15/2009
2. Administrator:
By entering valid login information, the user can enter this state and will be able
to perform all the operations he can access and make changes to the database.
Generally he has the control of the whole system. He can exit the system by
logging out.
3. Employee:
After logging into the system, an employee can manage the system depending on
his access level. He has certain limitations in accessibility. Logging out of the
system will take him to logout user state.
4. Parent:
A parent can enter the system by entering valid user id and password. After
entering the system, user can view his own child’s information. He cannot make
any kind of changes to the database. Exits the system by logging out.
5. Logout user:
User will be taken to this state once he logs out of the system. Here he can go
back to login user state through re-login information.
Muhammad Salman Habib Page 30 1/15/2009
b. Statechart Diagram:
Initial State
LogIn User
Enter ID
Enter Password
Select user type
Administrator Home
Employee Home View, delete and Update Class Schedule
Parent Home View, delete and Update Immunization
View, delete and Update Class Schedule Information
View Class Schedule View, delete and Update Immunization Information View, delete and Update Activities
View Billing Information View, delete and Update Activities View, delete and Update Child Information
View Immunization Information View, delete and Update Child Information View, delete and Update Parent Information
View, delete and Update Parent Information View, delete and Update Billing Information
View, delete and Update Payment Information
View, delete and Update Expenses Information
LogOut User
LogIn again
Final State
Muhammad Salman Habib Page 31 1/15/2009
Validation Criteria
The validation criteria for the software system is such that the information provided in the
fields is checked for the correct format and if any information of child or parent is found
to be wrong or missing then it will not be able to enter the database.
Business rules are validated that is: only the administrator can change certain things such
as billing information, add and remove employee’s names etc.
Each user has a unique ID and password provided by the administrator.
Muhammad Salman Habib Page 32 1/15/2009
a. Classes of Tests:
The inputs are going to be entered erroneously to check the system performance.
Basically test cases are going to be developed by using brainstorm sessions. This will
help us to figure out behavior of system and performance of the system.
Method of testing:
• The system’s internal structure will be tested (white box testing)
• The overall system will be tested (black box testing)
• Specimen test cases:
1. Click add button to add the parent without his or her social security number.
2. Click staff information to add or remove the name of employee from the staff
Login.
3. Click add button to add the child without his or her parent information.
c. Performance Bounds
The major performance bound in our software system is the size of the database although
this could be improved by using another external system interface. The performance of
the software in terms of response time is at best immediately or at worst 20 seconds. A
major factor pertaining to response time is the network speed.
END OF
Requirement Specifications Document