SOFWARE ENGG LAB MANUAL
SOFWARE ENGG LAB MANUAL
DATE:
AIM:
Write a Problem Statement to define a title of the project with bounded scope of project
PROJECT SCOPE
A project scope, or project scope statement, is a tool used to describe the major deliverables
of a project including the key milestones, high level requirements, assumptions, and constraints.
The project scope statement is a useful tool for future decision making when new change requests
are considered to modify the project scope.
PROBLEM STATEMENT:
The purpose of the Library Management system is to allow for storing details of a large number of
books, magazines, Journals, thesis and allow for add, search, borrow, return facilities separately to
administrator/Librarian, staff and students. Different privileges are given to different types of users.
The tasks to be done are:
1. Identify the main entities (objects) for this system.
2. Find out the relationships between these objects.
3. Find the necessary attributes and functions that need to be associated with each object
to implement the functionality mentioned above.
Project Scope
RESULT:
Thus the diagrams for the Library Management system has been designed, executed and
output is verified.
EX.NO: 2 SELECT RELEVANT PROCESS MODEL TO DEFINE ACTIVITIES
AIM:
Select relevant process model to define activities and related task set for assigned project
INTRODUCTION:
PROCESS DEVELOPMENT MODEL
It is also referred to as a linear-sequential life cycle model. It is very simple to understand and use.
In a waterfall model, each phase must be completed before the next phase can begin and there is no
overlapping in the phases.
WATERFALL MODEL - DESIGN AND ACTIVITIES
In this Waterfall model, typically, the outcome of one phase acts as the input for the next phase
sequentially.
The following illustration is a representation of the different phases of the Waterfall Model.
The sequential phases in Waterfall model are
❖ Requirement Gathering and analysis − All possible requirements of the system to be
developed are captured in this phase and documented in a requirement specification
document.
❖ System Design − The requirement specifications from the first phase are studied in this
phase and the system design is prepared. This system design helps in specifying hardware
and system requirements and helps in defining the overall system architecture.
❖ Implementation − With inputs from the system design, the system is first developed in
small programs called units, which are integrated in the next phase. Each unit is developed
and tested for its functionality, which is referred to as Unit Testing.
❖ Integration and Testing − All the units developed in the implementation phase are
integrated into a system after testing of each unit. Post integration, the entire system is tested for
anyfaults and failures.
❖ Deployment of system − Once the functional and non-functional testing is done, the product
is deployed in the customer environment or released into the market.
❖ Maintenance − There are some issues which come up in the client environment. To fix those
issues, patches are released. Also to enhance the product some better versions are released.
Maintenance is done to deliver these changes in the customer environment.
All these phases are cascaded to each other in which progress is seen as flowing steadily
downwards (like a waterfall) through the phases. The next phase is started only after the defined set
of goals are achieved for previous phase and it is signed off, so the name "Waterfall Model". In this
model, phases do not overlap.
❖ Requirement Gathering and analysis − The Library Management System shall be required to
maintain information about its users and books. It shall store databases for students, teachers
and books. The student database stores information about a student’s roll no, name, address,
course and year. The book database stores information about a book title, author, publisher,
cost, bill number, year of publishing and pages. The teacher database stores information
about a teacher’s id, name, department, designation, address and telephone number.
❖ System Design − Library Management System is a computerized system which can helps
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 user to manage
the transaction or record more effectively and time-saving, construct the Level 0 Data Flow
Diagram (DFD) as well as Level 1 DFD , Member Registration, Book Rental, Return book.
IMPLEMENTATION
Software Interfaces: Library Management System requires user to install SQL Server 2008. For
operating system, Library System requires Window XP or newer version.3.1.4
1. Integration and Testing − All the units developed in the implementation phase are
integrated into a system after testing of each unit.
2. Deployment of system − Once the functional and non-functional testing is
done; the product is deployed in the customer environment or released.
3. Maintenance − Maintenance is done to deliver the changes in the customer
environment.
RESULT:
Thus, the diagrams for the Library Management system have been designed, executed
and output is verified
Ex. No: 3 PREPARE BROAD SRS (SOFTWARE REQUIREMENT SPECIFICATION)
DATE: FOR THE ABOVE SELECTED PROJECTS
AIM:
Prepare broad SRS (Software Requirement Specification) for the above selected projects
INTRODUCTION:
The output of the requirements phase of the software development process is Software
Requirements Specification (SRS) (also known as requirements document). This document lays
a foundation for software engineering activities and is created when entire requirements are elicited
and analyzed. SRS is a formal document, which acts as a representation of software that enables the
users to review whether it (SRS) is according to their requirements. In addition, it includes user
requirements for a system as well as detailed specifications of the system requirements.
CHARACTERISTICS OF SRS:
Software requirements specification should be accurate, complete, efficient, and of high quality, so
that it does not affect the entire project plan. An SRS is said to be of high quality when the
developer and user easily understand the prepared document. Other characteristics of SRS are
discussed below.
1. Correct: SRS is correct when all user requirements are stated in the requirements document. The
stated requirements should be according to the desired system. This implies that each requirement is
examined to ensure that it (SRS) represents user requirements. Note that there is no specified tool or
procedure to assure the correctness of SRS. Correctness ensures that all specified requirements are
performed correctly.
2. Unambiguous: SRS is unambiguous when every stated requirement has only one interpretation.
This implies that each requirement is uniquely interpreted. In case there is a term used with multiple
meanings, the requirements document should specify the meanings in the SRS so that itis clear and
easy to understand.
3. Complete: SRS is complete when the requirements clearly define what the software is required
to do. This includes all the requirements related to performance, design and functionality.
4. Ranked for importance/stability: All requirements are not equally important; hence each
requirement is identified to make differences among other requirements. For this, it is essential to
clearly identify each requirement. Stability implies the probability of changes in the requirement in
future.
5. Modifiable: The requirements of the user can change; hence requirements document should be
created in such a manner that those changes can be modified easily, consistently maintaining the
structure and style of the SRS.
6. Traceable: SRS is traceable when the source of each requirement is clear and facilitates the
reference of each requirement in future. For this, forward tracing and backward tracing are used.
Forward tracing implies that each requirement should be traceable to design and code elements.
Backward tracing implies defining each requirement explicitly referencing itssource.
7. Verifiable: SRS is verifiable when the specified requirements can be verified witha cost-
effective process to check whether the final software meets those requirements. The requirements
are verified with the help of reviews.
8. Consistent: SRS is consistent when the subsets of individual requirements defined do not
conflict with each other. For example, there can be a case when different requirements can use
different terms to refer to the same object. There can be logical or temporal conflicts between the
specified requirements and some requirements whose logical or temporal characteristics are not
satisfied.
RESULT:
Thus the diagrams for the Library Management system has been designed, executed and
output is verified
Ex. NO: 4 Prepare USE Cases and Draw Use Case Diagram using modeling Tool
DATE:
AIM:
Prepare USE Cases and Draw Use Case Diagram using modelling Tool
Introduction
The purpose of the system is to allow for storing details of many books and allow for add,
search, borrow, and return facilities separately to administrator, staff and students. Different
privileges are given to different types of users. Using the OOSE (Object Oriented Software
Engineering) we try to express the requirements as use cases consisting of actors and how they
interact with the system. We Define the objects and use cases as system objects. We define the
functions and attributes within these system objects.
Actors
1. Book (Attributes: title, author, isbn, price: Functions: add book, remove book Extended
Functions:login, login_failed, search_book, requisituion_ist)
2. Transaction (Attributes: student_id, book_id, staff_idFunctions: borrow_book, return_book
Extendedfunctions: search_student, search_staff, search_book)
3. Registration (Attributes: student_name, student_rollno, student_id, Staff_name, staff_designation,
staff_id) Functions: register_student, register staff Extended Function: login, login_failed,
search_student, search_staff, search_unsuccessful)
4. Report (Attributes:book_id , student_id, date_of_returnFunctions: defaulters_list,
borrower_listrequisition_listExtended Functions: login, login_failed)
5. Search (Attributes:student_id, book_id, staff_idFunctions: login, login_failed,
search_book, search_student, search_staff, search_unsuccessful)
6. Administrator (Attributes: name, administrator_idExtended Functions:login, register,
search, transaction, report)
❖ Staff (Attributes : name, staff_idExtended Functions: login, register, search, view)
❖ Student (Attributes: name, student_idFunctions: login, search)
❖ Login (Attributes: student_id,administrator_id,staff_id,Password,Functions: login,
login_failedExtended Functions: register_student,regisater_staff)
USE CASES
1. Use Case #1 Registration
Primary Actors: Administrator, Staff Pre- Condition: The student should have a valid college
membership document which contains his name, date_of_birth, course, rollno to obtain library
membership. The same criteria apply for registration of library and other staff members including
the administrator.
Main Scenario
❖ The student or staff or administrator begins the system.
❖ If the login is successful. Student or staff or administrator enters the book name or ISBN
or author name and presses search
❖ If the login is successful, then it is possible to search for any student by entering his id.
❖ To search for a staff member the administrator enters his login id.
❖ If successful he can search for any of the staff members. Alternative Scenario
❖ The login fails.
❖ The student or staff or administrator can re-register themselves
❖ If the search is unsuccessful then the administrator should add that members.
❖ If the book search is unsuccessful then that book should be added.
3. If both is not currently available and is part of the requisition list it can be added to the book
database.
4. To remove a book it is again searched in the library system
5. If it is found it should be checked in borrower list.
6. If it is not in the borrowed list it can be removal.Alternate Scenarios
7. If the login is unsuccessful then staff should re-register themselves.
8. If a book is to be added and on search it is already found it should note added again.
9. If book is to be removed and on search it is not found and is also not part of borrowers list
then there is any need to remove it.
5. Use Case #5 Report
Primacy Actors Administrator Staff
Pre-Condition - To generate any report the staff or administrator should he registered with the
library and to generate report on any book or student they should he part of the library
system.Main Scenario
1. The staff or administrator logins to the system.
2. To generate report on defaulters the staff or administrator should first search for that student.
3. If the student is found then he can be checked in the defaulters list.
4. To generate report on borrowed books the staff or administrator must search for that book.
5. If found that book can be checked in the borrowed books list.
6. To generate report on requisition list of books he staff or administrator should first search for
that book.
7. If a book is not found then it should be checked in the requisition list.
Alternate Scenarios
1. If the login is not successful then staff or administrator should go to the registration page.
2. If student is not found after search he should be re-registered.
3. If book is not found then that book should be added again before checking it in the borrowers
list.
6. UseCase#6 Login
Primary Actors: Administrator, Staff. Student
Pre-Condition: If the student or staff or administrator want.; to login then he should have been
first registered.
Main Scenario
1. To login the student or staff or administrator should first open the Login page.
2. They should then enter their IDs and passwords.
3. Once the id and password are verified they are moved to the options page where they can
❖ If login successfully they mug search for that book by putting book id or title or is bn.
❖ If the book is found they should enter book id to view the details and also edit it.
❖ To view details or edit details of any student or staff the administrator or staff should first
login to the library system.
❖ If login successfully they must search for that student or staff by putting student id or staff
id.
❖ If the student or gaff is found they should enter student id or staff id to view the details
and also edit it.
Alternate Scenarios
❖ If login fails the administrator should re-register that staff
❖ If book search is unsuccessful then that book cannot be viewed or edited.
❖ If staff search is unsuccessful then that staff member cannot be viewed or edited.
RESULT:
Thus the diagrams for the Library Management system has been designed, executed and
output is verified
Ex. No: 5 DEVELOP THE ACTIVITY DIAGRAM TO REPRESENT FLOW FROM ONE
AIM:
To create an automated system to perform the Passport Process.
PROBLEM STATEMENT:
Passport Automation System is used in the effective dispatch of passport to all of the applicants.
This system adopts a comprehensive approach to minimize the manual work and schedule
resources, time in a cogent manner. The core of the system is to get the online registration form
(with details such as name, address etc.,) filled by theapplicant whose testament is verified for its
genuineness by the Passport Automation System with respect to the already existing information in
the database.
The server is directly connected to the client systems. The client systems haveaccess to the
database in the server.
ACTIVITY DIAGRAM:
RESULT:
Thus the diagrams for the Library Management system has been designed, executed and
output is verified
Ex. No: 6 DEVELOP DATA DESIGNS USING DFD DECISION TABLE &
DATE: ER DIAGRAM
AIM:
Develop data Designs using DFD Decision Table & ER Diagram
INTRODUCTION
Data flow diagram is graphical representation of flow of data in an information system. It is capable
of depicting incoming data flow, outgoing data flow and stored data. The DFD does not mention
anything about how data flows through the system.
There is a prominent difference between DFD and Flowchart. The flowchart depicts flow of control
in program modules. DFDs depict flow of data in the system at various levels. DFD does not
contain any control or branch elements.
TYPES OF DFD
Data Flow Diagrams are either Logical or Physical.
❖ Logical DFD - This type of DFD concentrates on the system process, and flow of data in
the system. For example in a Banking software system, how data is moved between different
entities.
❖ Physical DFD - This type of DFD shows how the data flow is actually implemented in the
system. It is more specific and close to the implementation.
DFD COMPONENTS
DFD can represent Source, destination, storage and flow of data using the following set of
Components
Entities - Entities are source and destination of information data. Entities are represented by a
rectangle with their respective names.
Process - Activities & action taken on the data are represented by Circle or Round- edged
rectangles.
Data Storage - There are two variants of data storage - it can either be represented as a rectangle
with absence of both smaller sides or as an open-sided rectangle with only one side missing.
Data Flow - Movement of data is shown by pointed arrows. Data movement is shown from
The base of arrow as its source towards head of the arrow as destination
LEVELS OF DFD:
Level 0 - Highest abstraction level DFD is known as Level 0 DFD, which depicts the entire
information system as one diagram concealing all the underlying details. Level 0 DFDs are also
known as context level DFDs.
Level 1 - The Level 0 DFD is broken down into more specific, Level 1 DFD. Level 1 DFD depicts
basic modules in the system and flow of data among various modules. Level 1 DFD also mentions
basic processes and sources of information.
Level 2 - At this level, DFD shows how data flows inside the modules mentioned in Level 1. Higher
level DFDs can be transformed into more specific lower level DFDs with deeper level of
understanding unless the desired level of specification is achieved.
DECISION TABLES
A Decision table represents conditions and the respective actions to be taken to address them,
Ina structured tabular format.
It is a powerful tool to debug and prevent errors. It helps group similar information into a
single table and then by combining tables it delivers easy and convenient decision-making.
CREATING DECISION TABLE
To create the decision table, the developer must follow basic four steps:
❖ Identify all possible conditions to be addressed
❖ Determine actions for all identified conditions
❖ Create Maximum possible rules
❖ Define action for each rule
Decision Tables should be verified by end-users and can lately be simplified
EXAMPLE
Let us take a simple example of day-to-day problem with our Internet connectivity. We begin by
identifying all problems that can arise while starting the internet and their respective possible
solutions.
We list all possible problems under column conditions and the prospective actions under column
Actions.
Conditions/Actions Rules
Ping is Working N N Y Y N N Y Y
Opens Website Y N Y N Y N Y N
Do no action
❖ Entity - An entity in ER Model is a real world being, which has some properties called
attributes. Every attribute is defined by its corresponding set of values, called domain.
❖ For example, Consider a school database. Here, a student is an entity. Student has various
attributes like name, id, age and class etc.
❖ Relationship - The logical association among entities is called relationship. Relationships are
mapped with entities in various ways. Mapping cardinalities define the number of
associations between two entities.
❖ Mapping cardinalities:
▪ one to one
▪ one to many
▪ many to one
▪ many to many
LIBRARY MANAGEMENT SYSTEM
Figure 2 DED at level-1 Library Information System
ER DIAGRAM
DECISION TABLE
RESULT:
Thus the diagrams for the Library Management system has been designed, executed and
output is verified
Ex. No: 7 DRAW CLASS DIAGRAM, SEQUENCE DIAGRAM, COLLABORATION
Date: DIAGRAM, STATE TRANSITION DIAGRAM FOR THE ASSIGNED PROJECT
AIM:
To create an automated system to perform the Passport Process.
Passport Automation System is used in the effective dispatch of passports to all of the applicants.
This system adopts a comprehensive approach to minimize the manual work and schedule
resources, time in a cogent manner. The core of the system is to get the online registration form
(with details such as name, address etc.,) filled by the applicant whose testament is verified for its
genuineness by the Passport Automation System with respect to the already existing information in
the database.
SOFTWARE INTERFACE
❖ Front End Client - The applicant and Administrator online interface is built using JSP and
HTML. The Administrator’s local interface is built using Java.
❖ Web Server - Glassfish application server (Oracle Corporation).
❖ Back End - Oracle database.
HARDWARE INTERFACE
The server is directly connected to the client systems. The client systems have access to the database
in the server.
registration
enter applicant id
check status
administrator
The class diagram, also referred to as object modeling, is the main static analysis diagram. The main
task of object modeling is to graphically show what each object will do in the problem domain. The
problem domain describes the structure and the relationships among objects.
The Passport Automation system class diagram consists of four classes Passport Automation
System
❖ New registration
❖ Gender
❖ Application Status
❖ Admin authentication
❖ Admin Panel
❖ It illustrates the in trusting events and state of an object and behaviors of an object is
reactionto an event. Transaction shows as allows labeled with their event. It is included with
initial pseudo state and end state.
❖ The state chart diagram of passport automation system that the service of authority, who is
issues the passport received by the applicant and getting the passport.
(VI) INTERACTION DIAGRAM:
A sequence diagram represents the sequence and interactions of a given USE- CASE or scenario.
Sequence diagrams can capture most of the information about the system. Most object-to-object
interactions and operations are considered events and events include signals, inputs, decisions,
interrupts, transitions and actions to or from users or external devices.
An event also is any action by an object that sends information. The event line represents a message
sent from one object to another, in which the “form” object is requesting an operation be performed
by the “to” object. The “to” object performs the operation using a method that the class contains.
It is also represented by the order in which things occur and how the objects in the system
sendmessages to one another.
The sequence diagram for each USE-CASE that exists when a user administrator, check status
andnew registration about passport automation system are given.
administrator system admin panel application
database
1: 1.username\password
2: authetication suceed
6: give details
The diagrams show the process done by the administrator to the Passport Automation system. The
applicant has to enter his details. The details entered are verified by the administrator and the
applicant is approved if the details match then the passport is dispatch, otherwise an appropriate
error message is displayed
applicant system
database
1: enter applicant id
1:enterapplicantid
3: display thestatus
applicant
system
applicant
applicant database
database
system
system
2: registeration form
3: fill in details
4: submit
5: give applicatino id
databas
e
The diagrams show the applicant request the system for registration and the system provide the
register form and applicant fill the form and submit and the system give the applicant id. The
database stores the full details.
RESULT:
Thus the for passport automation system has been successfully executed and codes are
generated.
Ex.No: 8. WRITE TEST CASES TO VALIDATE REQUIREMENTS OFASSIGNED
DATE : PROJECT FROM SRS DOCUMENT
AIM :
Write Test Cases to validate requirements of assigned project from SRS Document
INTRODUCTION
What are the requirements of library management system?
1. User able to register and login.
2. User can search the added books and check in or out.
3. User can pay the fine or extend the duration of borrowed period.
4. User can change the password and other profile details.
5. User can add the books.
6. User can place the holds and modify existing holds.
7. User can manage the inventory of the books.
These are some of the common features expected from the library management system. So you now
have some test scenarios to check for. In addition to these test scenarios, you have GUI based
software to check for the bugs, usability and functionality.
Testing Login of Library System
❖ Check if the username field accepts valid username and password field accepts valid
password.
❖ Check if the wrong username and valid password allows access to any specific account.
❖ Check if the valid username and wrong password allows access to any specific account.
❖ Check if the invalid credentials open the random account.
Testing User Management
❖ You can also check the transactions of the member and also search for the member.
❖ Check if the member can be searched using the first name or last name.
❖ Check if the member transactions are updated.
❖ Check if the user data can be modified if you are admin.
❖ Check if the user can be removed using delete member feature.
Testing Search system of Library
Search system should allow you to search for either member profiles or books.
❖ Check if the search function allows searching of books as per title, ISBN, author, genre
or all of the criteria.
❖ Check if the search filter exists as per – books, cds, magazines, videos and software or
all of them.
❖ Check if the search filter has categories feature.
LOGIN FORM:
SL.No Test Case Excepted Result Test Result
1 Enter valid name and password Software should display Successful
& click on login button main window
2 Enter invalid Software should not successful
display main window
2 On the Click of DELETE Button This deletes the details of book Successful
byusing Accession
no.
3 On the Click of UPDATE Modified records are Updated in Successful
Button database by clicking
UPDATE button.
6 On the Click of EXIT button Exit the current book details successful
form
7 On the Click of NEXT button Display the next form
RESULT:
Thus the for passport automation system has been successfully executed and codes are
generated.
EX. NO: 9 EVALUATE SIZE OF THE PROJECT USING FUNCTION POINT METRIC
DATE: FOR THE ASSIGNED PROJECT
AIM:
Evaluate Size of the project using function point metric for the assigned project
Introduction
A function point (FP) is a component of software development which helps to approximate the cost
of development early in the process. It is a process which defines the required functions and their
complexity in a piece of software to estimate the software's size and scope upon completion.
A function point calculates software size with the help of logical design and performance of
functions as per user requirements. It also helps in determining the business functionality of a
software application. A function point has a number of benefits, including increase in productivity
and reduction in the risk of inflation of created code. Function points can be derived from software’s
requirements and can be estimated in the early phases of software development, before the actual
lines of code can be determined. The number of function points in a code depends on function
complexity.
How to calculate FP?
The data for following information domain characteristics are collected:
1. Number of user inputs- Each user input which provides distinct application data to the
software is counted.
2. Number of user outputs- Each user output that provides application data to the user is
counted. Screens, reports, error messages.
3. Number of User inquiries – on-line inputs that results in the generation of some
immediate software response in the form of an output.
4. Number of files- Each logical master file, i.e. a logical grouping of data that may be
part of database.
5. Number of external interfaces – All machine –readable interfaces that are used to
transmit information to another system are counted.
The organization needs to develop criteria which determine whether a particular entry is
simple,average or complex.
The weighting factor should be determined by observation or by experiments.
Total estimated project cost= Cost per FP * FP
RESULT:
Thus the problem has been executed and output is verified.
EX. NO: 10 ESTIMATE COST OF THE PROJECT USING COCOMO AND COCOCMOII
DATE: FOR THE ASSIGNED PROJECT
AIM:
Estimate cost of the project using COCOMO and COCOCMOII for the assigned project
Introduction
The Constructive Cost Model (COCOMO) is a procedural cost estimate model for software
projects that was created by Barry Boehm in the 1970s. It has been commonly used to project costs
for a variety of projects and business processes.
COCOMO in a Coconut-shell
E = a (KLOC )b
Where
E is the Effort in staff months
a and b are coefficients to be determined KLOC is thousands of lines of code
The Constants
Mode a b
organic 2.4 1.05
Semi -detached 3.0 1.12
embedded 3.6 1.20
The Modes
Organic
2-50 KLOC, small, stable, little innovation Semi-detached
50-300 KLOC, medium-sized, average abilities, medium time-constraints Embedded
> 300 KLOC, large project team, complex, innovative, severe constraints
Examples
Suppose size is 200 KLOC,
Organic „ 2.4(200)1.05 = 626 staff-months „
Semi-Detached „ 3.0(200)1.12 = 1,133 staff-months „Embedded „ 3.6(200)1.20 = 2,077 staff-
months
Project Duration
TDEV = c(E)d
Where
TDEV is time for development
c and d are constants to be determined is the effort
Example
Picking up from the last example, „1. Organic
E = 626 staff months
TDEV = 2.5(626)0.38 = 29 months
Semi-detached
E = 1,133
TDEV = 2.5(1133)0.35 = 29 months „
Embedded E = 2077
TDEV = 2.5(2077)0.32 = 29 months
RESULT:
Thus the problem has been executed and output is verified.
EX.NO: 11 USE CPM/PERT FOR SCHEDULING THE ASSIGNED PROJECT
DATE:
AIM:
Use CPM/PERT for scheduling the assigned project
INTRODUCTION:
Critical path is the sequential activities from start to the end of a project. Although many projects
have only one critical path, some projects may have more than one critical path depending on the
flow logic used in the project.
If there is a delay in any of the activities under the critical path, there will be a delay of the project
deliverables. Most of the time, if such delay has occurred, project acceleration or resequencing is
done in order to achieve the deadlines.
The critical path method is based on mathematical calculations, and it is used for scheduling project
activities. This method was first introduced in 1950s as a joint venture between Remington Rand
Corporation and DuPont Corporation.
The initial critical path method was used for managing plant maintenance projects. Although the
original method was developed for construction work, this method can be used for any project
where there are interdependent activities. In the critical path method, the critical activities of a
program or a project are identified. These are the activities that have a direct impact on the
completion date of the project.
Let's have a look at how critical path method is used in practice. The process of using the critical
path method in project planning phase has six steps.
❖ When detailed activities are used, the critical path method may become too complex to
manage and maintain.
Step 2: Activity sequence establishment
In this step, the correct activity sequence is established. For that, you need to ask three questions
foreach task of your list.
❖ Which tasks should take place before this task happens.
❖ Which tasks should be completed at the same time as this task?
❖ Which tasks should happen immediately after this task?
Step 3: Network diagram
❖ Once the activity sequence is correctly identified, the network diagram can be
drawn(refer to the sample diagram above).
❖ Although the early diagrams were drawn on paper, there are a number of computer
software such as Primavera, for this purpose nowadays.
Step 4: Estimates for each activity
❖ This could be a direct input from the WBS based estimation sheet. Most of the
companies use 3- point estimation method or COCOMO based (function points
based)estimation methods for tasks estimation.
❖ You can use such estimation information for this step of the process.
Step 5: Identification of the critical path
For this, you need to determine four parameters of each activity of the network.
❖ Earliest start time (ES) - The earliest time an activity can start once the previous dependent
activities are over.
❖ Earliest finish time (EF) - ES + activity duration.
❖ Latest finish time (LF) - The latest time an activity can finish without delaying the project.
❖ Latest start time (LS) - LF - activity duration.
The float time for an activity is the time between the earliest (ES) and the latest (LS) start time or
between the earliest (EF) and latest (LF) finish times.
During the float time, an activity can be delayed without delaying the project finish date. The critical
path is the longest path of the network diagram. The activities in the critical path have an effect on
the deadline of the project. If an activity of this path is delayed, the project will be delayed. In case
if the project management needs to accelerate the project, the times for critical path activities should
be reduced.
Step 6: Critical path diagram to show project progresses
Critical path diagram is a live artifact. Therefore, this diagram should be updated with actual values
once the task is completed.
This gives a more realistic figure for the deadline and the project management can know whether
theyare on track regarding the deliverables.
Advantages of Critical Path Method
Following are advantages of critical path methods:
❖ Offers a visual representation of the project activities.
❖ Presents the time to complete the tasks and the overall project.
❖ Tracking of critical activities.
CONCLUSION
Critical path identification is required for any project-planning phase. This gives the project
management the correct completion date of the overall project and the flexibility to float activities. A
critical path diagram should be constantly updated with actual information when the project
progresses in order to refine the activity length/project duration predictions.
PERT (Program Evaluation and Review Technique) is one of the successful and proven
methods among the many other techniques, such as, CPM, Function Point Counting, Top-Down
Estimating, WAVE, etc.PERT was initially created by the US Navy in the late 1950s. The pilot
project was for developing Ballistic Missiles and there have been thousands of contractors involved.
After PERT methodology was employed for this project, it actually ended two years ahead of its
initial schedule.
The PERT Basics
At the core, PERT is all about management probabilities. Therefore, PERT is involved in many
simple statistical methods as well. Sometimes, people categorize and put PERT and CPM together.
Although CPM (Critical Path Method) shares some characteristics with PERT, PERT has a
different focus. Same as most of other estimation techniques, PERT also breaks down the tasks into
detailed activities.
Then, a Gantt chart will be prepared illustrating the interdependencies among the activities. Then, a
network of activities and their interdependencies are drawn in an illustrative manner. In this map, a
node represents each event. The activities are represented as arrows and they are drawn from one
event to another, based on the sequence. Next, the Earliest Time (TE) and the Latest Time (TL) are
figured for each activity and identify the slack time for each activity.
THE THREE CHANCES
There are three estimation times involved in PERT; Optimistic Time Estimate (TOPT), Most
Likely Time Estimate (TLIKELY), and Pessimistic Time Estimate (TPESS). Following are further
details on each estimate
1. TOPT
This is the fastest time an activity can be completed. For this, the assumption is made that all the
necessary resources are available, and all predecessor activities are completed as planned.2.
TLIKELY
Most of the times, project managers are asked only to submit one estimate. In that case, this is
theestimate that goes to the upper management.
3. TPESS
This is the maximum time required to complete an activity. In this case, it is assumed that
many things go wrong related to the activity. A lot of rework and resource unavailability are
assumed when this estimation is derived.
The PERT Mathematics
BETA probability distribution is what works behind PERT. The expected completion time
(E)iscalculated as below:
E =(TOPT +4 x TLIEKLY + TPESS)/6CONCLUSION :
The best thing about PERT is its ability to integrate the uncertainty in project times estimations into
its methodology. Using PERT, project managers can have an idea of the possible time variation for
the deliveries and offer delivery dates to the client in a safer manner.
LIBRARY MANAGEMENT SYSTEM
CPM
Task T1 T2 T3 T4 T5 T6 T7 T8 T9
Duration(DAY 5 4 6 9 5 9 4 8 10
S)
Dependencies - - T1,T2 - T2,T4 T4 T3,T6 T6 T5,T7,T8
PERT
Given data
TLIKELY = 45
TPESS =60
TOPT= 30
Then
E = (TOPT +4 x TLIEKLY + TPESS)/6E= (30+4*45+60)/6 =270/6
E = 45 days
RESULT:
Thus the problem has been executed and output is verified.
EX.NO: 11. USE TIMELINE CHARTS OR GANTT CHARTS TO TRACK PROGRESS OF
DATE: THE ASSIGNED PROJECT
AIM:
Use timeline Charts or Gantt Charts to track progress of the assigned project
INTRODUCTION:
Gantt Charts are a way to graphically show progress of a project. Management of a project ismade
easier if it is viewed as small manageable items where the dependencies are visually illustrated,
parallel processes are discovered, the overall processing time determined and progress tracked. The
tasks of a project can be quite complex and dependent on each other.With a project management
tool, such as a Gantt chart, all subtasks of a task can be viewedgraphically.
In this document a relocation-process to another city is used for all examples and is based uponthe
accompanying Calc template, .pjm_template_english.ots which may be downloaded from
http://documentation.openoffice.org/HOW_TO/
Relocation DD to M
House-hunting
Cancel apartment DD
Organise relocation
Forwarding request
Relocation
Registration office
Reregister car
In illustration 1, the subtasks of the relocation-process appear on the y-axis, and the time line
on the x-axis. The bars show when a task should start and when it will be finished. Blue barsshow
tasks which have been completed. Yellow bars show work which still must be done.
This simplified project consists of eight subtasks “Task 1” to “Task 8”.Next, begin creating the chart
by selecting Insert—Chart:
Choose the horizontal bar-chart and click “Columns” to indicate that the data are arranged incolumnar
form.
Note: This changes the assignment of the axis in OpenOffice.org Calc. Nowthe horizontal axis is called “Y” and
the vertical axis is called “X”.
Click “Next >>” once again and enter chart and axis titles:
The task names are on the vertical axis (“Task 1” to “Task 8”) and the timeline is on the horizontal
axis.
CONVERTING THE SIMPLE BAR-CHART INTO A GANTT CHART
In order to edit the properties of an element in the diagram, Double-click the chart to select it.Next,
right-click to open the context menu and gain access to the chart properties:
The orange bar symbolizes the time up to the start of the task. This bar should be made invisible.
For this select the orange bar with a left-click, and then open its Object Properties after a right click.
Under the tab “Borders” choose Style – Invisible, and under the tab “Area” choose Fill –None. Now
the chart presents itself as follows:
The current version of Gantt.zip contains the example spreadsheet and the spreadsheet itself can be
downloaded from http://documentation.openoffice.org/HOW_TO/spreadsheet/pjm_template.ots
Note: This template uses macros and upon opening displays a security warning. Therefore, macros must be
enabled to use the file.
The file, created from the template, contains the following columns:
❖ “Info” - Information about the progress of the task
❖ “No.” - unique number of the task. It is recommended to count in intervals of 100, to be able
toadd tasks later on
❖ “Activity” - description of the task
❖ “Start” - start-date of the task
❖ “Duration” - planned or actual duration of the task in calendar days
❖ “End” - end-date of the task. This gets calculated based on the start-date and duration.
❖ “Progress” in percentage
❖ “Done” - Duration *progress
❖ “Undone” - expected time remaining: Duration - Done
“Predecessor” - List of tasks, which have to be completed, before this task can start. Separation is
made by spaces.
The column titles in the first row can be labeled freely, but the columns must not change their
position.
Some columns have a colored background:
❖ Gray: these columns contain formulas, which are calculated automatically
❖ Light blue: these columns can be edited manually; they can possibly be changed by the macro.
It is recommended to use the last row for the end of the project. Thus new tasks, which are inserted
above, are displayed in the chart automatically.
Next insert the start-date for the not-dependent tasks, as well as duration and expected end-date:
House-hunting starts on 01/03 and should be finished by 31/08. For all the other tasks the duration is
given.
Now, define the dependencies of the tasks. The relocation (700) for example cannot start before the
new leasing contract is signed (400) and the relocation is organized (500). The tasks300-9999 have no
dependencies, thus there are no start-dates for these tasks.
ILLUSTRATION 15: DEFINE DEPENDENCIES
Next insert the start-date for the not-dependent tasks, as well as duration and expected end-date:
House-hunting starts on 01/03 and should be finished by 31/08. For all the other tasks the duration is
given.
Now define the dependencies of the tasks. For example, relocation (700) cannot start before the
new leasing contract is signed (400) and relocation is organized (500). The tasks 300-9999have no
dependencies, thus there are no start-dates for these tasks.
As 20% of house-hunting are already done, and the current apartment is already canceled, the
progressis 20% and 100% respectively.
Illustration 18: Calculated duration
At this point call the macro by clicking on the button “Update”. The duration and end-dates are
calculated, and the column start is completed.
❖ The organization of the relocation, the registration at the office and the opening of an account
can be done simultaneously. On the other hand the bank account cannot be moved
immediately, because the current apartment is not yet relocated.
❖ If a task is completed, insert the real End-date, delete the duration and set the progress to
100%. When calling “Update” the next time, the required duration will be calculated.
❖ After each change in the table, invoke the macro ”Update” to update the table accordingly. The
“Info” column shows the current status of the project:
RESULT:
Thus the diagrams for the House Hunting System has been designed, executed and
output is verified.
EX.NO: 12 Use Timeline Charts Or Gantt Charts To Track Progress Of The Assigned
DATE: Project
AIM:
To find the timeline Charts or Gantt Charts to track progress of the assigned project
STEPS:
Make sure we're on the same page about the difference between a timeline chart and a Gantt chart. A timeline
chart is a visual representation of events that shows when they occurred in chronological order. A Gantt chart
is a type of timeline chart that also shows the duration of each event, as well as any dependencies between
events.
Now, let's get started with creating a Gantt chart for your project:
1. Identify the major tasks and milestones of your project. This can include things like research,
planning, design, development, testing, and deployment.
2. Break down each major task into smaller subtasks, if necessary. For example, the development task
might be broken down into subtasks like coding, debugging, and documentation.
3. Determine the start and end dates for each task or subtask, and estimate the duration of each task. Be
realistic in your estimates, and account for any potential delays or setbacks.
4. Identify any dependencies between tasks. For example, the testing task might depend on the
completion of the development task.
5. Create a Gantt chart using a software tool such as Microsoft Project or Excel. You can also use online
tools like Asana, Trello or Click Up that allow you to create Gantt charts.
6. Add the major tasks to the left-hand side of the chart, and the time frame along the top. Each task
should be represented by a horizontal bar that spans the duration of the task.
7. Add the subtasks and dependencies to the chart, using different colors or patterns to differentiate
between tasks.
8. Update the chart regularly to track the progress of your project. You can use this chart to identify any
potential delays or issues, and adjust your schedule accordingly.
Here is an example of a Gantt chart for the assigned project:
In this example, the start date of the project is January 1st, 2023, and the end date is July 2nd, 2023. The
duration of each activity is based on the estimates provided in the project plan or schedule. The Gantt
chart can be updated regularly to track the progress of the project and ensure that it is on schedule.
RESULT:
Thus, the Gantt Charts to track progress of the assigned project shown.