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

Lab Manual of SE

Uploaded by

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

Lab Manual of SE

Uploaded by

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

Software Engineering (CS-381L)

LAB Manual
Software Engineering

Submitted By:
Minha
(21-cs-01)

Submitted To:
Mr. Muhammad Awais

DEPARTMENT OF COMPUTER SCIENCE


NFC INSTITUTE OF ENGINEERING &
FERTILIZER RESEARCH, FAISALABAD
Software Engineering (CS-381L)

Lab No.01
1. Draw Activity Diagram of Sale Purchase System.
Software Engineering (CS-381L)

Lab No.2
1. Draw Sequence Diagram of School Management System.
Software Engineering (CS-381L)

Lab No.03
1. Draw a used case diagram of hospital management system.
Software Engineering (CS-381L)

Lab No. 03
1. Draw Context Model of Pizza (or other food) shop, including ordering, cooking,
delivering. Could include tables for: Customer, Orders, Products (menu items),
Ingredients, Stores.

2. Create a Level 0 Data Flow Diagram Pizza (or other food) shop, including
ordering, cooking, delivering. Could include tables for: Customer, Orders,
Products (menu items), Ingredients, Stores.
Software Engineering (CS-381L)

Lab Activity No.4

Write problem statement to define the project title with bounded scope of the project.

I Practical Significance

A properly defined and managed scope leads to delivering a quality product, in agreed cost and within
specified schedules to the stake-holders. Whilst there is a clear understanding of the need to achieve
project success, surprisingly little is published on significance of scope on project success. This study
discusses that scope should be properly defined and controlled and what can be the major factors behind
mismanagement of scope and how it can be overcome.

II PLO3

All POs are listed.

III CLO1

Identify the project needs, objectives and goals of the Project.

IV Practical Learning Outcomes

Define the project title with bounded scope of the project.

V Practical Skills

Learn how to write Scope of the project.

VI Relevant Affective domain related Outcomes

a) Identify the project needs


b) Project Scope description
c) Identify constraints
d) Identify necessary changes

VII Minimum Theoretical Background

Project scope is the part of project planning that involves determining and documenting a list of specific
project goals, deliverables, features, functions, tasks, deadlines, and ultimately costs. In other words, it is
what needs to be achieved and the work that must be done to deliver a project. It is important to pin down
the scope early in a project’s life cycle as it can greatly impact the schedule or cost (or both) of the project
down the track.
Software Engineering

VIII Resources required

Sr No Instrument Specification Quantity Remarks


Any Desktop
1 Computer System PC 10 No. Whichever is available
with attached
Hard-Disk

IX Procedure

1. Identify the project needs


2. Confirm the objectives and goals of the Project
3. Project Scope description
4. Expectations and acceptance
5. Identify constraints
6. Identify necessary changes
X Precautions

1. Change the requirement carefully.


2. Save changes if required under the guidance of teacher.
XI Description

A project scope is the first step in setting your project goals and objectives.

Project Scope Step 1:

1. Identify the project needs


When you are clearly able to identify the needs of a project, you are more likely to set a sound
benchmark from the beginning.
Understanding the ‘what and why’ of a project will enable you to set specific goals and objectives. It
also sets the groundwork for what tasks are to follow and how they are to be performed.

Project Scope Step 2:

2. Confirm the objectives and goals of the Project


The basis of the project scope should entail your goals and objectives to be one that follows a SMART
guideline. That is, to be Specific, Measurable and Achievable. It should also be Realistic and completed
within a specific Timeframe.
Specific–This involves stating accurately what the project wants to achieve. That is, what, why and how
these will be done. Clarity will reduce the chances of ambiguities and misunderstandings.
Measurable –Are your goals and objectives able to provide feedback and be accountable for?
Software Engineering

Achievable –Can your project’s goals and objectives be achieved, given the resources on hand?
Realistic –Are the goals and objectives easy to deliver, especially if you face problems or
complications. Will these reduce the overall quality of the project’s outcome and cause
running over budget and not meeting the set deadlines.
Time Frame –Can your project goals and objectives be met within the allocated time frame? Is
it a key criterion to meet these deadlines?

