Software-Requirements, ch.1. Introduction.pdf

IbrahimHamarash1 30 views 23 slides Oct 19, 2024
Slide 1
Slide 1 of 23
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23

About This Presentation

The introductory chapter for the Software Requirements module at the MSc level for Software Engineering students at UKH.


Slide Content

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Software Requirements
Engineering
Chapter I
Introduction
Professor Dr. Ibrahim Ismael Hamarash
[email protected]

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
The Software Industry
✓Everyone needs a website,
and/or a mobile app.
The first thing that we think about
when we open a business …
✓Chatbots will become popular in
the next few years, dominating
the computing industry.
Example:
Mobile applications got so
popular that restaurants,
gyms, coaches, everybody
basically needs a mobile
application that makes the
business to the next level.

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
How Customers Approach
You as a Software
Professional
➢The customer usually knows they
need technology but might not
know exactly what that entails.
➢They might say: “I need an app to
manage my business,” or “We need
a website to reach more
customers.”

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Software as a Business Project
Starting a Project: What Do You
Want?
•The first question: "What do
you want?"
•Simple and direct: No tools, no
complex processes.
•Focus on business needs.

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Software as a Business Project
Getting Ideas on Paper
•Start with brainstorming – empty
your head of all ideas.
•Write everything down.
•No structure initially, just free flow
of ideas.

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Software as a Business Project
Organizing Ideas
Adding Structure to Your Ideas
•After the brainstorming phase,
start organizing the ideas.
•Use tools only to structure ideas.
•Popular tools: Command
structures, mind maps, Excel.
https://thoughtflow.io/blog/best-miro-alternatives

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
•Mind maps and Excel are
effective tools to organize
ideas.
•Choose the tool that works
best for you.
•Practice with both and
understand when each one is
most effective.
UX

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Software as a Business Project
Adding Structure to Requirements
•Take each idea one by one.
•Define its description, what’s
expected to be delivered, and
acceptance criteria.
•Focus on clarity and precision.

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Software as a Business Project
Getting into Technical and Legal Details
•Define the technical aspects and system
integration.
•Consider legal requirements like data
protection, terms, and privacy policies.
•Compliance with international
standards is essential.

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Software as a Business Project
Diving Deeper into the Details
•Refine each part of the project.
•Revisit technical and legal
aspects for more detail.
•Understand how they relate to
the core business vision.

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Software as a Business Project
Peer Review and Finalization
•Always have a peer review for your
requirements document. Submit your
requirements for review.
•Fresh eyes can spot what you’ve
missed.
•Encourage feedback from others.

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Software as a Business Project
Software Requirement
Specification (SRS)

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Software
Requirements
Lifecycle
Software
Requirements
Lifecycle

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Module
Assessment

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Case Study: Fitness App
Requirement
•What do you want? Start by asking
yourself or the client, “What do you
want from this fitness app?”
•The business needs could be: “We
want to help users track their
workouts, monitor progress, and set
fitness goals.”

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Case Study: Fitness App
Requirement
Using Tools to Structure the Needs
•After gathering basic ideas, it’s time to structure them.
•Tools like mind maps or Excel can help. Start organizing features:
Workout tracking, Progress monitoring, Goal setting, Nutritional advice,
etc.

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Case Study: Fitness App
Requirement
Detailing the Needs
•Workout Tracking: What kind of
workouts? Cardio, strength, or flexibility?
•Progress Monitoring: Will the app show
daily, weekly, or monthly reports? What
metrics will it track—calories burned,
distance, or weight lifted?
•Goal Setting: How will users set goals?
Will they receive notifications if they miss
targets?

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Case Study: Fitness App
Requirement
Describing Limitations and Functions
•Functions: Define what the app will do. For instance, the app
can:
•Log exercises (functionality for data input from users).
•Provide suggestions for workouts based on goals.
•Limitations: Also, set expectations on what the app won’t do.
For example:
•The app won’t offer personalized meal plans (to avoid
over-complication).
•The app won’t track real-time heart rate without external
hardware.

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Case Study: Fitness App
Requirement
Documenting the Ideas
•Create a clear, written document that lists all features and
specifications (e.g., the app will track cardio and strength
workouts, users can set goals for weekly calorie burn, etc.).
•This document becomes the blueprint for the development
team, guiding them through the process.
•Ensure everything is written in a clear, understandable
manner so there’s no ambiguity.

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Case Study: Fitness App
Requirement
Peer Review
•Before moving forward with development, it’s crucial to
have a peer review of the requirements document.
•For example, someone from the development team or
another business analyst might review the document and
provide feedback like, “Should the app also offer a social
sharing feature so users can share their progress?”
•Peer reviews help spot missing details, incorrect assumptions,
or opportunities to improve the functionality.

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Case Study: Fitness App Requirement
SRS Document
Software requirements specification (SRS) is a technical
document describing the project’s functionality, features,
design, limitations, and goals. An SRS outlines how an
application should operate and how theproduct
development teamshould build it. While a client may use it
to define his/her project expectations and deliverables, the
development company will use it to assess the amount of
work,define the technology stack, and estimate the project
cost.

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Module Assessment

Software Requirements, Chapter I: Introduction
© 2024, UKH, Dr.Ibrahim Ismael Hamarash, [email protected]
Discussion