Exam Revision
Exam Revision
Analysis
Exam Revision Lecture
Designed by Duba
Scope
• Section A: Short Questions (30) ALL 10 UNITS
• 20 x MCQ
• 10 x T/F
• Section B: Theory UNITS 1-5
• Question 2: Theory Application (20)
• Stakeholders Unit 3
• Information Gathering Unit 3
• Question 3 and 4: Theory (2 x 10)
Designed by Duba
• Systems Development Life Cycle Unit 1
• Analyst Skills Unit 2
• Functional v Non Functional Requirements Unit 3
• Methodologies, Models, Tools & Techniques Unit 4
• Agile Values Unit 5
Scope
• Section C: Diagrams UNIT 6 – 10
• Question 5 – Draw a diagram (15)
• Class Unit 6
• Use Case Unit 8
• Activity Unit 9
• Question 6 – Explain Diagrams (15)
• Event Unit 7
• Use Case Unit 8
Designed by Duba
• BPMN Unit 10
Section A: MCQs
•More diagram-related than theory
• 10 Theory
• 20 Diagrams
•Answer every question – no negative marking!
Designed by Duba
Section B: Theory – Q2
Application
• Question 2: Theory Application (20)
• Stakeholders Unit 3
• Information Gathering Unit 3
Designed by Duba
Stakeholders
Who do you involve and talk to?
Designed by Duba
6
Introduction to
© 2012 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content that may be different from the U.S. Edition.
May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Stakeholders of a comprehensive accounting system for public company
Designed by Duba
Stakeholder example
• Scenario: UniTech Solutions is a mid-sized technology company based in Johannesburg with 400
employees across three offices: Johannesburg (headquarters), Cape Town and Durban. The company
specializes in software development and IT support for local businesses. The company is structured with a
small executive team (CEO, CTO, COO), middle managers and supervisors who supervise staff including
developers, support agents, and sales representatives. About 50 employees work remotely.
• UniTech plans to develop an internal system to streamline project management, communication, and
workflow across all offices. The current processes are inefficient, spread across different tools, and cause
delays in communication. The goal is to improve team coordination and data accessibility. Gathering
accurate requirements from staff at all levels, across all offices, is critical for the success of this project.
Designed by Duba
Information Gathering Techniques
Designed by Duba
Interviewing Users and Other Stakeholders
• Prepare detailed questions
• Meet with individuals or groups of users
• Obtain and discuss answers to the questions
• Document the answers
• Follow up as needed in future meetings or interviews
Designed by Duba
Themes for Information Gathering
Questions
Designed by Duba
Preparing for Interview
Designed by Duba
Distribute and
Collect
Questionnaires
Designed by Duba
Review Inputs, Outputs, and Procedures
Designed by Duba
Additional Techniques
• Observe and Document Business Processes
• Watch and learn
• Document with Activity diagram (next section)
• Research Vendor Solutions
• See what others have done for similar situations
• White papers, vendor literature, competitors
• Collect Active User Comments and Suggestions
• Feedback on models and tests
• Users know it when the see it
Designed by Duba
What would you need to know
•A brief definition
•2 advantages
•2 disadvantages
•What situation would each method be useful in – size of
company, level of employee, geographically dispersed?
Designed by Duba
Example Question
Designed by Duba
Section B – Q3 & 4 Theory
• Question 3 and 4: Theory (2 x 10)
• Systems Development Life Cycle Unit 1
• Analyst Skills Unit 2
• Functional v Non Functional Requirements Unit 3
• Methodologies, Models, Tools & Techniques Unit 4
• Agile Values Unit 5
Designed by Duba
System Development Lifecycle
• System development lifecycle (SDLC) – the entire process
consisting of all activities required to build, launch, and maintain
an information system
•Identify the problem or need and obtain approval
•Plan and monitor the project
•Discover and understand the details of the problem or
need
Designed by Duba
•Design the system components that solve the
problem or satisfy the need
•Build, test, and integrate system components
•Complete system tests and then deploy the solution
Required Skills of the Systems Analyst
Designed by Duba
…and don’t forget the ethics!
Technical Knowledge and Skills
• An analyst should have fundamental technology knowledge of
• Computers and how they work
• Files, database, and storage hardware and software
• Input and Output hardware and software
• Computer networks and protocols
• Programming languages, Operating systems and utilities
• Communication and collaboration technology
Designed by Duba
Technical Knowledge and Skills (continued)
Designed by Duba
• Requirements Modelling
• Architectural Design
• Network Configuration
• Database Design
Business Knowledge and Skills
• Organizational structure
Designed by Duba
• Systems analysts typically study business administration/management in
college with a major in CIS or MIS
People Knowledge and Skills
• Systems analysts need to understand how people
• Think
• Learn
• React to change
• Communicate
Designed by Duba
People Knowledge and Skills (continued)
• Interpersonal and communication skills are crucial to
• Obtaining information
• Motivating people
• Getting cooperation
Designed by Duba
Integrity and Ethics
• Analyst has access to confidential information, such as salary, an organization’s planned
projects, security systems, and so on.
• Must keep information private
Designed by Duba
What Are Requirements?
• System Requirements =
• Functional requirements
• Non-functional requirements
• Functional Requirements– the activities the system must perform
• Business uses, functions the users carry out
• Use cases in Chapter 1
• Non-Functional Requirements– other system characteristics
• Constraints and performance goals
Designed by Duba
FURPS+ Requirements Acronym
•Functional requirements
•Usability requirements
•Reliability requirements
•Performance requirements
•Security requirements
Designed by Duba
•+ even more categories…
FURPS+ Requirements Acronym
Designed by Duba
Methodologies, Models, Tools, and
Techniques
⚫ Methodologies
⚫ Provides guidelines for every facet of system
development: What to do when, why and how
⚫ Specifies an SDLC with activities and tasks
⚫ Specifies project planning and project
management models and reporting
⚫ Specifies analysis and design models to create
⚫ Specifies implementation and testing techniques
Designed by Duba
⚫ Specifies deployment and support techniques
⚫ Other term used is System Development
Process
Methodologies, Models, Tools, and
Techniques
⚫ Model
⚫ An abstraction of an important aspect of the real
world.
⚫ Makes it possible to understand a complex
concept by focusing only on a relevant part
⚫ Each model shows a different aspect of the
concept
⚫ Crucial for communicating project information
Designed by Duba
⚫ In IS, some models are of system
components
⚫ Some models are used to manage the
development process
Methodologies, Models, Tools, and
Techniques
⚫ Tools
⚫ Software applications that assists developers in
creating models or other components required for
a project
Designed by Duba
Methodologies, Models, Tools, and
Techniques
⚫ Technique
⚫ A collection of guidelines that help an analyst complete an
activity or task
⚫ Learning techniques is the key to having expertise in a field
Designed by Duba
Methodologies, Models, Tools, and
Techniques
Designed by Duba
6 Core Agile Values for Business Analysts
1. Collaborative Working
2. Self-organizing Teams
3. Continuous Improvement
4. Iterative Development and Incremental Delivery
5. Planning for and Building in Change
6. Doing the Right Thing and the Thing Right
Designed by Duba
1. Collaborative Working
Designed by Duba
• Environmental issues
2. Self-organizing Teams
• Group v Team
• Communication
• Cooperation
• Cohesion
• Micromanage v Empowerment
• Team Development
• Forming
• Storming
Designed by Duba
• Norming
• Performing
• Adjourning
3. Continuous Improvement
• the ongoing effort to improve products, services or processes, with a focus on delivering
improvements for the customer
• Kaizen approach: include the entire workforce in a culture of continuous improvement
• Plan
• Do
• Check
• Act
• Six Sigma DMAIC Approach:
• Define
• Measure
Designed by Duba
• Analyse
• Improve
• Control
4. Iterative Development and Incremental Delivery
Designed by Duba
5. Planning for and Building in Change
Designed by Duba
• Stakeholders
6. Doing the Right Thing and the Thing Right
Designed by Duba
Section C – Q5: Draw
• Question 5 – Draw a diagram (15)
• Class Unit 6
• Use Case Unit 8
• Activity Unit 9
Designed by Duba
Refined Model with Association Class and Grade
Attribute
Designed by Duba
Generalisation and Inheritance
Student Course
sNum Registers for crseCode
name * * crseTitle
nationality
Generalisation
path
residency
Discriminator
Designed by Duba
Oppidan Resident
phoneNum resName
address dateIn
Example 1: Payroll
• A company requires a payroll system. The company has three types of employees, namely, a
manager, a commission worker, and an hourly worker. Information that needs to be stored for
each employee is the employee’s first name, surname, earnings and employee number.
Additional information that must be stored for a manager is his/her monthly fixed salary; for a
commission worker his/her flat salary, sales percent and the sales made for the month; for an
hourly worker the number of hours worked and the wage per piece. All employees get a medical
aid contribution. In addition to this managers get a pension as a fringe benefit. Each medical aid
instance specifies the medical aid number, dependants, employee contribution and company
contribution, while each pension instance specifies the pension number, beneficiaries, amount
and date of retirement.
Designed by Duba
Example 2: Student System
• Student registration system – A university which caters for both on-campus and distance learners needs
to create a new system to keep track of student information. The information stored for each student
includes the student’s number, name, address, phone number and fees due. For on-campus students
matric points obtained must also be stored. Additional information that must be stored for distance
students includes the city of the study centre they will report to and the duration over which they are
completing the degree. Each student enrols for a degree. The details that are stored for each degree is
the name of the degree, the credits that need to be completed and the minimum duration of the degree.
Each on-campus student is assigned to a room in a residence. Each room houses only one student. For
each room and student occupation we need to store: the residence name, the room number, the date of
occupation and the date of exit.
Designed by Duba
Boundary
Use Case Diagram
Student Management System
Actor Register
Use-case
Designed by Duba
Student Check Account Balance
Relationships – Association
Association
Register
Designed by Duba
Student Check Account Balance
Relationship – <<Includes>>
Register
<<uses>>
uses
Designed by Duba
Student Check Account Balance
Relationship – <<Extends>>
Extends
Register
Unblock Student
Designed by Duba
Student Check Account Balance
Relationship – Generalisation
Register
Administrator
Designed by Duba
Student Check Account Balance
Manager
Example 1
• Scenario: The university’s registration system allows students to register for modules at the start of each
semester. It includes the ability for students to search for modules, register for them, and drop them if
necessary. Staff can also manage the modules they teach by viewing their class lists and updating details.
You are tasked with modelling some of the key processes in the system using a use case diagram, a use
case narrative, and an activity diagram.
• In order to be able to assist students with their registration, staff are able to perform all the functions
that the students can. They have some additional functionality that they can access as described below.
There are six functions of the system that need to be modelled:
• 1. Register for a Module: A student selects modules for the upcoming semester. The system checks for
any prerequisite requirements and ensures that there are available slots. If all criteria are met, the system
registers the student for the module.
• 2. Drop a Module: A student decides to drop a module they previously registered for. The system checks
if the drop is within the allowed drop period and updates the student's schedule accordingly.
• 3. Search for Module: A student searches for available modules using filters such as department,
module level, or time slots. The system retrieves and displays a list of available modules based on the
search criteria. From here a student might decide to register for the module.
Designed by Duba
• 4. View Class List: A staff member views the list of students enrolled in a specific module. The system
retrieves the student data for the selected module and displays it to the staff member.
• 5. Update Module Information: A staff member updates the details of a module they are teaching, such
as adjusting the class schedule. The system validates the changes and updates the module information
accordingly.
• 6. View Class Schedule: Both staff and students are able to generate a schedule. For staff this indicates
the schedule for the modules they teach. For students this indicates the modules they are registered for.
The University of Fort Hare requires a new information system to
control the borrowing of books from the library. Students and staff
are able to search for a book electronically, with the option of viewing
the status (checked out and date due back, or available) of the copies
of that particular title. All library staff members (clerks and
managers) also have access to this search feature. The library also
keeps information about library loans. A library loan occurs when a
patron approaches the circulation desk with a stack of books to check
out. If a book is checked out that a patron wants, he/she can put that
title on reserve. Library clerks use an electronic scanner to check
books in and out by scanning a barcode on the book that equates to
the book copy and title. When checking out a book, the clerk would
first need to verify the patron by scanning the patron’s membership
card (effectively the user ID for that individual). When books are
dropped in the return slot, the clerks also check in the books. For
each book that is returned the clerk will scan the book into the
system. Clerks also keep track of the arrival of new books and enter
Designed by Duba
this information into the system. The library manager has her own
activities in addition to all those that the clerk and the patrons can
perform. She will print out reports of book title by category. She also
likes to view all overdue books. When books are damaged or
destroyed she will delete information about that particular book copy.
She also likes to see what books are on reserve.
Activity Diagram Symbols
Designed by Duba
Constructing an Activity Diagram
• Add swimlanes for the actors and system
• Start with one initial node
• Add activities for each step in the UC narrative
• Show flows between each activity
• Add decisions, forks and joins as necessary
• End with a single end node
Designed by Duba
Example 1: Coastal Insurance
• Coastal Insurance System: A customer calls an insurance clerk at the insurance company and gives
his/her policy number. The clerk enters this information, and the system displays the basic insurance
policy. The clerk then checks the information to make sure the premiums are current and the policy is
valid.
• The customer gives the details of the car to be added. The clerk enters this information, and the system
ensures that the given data is valid. Next, the customer selects all the types of insurance coverage desired
and the amount for each. The clerk enters the information, and the system records each coverage type
and validates the requested amount against the policy limits. After all of the coverages have been entered,
the system validates the total coverage against all policy limits. If the validation is not successful, the
process returns to the selection of coverage types and amounts. If the validation is successful the process
proceeds and the system updates the policy, calculates a new premium amount, and prints the updated
policy statement.
Designed by Duba
Example 2
• Some additional information on the Register for a Module Use Case may indicate additional
aspects to model in the Use Case Diagram and the Narrative and Activity Diagram:
• Student Searches for Available Modules: The use case begins when the student enters
the module registration option on the system. The system presents the student with
options to search for available modules based on various criteria (e.g., module code,
department, time slot).
• Student Selects a Module to Register: The student selects a module from the search
results by clicking on it.
• System Checks Availability: The system checks if there are open seats in the selected
module.
• System Checks Prerequisites: The system verifies whether the student meets all the
prerequisites (e.g., passed prerequisite modules, not exceeding credit limits).
Designed by Duba
• System Verifies No Time Conflicts: The system checks if the module schedule conflicts
with any other registered modules in the student’s current schedule.
• System Confirms Successful Registration: If the student meets all the requirements
(e.g., seats are available, no conflicts, prerequisites are satisfied), the system registers
the student for the module. The system updates the student’s module schedule in the
university database.
Example 2
• Student Receives Confirmation: The system displays a confirmation message to the
student, confirming successful registration. An email confirmation is also sent to the
student’s university email account.
• If the module is Full: The system informs the student that the module is full. The
system suggests adding the module to a waiting list (if available). The student may
choose to be placed on the waiting list or return to the module search to select another
module.
• If the Prerequisite is Not Met: The system displays an error message indicating which
prerequisite is not met. The student is given the option to review their academic history
or choose a different module.
• If a Time Conflict is Detected: The system informs the student about the conflict. The
system allows the student to either choose another module or drop the conflicting
Designed by Duba
module to proceed with registration.
Section C – Q6 (Explain)
• Question 6 – Explain Diagrams (15)
• Event Unit 7
• Use Case Unit 8
• BPMN Unit 10
Designed by Duba
Event Decomposition Technique:
Specific Steps
1. Consider the external events in the system environment that require
a response from the system
2. For each external event, identify and name the use case that the
system requires
3. Consider the temporal events that require a response from the
system
4. For each temporal event, identify and name the use case that the
system requires and then establish the point of time that will trigger
Designed by Duba
the use case
Designed by Duba
later.
Designed by Duba
Boundary
Use Case Diagram
Actor Register
Use-case
Designed by Duba
Student Check Account Balance
Relationships – Association
Association
Register
Designed by Duba
Student Check Account Balance
Relationship – <<Includes>>
Register
<<uses>>
uses
Designed by Duba
Student Check Account Balance
Relationship – <<Extends>>
Extends
Register
Unblock Student
Designed by Duba
Student Check Account Balance
Relationship – Generalisation
Register
Administrator
Designed by Duba
Student Check Account Balance
Manager
User Goal Technique:
Specific Steps
1. Identify all the potential users for the new system
2. Classify the potential users in terms of their functional role (e.g., shipping, marketing,
sales)
3. Further classify potential users by organizational level (e.g., operational, management,
executive)
4. For each type of user, interview them to find a list of specific goals they will have
when using the new system (current goals and innovative functions to add value)
Designed by Duba
User Goal Technique
Specific Steps (continued)
5. Create a list of preliminary use cases organized by type of user
6. Look for duplicates with similar use case names and resolve inconsistencies
7. Identify where different types of users need the same use cases
8. Review the completed list with each type of user and then with interested
stakeholders
Designed by Duba
What is Process Modelling?
Designed by Duba
BPMN Development Drivers
• Must be acceptable and usable by the business community
• Although executable processes triggered the development of BPMN, it was expected that
BPMN would be used for more general business purposes
• BPM is intended to be Methodology Agnostic
• Methodologies will give guidance as to the purpose and level of detail for modeling
• BPMN is as complex as it needs to be. Just use what you need…
Designed by Duba
Designed by Duba
Events