Project Scope Step 3:

3. Project Scope description


You as a leader, need to be clear about the features and functioning required for your product
or service.
For example, you are building a website. You need a list that provides how you will build your
website, the type of branding required and so on. In other words, what certain qualities will
increase achieving your project’s success.
Project Scope Step 4:

4. Expectations and acceptance


Successful projects are ones that consider the satisfaction of the end-user. Whether they meet
the end-user’s expectations and accept the product, service or process. The end-users could be
your customers or your internal team.
For customers, this includes pricing, value, and quality of products/services as well as
availability, delivery and return policies. For employees, this includes the effectiveness and
efficiency of new operational processes. Ultimately, your project scope is one that should be
attuned to giving better outcomes to whoever your end users may be.
Project Scope Step 5:

5. Identify constraints
There are always roadblocks to achieving what you were set out to do. When being aware of
possible limitations along the way, it can help you minimize problems that may delay or
constrain your ability to achieve your project’s outcome.
These can be caused by dynamic environmental conditions (internal and external),
technological glitches and/or lack of resources. Communicating such problems with your team
early on and taking steps to overcome these hurdles will reduce delays in project
completion and keep spending within budget. Whether these are based on assumptions or
uncertainty, analyzing their impact throughout the projects timeline further reduces the risk of
failure.

Project Scope Step 6:

6. Identify necessary changes It is always best to avoid reworking the scope of your project, as it
means investing in more time, money and resources.
Software Engineering

1. Write problem statement to define Online Library Management System with bounded
scope of the project.
The creation of an effective and user-friendly Online Library Management System (OLMS)
within a precisely specified scope is the issue that has to be solved. The goal of this project
is to provide a digital platform that guarantees safe, well-organized resource access while
streamlining library operations and improving user experience. The project's scope is
limited and concentrated on these particular challenges:
1. Cataloging and Resource Organization: Users find it difficult to find and access materials
at the existing library since there isn't a structured digital catalog in place. In order to
facilitate effective resource categorization and retrieval, the project seeks to build a
complete cataloging system for books, periodicals, and digital assets.
2. User Authentication and Registration: There isn't a strong user management procedure in
the existing system. Customers will be able to register accounts, check out items, and safely
maintain their profiles thanks to the project's user-friendly registration and authentication
system.
3. Check-Out and Return Procedure: The project will provide an easy-to-use procedure for
checking out and returning books and digital resources in order to expedite the process of
borrowing and returning library goods. This entails keeping track of deadlines, controlling
renewals, and alerting users to goods that are past due.
4. Resource Reservation and Request System: The OLMS will have a function that lets
users request resources that aren't available right now and reserve resources ahead of time.
Better access to in-demand resources will be ensured, and resource usage will be optimized.
5. Access Control and Security: It's critical to safeguard user data and ensure data security.
To protect sensitive data and stop unwanted access, the project will put access control
mechanisms, secure data storage, and frequent backups into place.
6. Analytics and Reporting: The system will give administrators the ability to create reports
on user behavior, popular resources, and library usage. Allocating resources and making
decisions will be made easier with these insights.
7. Notifications and Alerts: The OLMS will include a notification system to let users know
about upcoming deadlines, the availability of reserved materials, and library events in an
effort to increase user engagement.
8. Integration with Online Databases: To increase the variety of resources available and give
users a more complete collection, the project will investigate integration with third-party
databases and digital libraries.
Software Engineering

Lab No.5

Select relevant process model to define activities and related tasks set for the assigned project.

1. Write down the Agile model activities and related tasks set for the project.
The Agile methodology is a software development process that emphasizes flexibility,
teamwork, and customer feedback. It is incremental and iterative. An Online Library
Management System’s Agile model activity can be divided into multiple phases or stages,
with different activities comprising each phase. An outline of these actions is provided
below:
1. Project Start-Up:
 Describe the Online Library Management System's goals and objectives.
 Determine the important parties involved, such as administrators, users, and librarians.
 Make a product backlog and a high-level project plan.
