0% found this document useful (0 votes)
11 views6 pages

Program 7,8

The document outlines a UML class diagram for a Library Management System, detailing classes such as Library, Book, Member, Librarian, and Transaction, along with their attributes, methods, and relationships. It also includes a bug report for an ATM system, identifying critical issues such as incorrect PIN lockout delays, balance not updating after deposits, and cash dispensed without deduction. The report suggests improvements like robust account validation and complete localization implementation.

Uploaded by

UZMA TAJ
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views6 pages

Program 7,8

The document outlines a UML class diagram for a Library Management System, detailing classes such as Library, Book, Member, Librarian, and Transaction, along with their attributes, methods, and relationships. It also includes a bug report for an ATM system, identifying critical issues such as incorrect PIN lockout delays, balance not updating after deposits, and cash dispensed without deduction. The report suggests improvements like robust account validation and complete localization implementation.

Uploaded by

UZMA TAJ
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

7. Develop an object model using UML for a Library management system.

UML Class Diagram - Library Management System


1. Class: Library
 Attributes:
o name: String
o address: String
 Methods:
o addBook(book: Book)
o removeBook(bookId: int)
o registerMember(member: Member)
2. Class: Book
 Attributes:
o bookId: int
o title: String
o author: String
o publisher: String
o isAvailable: boolean
 Methods:
o checkAvailability(): boolean
o reserveBook(member: Member)
o issueBook(member: Member)
o returnBook()
3. Class: Member
 Attributes:
o memberId: int
o name: String
o address: String
o phoneNumber: String
 Methods:
o borrowBook(book: Book)
o returnBook(book: Book)
o reserveBook(book: Book)
4. Class: Librarian
 Attributes:
o employeeId: int
o name: String
 Methods:
o issueBook(book: Book, member: Member)
o receiveBook(book: Book, member: Member)
o manageInventory()
5. Class: Transaction
 Attributes:
o transactionId: int
o issueDate: Date
o returnDate: Date
o fineAmount: double
 Methods:
o calculateFine(): double

Relationships
 Library has many Books and Members.
 Member can borrow or reserve multiple Books.
 Librarian performs operations on Books and Members.
 Transaction records each issue/return operation.
 Book is associated with Transaction.
1. Library Class
 Attributes:
o name: String — Name of the library.
o address: String — Address of the library.
 Methods:
o addBook(book: Book) — Adds a new book to the library.
o removeBook(bookId: int) — Removes a book by its ID.
o registerMember(member: Member) — Registers a new
member.
 Relationships:
o 1-to-many relationship with Book (a library can have many
books).
o 1-to-many relationship with Member (a library can have many
members).

2. Book Class
 Attributes:
o bookId: int — Unique identifier for the book.
o title: String — Title of the book.
o author: String — Author of the book.
 Methods:
o checkAvailability(): boolean — Checks if the book is available.
o reserveBook(member: Member) — Allows a member to
reserve the book.
o issueBook(member: Member) — Issues the book to a member.
o returnBook() — Handles the return of the book.
 Relationships:
o Associated with Transaction, Librarian, and Member.

3. Member Class
 Attributes:
o memberId: int — Unique ID for each member.
o name: String — Member’s name.
o address: String — Member’s address.
o phoneNumber: String — Contact number.
 Relationships:
o Associated with Transaction (one member can have multiple
transactions).
o Can interact with books (borrow, return, etc.).

4. Librarian Class
 Attributes:
o employeeId: int — Unique ID for the librarian.
o name: String — Name of the librarian.
 Methods:
o issueBook(book: Book, member: Member) — Issues a book to
a member.
o manageInventory() — Handles the library inventory system.
 Relationships:
o Many-to-many relationship with Book and Transaction.

5. Transaction Class
 Attributes:
o transactionId: int — Unique ID of the transaction.
o issueDate: Date — Date of issue.
o returnDate: Date — Date of return.
o fineAmount: double — Fine if any.
 Methods:
o calculateFine(): double — Computes fine based on delay.
 Relationships:
o Connected to Book and Member (a transaction links a book
and a member).

Associations:
 1.. and ..* multiplicities indicate one-to-many or many-to-many
relationships.
 Arrows show direction of dependency or ownership.

8. Analyse the system specifications of a chosen system (e.g., ATM system)


and identify potential bugs or issues. Prepare a detailed bug report.

ATM System - Bug Report

System Analyzed: ATM System


Functionality Includes:
- User Authentication (Card + PIN)
- Balance Inquiry
- Cash Withdrawal
- Deposit
- Fund Transfer
- Mini Statement

Bug Report
Bug ID Bug Title Descriptio Severit Steps to Expected Actual Statu
n y Reproduc Result Result s
e
ATM00 Incorrect Multiple High 1. Insert Delay Card is Open
1 PIN wrong PIN card lockout locked
Lockout entries 2. Enter for 30 immediatel
Delay lock wrong min after y with no
account PIN 3 3 failed delay or
instantly times tries message
quickly
ATM00 Balance Deposited Critical 1. Login Balance Balance Open
2 Not amount 2. should remains
Updated doesn't Deposit increase unchanged
After Cash reflect in ₹5000 by
Deposit balance 3. Check ₹5000
balance
ATM00 Cash Withdraw Critical 1. ₹1000 Amount Open
3 Dispensed al Withdraw should dispensed,
Without succeeds ₹1000 be but balance
Deduction but 2. Check deducted remains
amount balance from same
not balance
debited
ATM00 Fund Allows High 1. Enter System Transfer Open
4 Transfer to transfer to invalid should proceeds
Invalid non- account validate without
Account existent number recipient validation
account 2. account
Confirm
transfer
ATM00 Session User Mediu 1. Login Session Session Open
5 Timeout logged out m 2. View should expired in
Too Short while statement last at 60 seconds
reviewing for 2 min least 3-5
statement 3. mins idle
Attempt
new
transactio
n
ATM00 No Receipt Low 1. Receipt No receipt Open
6 Receipt not printed Withdraw should printed
After after cash money print
Transactio withdrawa 2. Choose with
n l "Print details
Receipt"
ATM00 UI Statement Low 1. View Proper Text is Open
7 Overlap in text mini alignmen jumbled
Mini overlaps statement t and and
Statement on small on spacing overlaps
screens compact
machine
ATM00 Language UI Mediu 1. Select Entire UI Only some Open
8 Change remains in m Hindi at should fields
Not English login be in change
Reflecting despite screen Hindi language
choosing
Hindi

Root Cause Analysis (for selected bugs)


- ATM002/ATM003: Likely caused by failure in real-time sync with the core banking
system.
- ATM004: Lack of validation checks before committing transaction.
- ATM008: Incomplete localization implementation.

Suggestions for Improvement


- Add robust account validation before transactions.
- Improve error handling and session management.
- Implement language packs completely for full localization.
- Periodic audits of transaction logs for consistency.

You might also like