170 likes | 194 Views
Requirement Engineering. Requirements Existing Systems Business Rules. 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.
E N D
Requirement Engineering Requirements Existing Systems Business Rules Bogdan Shishedjiev Requirements
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
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
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
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
Gathering Requirements • Existent System Study • Reverse Engineering Bogdan Shishedjiev Requirements
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
Generalize Requirements • Defining the actors (stakeholders) and their roles • Draw an Use Case Diagram Bogdan Shishedjiev Requirements
Case Study • Policlinic An 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
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
A patient is characterized by: Unique Number Name address Phone Number General practitioner is characterized by: Serial Number Name Phone Number Each patient is supervised by a GP A policlinic is characterized by: Name Address Phone Number A specialist is characterized by: Serial Number Name Phone Number Each specialist has one or more specialties Each specialist can give consultations in one or more policlinics Each policlinic groups several specialists A patient can make an appointment for a consultation with specialist in a given policlinic, The specialist must work in this policlinic The appointment is for a date that is later than the date of appointment If the consultation does not take place a new appointment must be made no matter what are reasons for the failure lists of appointment for every specialist are made at the beginning of the day. In the end of every day two reports are made: A log of appointment made A log of consultations done Case Study – Management Rules Bogdan Shishedjiev Requirements
Case Study –Rules • Organizational rules: • Only the administrator registers the appointments from 9 to 17 every work day. • Consultations not done on the day of appointment are canceled. • Technical rules: • The DBMS used is MS Access Bogdan Shishedjiev Requirements
Task definition • Task – operation that is realized without interruption at given moment • Example Bogdan Shishedjiev Requirements
Policlinic- Use Case Bogdan Shishedjiev Requirements
Case Study - Tasks Bogdan Shishedjiev Requirements
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
Use Case – Data Dictionary Bogdan Shishedjiev Requirements