2. Planning for Release:
 Sort features and functionalities according to user requirements and business value.
 Make a release schedule that includes an incremental delivery roadmap.
 For the initial release, specify the minimum viable product (MVP).
3. Planning a Sprint:
 From the product backlog, choose a few features or user stories for the next sprint.
 Divide up user stories into manageable tasks.
 Determine how much work will be needed for each task.
4. Sprint Management:
 Create and carry out the chosen tasks and features.
 Hold stand-up meetings every day to discuss issues and monitor progress.
 Work closely with the developers, testers, and designers that make up the development
team.
5. Sprint Evaluation:
 Present the finished features to stakeholders and get their input.
 Examine the sprint objectives and determine if they were accomplished.
 Based on comments, make any necessary changes to the product backlog.
6. Sprint Afterthought:
 Examine the sprint's procedures and note any places that could use improvement.
 Talk about what worked well and what could be improved for the upcoming sprint.
Software Engineering

 When necessary, revise team procedures and practices.


7. Gradual Delivery:
 Deliver functional software to users one step at a time after each sprint.
 Incorporate new features into the current system on a constant basis.
 Gather and consider user and stakeholder feedback.
8. Testing and Assurance of Quality:
 Conduct unit, integration, and user acceptance testing as part of continuous testing.
 Verify that the system satisfies performance and quality requirements.
9. Records and Instruction:
 Make sure that the Online Library Management System's documentation is kept current.
 Assist administrators and users with training.
10. Release and Deployment:
 Install updates or new releases in the live environment.
 Keep an eye on the system's functionality and resolve any problems that may occur.
11. Continuous Support and Upkeep:
 Maintain and support the system continuously.
 Respond to user support inquiries, security updates, and bug fixes.
12. Reactions and Rework:
 Get input from stakeholders and users on a regular basis to guide future development.
 Sort new features and enhancements according to user feedback and evolving needs.
Because of the Agile model's emphasis on flexibility and a cycle of continuous improvement,
the Online Library Management System can change to meet the demands of changing users and
organizational objectives. The system will always be applicable and efficient thanks to this
iterative process.
Software Engineering

LabLab No.No
Activity 6 3
Gather application specific requirements to assimilate into RE (Requirement Engineering)
model.

1. Write down the Nonfunctional, Functional requirements for Library-Management-


System.
Nonfunctional Requirements:
1. Operation:
 User queries should receive a response from the system in two seconds.
 At least 100 people should be able to use the system concurrently.
2. Scalability
There should be room for the system to grow in terms of books, users, and transactions.
3. Dependability:
 There should be 99.9% uptime for the system.
 It is important to have backup and recovery processes in place to avoid losing data.
4. Protection:
 Mechanisms for user permission and authentication have to be put in place.
 User information and transaction history are examples of sensitive data that should be
encrypted.
5. Utilization:
 An easy-to-use and intuitive interface is essential for the system.
 Users should have access to tutorials and help documentation.
6. Adaptability:
 It is expected that the system would work with popular web browsers including Chrome,
Firefox, and Safari.
 Mobile responsiveness on mobile devices for access from many sources.
7. Reliability:
 There should be less downtime and easy maintenance for the system.
 Updates should be simple to apply and the code should be thoroughly documented.
8. Mutual Compatibility:
 For data interchange, the system must be able to interact with external databases or systems.

Functional Requirements:
Software Engineering

1. User Administration:
the capacity to create, modify, and remove user accounts.

varying degrees of access for common people, librarians, and administrators.

2. Organizing Books:
 Delete, alter, and add book records.
 Keep tabs on the location, status (checked in/out), and availability of books.
3. Returning and Borrowing:
 Books ought to be available for loan and return.
 Upon checkout and return, the system need to automatically update the availability of
books.
4. Reservation Framework:
 Its ought should be possible for users to reserve books that are presently on loan.
5. Look Up and Peruse:
 Books should be searchable by author, title, genre, and other criteria.
 To explore the collection, use the browse functionality.
6. Get Notified:
 Notifications about overdue books, available reservations, etc. should be sent to users.
7. Summarizing:
 Provide information on user activity, overdue books, and book availability.
 Keep track of and show past transactions.
