Upload
simon-bryan
View
221
Download
0
Embed Size (px)
DESCRIPTION
Bogdan Shishedjiev Requirements 3 Gathering Requirements What to use for modeling –Whiteboard –Word processors –CASE tools Gathering information –Interviews –Workshops Recommendations –Do not make models. Only seek for needs, goals and information about the existing organization. –Try to learn the language of customers – their business language. Do not impose your opinion. –If you have to show an early sketch of a model try to explain it well.
Citation preview
Bogdan Shishedjiev Requirements 1
Requirement Engineering
RequirementsExisting Systems
Business Rules
Bogdan Shishedjiev Requirements 2
Gathering Requirements• What information do we need?
– The broad justification for the application, who will benefit from it, and (possibly) who will be disadvantaged.
– The business concepts, rules, and terminology.– The critical success factors for the system and for the area of the
business in general, and the data required to support them.– The intended scope of the system, to enable you to form at least a
preliminary picture of what data will need to be covered by the model.
– System size and time frames, as a guide to planning the data modeling effort and resources.
– Performance-related information—in particular, throughputs and response times.
– Management information requirements that the system is expected to meet in addition to supporting operational processes.
– The expected lifetime of the application and changes likely to occur over that period.
– Interfaces to other applications, both internal and external
Bogdan Shishedjiev Requirements 3
Gathering Requirements
• What to use for modeling– Whiteboard– Word processors – CASE tools
• Gathering information– Interviews– Workshops
• Recommendations– Do not make models. Only seek for needs, goals and information
about the existing organization.– Try to learn the language of customers – their business language.
Do not impose your opinion.– If you have to show an early sketch of a model try to explain it
well.
Bogdan Shishedjiev Requirements 4
Gathering Requirements• Interviewed
– Senior managers• First impression of modeled organization• Main goals and the way the business is done• Define the principal workplaces involved• Define the scope and the context of the system – interfaces to
other systems – Subject matter experts
• The sub-goals from their point of view• The processing of information.• The functionality they want• Organization language
Bogdan Shishedjiev Requirements 5
Gathering Requirements
• Interviewed– The lower staff – riding trucks
• Variations in practices and interpretation of business rules at different locations
• Variations in understanding of the meaning of data —particularly in interpretation and use of codes
• Terminology used by the real users of the system• Availability and correct use of data• Misuse or undocumented use of data fields
Bogdan Shishedjiev Requirements 6
Gathering Requirements
• Existent System Study– Reverse Engineering
Bogdan Shishedjiev Requirements 7
Generalize Requirements
• Requirement types– Functional requirements – what the system has to do– Non-functional – what are the constraints over the
system • Hardware constraints• Software constraints• Organizational constraints• Context constraints
Bogdan Shishedjiev Requirements 8
Generalize Requirements
• Defining the actors (stakeholders) and their roles• Draw an Use Case Diagram
Bogdan Shishedjiev Requirements 9
Case Study• PoliclinicAn administrative medical center provides n administrative management
of patients performing consultations in a policlinic. A patient has a unique number, name, address and telephone number. A patient is supervised by a general practitioner, also called family doctor, characterized by a serial number, name and phone number. A patient can go to a policlinic for consultations with medical specialists. A consultation is carried out at on specific date a given policlinic by a specialist. Only consultations by appointment made on a date earlier than the consultation will be allowed. A policlinic is characterized by a particular name, location and phone number. There are no two polyclinics with the same name in the same locality.A policlinic groups several medical specialists. Nothing prevents that a single specialist doctor can give consultations in several policlinics. A medical specialist is not only characterized by a serial number and a name but also his specialties.
Bogdan Shishedjiev Requirements 10
Rules Definition
• Types– Management Rules – data, calculation, activities– Organizational – Technical
• Definition methods– By every day language – easy but there are risks of
ambiguity (vagueness)– Mathematical expressions– Pseudo-code– Tables, graphics, diagrams
Bogdan Shishedjiev Requirements 11
Case Study – Management Rules1. A patient is characterized by:
– Unique Number– Name– address– Phone Number
2. General practitioner is characterized by:– Serial Number– Name– Phone Number
3. Each patient is supervised by a GP4. A policlinic is characterized by:
– Name– Address– Phone Number
5. A specialist is characterized by:– Serial Number– Name– Phone Number
6. Each specialist has one or more specialties
7. Each specialist can give consultations in one or more policlinics
8. Each policlinic groups several specialists
9. A patient can make an appointment for a consultation with specialist in a given policlinic, The specialist must work in this policlinic
10. The appointment is for a date that is later than the date of appointment
11. If the consultation does not take place a new appointment must be made no matter what are reasons for the failure
12. lists of appointment for every specialist are made at the beginning of the day.
13. In the end of every day two reports are made:
– A log of appointment made– A log of consultations done
Bogdan Shishedjiev Requirements 12
Case Study –Rules
• Organizational rules:1. Only the administrator registers the appointments
from 9 to 17 every work day.2. Consultations not done on the day of appointment are
canceled.• Technical rules:
1. The DBMS used is MS Access
Bogdan Shishedjiev Requirements 13
Task definition• Task – operation that is realized without interruption at given moment• Example
Task Trigger
Sending Order Shortage of stock. Interesting proposition from a supplier, The
order.
Result Order file.
Frequency It depends on weekday None on Mondays and Saturdays, from 10 till 15 on Tuesdays and Thursdays , 0 till 5 on Wednesdays and Fridays
Duration About 10 minutes (from 2 to 20 ) for an order
Rules MR 12, MR 15, MR 66 OR 13, OR 15
Commentaries
Bogdan Shishedjiev Requirements 14
Policlinic- Use Case
Bogdan Shishedjiev Requirements 15
Case Study - TasksName Definition Rules Trigger Frequency Entry Result
T1 Create a personal information
MR2,4,5 A new doctor or a patient
A few times a month
Personal data Personal Record
T2 Make an appointment
MR9,10 A call from patient
Many times a day
Appointment record
T3 Do a consultation MR9,10 Appointment & Patient coming
Many times a day
Appointment record
Modified Appointment
T4 Do a list of appointments
MR9,12 Doctor coming
A few times a day
Appointments List
T5 Do a log of appointments
MR13 In the evening
Every evening
Appointments List
T6 Do a log of consultation
MR13 In the evening
Every evening
Appointments List
Bogdan Shishedjiev Requirements 16
Data Defining
• Information about data– Name– Definition– Structure– Size– Type – elementary, structured, calculated– Constraints or calculation rules– Examples– Basic rules (ground)
• Elimination of synonyms and polysemes or homographs
• Construction of a Data Dictionary
Bogdan Shishedjiev Requirements 17
Use Case – Data DictionaryName Definition Struct Size Type Constraints Examples Rule
PatNo Patient Number N 10 elt >0, Not Null 6704356457
1
PatName Patient name A 20 elt Not Null Mary Smith
1
PatAdress Patient address A 40 elt London, 37 Baker Str
1
PatTel Patient Phone Number A 17 elt Valid Phone Number
+322134564
1
GPSer Serial Number of the GP
N 5 elt >0, Not Null 2
…… …….. ..