• No results found

Product Characteristics and Requirements:

In document Software Engineering record (Page 117-141)

 Secured Database.

 User tracking

 Search Feature

 Calculating fines.

 Checking the availability of books

 Students will get a message before the due date in order to avoid fines.

Project Success Criteria:

 Our main goal is to complete this project within allotted deadline and also within the budget allotted.

 It is necessary to satisfy the functional and non-functional requirements of the software.

OVERALL DESCRIPTION:

Product Perspective:

The Library Management System will provide a search functionality to facilitate the search of resources. This search will be based on various categories viz. book name or the ISBN. Further the library staff personnel can add/update/remove the resources and the resource users from the system.

Product Features:

There are two different users who will be using this product. 1 Librarian, who will be acting as the administrator.

The features that are available to the Librarian are o A Librarian can issue a book to the students. o Can view the different category of books available. o Can take the books returned from students.

o Add books and their information of the books to the database. o Edit the information of the existing books.

o Can check the report of the issued book. o Can access all the accounts of the student. The features available to the students are,

o Can view the different categories of books available in the library. o Can own an account in the library.

o Can view the books issued to him. o Can search a particular book.

User Classes and Characteristics:

The user includes:

 Students, Staff who will be using the features by accessing this System.

 Librarian who will be acting as the controller and he will have all the privileges of an administrator.

Design and Implementation Constraints:

The product is developed using Visual Basic 6.0. The backend connection is done by MS

Access. The product is accomplished with log-in facility so that specific function is available to specific students.

Assumptions and Dependencies:

o

The users have sufficient knowledge of computers.

o

The users know the English language, as the user interface will be provided in English.

SYSTEM FEATURES:

Database Storage:

Proposed Database is intended to store, retrieve, update and manipulate information related to shopping which include

o Books availability. o Staff information. o Student details. o Calculation of fines.

Functional Requirements:

This section gives the list of functional requirements which are applicable to the Library Management System.

GUI:

It describes the graphical user interface of the software. It includes the following forms to illustrate user interface features.

 Log-in and Registration: - Student Log-in and Staff Log-in.  Library Book details.

 Student details.  Return of Books.  New user Form.

Non-Functional Requirements:

Performance Requirements:

The proposed system that we are going to develop will be used as the chief performance system within the different campuses of the university which interacts with the university staff and students. Therefore it is expected that the database would perform all the functional requirements that are specified by the university.

Safety Requirements:

 The database may get crashed at any certain time due to virus or operating system failure. Therefore it is required to take the database backup.

Security Requirements:

We are going to develop a secured database for the university. There are different categories of users namely teaching staff, administrator, library staff, students etc… Depending upon the category of the user the access rights are decided.

Software Quality Attributes:

The quality of the database is maintained in such a way that it can be very user friendly to all the users of the database.

Hardware Interfaces:

Server Side:

Operating System: Windows Server 2003/ Windows Server 2008. Processor: Intel Pentium Dual-Core 2.8 GHZ or higher.

RAM: 1GB DDR2 or more.

HDD: 160GB or more.

Client Side:

Operating System: Windows XP or more.

Processor: Intel Pentium IV 2.4 GHZ or higher.

RAM: 256MB DDR2 or more.

HDD: 40GB or more.

Software Interfaces:

Database: MS Access 2007

Application: Visual Basic 6.0

DATA MODELING:

The project can be explained diagrammatically using the following diagrams:

 Use Case Diagram

 Class Diagram

 Sequence Diagram

 Collaboration Diagram

 State-transition Diagram

Use case Diagram:

A use case diagram in the Unified Modeling Language (UML) is a type of behavioral diagram defined by and created from a Use-case analysis. Its purpose is to present a graphical overview of the functionality provided by a system in terms of actors, their goals (represented as use cases) and any dependencies between those use cases.

Actors:

An actor is a role that a user plays with respect to the system. The actors are:

 Member

 Librarian

 Database

Use cases:

A use case describes a sequence of actions that provide something of measurable value to an actor and is drawn as a horizontal ellipse. The Use-cases in the Library Management System are

 Login

 Issue Books

 Search Books

 View Books

Class Diagram:

A Class diagram describes the types of objects in the System and the various kinds of static relationships that exist among them. In software engineering, a class diagram in the Unified Modeling Language (UML) is a type of static structure diagram that describes the structure of a system by showing the system's classes, their attributes, and the relationships between the classes. The Solid line between the classes shows the relationship between them.

Description:

The classes used in this project are  Library

 Member  Librarian  Supplier

Member Librarian Database Supplier Enter ID

Authendication Access Verified

Acknowledgement

Lend Books Update DB Searching Book

Book Available Book available

Issue Book

Exit from library LogOut

Order Books

Supply Books Update

Sequence Diagram:

A Sequence diagram depicts the sequence of actions that occur in a system. The invocation of methods in each object, and the order in which the invocation occurs is captured in a Sequence diagram. This makes the Sequence diagram a very useful tool to easily represent the dynamic behavior of a system.