8. Delicate Handling:
 Automated computation and imposition of late fees for unclaimed books.
 Excellent payment capabilities.
9. Classification and Cataloging:
 Books ought to be arranged and grouped according to authors, genres, and other pertinent
factors.
10. Control Panel:
 Access to system settings, books, and user administration features.

Lab Activity No 7
Software Engineering

Prepare broad SRS (Software Requirements Software) for the above selected project.

1. Explain the importance of SRS.


The Software Requirements Specification (SRS) is a crucial document in the software
development process as it serves as a blueprint for the entire project. Here are some key
reasons why the SRS is important:
1. Comprehending and Consent:
 The SRS offers a thorough explanation of the functions, capabilities, and limitations of the
software as well as what it is meant to do. This makes it more likely that the stakeholders
and the development team will agree on the project requirements.
2. Project Planning Basis:
 Project planning, cost estimation, and timeframe definition all start with the SRS. The SRS
is used by project managers to determine the project's scope, assign resources, and plan out
activities.
3. Tool for Communication:
 It serves as a conduit for communication between different project managers, developers,
testers, and clients. Requirements that are precise and thoroughly specified aid in preventing
misconceptions and misinterpretations.
4. Risk Control:
 The SRS aids in the early identification of any hazards in the project by precisely outlining
needs and restrictions. This lowers the possibility of project failure by enabling the
development team to anticipate and manage risks.
5. Basis for Examination:
 Test cases and scenarios are created using the SRS as a foundation. Testing teams utilize the
requirements to confirm that the software satisfies the necessary standards and operates as
intended.
6. Control of Change:
 The SRS, being a formal document, offers a standard for handling project modifications.
Scope creep may be avoided by monitoring, assessing, and implementing any changes to
the requirements in a controlled way.
7. Client Preferences:
 To control customer expectations, the SRS is frequently employed. It helps clients
understand the capabilities and constraints of the system being created by outlining what the
program will and won't accomplish.
8. Contractual and Legal Agreements:

 The SRS is frequently a component of the contract that the client and development team
sign. It outlines the software's expected features for the customer as well as the development
Software Engineering

team's pledged delivery.


9. Document of Reference:
 The SRS acts as a point of reference for all decisions pertaining to the project during the
development phase. It assists in making sure that the development process continues on
course and that the finished product complies with the original specifications.
10. Maintenance Documentation:
 The SRS becomes an important document for future upgrades and maintenance once the
product is implemented. It aids in the understanding of the system by new team members
and offers insights into the original design choices.
11. Summary:
To sum up, the Software Requirements Specification is an essential document that
establishes the foundation for a successful software development process by guaranteeing
that all parties involved have a shared understanding, directing project planning, promoting
communication, controlling risks, and acting as a guide for the duration of the project.
2. Write down the SRS of Hotel Management System.
Software Requirements Specification for Hotel Management System:
1. Introduction:
1.1 Purpose
The purpose of this document is to provide a detailed description of the requirements for the
development of the Hotel Management System.
1.2 Scope
The system is designed to automate various operations in a hotel, including reservation, check-
in, check-out, room management, billing, and reporting.
2. Overall Description:
2.1 Product Perspective
The Hotel Management System will interface with the hotel's existing infrastructure, including
databases, payment gateways, and hardware systems.
2.2 Product Features
 User authentication and authorization for staff and management.
 Room reservation and booking functionality.
 Check-in and check-out processes.
 Room status management (clean, dirty, maintenance).
 Billing and invoicing for guests.
 Reporting and analytics for management.
2.3 User Classes and Characteristics
 Administrator: Manages system configuration, user roles, and overall system operation.
Software Engineering

 Receptionist: Handles check-in, check-out, and reservation tasks.


 Guest: Interacts with the system for room booking, check-in, and check-out.
3. System Features:
3.1 User Management
 Create, edit, and delete user accounts with different roles.
 Define access levels for each user class.
3.2 Reservation System
 Allow guests to search for available rooms.
 Reserve rooms based on availability and preferences.
