17
Bogdan Shishedjiev Requirements 1 Requirement Engineering Requirements Existing Systems Business Rules

Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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

Page 1: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

Bogdan Shishedjiev Requirements 1

Requirement Engineering

RequirementsExisting Systems

Business Rules

Page 2: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing 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

Page 3: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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.

Page 4: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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

Page 5: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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

Page 6: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

Bogdan Shishedjiev Requirements 6

Gathering Requirements

• Existent System Study– Reverse Engineering

Page 7: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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

Page 8: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

Bogdan Shishedjiev Requirements 8

Generalize Requirements

• Defining the actors (stakeholders) and their roles• Draw an Use Case Diagram

Page 9: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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.

Page 10: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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

Page 11: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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

Page 12: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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

Page 13: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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

Page 14: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

Bogdan Shishedjiev Requirements 14

Policlinic- Use Case

Page 15: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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

Page 16: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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

Page 17: Bogdan Shishedjiev Requirements1 Requirement Engineering Requirements Existing Systems Business Rules

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

…… …….. ..