CS6231 SWEngineering Lecture 3b Requirements Engineering II
CS6231 SWEngineering Lecture 3b Requirements Engineering II
Fall 2023
Stephen H. Kaisler, D.Sc.
Week 3
Lecture 3b: Requirements Engineering - II
Requirements Gathering
• Analysts gather requirements through:
– Observation of existing system(s)
– Studying existing procedures
– Discussions w/ customers, stakeholders, and end-users
– Analysis of the problem description and what needs to be done.
• If the project is to automate existing procedures, observe how
humans do it now, what they think the problems are, and what
suggestions they have.
– Watch once quietly; watch again w/ commentary; watch again with
questions
• In the absence of a working system, some imagination will be
required:
– Need to visualize how problems are solved
– Work with customers to understand their experiences
• Use cases
– A special kind of scenario that breaks down system
requirements into user functions
– Use case is a sequence of events performed by a user
– Interaction between user and a system
Need to drill down in each box to identify objects, actions and flows.
Why is it important?
• R1.2:
– Input: key words
– Output: Details of all books whose title or author
name matches any of the key words.
• Details include: Title, Author Name, Publisher name, Year of
Publication, ISBN Number, Catalog Number, Location in the
Library.
– Processing: Search the book list for the keywords
• R2.2:
– Input: membership number and password
– Output:
• list of the books borrowed by user are displayed. User
prompted to enter books to be renewed or
• user informed about bad password
– Processing: Password validation, search books
issued to the user from borrower list and display.