A Sequence diagram is two-dimensional in nature. On the horizontal axis, it shows the life of the object that it represents, while on the vertical axis, it shows the sequence of the creation or invocation of these objects. Because it uses class name and object name references, the Sequence diagram is very useful in elaborating and detailing the dynamic design.

Description:

It depicts the high level sequence diagram for online voting. The various scenarios of the sequence diagram used in this project are

 Member

 Librarian

 Database

Member Librarian 1: Search Book Database Supplier 2: Enter ID 3: Lend Books 4: Verified message 5: Place Orders 8: Supply Books 6: Check Authentication 7: Update

Collaboration Diagram:

Description:

A Collaboration diagram is very similar to a Sequence diagram in the purpose it achieves; in other words, it shows the dynamic interaction of the objects in a system. A distinguishing feature of a Collaboration diagram is that it shows the objects and their association with other objects in the system apart from how they interact with each other. The association between objects is not represented in a Sequence diagram.

A Collaboration diagram is easily represented by modeling objects in a system and representing the associations between the objects as links. The interaction between the objects is denoted by arrows. To identify the sequence of invocation of these objects, a number is placed next to each of these arrows.

In this collaboration diagram, the objects are represented as rectangle, the actors are stick figures. Whereas the sequence diagram illustrates the object and actor interaction overtime, the collaboration diagram shows the object and actor interaction without reference to time.

State-transition Diagram:

The state transition diagram (STD) indicates how the system behaves as a consequence of external events. To accomplish this, the STD represents the various modes of behavior (called states) of the system and the manner in which transitions are made from state to state. The STD serves as the basis for behavioral modeling. A state transition diagram indicates how the system moves from state to state. The state transition diagram represents the behavior of a system by depicting its states and the events that cause the system to change state.

Description:

A state transition diagram indicates how the system moves from state to state.The state transition diagram represents the behavior of a system by depicting its states and the events that cause the system to change state.

PROJECT IMPLEMENTATION:

Coding:

Login Form:

Private Sub cmdcancel_Click() Unload Me

End Sub

Private Sub cmdok_Click()

If txtusername.Text = "tce" And txtpassword.Text = "cse" Then frmmenu.Visible = True

frmlogin.Visible = False Unload Me

Else

MsgBox ("Please Check Your Username and Password") txtusername.SetFocus

End If End Sub

Main menu form:

Private Sub Command1_Click() End

Unload Me End Sub

Private Sub mnubookdetails_Click() book.Show

frmmenu.Hide End Sub

Private Sub mnuborrow_Click() borrow.Show

frmmenu.Hide End Sub

Private Sub mnureturn_Click() frmreturn.Show

frmmenu.Hide End Sub

Book details form:

Dim a As VbMsgBoxResult

Private Sub Command1_Click() Text1.Text = "" Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" Text8.Text = "" Text1.SetFocus Command3.Enabled = False Command4.Enabled = False End Sub

Private Sub Command2_Click() On Error Resume Next

If Text1.Text = "" Or Text2.Text = "" Or Text3.Text = "" Or Text4.Text = "" Or Text5.Text = "" Or Text6.Text = "" Or Text7.Text = "" Then

a = MsgBox("RECORDS NOT SAVED.. PLS COMPLETE..", vbCritical, "WARNING") Text1.Text = ""

Text1.SetFocus

ElseIf Text1.Text <> "" Or Text2.Text <> "" Or Text3.Text <> "" Or Text4.Text <> "" Or Text5.Text <> "" Or Text6.Text <> "" Or Text7.Text <> "" Then

Data1.Recordset(0) = Text1.Text Data1.Recordset(1) = Text2.Text Data1.Recordset(2) = Text3.Text Data1.Recordset(3) = Text4.Text Data1.Recordset(4) = Text5.Text Data1.Recordset(5) = Text6.Text Data1.Recordset(6) = Text8.Text Data1.Recordset.Update

MsgBox ("Record Saved") End If Text1.Text = "" Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" Text8.Text = "" Command2.Enabled = False End Sub

Private Sub Command3_Click() On Error Resume Next

a = MsgBox("ARE YOU SURE?", vbYesNo, "DELETE") If a = vbYes Then

Data1.Recordset.Delete MsgBox ("Record Deleted") Text1.Text = "" Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" Text8.Text = "" Text1.SetFocus End If End Sub

Private Sub Command4_Click() Data1.Recordset.Edit Data1.Recordset(0) = Text1.Text Data1.Recordset(1) = Text2.Text Data1.Recordset(2) = Text3.Text Data1.Recordset(3) = Text4.Text Data1.Recordset(4) = Text5.Text Data1.Recordset(5) = Text6.Text Data1.Recordset(6) = Text8.Text Command2.Enabled = True

End Sub

Private Sub Command5_Click() Unload Me

frmmenu.Show End Sub

Private Sub Command6_Click() Command2.Enabled = True Text1.Enabled = True Text2.Enabled = True Text3.Enabled = True Text4.Enabled = True Text5.Enabled = True Text6.Enabled = True Text8.Enabled = True Data1.Recordset.AddNew End Sub