3.3 Check-in and Check-out
 Efficient check-in and check-out processes.
 Capture and store guest information securely.
3.4 Room Management
 Assign and manage room statuses (clean, dirty, maintenance).
 Track room availability and occupancy.
3.5 Billing and Invoicing
 Generate bills based on room rates, additional services, and taxes.
 Support multiple payment methods.
3.6 Reporting and Analytics
 Generate reports on occupancy, revenue, and guest preferences.
 Provide insights for management decision-making.
4. External Interface Requirements:
4.1 User Interfaces
 Intuitive and user-friendly interfaces for administrators, receptionists, and guests.
 Mobile responsiveness for easy access on various devices.
4.2 Hardware Interfaces
 Compatible with standard hotel hardware such as printers and card readers.
4.3 Software Interfaces
 Integration with payment gateways for secure transactions.
 Compatibility with common web browsers.
5. Performance Requirements:
 Response time for user interactions should be within 3 seconds.
 Support at least 100 simultaneous users.
Software Engineering

6. Security Requirements:
 User authentication with secure password storage.
 Encryption of sensitive guest information.
7. Documentation Requirements:
 Comprehensive user manuals for administrators, receptionists, and guests.
 API documentation for potential future integrations.
8. Testing Requirements:
 Unit testing, integration testing, and user acceptance testing protocols.
9. Constraints:
 The system must comply with relevant data protection and privacy regulations.
 Compatibility with existing hotel infrastructure.
10. Appendices:
Include any additional information, diagrams, or references.
Software Engineering

Lab No 8

Use Timeline charts/Gantt charts to track progress of the assigned project.

1. What are the TimeLine charts?


An illustration of events or actions arranged along a chronological axis is called a timeline chart.
It offers a means of seeing the order and length of different parts over time. To illustrate the
temporal course of events, timeline charts are frequently used in project management, historical
study, and storytelling.
Key features of timeline charts include:
1. Time Axis: The horizontal axis represents time, with the start date on the left and the end date on
the right. The timeline can be divided into days, weeks, months, or other relevant time units.
2. Events or Activities: Events or activities are represented as points or bars along the timeline.
Each event is positioned according to its start and end dates.
3. Labels: Each event on the timeline is usually labeled with a description or name. Labels help
viewers understand what each point or bar represents.
4. Color Coding: Different colors may be used to distinguish between different categories of events
or to highlight specific elements. Color coding can aid in quickly identifying patterns or specific
types of activities.
5. Connectors or Dependencies: In some cases, timeline charts may include connectors or arrows
to show dependencies or relationships between events. This is common in project management
timelines.
Timeline charts can take various forms, and two common types are:
 Linear Timeline: This type of timeline presents events in a linear, sequential order from left to
right. It's straightforward and easy to understand.
 Chronology Bands: In this type, events are grouped into bands based on categories or themes.
Each band represents a different aspect of the timeline, allowing for a more organized and
thematic representation of events.
For project management, a Gantt chart is a specific type of timeline chart that uses bars to
represent tasks and their durations, allowing for easy visualization of project schedules and
dependencies.
In summary, timeline charts are versatile tools for visualizing temporal information and can be
adapted for various purposes depending on the context and the nature of the data being presented.
2. Use Timeline charts/Gantt charts to track progress of the ATM project.
Software Engineering

3. Explain different activity done to track the software project.


Tracking a software project involves various activities aimed at monitoring progress, managing
resources, and ensuring that the project stays on schedule and within budget. Here are different
activities commonly done to track a software project:
1. Project Planning:
 Define project scope, objectives, and deliverables.
 Break down the project into tasks and create a detailed project plan.
 Establish timelines, milestones, and deadlines.
2. Task Management:
 Assign tasks to team members based on their skills and workload.
 Use task management tools to track the status of individual tasks.
 Monitor task dependencies and adjust schedules as needed.
3. Progress Monitoring:
 Regularly review the project plan against the actual progress.
 Track completion percentages of tasks and milestones.
 Identify and address any delays or issues affecting progress.
4. Resource Management:
 Monitor resource allocation and workload for team members.
 Ensure that resources, such as hardware and software, are available as needed.
 Adjust resource allocation based on project requirements.
