0% found this document useful (0 votes)
11 views

Oose Final

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

Oose Final

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 25

INDEX

Sr No. AIM Remarks

1. Choose anyone's project and Write the


complete problem statement.

2. Write the software requirement


specification document.

3. To draw a sample Entity Relationship diagram for a


real projector system.

4. To draw the data flow diagrams at level 0 and level 1.

5. Draw Use Case Diagram.

6. Draw Activity Diagram of all use cases

7. Draw a state chart diagram of all use cases.

8. Draw a sequence diagram of all use cases.

9. Draw Collaboration Diagram of all use cases.

10. Assign objects in sequence diagrams to classes

and make a class diagram.


PRACTICAL - 1

AIM: Choose anyone's project and Write the complete problem statement.

Project Name: Library Management System

ProblemStatement: The problem occurred before having computerized system includes


:

● 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.

● Difficult To search record - When there is no computerized system there is always a


difficulty in searching records if there records are large.

● 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.

Modules for Library Management System:

1. User Module
● New User Register: To sign up a new user to this system.

● Student Login: So as to confirm that only authenticated user using project.

● 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

AIM: Write the software requirement specification document.

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:

HTML: HyperTextMarkupLanguage(HTML)is the main markup language for creating web


pages and other information that can be displayed in a web browser. HTMLis written in
the form of HTML elements consisting of tags enclosed in angle brackets (like <html>)
within the web page content. HTML tags most commonly come in pairs like and although
some tags represent empty elements soar unpaired, for example &img". The first tag in a
pair is the start tag, and the second tag is the end tag (they are also called opening tags
and closing tags). In between these tags web designers can addtext, further tags,
comments and other types of text-based content.

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: JavaScript (JS) is a dynamic computer programming language. It is most


