Introduction To Software Engineering - Assignment 1
Introduction To Software Engineering - Assignment 1
Question 1
- User requirements:
o Description of the services needed for a system to perform written in natural
language with the aid of diagrams to better describe the requirement.
o Typically written in a high-level language to better get an understanding of what
the services of the system should be.
o Normally written for end users and external stakeholders.
- System requirements:
o A formatted document with detailed low-level description of a systems functions
and constraints.
o Usually written in detail to better understand how the system’s receives input, and
process data and how it displays output.
o Typically written for clients and system owners.
Question 2
- Stakeholders are people and/or organizations that may be affected and/or have interest in
the system.
- There are 4 stakeholder types, which are end users, system managers, system owners, and
external stakeholders.
- Example of stakeholders for Touch N Go system:
o Commuters
o IT staff
o Students, Senior Citizens, People with disabilities
o Highway companies
o Toll workers
o Retailers
o Banks
o Government
Question 3
Requirements elicitation
o The process of gathering information by technical staff members about the
application domain, functional and non-functional requirements of the system.
o Mainly involves the client but end-users, managers, engineers, domain experts
and other stakeholders may be involved.
Requirements analysis
o Usually goes through multiple phases of analysis.
o After gathering the requirements and discovering the domain requirements, the
requirements are then organized by gathering them in similar groups
o The groups of requirements are then prioritized and conflicts among requirements
are resolved.
o At the final stage, the requirements are then specified and documented to be used
in the next round of the analysis spiral.
Requirements validation
o The process where the requirements meets the customers’ expectations.
o There are 3 ways validating requirements which are requirement reviews,
prototyping, and test-case generation.
Requirements management
o This is the stage where changes to requirements are managed during the
requirements engineering process and during the system’s development.
o Dependent requirements must be kept track of to assess the impact of the changes
if the changes were to be implemented
o Usually begins with identifying the problem, then analyzing and specifying the
changes and cost, then implement the changes and finally revise the requirements.
Question 4
Interview
o This method is one of the most common methods, where a staff member ask
clients about the desired requirements of the system.
o It can be done in 2 ways: closed interviews, where the interviewer asks pre-
determined questions from a list or open interviews where the questions are
impromptu and usually various issues can be explored with the stakeholders.
o Besides, asking interviewers are advised to give suggestions to the client to
prompt them to talk more about the system’s requirements.
o It is advised for interviewers to keep an open mind and avoid assumptions of the
requirements
Ethnography
o The process of observing a target demographics behavior to derive a system’s
requirements.
o An alternative to referring to process definitions that suggest how people work
o This method is useful for understanding different processes but cannot identify
new features to be added
o The problem with this method is that it may be outdated due to some historical
factors that has become irrelevant.
Question 5