Private Sub Command7_Click() Text1.Enabled = True Text2.Enabled = True Text3.Enabled = True Text4.Enabled = True Text5.Enabled = True Text6.Enabled = True Text8.Enabled = True

Dim namecheck, edicheck As Long

n_strsearch = InputBox("Enter the Book Name to find", "Book Name") e_strsearch = InputBox("Enter the Edition", "Edition")

If n_strsearch = "" Or e_strsearch = "" Then Exit Sub Dim n As Integer

n = 1

Data1.Recordset.MoveFirst

If Data1.Recordset(0) = "" Then Exit Sub While n < Data1.Recordset.RecordCount

namecheck = InStr(1, Data1.Recordset(0), n_strsearch, vbTextCompare) edicheck = InStr(1, Data1.Recordset(2), e_strsearch, vbTextCompare) If namecheck > 0 And edicheck > 0 Then

Text1.Text = Data1.Recordset(0) Text2.Text = Data1.Recordset(1) Text3.Text = Data1.Recordset(2) Text4.Text = Data1.Recordset(3) Text5.Text = Data1.Recordset(4) Text6.Text = Data1.Recordset(5) Text8.Text = Data1.Recordset(6) Command3.Enabled = True Command4.Enabled = True Exit Sub Else n = n + 1 Data1.Recordset.MoveNext End If Wend

edicheck = InStr(1, Data1.Recordset(2), e_strsearch, vbTextCompare) If namecheck > 0 And edicheck > 0 Then

Text1.Text = Data1.Recordset(0) Text2.Text = Data1.Recordset(1) Text3.Text = Data1.Recordset(2) Text4.Text = Data1.Recordset(3) Text5.Text = Data1.Recordset(4) Text6.Text = Data1.Recordset(5) Text8.Text = Data1.Recordset(6) Command3.Enabled = True Command4.Enabled = True Exit Sub Else

MsgBox ("No records match your search") End If

End Sub

Private Sub Form_Load() Text1.Enabled = False Text2.Enabled = False Text3.Enabled = False Text4.Enabled = False Text5.Enabled = False Text6.Enabled = False Text8.Enabled = False Command2.Enabled = False Command3.Enabled = False Command4.Enabled = False

End Sub

Retrieving Form:

Private Sub Command1_Click() Data1.Recordset(0) = Text1.Text Data1.Recordset(1) = Text2.Text Data1.Recordset(2) = Text3.Text Data1.Recordset(3) = Text4.Text Data1.Recordset.Update

MsgBox ("Record updated") Text1.Text = "" Text2.Text = "" Text3.Text = "" Text4.Text = "" Data1.Recordset.AddNew End Sub

Private Sub Command2_Click() Unload Me

frmmenu.Show End Sub

Private Sub Form_Initialize() Data1.Recordset.AddNew

Text2.Text = Format(Now, "dd-mm-yyyy") Text4.Text = Format(Now + 15, "dd-mm-yyyy") End Sub

Return Form:

Option Explicit

Dim t_strsearch As String Sub func()

Dim tokennocheck As Long

t_strsearch = InputBox("Enter The Token Number", "Token Number") If t_strsearch = "" Then Exit Sub

Dim n As Integer n = 1

Dim achk As Boolean achk = False

borrow.Data1.Recordset.MoveFirst

While n < borrow.Data1.Recordset.RecordCount

tokennocheck = InStr(1, borrow.Data1.Recordset(0), t_strsearch, vbTextCompare) If tokennocheck > 0 Then

Text1.Text = t_strsearch

Text2.Text = Format(Now, "dd-mm-yyyy") Text3.Text = borrow.Data1.Recordset(3) Text4.Text = borrow.Data1.Recordset(2) achk = True Exit Sub Else n = n + 1 borrow.Data1.Recordset.MoveNext End If Wend

tokennocheck = InStr(1, borrow.Data1.Recordset(0), t_strsearch, vbTextCompare) If tokennocheck > 0 Then

Text1.Text = t_strsearch

Text2.Text = Format(Now, "dd-mm-yyyy") Text3.Text = borrow.Data1.Recordset(3) Text4.Text = borrow.Data1.Recordset(2) achk = True

Exit Sub End If

If achk = False Then

MsgBox ("Incorrect token number") End If

End Sub

Private Sub Command1_Click() Unload Me

frmmenu.Show End Sub

Private Sub Command2_Click() Data1.Recordset.AddNew Data1.Recordset(0) = Text1.Text Data1.Recordset(1) = Text2.Text Data1.Recordset(2) = Text3.Text Data1.Recordset(3) = Text4.Text Data1.Recordset.Update

MsgBox ("Records updated") Text1.Text = ""

Text2.Text = "" Text3.Text = ""

Text4.Text = "" End Sub

Private Sub Command3_Click() Call func

End Sub

Private Sub Form_Load() Call func

PROJECT EXECUTION:

LOGIN FORM:

RETRIEVING FORM:

RESULT:

Thus the Problem is analyzed, designed and implemented using Rational Rose/Visual Basic/MS Access. The Result of the project is evaluated by performing unit testing, Integration testing and Acceptance testing.

In document Software Engineering record (Page 117-141)

Related documents