5. Risk Management:
 Identify potential risks to the project's success.
 Develop strategies to mitigate risks and minimize their impact.
 Regularly review and update the risk management plan.
6. Budget Tracking:
 Monitor project expenditures against the budget.
 Identify any cost overruns and take corrective actions.
 Keep stakeholders informed about budget status.
7. Communication:
 Establish clear communication channels within the project team.
 Regularly update stakeholders on project progress.
 Hold status meetings to discuss challenges and solutions.
8. Quality Assurance:
 Implement a robust testing and quality assurance process.
 Track and address software defects and issues.
 Ensure that the final product meets quality standards.
9. Documentation:
 Maintain up-to-date project documentation.
 Document changes to requirements, design, and code.
 Create documentation for end-users and support teams.
10. Change Management:
 Implement a formal change control process.
 Evaluate and approve or reject change requests.
Software Engineering

 Communicate changes to relevant stakeholders.


11. Performance Metrics:
 Define and track key performance indicators (KPIs) for the project.
 Measure team productivity, code quality, and other relevant metrics.
 Use metrics to identify areas for improvement.
12. Client/Stakeholder Feedback:
 Solicit feedback from clients and stakeholders.
 Incorporate feedback into the project as appropriate.
 Keep stakeholders involved and informed throughout the project lifecycle.
By systematically conducting these activities, project managers and teams can effectively track
the software project, identify issues early, and implement corrective actions to ensure successful
project delivery.
3. Explain different activity done to track the software project.
1. Project Planning:
 Clearly outline the project's scope, objectives, and deliverables.
 Decompose the project into tasks and create a comprehensive project plan.
 Set realistic timelines, milestones, and deadlines for effective project management.
2. Task Management:
 Assign tasks to team members based on their skills and workload.
 Utilize task management tools to monitor the status of individual tasks.
 Track task dependencies and make necessary adjustments to schedules.
3. Progress Monitoring:
 Regularly review the project plan in comparison to the actual progress.
 Monitor completion percentages for tasks and milestones.
 Identify and proactively address any delays or issues impacting progress.
4. Resource Management:
 Monitor resource allocation and workload for team members.
 Ensure the availability of necessary resources, including hardware and software.
 Adjust resource allocation based on evolving project requirements.
5. Risk Management:
 Identify potential risks to project success.
 Develop strategies to mitigate risks and minimize their impact.
 Regularly review and update the risk management plan.
6. Budget Tracking:
 Monitor project expenditures against the allocated budget.
 Identify and rectify any cost overruns promptly.
 Keep stakeholders informed about the status of the project budget.
7. Communication:
 Establish clear communication channels within the project team.
 Regularly update stakeholders on the progress of the project.
 Conduct status meetings to discuss challenges and collaborative solutions.
8. Quality Assurance:
 Implement a thorough testing and quality assurance process.
 Address software defects and issues promptly.
Software Engineering

 Ensure the final product meets established quality standards.


9. Documentation:
 Maintain up-to-date project documentation.
 Record changes to requirements, design, and code.
 Develop comprehensive documentation for end-users and support teams.
10. Change Management:
 Implement a formal change control process.
 Evaluate and make decisions on change requests.
 Communicate approved changes to relevant stakeholders.
11. Performance Metrics:
 Define and monitor key performance indicators (KPIs) for the project.
 Measure team productivity, code quality, and other pertinent metrics.
 Use metrics to identify and address areas for improvement.
12. Client/Stakeholder Feedback:
 Actively seek feedback from clients and stakeholders.
 Integrate feedback appropriately into the project.
 Keep stakeholders engaged and well-informed throughout the project lifecycle.

Lab Activity No 9
Software Engineering

Use CPM (critical path method)/PERT (Programmed evaluation and review technique) for
scheduling the assigned project.

1. For a software project different activity and their durations are listed as below. Draw
the activity network and the critical path.

 Activity Network Diagram:

In this diagram:
 Nodes represent tasks.
 Directed arrows represent dependencies between tasks.
 The number next to each node represents the duration of the corresponding task.

 Critical Path:
