project analysis course (2012-2013) week 2 activities
TRANSCRIPT
Project Analysis Course (2012-2013)
Week 2 Activities
Where we are now? At the end of week 1, we are familiar with :
General description of project area (problem area)
Project scope (geographically, technically, borders,..)
Selecting Technics Intended users of the system Project Context
Where we go? Identify requirements (end user point of view) & analyze (Developer point of view) themFocus of this week includes:
Identification of functional requirement of the system
Identification of the non functional requirement of the system
Identification of constraints Prioritize requirements Validate use case modelling
Functional Requirement Study the project case carefully and identify functional requirementsFunctional requirements describe the interactions between the system and its environment ( in short: WHAT WILL THE SYSTEM DO) try to identify all possible FR of the system at this stage. Stating Functional requirements, examples:
1. An operator must be able to define a new game. 2. The system will provide registration of new students3. The system shall keep track of library members
Remember FR are phrased as actions“Advertise a new league”“Schedule tournament”“Notify an interest group
Non Functional RequirementAspects not directly related to functional behavior, but part of the system Stating non functional requirements, examples:
1. The response time of the system must be less than 1 second
2. The system must recover from failure in less than an hour
NFR Categories:- Usability- Reliability
RobustnessSafety
- PerformanceResponse timeScalability ThroughputAvailability
- SupportabilityAdaptabilityMaintainability
Usability Requirement example:
“Viewers must be able to watch a match without prior registration and without prior knowledge of the match.”
Performance Requirement example
“The system must support 10 parallel tournaments”
Supportability Requirement example
“The operator must be able to add new games without modifications to the existing system.”
ConstrainsImposed by the client or the environment Sample constraints requirements:
1. The system must be implemented in Java
2. The system should run under windows operating system only
Prioritize RequirementsFrom all identified FR & NFR, which are the most important one (must develop)Rewrite FR & NFR omitting the non important requirements
e.g.: for student registration system
ALL discovered requirements1. Register students2. Manage students (add, delete, update)3. Attend lectures4. Assign courses5. …….
Most important updated are 1, 2, 43 is not part of the registration hence- not important requirement
Validate RequirementsActivities:
Recall the different roles in the groups ( users, developers, etc) - Ask users/clients if the current requirements conform their defined requirements
Go online check for similar project cases implementation – see the match
use casesActivities includes:
Identification of main actors/stakeholders of the system
Identifying functions provided by the system to each actor/stakeholder
Draw use case diagrams (Check if there is relationship between use cases, show it)
Provide use case scenarios Provide full description of use case
use cases…….Identification of Main actorsExample 1 : For Online examination system, actors include:
ExaminerExaminee (students)System Administrator
use cases………Identifying functions provided by the system to each actor
Example 1 : For Online examination system, actors include:Examiner (prepare exam, mark exam, display results)Examinee (register for an exam, submit exam, view results)System administrator (manage users, manage exams)
use cases………Draw use case diagrams (Check if there is relationship between use cases, show it)
examiner
prepare exam
mark exam
display results
examinee
register for exam
submit exam
view results
manage exams
manage userssystem administrator
Online Exam System
use cases………Provide use case scenarios•For above example lots of scenarios can be generated•Scenarios come from use cases, example
Scenario 1: register for examScenario 2: manage usersScenario 3: manage examsScenario 4: display results
•Provide a sequence of steps involved in each scenario
use cases………Provide use case scenarios•Example: Scenario 1- register for exam (steps)
1. Examinee fills registration form2. Examinee submits the form3. The system verifies payment for
exam4. The system returns a success
registration message•Do the same for all scenarios
use cases………Provide full description of use case ( e.g. add a record of a TB patient to database
Use Case Name - Add a person record
Purpose: This business use case will allow a user to add a "person record" to the Master Person Index (MPI).
Pre-conditions: (Those conditions that must be present before the use case can start.)The user must have proper security rights to enter a patient in the system.System is available and operableThe user is notified that a person requires TB services and the person satisfies jurisdiction criteria for assessment and/or treatment.The person requires TB assessment and/or treatment needs to be added into the MPI.
Main Flow:1. User selects register option2. System displays register screen3. User enters basic patient information in the register screen. Basic information
may include last name, first name, sex, date of birth, address, and if a translator is needed.
4. User enters the reason for adding the person to the MPI which may have the following values: suspect case, confirmed case, contact investigation, targeted testing, etc.
5. User selects the save option6. System saves registration in the MPI7. End Use Case
Alternate Flow/ Exception: (An optional situation within the activity flow.) 8. The system provides a message that a database record arleady exist9. System rejects the registration and stops
Post-conditions: (Outcome)A person record is created in the MPI.
This week’s presentation Content
Heading: Requirement Elicitation & Analysis (summary report)
1. Introduction (elicitation & analysis approaches)2. Functional Requirements3. Non Functional Requirements
3.1 security3.2 performance3.3 …………
4. Constraints5. Use case model5.1 Actors5.2 Use case diagram5.3 use cases specification
This week’s report Content
Heading: Requirement Elicitation & Analysis (detailed report)
1. Introduction (elicitation & analysis approaches)2. Functional Requirements3. Non Functional Requirements
3.1 security3.2 performance3.3 …………
4. Constraints5. Use case model5.1 Actors5.2 Use case diagram5.3 use cases specification