Oose Final
Oose Final
AIM: Choose anyone's project and Write the complete problem statement.
● File Lost - When a computerized system is not implemented a file is always lost
because of the human environment. Sometimes due to some human error there may
be a loss of records.
● File Damaged - When a computerized system is not therefore always lost due to some
accident like spilling of water by some member on file accidentally. Besides some
natural disasters like floods or fires may also damage the files.
● Space Consuming - After The number of records becomes larger the space for physical
storage of file and record sales increases info computerized system implemented.
● Cost Consuming - As there is no computerized system to add each record paper will
be needed which will increase the cost of the library.
Thus, a Library Management System is the need of the hour. Library Management System
is a computerized system which helps the user (librarian) to manage the Library daily
activity in electronic format.
It reduces the risk of paperwork such as file lost, file damaged and time consuming. It can
help users to manage the transaction record more effectively and time-saving.
1. User Module
● New User Register: To sign up a new user to this system.
● Search Book: The user can search a book based on book id, book name, by author
name.
● Issue Book: To help the user get the required books issued.
● Return Book: To return the book before the last date without fine, or after the specified
time duration with late fine.
2. Admin Module : It is to be operated by the admin with a unique id and password. The
admin is the person who decides authentication and authorization for all the different
users of the application.
● Registeruser
● IssueBook
● Maintains books in a stack, which means record the availability at regular time intervals.
PRACTICAL - 2
Software Requirements:
● Operating system: Windows 10 or 7 is used as the operating system as it is stable and
supports more features and more user friendly.
● Database MYSQL: MYSQL is used as a database as it is easy to maintain and retrieve
records by simple queries which are in English language which are easy to understand
And Easy to Write.
● Development tools and Programming Language: HTML is used to write the whole
code and develop web pages with CSS, JavaScript for styling work andPHP for server
side scripting.
Hardware Requirements:
● Intel core i5 starting from 2nd generation is used as a processor because it is fast, the
other processors can provide reliability and stability and we can run our pc for longtime.
By Using this processor,we can keep developing our project without any worries.
● Ram 1 GB is used as it will provide fast reading and writing capabilities and will in turn
supporting processing
Software Tools:
The purpose of a Web browser is to read HTML documents and compose them into visible
audible webpages.The browser does not display the HTML tags, but uses the tags to
interpret the content of the page. HTML elements form the building blocks of all websites.
HTML allows images and objects to be embedded and can be used to create interactive
forms. It Provides a means to create structured documents by denoting structural
semantics for text such as headings, paragraphs, lists, links, quotes and other items. It
can embed scripts written in languages such as JavaScript which affect the behavior of
HTML webpages.
CSS: Cascading Style Sheets(CSS) is a style sheet language used for describing the
Look and formatting of a document written in a markup language.While most often used
to style web pages and interfaces written in HTML and XHTML, the language can be
applied to any kind of XML document, including plain XML, SVG and XUL. CSS is
cornerstone specification of the web and almost all web pages use CSS style sheets To
describe the presentation. CSS is designed primarily to enable the separation of
document content from document presentation, including elements such as the
layout,colors,and fonts.
This Separation Can Improve Content Accessibility, provide more flexibility and control in
the specification of presentation characteristics, enable multiple pages to share
formatting, and reduce complexity and repetition in the structural content (such as by
allowing for tableless web design). CSS can also allow the same markup page to be
presented in different styles for different rendering methods, such as on-screen, in print,by
voice (when read out by a speech-based browser or screen reader) and on Braille-based,
tactile devices.
It Can also be used to allow the web page to play differently depending on the screen size
or device on which it is being viewed. While the author of a document typically links that
document to a CSS file, readers can use a different style sheet, perhaps one on their own
computer, to override the one the author has specified. However, if the author or the
reader did not link the document to a specific style sheet the default style of the browser
will be applied. CSS specifies a priority scheme to determine which style rules apply if
more than one rule matches against a particular element. In this so-called cascade,
priorities or weights are calculated and assigned to rules,so that the results are
predictable.
JavaScript copies many names and naming conventions for Java, but the two languages
are otherwise unrelated and have different semantics. The key design principles within
JavaScript are taken from the Self Scheme programming languages. It is a multi-paradigm
language, supporting object-oriented, imperative and functional programming styles. The
application of JavaScript to use outside of web pages for example in PDF documents,
site-specific browsers and desktop widgets are also significant. Newer and faster
JavaScript VMs and platforms built upon them (notably
Node.js) have also increased the popularity of JavaScript for server-side web
applications. On the client side JavaScript was traditionally implemented as an interpreted
language but just-in-time compilation is now performed by recent (post-2012) browsers.
PHP: PHPis a server-side scripting language designed for web development but also
used as a general-purpose programming language. PHP is now installed on more than
244 million websites and 2.1 million web servers. Originally created by 15 Rasmus Lerdorf
in1995, The reference implementation of PHP is now produced by The PHP Group. While
PHP originally stood for Personal HomePage it now stands for PHP Hypertext
Preprocessor, a recursive backronym.
PHP code is interpreted by a web server with a PHP processor module, which generates
the resulting web page PHP commands can be embedded directly into an HTML source
document rather than calling an external file to process data. It has also evolved to include
a command-line interface capability and can be used in standalone graphical applications.
PHP is free software released under the PHP License. PHP can be deployed on most
web servers and also as a stand alone shell on almost every operating system and
platform,free of charge.
MySQL is a popular choice of database for use in web applications, and is a central
component of the widely used LAMP open-source web application software stack (and
other#39; AMP' stacks).LAMP is an acronym for " Linux,Apache, MySQL,
Perl/PHP/Python " Free-software-open-source projects that require a full-featured
database management system often use MySQL.
For commercial use,several paid editions are available, and offer additional functionality.
Applications which use MySQL databases include: TYPO3, MODx, Joomla, WordPress,
phpBB, MyBB,Drupal and other software. MySQL is also used in many high-profile, large-
scale websites, including Wikipedia, Google (though not for searches), Facebook,Twitter,
Flickr andYouTube.
PRACTICAL - 3
THEORY
Entity Relationship Diagrams are a major data modeling tool and will help organize the
data in your project into entities and define the relationships between the entities. This
process has proved to enable the analyst to produce a good database structure so that
the data can be stored and retrieved in the most efficient manner.
Entity
A data entity is anything real or abstract about which we want to store data. Entity Types
fall into five classes: roles, events, locations, tangible things or concepts. E.g. employee,
payment, campus, book. Specific examples of an entity are called instances. E.g. the
employee John Jones, Mary Smith ' payment,etc.
Relationship
A data relationship is a natural association that exists between one or more entities. E.g.
Employees process payments. Cardinality defines the number of occurrences of one
entity for a single occurrence of the related entity. E.g. an employee may process Many
payments but might not process any on the nature of hairjob.
Attribute
A data attribute is a characteristic common to all or most instances of a particular entity.
Synonyms include property, data element, field. E.g. Name, address, Employee Number,
pay rate are all attributes of the entity employee. An attribute or combination of attributes
uniquely identifies one and only one instance of an entity is called a primary key or
identifier. E.g. Employee Number is a primary key for Employee.
Data Flow Diagram Definition: A data flow diagram shows the way information flows
through a process or system. It includes data inputs and outputs, data stores, and the
various sub-processes the data moves through.
DFD are built using standardized symbols and notation to describe various entities and
their relationships. Data flow diagrams visually represent systems and processes that
would be hard to describe in a chunk of text. You can use these diagrams to map out an
existing system and make it better or to plan out a new system for implementation.
Visualizing each element makes it easy to identify efficiencies and produce the best
possible system.
Data Flow Diagram (DFD) depicts the flow of information and transformation applied when
data moves in and out from a system. The overall system is represented and described
using input, processing and output in DFD.
The overall processing unit will contain the following output that a system will produce or
generate:
● Books will be the output as the book demanded by the student will be given to them. ●
Information on demand books should be displayed by the library information system that
can be used by the student while selecting the book which makes it easier for the
student.
1. Level 0 DFD:
2. Level1 DFD: At this level, the system has to be shown or exposed with more detailed
processing. The processes that are important to be carried out are:
● Book delivery
● Search By Topic
List of authors, List of Titles, List of Topics, the bookshelves from which books can
be located are some information that is required for these processes.
Use Case Diagrams (Behavior Model Or Diagram) describe and display the relational
interaction between the users and providers of application service or the system. It
describes different actions that a system performs in collaboration to achieve something
with one or more users of the system.
1. User who registers himself as a new user initially is regarded as staff or student of the
library system. For the user to get registered as a new user, registration forms are
available that are needed. After registration a library card is issued to the user by the
librarian. On the library card an unassigned cardholder or user.
2. After getting the library card a new book is requested by the user for further
requirement.
3. After requesting the desired book or the requested book is reserved by the user that
means no other user can request for that book.
4. Now the user can renew a book that means the user can get a new due date for the
desired book if the user renewed them.
5. If the user somehow forgets to return the book before the due date then the user pays
fine or If the user forgets to renew the book till the due date then the book will be
overdue and the book will be overdue and the book will be overdue and the user pays
fine.
7. Librarians have a key role in this system. Librarian adds the records in the library
database about each student or user every time issuing the book or returning the book
or paying a fine.
8. Librarian also deletes the record of a particular student if the student leaves the college
or passed out from the college. If the book no longer exists in the library then the record
of the particular book is also deleted.
Activity Diagram: An activity diagram is very similar to a flow chart. We use Activity
Diagrams to illustrate the flow of control in a system and refer to the steps involved in the
execution of a use case. We model sequential and concurrent activities using activity
diagrams. So we basically depict workflows visually using an activity diagram. An activity
diagram focuses on the condition of flow and the in which it happens. We describe or
depict what causes a particular event using an activity diagram. UML models basically
three types of diagrams, namely, structure diagrams, interaction diagrams and behavior
diagrams. An activity diagram isa behavioral diagram i.e. it depicts the behavior of a
system. An activity diagram portrays the control flow from a start point to a finish point
showing the various decision paths that exist while the activity is being executed.
Initial State or StartPoint: A small filled circle followed by an arrow represents the initial
action state or the start point for an activity diagram. For an activity diagram using
swimlanes, make sure the start point is placed in the top left corner of the first column.
Action Flow: Action flow also called edges and paths illustrate the transitions from one
action state to another.They are usually drawn with an arrowed line.
Object Flow: Object flow refers to the creation and modification of objects by activities.
An objectflow arrow from an action to an object means that the action creates or influences
the object. An object flow arrow from an object to an action indicates that the action state
uses the object.
Decisions and Branching A diamond represents a decision with alternate paths. When
an activity requires a decision prior to moving on to the activity, add a diamond between
the two activities. The outgoing alternates should be labeled with a condition or guard
expression.You can also label one of the lads "else."
Guards In UML, guards are a statement written next to a decision diamond that must be
true before moving next to the next activity. These are not essential, but are useful when
a specific answer, such as "Yes, three labels are printed," is needed before moving
forward.
Activity Diagram For Library Management System
PRACTICAL - 7
UML - State chart Diagrams: The name of the diagram itself clarifies the purpose of the
diagram and other details. It describes different states of a component in a system. The
states are specific to a component/object of a system.
Activity diagram explained in the next chapter, is a special kind of a State chart diagram.
As the State chart diagram defines the states, it is used to model the lifetime of an object.
Purpose of State chart Diagrams: State chart diagram is one of the five UML diagrams
used to model the dynamic nature of a system. They define different states of an object
during its lifetime and these states are changed by events. State chart diagrams are useful
to model the reactive systems.
Reactive systems can be defined as a system that responds to external or internal events.
State chart diagram describes the flow of control from one state to another state.
States are defined as a condition in which an object exists and it changes when some
event is triggered. The Most important purpose of a State chart diagram is to model the
lifetime of an object from creation to termination.
State chart diagrams are also used for forward and reverse engineering of a system.
However, the main purpose is to model the active system.
Following are the main purposes of using State chart diagrams to model the dynamic
aspect of a system.
Actor: a role played by an entity that interacts with the subject is called an actor. It
is out of the scope of the system. It represents the role, which involves human
users and external hardware or subjects. An actor may or may not represent a
physical entity, but it purely depicts the role of an entity. Several distinct roles can
be played by an actor or vice versa.
Activation: It is represented by a thin rectangle on the lifeline. It
describes the time period in which an operation is performed by an
element, such that the top and the bottom of the rectangle is associated
with the initiation and the completion time respectively.
Messages: The messages depict the interaction between the objects
and are represented by arrows. They are in the sequential order on the
lifeline. The core of the sequence diagram is formed by messages and
lifelines.
An object consists of several features. Multiple objects present in the system are
connected to each other. The collaboration diagram, which is also known as a
communication diagram, is used to portray the object's architecture in the system.
Objects: The representation of an object is done by an object symbol with its name and
class underlined,separated by a colon. In Collaboration Diagram, objects are utilized in
the following ways:
Actors: In the collaboration diagram the actor plays the main role as it invokes the
interaction. Each actor has its respective role and name. In this, one actor initiates the
use case.
Links: The link is an instance of association which associates the objects and actors. It
Portrays a relationship between the objects through which the messages are sent. It is
represented by a solid line. The link helps an object to connect with or navigate to another
object such that the message flows are attached to links.
1. Determine the behavior for which the realization and implementation specified.
2. Discover the structural elements that are class roles, objects and sub systems for
performing the functionality of collaboration.
a. Choose the context of an Interaction: system, subsystem, use case and operation.
AIM: Assign objects in sequence diagrams to classes and make class diagrams.
The class diagram depicts a static view of an application. It represents the types of objects
residing in the system and the relationships between them. A class consists of its objects
and also it may inherit from other classes.
A class diagram is used to visualize, describe, document various different aspects of the
system,and also construct executable software code. It shows the attributes, classes,
functions and relationships to give an overview of the software system.
It constitutes class names, attributes, and functions in a separate compartment that helps
son software developments . It is Collection Of Classes, interfaces, associations,
collaborations and constraints, it is termed as structural diagram.
Purpose:
Benefits:
● It can represent the object model for complex systems.
● It reduces the maintenance time by providing an overview of how an application is
structured before coding.
● It provides a general schematic for better understanding.
Components:
● Upper Section: The upper section encompasses the name of the class. A class is a
representation of similar objects that share the same relationships, attributes,
operations and semantics. Some of the following rules that should be taken into
account while representing class are given below:
○ The attributes are written along with its visibility factors which are public (+), private(-
), protected(#) and package (~).
○ The accessibility of attribute classic illustrated by the visibility factors. ○ A meaningful
name should be assigned to the attribute which will explain its usage inside the class.
● Lower Section: The lower section contains methods or operations. The methods
represented in the form of a list,where each method is written in a single line. It
demonstrates how a class interacts with data.
Relationships:
● Dependency: A dependency is a
semantic
relationship between two or more classes
where a change in one class causes
changes in another class. It forms a
Weaker Relationship. In The Following Example, Student_Name is dependent on the
Student_Id.
● Generalization: A generalization is a
relationship between a parent class
(superclass) and a child class
(subclass).
In this the child class is inherited
from the
parent class. For Example, The
Current
Account, Saving Account and Credit
Account are the generalized form of Bank
Account.
● Association: It describes a static or
physical connection between two or
more
objects. It depicts how many objects are
there in the relationship. For example, a
department is associated with the college.
Some key points that are needed to keep in mind while drawing a class diagram are given
below:
To describe the complete aspect of the system, it is suggested to give a meaningful name
to the class diagram.