Software Engineering

The critical path is: T1 -> T2 -> T4 -> T5 -> T6 -> T7 -> T8 -> T9 -> T11 -> T12
The total duration of the critical path is the sum of the durations of tasks on the critical path:
8 + 15 + 10 + 10 + 5 + 20 + 25 + 15 + 7 + 10 = 130 days
Therefore, the critical path for this project is T1 -> T2 -> T4 -> T5 -> T6 -> T7 -> T8 -> T9
-> T11 -> T12, and the project will take a minimum of 130 days to complete if there are no
delays in the critical path tasks.
2. Difference between PERT and CPM.

Sr. No. PERT CPM

PERT is that technique of CPM is that technique of


project management project management
which is used to manage which is used to manage
1.
uncertain (i.e., time is only certain (i.e., time is
not known) activities of known) activities of any
any project. project.

It is event-oriented It is activity-oriented
technique which means technique which means
2. that network is that network is
constructed on the basis constructed on the basis
of event. of activities.

3. It is a probability model. It is a deterministic model.

It majorly focuses on time


It majorly focuses on Time-
as meeting time target
cost trade off as
4. or estimation of percent
minimizing cost is more
completion is more
important.
important.

It is appropriate for high It is appropriate for


5. precision time reasonable time
estimation. estimation.

3. List four basic principles of project scheduling.


Software Engineering

Project scheduling is a crucial aspect of project management, and it involves creating a plan
that outlines when specific tasks or activities will be performed. Four basic principles of
project scheduling are:
 Clearly Define Project Objectives and Scope:
Before initiating the scheduling process, it is crucial to have a comprehensive understanding
of the project's goals and scope. This entails identifying the project's deliverables,
milestones, and overarching objectives. A well-articulated project scope serves as the basis
for pinpointing and organizing the essential tasks in the schedule.
 Break Down the Project into Manageable Tasks:
Once the project scope has been established, the subsequent step involves decomposing the
project into smaller, more manageable tasks or activities. This process, often referred to as
the work breakdown structure (WBS), facilitates the identification of all necessary
components, ensuring that no crucial elements are overlooked during the scheduling phase.
 Sequence Tasks and Activities:
Following the identification of tasks, the project manager must establish the sequential
order in which these tasks should be executed. This process, known as task sequencing,
considers task dependencies, where the completion of certain tasks relies on the fulfillment
of others. Recognizing and comprehending these dependencies is vital for developing a
practical and attainable project schedule.
 Estimate Time and Resources:
Each task or activity outlined in the project schedule requires estimations of duration and
resource needs. Time estimation involves determining the duration required to complete
each task, while resource estimation entails identifying the necessary personnel, equipment,
and materials. Precise estimation is fundamental to crafting a realistic schedule and
efficiently allocating resources.
4. Explain the Work Break Down structure in detail.
The Work Breakdown Structure (WBS) is a hierarchical decomposition of the total scope of
work to be carried out by the project team. It's a foundational project management tool that
helps in organizing and defining the total scope of a project. Here's a detailed explanation of
the components and purpose of a Work Breakdown Structure:
1. Definition:
The Work Breakdown Structure (WBS) is a visual and hierarchical representation of all the
tasks, deliverables, and work packages within a project.
It starts with the overall project at the top level and breaks it down into smaller, more
manageable components.
2. Hierarchy:

 The WBS is structured in a hierarchical manner, resembling an upside-down tree.


Software Engineering

 The highest level represents the entire project, and each subsequent level represents an
increasingly detailed breakdown of the work.
3. Components:
 Work Packages: These are the lowest level of the WBS hierarchy and represent the
smallest units of work that can be assigned, estimated, and tracked. Work packages are the
basis for estimating time, costs, and resources.
 Tasks and Activities: These are elements within work packages that define the specific
actions or steps required to complete the work.
 Deliverables: Tangible or intangible outcomes or results that are produced at the
completion of a project or work package.
4. Purpose:
 Scope Definition: The WBS helps in defining and understanding the scope of the project. It
