component level design
TRANSCRIPT
![Page 1: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/1.jpg)
11/18/2014 1
![Page 2: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/2.jpg)
• Md. Arif Ibne Ali – BSSE0308
• Md. Shafiuzzaman – BSSE0322
• Nadia Nahar – BSSE0327
11/18/2014 2
![Page 3: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/3.jpg)
11/18/2014 3
![Page 4: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/4.jpg)
User
user_typeuser_namepassworduser_statuse-mail
authenticate()search()renew()booking()
Administrator
user_namepassworde-mail
configure()authenticate()
Librarian
user_namepassworde-mail
issue()retrieve()add()edit()delete()
Report
report_nointended_userdatereport_type
notifyUser()blockUser()
Item
item_typecall_numberitem_statusassigned_user
issueItem()retrieveItem()itemAvailability()
Fine
fine_typefine_amountassigned_userassigned_itemfine_rateborrowing_duration
generateReport()updateUser()calculateFineAmount()
11/18/2014 4
![Page 5: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/5.jpg)
11/18/2014 5
![Page 6: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/6.jpg)
DAO
insert()update()delete()select()
GUI
menu_itemsthemeelements
update()link()
DB Connect
connectionStringdatabaseNamedatabaseUserPassworddatabaseType
connect()
11/18/2014 6
![Page 7: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/7.jpg)
11/18/2014 7
![Page 8: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/8.jpg)
search
renew
booking
User
user_typefacultystudnentresearcher
user_namepassworduser_status
blockedactivedeactivereported
inputItem()retreive()arrange()show()selectItem()showItemDetail()renewRequest()update()booking()
DAOSearch
inputItem()retreive()arrange()show()
DAORenew
selectItem()showItemDetail()renewRequest()update()
User
user_typeuser_namepassworduser_statuse-mail
authenticate()search()renew()booking()
11/18/2014 8
![Page 9: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/9.jpg)
issue
retreive
Librarian
user_namepassworde-mail
selectUser()checkUserStatus()selectItem()checkItemStatus()show()updateItem()updateUser()selectUser()checkFine()selectItem() updateItem()updateUser()add()edit()delete()
DAOIssue
selectUser()checkUserStatus()selectItem()checkItemStatus()show()updateItem()updateUser()
DAORetreive
selectUser()checkFine()selectItem() updateItem()updateUser()
Librarian
user_namepassworde-mail
issue()retrieve()add()edit()delete()
11/18/2014 9
![Page 10: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/10.jpg)
itemAvailability
Item
item_typeBookCD/DVDJournalNewspaperMagazine
call_numberitem_status
AvailableUnavailable
assigned_userGeneralSpecial
issueItem()retrieveItem()selectItemType()connectDatabase()countItemNo()notifyLibrarian()
DAOitemAvailability
selectItemType()connectDatabase()countItemNo()notifyLibrarian()
Item
item_typecall_numberitem_statusassigned_user
issueItem()retrieveItem()itemAvailability()
11/18/2014 10
![Page 11: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/11.jpg)
notifyUser
blockUser
Report
report_nointended_userdatereport_type
fine_reportblock_reportreturn_reportyearly_report
selectUser() selectItem()getData()generateNotification()acquireEmailAddress()sendNotification()selectUser()getData()generateNotification()acquireEmailAddress()sendNotification()changeUserStatus
DAOnotifyUser
selectUser() selectItem()getData()generateNotification()acquireEmailAddress()sendNotification()
DAOblockUser
selectUser()getData()generateNotification()acquireEmailAddress()sendNotification()changeUserStatus()
Report
report_nointended_userdatereport_type
notifyUser()blockUser()
11/18/2014 11
![Page 12: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/12.jpg)
calculateFine
generateReport
Fine
fine_typegeneral_finespecial_finedestruction_fine
fine_amountassigned_user
GeneralSpecial
assigned_itemAvailableUnavailable
fine_rateborrowing_durationgetDuration()getItemType()getRate()calculate()getNotification()calculateFineAmount()getUser()acquireEmailAddress()sendNotification()updateUser()
DAOcalculateFine
getDuration()getItemType()getRate()calculate()
DAOgenerateReport
getNotification()calculateFineAmount()getUser()acquireEmailAddress()sendNotification()updateUser()
Fine
fine_typefine_amountassigned_userassigned_itemfine_rateborrowing_duration
calculateFineAmount()generateReport()updateUser()
11/18/2014 12
![Page 13: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/13.jpg)
11/18/2014 13
![Page 14: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/14.jpg)
1.ItemList := InputItem(itemName)
1.ItemDetails := selectItem(itemName)2.ItemStatus := renewRequest(itemDetails)
11/18/2014 14
![Page 15: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/15.jpg)
1.userDetails := selectUser(userName)2.userStatus := checkUserStatus (user)
3.itemDetails := selectItem(itemName)4.itemStatus := checkItemStatus (item)
11/18/2014 15
![Page 16: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/16.jpg)
1.userDetails := selectUser(userName)
3.itemDetails := selectItem(itemName)
2.Fine := checkFine(User)
11/18/2014 16
![Page 17: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/17.jpg)
1.itemAvailability := notify(Item,ItemNumber)
11/18/2014 17
![Page 18: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/18.jpg)
1.userDetails := selectUser(userName)3.confirmation := sendNotification (report)
2.itemDetails := selectItem(itemName)
11/18/2014 18
![Page 19: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/19.jpg)
1.userDetails := selectUser(userName)3.confirmation := sendNotification (report)4. confirmation := changeUserStatus(user)
2.itemDetails := selectItem(itemName)
11/18/2014 19
![Page 20: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/20.jpg)
1.duration := getDuration(user,item)
3.fineRate := getRate(itemType)
2.itemType := getItemType(item)
11/18/2014 20
![Page 21: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/21.jpg)
1.fineNotification := getNotification()2.userDetails := getUser()3. email := acquireEmail(user)
4.confirmation := reportGenerateAndSend(fineDetails)
11/18/2014 21
![Page 22: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/22.jpg)
11/18/2014 22
![Page 23: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/23.jpg)
search
renew
booking
itemList
<<interface>>search
PassNametoFindItem()
11/18/2014 23
![Page 24: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/24.jpg)
search
renew
booking
selectItem
<<interface>>renew
PassItemtoRenew()
itemStatus
11/18/2014 24
![Page 25: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/25.jpg)
issue
retreive
selectItem
<<interface>>issue
PassItemtoIssue()
selectUser
11/18/2014 25
![Page 26: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/26.jpg)
issue
retreive
selectItem
<<interface>>retrieve
PassItemtoRetrieve()
selectUser
checkFine
11/18/2014 26
![Page 27: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/27.jpg)
itemAvailability
notify
<<interface>>itemAvailability
NotifyLibarianAboutItemAvailability ()
11/18/2014 27
![Page 28: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/28.jpg)
notifyUser
BlockUser
selectItem
<<interface>>notifyUser
sendNotificationtoUser()
selectUser
11/18/2014 28
![Page 29: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/29.jpg)
notifyUser
BlockUser
selectItem
<<interface>>blockUser
passUsertoBlock()
selectUser,
changeUserStatus
11/18/2014 29
![Page 30: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/30.jpg)
calculateFine
generateReport
getDuration
<<interface>>calculateFine
PassUserItemtoCalculateFine()
getFineRate
getItemType
11/18/2014 30
![Page 31: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/31.jpg)
calculateFine
generateReport
getUser
<<interface>>generateReport
PassUserToGenetareReport()
getReport
11/18/2014 31
![Page 32: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/32.jpg)
11/18/2014 32
![Page 33: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/33.jpg)
Attribute Name Class Data Type/Data Structure
user_type user enum
user_name user,administrator,librarian string
password user,administrator,librarian string
user_status user enum
e-mail user,administrator,librarian string
report_no report int
intended_user report int
date report date
report_type report enum
11/18/2014 33
![Page 34: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/34.jpg)
Attribute Name Class Data Type/Data Structure
fine_type fine enum
fine_amount fine int
assigned_user fine,item int
assigned_item fine int
fine_rate fine double
borrowing_duration fine int
item_type item enum
call_number item int
item_status item enum
11/18/2014 34
![Page 35: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/35.jpg)
11/18/2014 35
![Page 36: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/36.jpg)
11/18/2014 36
Input Item
Validate Input
retrieve
Arrange Alphabetically
Arrange by Arrival Date
Arrange by Category
show
arrangeType=Name
arrangeType=ArrivalDate
arrangeType=Category
![Page 37: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/37.jpg)
11/18/2014 37
Select Item
Show Item Details
Renew Request
Check Item Availability
Update
available
Not available
![Page 38: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/38.jpg)
11/18/2014 38
Select User
Select Item
Check Item Availability
Update Item,User
available
Not available
Check User Availability
active
blocked
![Page 39: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/39.jpg)
11/18/2014 39
Select User
Select Item
Update User
Check Fine
no
yes Generate Report
Update Item
![Page 40: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/40.jpg)
11/18/2014 40
Select Item
Count Item No
Connect DB
Notify Librarian
![Page 41: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/41.jpg)
11/18/2014 41
Select User
Get Data
Select Item
Generate Notification
Send Notification
![Page 42: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/42.jpg)
11/18/2014 42
Select User
Get Data
Select Item
Generate Notification
Send Notification
Block User
![Page 43: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/43.jpg)
11/18/2014 43
Get Duration
Get Rate
Get Item Type
Calculate
![Page 44: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/44.jpg)
11/18/2014 44
Get Notification
Get User
Calculate Fine
Acquire Email
Send Notification
Update User
![Page 45: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/45.jpg)
11/18/2014 45
![Page 46: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/46.jpg)
• Date Source
– User Database
– Item Database
• Required Class
– DB Connect
– DAO
11/18/2014 46
DAO
insert()update()delete()select()
DB Connect
connectionStringdatabaseNamedatabaseUserPassworddatabaseType
connect()
![Page 47: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/47.jpg)
11/18/2014 47
![Page 48: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/48.jpg)
11/18/2014 48
Administrator
![Page 49: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/49.jpg)
11/18/2014 49
Librarian
![Page 50: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/50.jpg)
11/18/2014 50
User
![Page 51: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/51.jpg)
11/18/2014 51
Item
![Page 52: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/52.jpg)
11/18/2014 52
Report
![Page 53: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/53.jpg)
11/18/2014 53
DAO
![Page 54: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/54.jpg)
11/18/2014 54
![Page 55: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/55.jpg)
11/18/2014 55
Central Processor
Database Server
Proxy Web Server
Remote PC
Control Panel Unit
Library PC http
Source Communication
![Page 56: Component level design](https://reader033.vdocument.in/reader033/viewer/2022052215/55a2235c1a28ab747a8b4658/html5/thumbnails/56.jpg)
Thank You!!!
11/18/2014 56