commonly used as part of web browsers, whose implementations allow client-side
scripts to interact with the user, control the browser, communicate asynchronously and
alter the document content that is displayed. It is also being used in server-side
programming, game development and the creation of desktop and mobile applications.
JavaScript is prototype-based scripting language with dynamic typing and has first-class
functions. Its Syntax was influenced by C.

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: MySQL("My S-Q-L", officially, but also called "My Sequel


") is (as ofJuly2013) the world's second most widely used open-source
relational database management system (RDBMS). It is named after co-founder Michael
Widenius' daughter, and the MySQL phrase stands for Structured Query Language. The
MySQL development project has made its source code available under the terms of the
GNU General Public License, As well as under a variety of proprietary agreements.
MySQL was owned and sponsored by a single for-profit firm,the Swedish company
MySQLAB,now owned by Oracle Corporation.

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

AIM: To draw a sample ENTITY RELATIONSHIP DIAGRAM for a real project or


system.

Hardware Requirements: Pentium 4 processor (2.4GHz),128 Mb RAM, Standard


keyboard and mouse, colored monitor.

Software Requirements: Rational Rose,WindowsXP,

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.

Entity Relationship (ER) Diagram


An Entity Relationship (ER) Diagram is a type of flowchart that illustrates how “entities”
such as people, objects or concepts relate to each other within a system. ER Diagrams
are most often used to design or debug relational databases in the fields of software
engineering, business information systems, education and research.
PRACTICAL - 4

AIM: To draw the data flow diagrams at level0 and level1.

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 inputs can be:

● Book Request when a student requests for a book.


● Library card when the student has to show or submit his/her identity as proof.

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.

Data store is used to represent this type of information.


PRACTICAL - 5

AIM: Draw use case diagram.

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.

Use Case Diagram For Library Management System


Here, we will understand the designing of use case diagram for the library management
system.Some Scenarios of the system as follows:

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.

6. Users can fill the feedback form they want.

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.

9. Updating databases is the important role of Librarians.


PRACTICAL - 6

AIM: Draw Activity Diagram of all use cases.

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.

Activity Diagram Notations

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.

Activity or ActionState: An action state represents the non-interruptible action objects.


You can draw an action state in SmartDraw using a rectangle with rounded corners.

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

AIM: Draw state chart diagram of all use cases.

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.

A State chart diagram describes a state machine.State machine can be defined as a


machine which defines different states of an object and these states are controlled by
external or internal events.

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.

● To model the lifetime of a reactive system.

● To describe different states of an object during its lifetime.

● Define a state machine to model the states of an object.


State Diagram For Library Management
PRACTICAL - 8

AIM: Draw Sequence Diagram of all use cases.


A sequence diagram simply depicts interaction between objects in a sequential order i.e.
the order in which these interactions take place. We can also use the terms event
diagrams or event scenarios to refer to sequence diagrams. Sequence diagrams describe
how and in what order the objects in a system function. These diagrams are widely used
by businessmen and software developers to document and understand requirements for
new and existing systems.

Purpose of a Sequence Diagram

1. To model high-level interaction among active objects within a system. 2. To

model interaction among objects inside a collaboration realizing a use case. 3. It

either models generic interactions or some certain instances of interaction.

Notations of a Sequence Diagram

Lifeline: An individual participant in the sequence diagram is represented by a lifeline. It


is positioned at the top of the diagram.

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.

Note: A note is the capability of attaching several remarks to the


element. It basically carries useful information for the modelers.

Benefits of a Sequence Diagram

● It Explores The Real-time application.

● It Depicts The Message Flow Between The Different Objects.

● It's easy to maintain.

● It's Easy To Generate.

● Implement Both Forward And Reverse Engineering.

● It can easily update as per the new changes the


system.

Sequence Diagram for Library Management System


PRACTICAL - 9

AIM: Draw Collaboration Diagram of all use cases.

Definition of Collaboration Diagram: The collaboration diagram is used to show the


relationship between the objects in a system. Both The sequence and the collaboration
diagrams represent the same information but differently. Instead of showing the flow of
messages, it depicts the architecture of the object residing in the system as it is based on
object-oriented programming.

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.

Notations of a Collaboration Diagram:


Following are the components of a component diagram that are listed below:

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:

● The object represented by specifying their name and class.


● It is Not Mandatory For Every Class To Appear.
● A class may constitute more than one object.
● In the Collaboration Diagram firstly the object is created and its class is specified.
● To differentiate an object from another object it is necessary to name them.

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.

Messages: It is a communication between objects which carries information and includes


a sequence number, so that the activity may take place. It is represented by a labeled
arrow which is placed near a link. The messages are sent from the sender to the receiver
and the direction must be navigable in that particular direction. The receiver must
message.
Steps for creating a Collaboration Diagram

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.

3. Think Through Alternative Situations that may be involved.


a. Implementation of a collaboration diagram at an instance level, if needed.

b. A specification level diagram may be made in the instance level sequence


diagram for summarizing alternative situations.

Collaboration Diagram For Library Management System


PRACTICAL - 10

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:

● it analyzes and designs static views of applications.

● It describes the major responsibilities of a system.

● It is a base for component and deployment diagrams.

● It is in corporate forward and reverse engineering.

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:

○ Capitalize the initial letter of the class name.


○ Place the class name in the center of the upper section.
○ A class name must be written in bold format.
○ The name of the abstract class should be written in italic format.
● Middle Section: The middle section constitutes the attributes which describe the quality
of the class. The Attributes Have the following characteristics:

○ 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.

● Multiplicity: It defines a specific range of allowable instances of


attributes. In case if a range is not specified one is considered as a
default multiplicity. For example, multiple patients are admitted to one
hospital.
● Aggregation: An aggregation is a
subset of association, which
represents a relationship. It is
more
specific than association. It Defines
a Part-whole or part-of relationship. In this kind of relationship, the child class can exist
independently of its parent class. The company encompasses a number of employees and
even if one employee resigns the company still exists.

● Composition: The composition is a


subset of aggregation. It portrays the
dependency between the parent
and
its child which means if one part is
deleted then the other part also gets discarded. It represents a whole-part relationship.
A contact book consists of multiple contacts and if you delete the contact book all the
contacts will be lost.

Abstract Classes: In the abstract class, no objects can be a


direct entity of the abstract class. The abstract class can
neither be declared nor be instantiated. It is used to find the
functionalities across the classes. The Notation of the abstract
class is similar to that of class. The only difference is that the
name of the class is written in italics. Since it does not involve
any implementation for a given function, it is best tousethe
abstract class with multiple objects.
Let us assume that we have an abstract class named displacement with a method
declared inside it and that method will be called as drive(). Now this abstract classmethod
kanbe implemented by any object for example, car, bike, scooter, cycle etc.

How To Draw a Class Diagram?


The class diagram is used most widely to construct software applications. It not only
represents a static view of the system but also all the major aspects of an application. A
collection of class diagrams as a whole represents a system.

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.

1. The objects and their relationships should be acknowledged in advance.

2. The attributes and methods (responsibilities) of each class must be known.

3. A minimum number of desired properties should be specified as more of the


unwanted properties will lead to a complex diagram.
4. Notes can be used as and when required by the developer to describe the aspects of
the diagram.
5. The diagrams should be redrawn and reworked as many times to make it correct before
producing its final version.
Class Diagram For Library Management System

You might also like