CEN512 Module1
CEN512 Module1
Course lectures
Dr Odu Tiwalade & Mr Emmanuel Simonyan
• Course Objectives:
By the end of this class, students will:
1.Understand the core concepts of software product
engineering, including how software products are developed,
managed, and maintained.
2.Learn to create and manage a product backlog, user
stories, and develop a basic prototype for a software product.
3.Explore modern software examples, like Zoom and
Salesforce, and how these products have evolved from custom
software to widely-used software products.
4.Familiarize themselves with key trends in software
products, such as the rise of cloud computing, DevOps
practices, and security considerations in product development.
• Learning Outcomes:
By the end of this class, students should be able to:
1.Differentiate between project-based and product-based
software development and understand their implications on
software engineering practices.
2.Identify the different types of software products (stand-
alone, hybrid, and SaaS) and explain how they impact user
experience and business models.
3.Understand the role of Agile methodologies in modern
software product development and how it contributes to faster
and more adaptable software releases.
4.Develop a basic product vision and roadmap for a software
product, identifying the key components needed for successful
product management.
Introduction to Software
Products
• A software product is any computer program designed for a
specific purpose that can be sold or used by various people,
businesses, or governments. These products help us in almost
every aspect of our daily lives.
• Example: Microsoft Office is a set of tools (like Word, Excel) that
helps people write documents, make spreadsheets, and organize
their work.
• Zoom is a software product that allows us to hold meetings or
classes online, which became especially important during the
COVID-19 pandemic.
• Without realizing it, you’ve likely interacted with dozens of
software products today!
Evolution from Custom to Product-Based Software
• In the early days of computers, most software was
created for a specific purpose or customer. This is
called custom software. Companies or governments
would request custom software to meet their
needs, like an air traffic control system.
• But over time, companies realised that many
people or businesses had similar needs. So instead
of creating new software for every customer, they
started building software products that many
different people or companies could use. This shift
from custom to product-based software saved time
and money.
• Example: Google Workspace is used by millions of
businesses for email, documents, and meetings.
Instead of each company building its own office
software, they use Google’s product.
Key Differences Between Project
and Product-Based Software
Let’s compare project-based and product-based
software:
• Project-Based Software: This is built specifically for
a single client. It follows strict requirements, and the
software is often custom-built, like a tailor-made suit.
• Product-Based Software: This is more like ready-to-
wear clothing; it’s built for general use. The company
decides on features and sells it to many users.
• Slack, a communication tool for teams, is product-
based software. It wasn’t created for one company but
for any business that needs a way to communicate
with their team.
Software Product Types
There are three main types of software products:
1.Stand-Alone Products: These are installed on your
computer and work without an internet connection.
Example: Adobe Photoshop, used for editing images, runs on
your computer without connecting to the internet.
2.Hybrid Products: These use both your computer and
the internet. Part of the software works locally, but it
also connects to the cloud for more features.
Example: Google Docs lets you type offline, but it saves and
syncs documents online when connected.
3.Service-Based Products (SaaS): Everything
happens online. You don’t install anything; you just
access the software through a browser.
Example: Salesforce, a popular business tool, is entirely web-
based.
Recent Shifts in Product Delivery