OnVeterinary Project
System Design Document
Version: SRS V1.0
Prepared by Team #11 Ali Kaan Kiri Onur Babaolu Enver Can Karaduman Mehmet Uyank
OnVeterinary PROJECT
www.OnVeterinary.com
December 20th, 2010
Atlm University COMPE/SE/ISE 491-492
2/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
Preface
This Software design Description Document v1.0 contains of detailed design of OnVeterinary system. The main objective of this document is to demonstrate the system design by means of module decomposition, module and data detailed designs. All the dependencies between modules and data are described detailed.
Version History Version 1 Status* Released Date 20.12.2010 Responsible Team 11 Version Definition First SDD Version
*: Draft, In Review, Released, Approved, Rejected, In Change
Atlm University COMPE/SE/ISE 491-492
3/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
List of Figures
FIG. 16 SYSTEM OVERVIEW...........................................................................................................8 FIG. 1 REGISTER MODULE.............................................................................................................9 FIG. 2 ANIMAL MODULE...............................................................................................................11 FIG. 3 ADVERTISEMENT MODULE..............................................................................................12 FIG. 4 STOCK MODULE.................................................................................................................14 FIG.5 CALENDAR MODULE..........................................................................................................16 FIG. 6 MEDICAL INTERACTION MODULE...................................................................................17 FIG. 7 ANIMAL FAMILY TREE MODULE......................................................................................19 FIG. 8 CUSTOMER MODULE.........................................................................................................20 FIG.9 TREATMENT MODULE........................................................................................................23 FIG. 10 ER DIAGRAM WITH ATTRIBUTES ..................................................................................24 FIG. 13 MODULE DESCRIPTIONS (CTRL + LEFT CLICK)..........................................................25 FIG. 14 VET GUI SAMPLE HTTP://WWW.MIRANAHOSTING.COM/MAIN.ASPX.....................28 FIG. 16 GUEST GUI SAMPLE........................................................................................................29 FIG. 15 SYSTEM MODULES (CTRL + LEFT CLICK)....................................................................30 : :
List of Tables
: :
Atlm University COMPE/SE/ISE 491-492
4/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
Table of Contents
PREFACE........................................................................................................................................3 LIST OF FIGURES...........................................................................................................................4 LIST OF TABLES ...........................................................................................................................4 TABLE OF CONTENTS...................................................................................................................5 INTRODUCTION..............................................................................................................................6 0.1. Purpose...................................................................................................................................6 0.2. Scope......................................................................................................................................6 0.3. Definitions, Acronyms & Abbreviations...................................................................................6 0.3.1. Definitions........................................................................................................................6 0.3.2. Acyronyms.......................................................................................................................6 0.4. References..............................................................................................................................7 1. SYSTEM OVERVIEW....................................................................................................................8 2. SYSTEM COMPONENTS.............................................................................................................9 2.1. Decomposition Description.....................................................................................................9 2.1.1. Module Decomposition ....................................................................................................9 2.1.2. Data Decomposition.......................................................................................................23 2.2. Dependency Description.......................................................................................................24 2.2.1. Intermodule Description.................................................................................................25 2.2.2. Data dependencies........................................................................................................27 2.3. Interface Description.............................................................................................................28 2.3.1. Module Interfaces...........................................................................................................28 2.3.2. User Interfaces (GUI).....................................................................................................28 3. DETAILED DESIGN....................................................................................................................30 3.1. Module Detailed Design........................................................................................................30 3.2. Data Detailed Design............................................................................................................30 3.2.1. User Table......................................................................................................................30 3.2.2. Calender Table...............................................................................................................30 3.2.3. Customer Table..............................................................................................................31 3.2.4. Animal Table..................................................................................................................31 3.2.5. Treatment Table.............................................................................................................32 3.2.6. Stock Table....................................................................................................................32 3.2.7. Accounting Table...........................................................................................................32 3.3. RTM.....................................................................................................................................32 4. APPENDICES.............................................................................................................................35
Atlm University COMPE/SE/ISE 491-492
5/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
Introduction
0.1. Purpose
This document provides the detailed design of OnVeterinary system. System interface, database and design will briefed detailed in order to guide the implementation phase.
0.2.
Scope
The SDD indicates how the software system will be arranged in order to satisfy the requirements. This document is the main reference for code improvement which should contain all the information for a developer.
0.3.
0.3.1.
Definitions
Definitions, Acronyms & Abbreviations
Definitions
Admin
The person or persons who controls the system, apply veterinary registrations.
Veterinary
OnVeterinary system designed for veterinaries. They may use our system with veterinary accounts.
Customer
Customers of veterinaries. They can see their animals information and treatments of animals in their panel.
Guest OnVeterinary
They are unauthorized people. Online Veterinary Management System.
0.3.2.
Acronyms SDD
Acyronyms
Software Design Document.
Atlm University COMPE/SE/ISE 491-492
6/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
SDD ER SW PDA
Software Design Description Entity Relationship. Software. Personal Digital Assistant
0.4.
References
IEEE Std 1058-1998, IEEE Standard for Software Project Management Plans Pressman, Roger S., Software Engineering, 4th edition, McGraw-Hill, 1997 Fairley, R. E., Workbreakdown Structure, Management, IEEE CS Press, 1997 Software Engineering Project
Atlm University COMPE/SE/ISE 491-492
7/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
1. System Overview
Fig. 16 System Overview
User Group
Admin
Responsible for
Veterinary Accounts Database Back-up Critical Data Modifications
Veterinary
Customer Accounts Advertisement Management
Customer Guest
Atlm University COMPE/SE/ISE 491-492
8/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
2. System Components
2.1. Decomposition Description
This section will be handled with two aspects; module and data decomposition.
2.1.1.
Module Decomposition
In this section all of the modules are decomposed, explained and visualized with diagrams below.
2.1.1.1.
Register Module
Fig. 1 Register Module
Atlm University COMPE/SE/ISE 491-492
9/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
Identification: Register Module
Type: GUI, Process Purpose: This module is used to open accounts only veterinary .register module is check up every user of the system , at the same time it is about veterinary. Function: Register Module consists of two sub functions which are checkUser , and register , checkUser function provides us indicates users who are registered system or not , register function is used to register for veterinary who fills necessary information at the registration forms . Register sub module has the following hierarchy; recorded necessary information
Register Module o o checkUser(); register();
Atlm University COMPE/SE/ISE 491-492
10/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
2.1.1.2.
Animal Module
Fig. 2 Animal Module
Identification: Animal Module Type: Application ,process Purpose: This module responsible for providing veterinary can performs all kinds of animal information Function: Animal module has five sub functions
(addAnimal,editAnimal,searchAnimal,editAnimal ,removeAnimal)
veterinary is used to
addAnimal function fills the necessary information about animal adding animal in the system, deleteAnimal function veterinary is deleted animal recorded information at the system using this function. editAnimal function veterinary can make changes on the animal information ,viewAnimal function provide veterinary can see detailed information about the animal , searchAnimal function veterinary research to get necessary
Atlm University COMPE/SE/ISE 491-492
11/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
information about animal using this function hierarchy Animal Module o o o o o addAnimal() removeAnimal() editAnimal() viewAnimal() searchAnimal() Advertisement Module
Animal sub module has the following
2.1.1.3.
Fig. 3 Advertisement Module
Atlm University COMPE/SE/ISE 491-492 12/35 Team # 11 (Team OnVeterinary) System Design Document Version: 1.0
OnVeterinary PROJECT
Identification:Advertisement Module Type:Application, process Purpose: Veterinary needs or wants sell any medicine material such as vaccine ,
medicament ,veterinary who can used to advertisement module to needed anything published on the website Function: Advertisement module consists of two sub module Advertisement ,and public Advertisement which are private
veterinaries can only accessed private public advertisement these two
advertisement , customers and visitors can see only module has five different functions
addAdvertisement function is used for users fills
content of advertisement published on the webpage , removeAdvertisement user does not want to publish advertisements this function provides us remove unnecessary advertisement. EditAdvertisement function is used to user can make change on the users can see all of the ads
published advertisement. ViewAdvertisement function
within the web-page. SearchAdvertisemen function users research to getting information about materials or needs anything, they can review product in detail. Advertisement sub module has the following hierarchy Advertisement Module o Public Advertisement addPublicAdvertisement() removePublicAdvertisement() editPublicAdvertisement() viewPublicAdvertisement() searchPublicAdvertisement()
Private Advertisement
Atlm University COMPE/SE/ISE 491-492
13/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
2.1.1.4.
addPrivateAdvertisement() removePrivateAdvertisement() editPrivateAdvertisement() viewPrivateAdvertisement() searchPrivateAdvertisement() Stock Module
Fig. 4 Stock Module
Identification:Stock Module Type:Application, process Purpose: Stock Module is used to for veterinary can see status of products in the their stock, therefore veterinary can get receive information about kept product . Function: Stock module is used only by veterinary , and veterinary also determine to holding products at the stock. Each stock is unique Stock Module consists of ten sub
Atlm University COMPE/SE/ISE 491-492
14/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
functions which are addToSupplyType, removeFromSupplyType , editFromSupplyType , viewFromSupplyType , searchFromSupplyType . addSupplyType, removeSupplyType, addToSupplyType function is
editSupplyType, searchSupplyType, viewSupplyType .
used to for veterinary fills neccessary fields about material , then can add new items at their stock. addSupplyType function provides veterinary add detalied information about product such as number of products, product price, products removeSupplyType expiration date .
function if veterinary want to deleting information about product
using this function. editSupplyType function is provides veterinary can make change information of product . ViewSupplyType function veterinary can see detalied information of product. searchSupplyType the product. RemoveFromType function veterinary does not want to use the products in stock allows to remove from stock. viewFromType function is used to veterinary can see all of the products at the stock. searchSupplyType function is used to veterinary checks whether there are products such as vaccine , drug in the stock. editFromType function function provides veterinary can make change on the stock informations Stock sub module has the following hierarchy Stock Module o Supply Type
Atlm University COMPE/SE/ISE 491-492
using this function was able to get any information about
addSupplyType() removeSupplyType() editSupplyType() searchSupplyType() viewSupplyType() addToSupplyType() removeFromSupplyType()
15/35 Team # 11 (Team OnVeterinary) System Design Document Version: 1.0
OnVeterinary PROJECT
editFromSupplyType() viewFromSupplyType() searchFromSupplyType()
2.1.1.5.
Calendar Module
Fig.5 Calendar Module
Identification:Calendar Module Type:Application Purpose: Calendar Module is reminded to veterinary have to do tasks of daily working life. Function: Calendar module consists of have five functions which are the addEvent,
removeEvent, editEvent, viewEvent, searchEvent. addEvent provides veterinary can fills
Atlm University COMPE/SE/ISE 491-492
16/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
necessary fields, then removeEvent editEvent function
when reminder time is come
system
will warn veterinary.
veterinary can remove selected events using this function.
function veterinary can accessed recorded events , and can make change viewEvent function provides veterinary can see
necessary fields. using this function before added all of the events.
Calendar sub functions has the following hierarchy Calendar Module o o o o addEvent() removeEvent() editEvent() viewEvent() Medical Interaction Module
2.1.1.6.
Fig. 6 Medical Interaction Module
Atlm University COMPE/SE/ISE 491-492
17/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
Identification:Interaction Module Type:Application Purpose: Provides veterinary assigns items if used medicine or vaccine for treatment of animal interaction to another material Function: Medical Interaction Module have six sub functions which are addInteraction, removeInteraction, editInteraction, viewInteraction,searchInteraction,setInteraction. addInteraction functions provides veterinary selects medicine ,vaccine ,treatment then assigns to interaction adding the system .editInteraction function provides veterinary can updated interactions information .removeInteraction function provides veterinary can
select interactions items ,and delete from the system. viewInteraction function provides indicates all of the used interaction materials . setInteraction function can help veterinary assigns more than one interaction vaccines searchInteraction function veterinary can get detailed information about interaction product using this function. Medical Interaction sub module has the following hierarchy Interaction Module o o o o o o addInteraction() removeInteraction() editInteraction() viewInteraction() searchInteraction() setInteraction()
Atlm University COMPE/SE/ISE 491-492
18/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
2.1.1.7.
Animal Family Tree Module
Fig. 7 Animal Family Tree Module
Identification:Animal Family Tree Module Type:Application Purpose: provide veterinarian keeps information to the type of animal family Function: Animal Family Tree module consists of four sub functions which are
addInformationAFT, removeInformationAFT, editInformationAFT, viewInformationAFT, addInformationAFT function is used for veterinary enter animal ID number ,after that fills animals genders of animals father and mother to adding system.
RemoveInformationAFT
function veterinary selects
animal remove information about
animals family from system. editInformationAFT function veterinary can make change on the selected animal. viewInformationAFT function veterinary want to see detailed
Atlm University COMPE/SE/ISE 491-492
19/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
information about animals family using this function. Animal Family Tree sub module has the following hierarchy Animal Family Tree Module o o o o 2.1.1.8. addInformationAFT() removeInformationAFT() editInformationAFT() viewInformationAFT()
Customer Module
Fig. 8 Customer Module
Identification:Customer Module Type:Application Purpose: Provides Veterinary can see information of all the users who are registered at the system.
Atlm University COMPE/SE/ISE 491-492
20/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
Function: Customer Module consists of the five sub functions which are addCustomer, removeCustomer, editCustomeri,viewCustomer, searchCustomer. addCustomer
function is used to for veterinar can add new user at their system , removeCustomer function is used to for veterinary wanted to be deleted from system. editCustomer
function provides veterinary can update or change customer recorded information. viewCustomer function provides veterinary can follow customer who is registered the system , searchCustomer function provides veterinary research to get detalied
information about their customers . Customer sub module has the following hierarchy
Customer Module o o o o o addCustomer() removeCustomer() editCustomer() viewCustomer() searchCustomer()
2.1.1.9.
Treatment Module
Identification:Treatment Module Type:Application Purpose:Veterinary can review applied animal treatment methods in the past. which will used the treatment method of animal ,such as the vaccine , drug will add to detalied information in this section Function: Treatment module consists of five sub functions which are addTreatment, editTreatment, viewTreatment ,removeTreatment ,checkMedicalInteraction .
addTreatment function is used to for veterinary can add new treatment , but veterinary
Atlm University COMPE/SE/ISE 491-492
21/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
must
fills treatment head , enter animals ID number , defines content of treatment system will assigned automatically date of treatment
another necessary side , and
when treatment module will add. editTreatment function provides veterinary selects the treatment , wanted to change treatment information fields. viewTreatment function
provides indicates that all medicines which used for animal. removeTreatment function provides selects the treatment which wanted to be deleted. checkMedicalInteraction
function provides if veterinary will use a new drug for treatment of animal , this function will check interaction between new drug , and previous drug Treatment sub module has the following hierarchy
Treatment Module o o o o o addTreatment() editTreatment() viewTreatment() removeTreatment() checkMedicalInteraction()
Atlm University COMPE/SE/ISE 491-492
22/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
Fig.9 Treatment Module
2.1.2.
Data Decomposition
Atlm University COMPE/SE/ISE 491-492
23/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
Fig. 10 ER Diagram with Attributes
2.2.
Dependency Description
Atlm University COMPE/SE/ISE 491-492
24/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
2.2.1.
Intermodule Description
Fig. 13 Module Descriptions (CTRL + LEFT CLICK)
Fig. 12 Veterinary Account Modules (CTRL + LEFT CLICK)
Atlm University COMPE/SE/ISE 491-492
25/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
AUTHENTICATION AUTHENTICATION CUSTOMER MODULE ANIMAL MODULE X3 X4
ADVERTISEMENT X1
REGISTER MODULE X2
MOBILE M ODULE X12
PRIVATE ADVERTISM. X5 STOCK M ODULE X6
ACCOUNTING M ODULE X7 CALENDAR MODULE X8
MEDICAL INTERACTIONX9 MODULE ANIMAL FAMILY TREEX10 MODULE TREATMENT MODULE X11
X1, X2,X12 : User cannot go forward before authentication X3, X4, X5, X6, X7, X8, X9, X10,X11 : In order to see contents of the modules, user should be authenticated.
Atlm University COMPE/SE/ISE 491-492
26/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
2.2.2.
Data dependencies
Atlm University COMPE/SE/ISE 491-492
27/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
2.3.
2.3.1.
Interface Description
Module Interfaces
Admin Panel
2.3.1.1.
Admin panel will be designed for administrative tasks. Include all modules.
2.3.1.2.
Veterinary Panel
Veterinary panel will be designed for veterinaries due to their requirements. Include all modules and they are able to manage their own modules.
2.3.2.
User Interfaces (GUI)
Veterinary Panel Interface Sample
2.3.2.1.
Fig. 14 Vet GUI Sample http://www.miranahosting.com/main.aspx
Atlm University COMPE/SE/ISE 491-492
28/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
2.3.2.2.
Guest Panel Interface Sample
Fig. 16 Guest GUI Sample
2.3.2.3.
Admin Panel Interface Sample
Admin panel GUI is under construction.
Atlm University COMPE/SE/ISE 491-492
29/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
3. Detailed Design
3.1. Module Detailed Design
Fig. 15 System Modules (CTRL + LEFT CLICK)
3.2.
3.2.1.
Data Detailed Design
User Table
Name UserID UserName Password UserType Data Type int varchar varchar char Size 32 50 50 2
3.2.2.
Calender Table
Name Data Type Size
Atlm University COMPE/SE/ISE 491-492
30/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
CalenderID EventName EventStartDate EventEndDate SmsReminderFlag E-MailReminderFlag ReminderFlag EventDescription
int varchar date date bool bool bool varchar
32 100 500
3.2.3.
Customer Table
Name Data Type int varchar varchar varchar int date varchar varchar varchar varchar varchar varchar Size 32 50 50 32 32 20 20 100 20 500 20
CustomerID Name Surname TCKimlik VeterinaryID RegistrationDate City Country E-Mail PhoneNumber Address MobilePhoneNumber
3.2.4.
Animal Table
Name Data Type Int Varchar Varchar Varchar Varchar Float Float Float
31/35 Team # 11 (Team OnVeterinary)
Size 32 50 50 500 32 20 20 20
System Design Document Version: 1.0
Animal_ID AnimalsMother AnimalsFather AnimalDescription AnimalKind AnimalWeight AnimalHeight AnimalLength
Atlm University COMPE/SE/ISE 491-492
OnVeterinary PROJECT
AnimalPicturePath AnimalIdentityNumber AnimalType AnimalAge AnimalGender
Varchar Varchar Varchar int varchar
100 32 20 5 10
3.2.5.
Treatment Table
Name Data Type int varchar date Size 32 100 -
TreatmentID OperationName Date
3.2.6.
Stock Table
Name Data Type Int Varchar Float Int Date varchar Size 32 50 20 10 50
StockID Name Price Count Date Type
3.2.7.
Accounting Table
Still working on this table and its content.
3.3.
RTM
Create Veterinary Account
Admin has the authority toRegistration Module confirm registrations. veterinary
Atlm University COMPE/SE/ISE 491-492
32/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
Admin
has
authority
toCustomer Module
Create Customer Account
create customer accounts. Admin has authority to editCustomer Module customer account. Admin has authority toCustomer Module Remove Customer Account Edit Customer Account
remove customer account. Admin has authority to addAnimal Module animal. Admin has authority to editAnimal Module animal. Admin has authority toAnimal Module Remove Animal Edit Animal Add Animal
remove animal. Admin has authority toAdvertisement Module Create Advertisement
publish advertisement. Admin has authority toAdvertisement Module Remove Advertisement
remove advertisement. Admin has authority to editAdvertisement Module advertisement. Admin has authority toStock Module Edit Stock Edit Advertisement
modify veterinary stocks. Admin has authority ofStock Module Add Stock
adding item to veterinary stock. Admin remove has authority item toStock Module Remove Stock
from
veterinary stock. Admin has authority toCalendar Module Edit Calendar
Atlm University COMPE/SE/ISE 491-492
33/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
modify veterinary calender. Admin has authority toCalendar Module Remove Calendar
remove veterinary calendar Admin has authority to addCalendar Module item to veterinary calender. Admin has authority to editMedical Interaction Module Add/Edit/Remove medical veterinary. Admin has authority toAnimaly Family TreeAdd/Edit/Remove Animal Family Tree interaction for Medical Interaction Add Calendar
modify Animal family treeModule for veterinary. Admin modify veterinary. has authority toTreatment Module for
Add/Edit/Remove Treatment
Treatment
Atlm University COMPE/SE/ISE 491-492
34/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0
OnVeterinary PROJECT
4. Appendices
Atlm University COMPE/SE/ISE 491-492
35/35 Team # 11 (Team OnVeterinary)
System Design Document Version: 1.0