ensures that all necessary work is identified and included.
 Organization: It provides a clear and organized structure for all project work, making it
easier to manage and control.
 Estimation: The hierarchical structure allows for more accurate estimation of time, cost,
and resources at each level of the breakdown.
 Communication: It serves as a visual communication tool for project stakeholders, helping
them understand the project's structure and components.
5. Creation Process:
 Top-Down Approach: Start with the project's main deliverable and successively break it
down into smaller, more manageable pieces.
 Bottom-Up Approach: Identify all tasks and work packages first and then organize them
into a hierarchy.
6. Coding System:
Work packages and elements within the WBS are often assigned a unique code for easy
reference and tracking.
7. Control Account:
A control account is a management control point where scope, budget, actual cost, and
schedule are integrated and compared to the earned value for performance measurement.
8. WBS Dictionary:
This is a companion document to the WBS that provides detailed information about each
component, including work package descriptions, responsible parties, and more.
In summary, the Work Breakdown Structure is a critical project management tool that helps
in organizing, defining, and communicating the scope of work in a project. It provides a
clear framework for project planning, execution, monitoring, and control.
5. Write meaning of PERT and explain how it is different from CPM.
Software Engineering

PERT (Program Evaluation and Review Technique):


PERT, or Program Evaluation and Review Technique, is a project management method used to
analyze and represent the tasks involved in completing a given project. Developed in the
1950s by the U.S. Navy, PERT is particularly useful for projects where activities are
uncertain or dynamic. It employs a probabilistic approach to estimate the time required for
each project activity, taking into account the inherent variability and uncertainty in the
project.
Key Features of PERT:
1. Probability-based Time Estimates: PERT uses three time estimates for each activity:
optimistic (O), most likely (M), and pessimistic (P). These estimates are then combined to
calculate the expected time for each activity, incorporating a probability distribution.
2. Critical Path Analysis: PERT helps identify the critical path in a project, which is the
sequence of stages determining the minimum time needed for an operation.
3. Event-Oriented Network: PERT represents the project as a network of events and
activities, emphasizing the relationships and dependencies between them.
4. Uncertainty Management: PERT is especially useful when there's a considerable level of
uncertainty in estimating the time required for each activity. It considers a range of possible
durations, allowing for a more realistic assessment of project completion times.
Difference between PERT and CPM (Critical Path Method):
While PERT and CPM share similarities and are often used together, there are key
differences between the two:
1. Time Estimates:
 PERT: In PERT, time estimates are based on a probabilistic model, incorporating three
time estimates for each activity (optimistic, most likely, and pessimistic).
 CPM: CPM uses a deterministic model, relying on a single time estimate for each activity.
2. Activity Dependency:
 PERT: PERT is event-oriented and allows for more complex relationships between
activities. Activities can be dependent on events or other activities.
 CPM: CPM is activity-oriented and assumes a simple finish-to-start relationship between
activities. Activities are dependent on their predecessors.
3. Probability of Project Completion:
 PERT: Provides a probability distribution for project completion times, considering the
variability in activity durations.
 CPM: Assumes a fixed or deterministic completion time for the entire project.
4. Focus on Critical Path:
 PERT: While it identifies the critical path, PERT often focuses more on the entire project's
variability and risk.
 CPM: Primarily emphasizes the critical path and the minimum time required for project
Software Engineering

completion.
5. Application:
 PERT: Generally preferred for research and development projects or projects with high
uncertainty and variability.
 CPM: More commonly used in construction and manufacturing projects with well-defined
and deterministic activity times.
In practice, the terms PERT and CPM are often used interchangeably, and both methods are
frequently integrated for a more comprehensive project management approach.

Lab No. 10

Draw class diagram, Sequence diagram, Collaboration diagram, State Transition diagram
Software Engineering

for the assigned project.


1. Draw class diagram for library management system.

2. Draw sequence iagram for hospital management system.

3. Draw collaboration diagram for online doctor appointment system.


Software Engineering

4. Draw State Transition diagram for washing machine.

5. Draw sequence diagram for online shopping system.


Software Engineering

6. Draw class diagram for atm.

You might also like