Presentation is loading. Please wait.

Presentation is loading. Please wait.

ICT Management page 1MBA - 2005 BORM - BORM © - Business Object Relation Modeling 1993-1999 Know-How Fund of British Council, ČVUT v Praze, ČZU Praha,

Similar presentations


Presentation on theme: "ICT Management page 1MBA - 2005 BORM - BORM © - Business Object Relation Modeling 1993-1999 Know-How Fund of British Council, ČVUT v Praze, ČZU Praha,"— Presentation transcript:

1 ICT Management page 1MBA - 2005 BORM - BORM © - Business Object Relation Modeling 1993-1999 Know-How Fund of British Council, ČVUT v Praze, ČZU Praha, Loughborough University 1996-2005 Deloitte&Touche Management & Consulting Group

2 ICT Management page 2MBA - 2005 What is BORM? BORM stresses the process modelling as the main requirement capture technique. This part of BORM can be used separately for Business Process Reengineering activities. BORM has been developed as the method for pure object-oriented software development (such as Smalltalk programming language, object database systems Gemstone, ArtBase, ObjectStore,...). In each phase, BORM uses only a limited set of modelling concepts and rules. The BORM development process can be viewed as step-by step transformations of particular object-oriented models from business models into conceptual and software models.

3 ICT Management page 3MBA - 2005 B O R M i n f o r m a t i o n e n g i n e e r i n g p r o c e s s BORM Spiral Development Life Cycle basic level advanced level application level customers, managers, employees,... developers, managers, programmers,... real world problem new application real world expansion consolidation The objective of this phase is to define, agree to and communicate a project scope. 1.1 determine project objectives and CSF 1.2 create initial set of required system functions 1.3 create initial set of system scenarios The objective of this phase is to define, agree to and communicate a project scope. 1.1 determine project objectives and CSF 1.2 create initial set of required system functions 1.3 create initial set of system scenarios 1. STRATEGIC ANALYSIS The objective is to identify and evaluate the existing processes and to develop new process model of the system. 2.1 find objects and their properties in existing processes using OBA and draw process diagrams (AS-IS step) 2.2 evaluate existing processes and make required updates and changes (TO-BE step) The objective is to identify and evaluate the existing processes and to develop new process model of the system. 2.1 find objects and their properties in existing processes using OBA and draw process diagrams (AS-IS step) 2.2 evaluate existing processes and make required updates and changes (TO-BE step) 2. INITIAL ANALYSIS The objective is to use the existing model in creation of initial software specification. 3.1 determine objects from software domain 3.2 find candidate object classes and object collections 3.3 refine object relationships, determine object types and draw conceptual diagrams The objective is to use the existing model in creation of initial software specification. 3.1 determine objects from software domain 3.2 find candidate object classes and object collections 3.3 refine object relationships, determine object types and draw conceptual diagrams 3. ADVANCED ANALYSIS The objective is to transform the existing conceptual model towards its software realization. 4.1 refine object relationships (delegation, dependency,...) 4.2 apply design patterns The objective is to transform the existing conceptual model towards its software realization. 4.1 refine object relationships (delegation, dependency,...) 4.2 apply design patterns 4. INITIAL DESIGN The objective is to respect the concrete software environment used and make model more detailed. 5.1 include legacy components into the model 5.2 solve the architecture components of the model (servers, databases, network,...) The objective is to respect the concrete software environment used and make model more detailed. 5.1 include legacy components into the model 5.2 solve the architecture components of the model (servers, databases, network,...) 5. ADVANCED DESIGN The objective is to physicaly implement the system. 6.1 prepare and test the system prototype 6.2 install system, measure progress, identify issues and perform activities which will facilitate success. The objective is to physicaly implement the system. 6.1 prepare and test the system prototype 6.2 install system, measure progress, identify issues and perform activities which will facilitate success. 6. IMPLEMENTATION

4 ICT Management page 4MBA - 2005 B O R M i n f o r m a t i o n e n g i n e e r i n g p r o c e s s BORM Information Engineering Process real world problem object oriented solution

5 ICT Management page 5MBA - 2005 Example - Object Hierarchy Evolution in BORM type Array type ByteArray String type Collection type Bag Set type Dictionary Array Bag Set Dictionary ByteArray Collection String ByteArray IS-A Set Array IS-A Bag String IS-A Dictionary IS-A Collection IS-A HIERARCHY (business objects) POLYMORPHISM (conceptual objects) INHERITANCE (software objects) Motto: do not start system modeling with software-oriented concepts.

6 ICT Management page 6MBA - 2005 UML does not well support pure object-oriented programming environments (no dependency and no delegation, which are important for Smalltalk and OODBMS programming, for example) Why not UML UML does not well support initial stages of system development, especially where system to be modeled and its boundary is not good defined UML diagram notation is too complicated for use in effective workshops with domain experts UML diagrams consist of concepts from different levels of abstraction UML considers only an object’s life history in the design phases and separately for each class In UML, the same concept is understood in different ways depending on the phase of development process and on the interpretation of the modelers (for example, an association as an abstract way of passing messages in initial analysis or as a physical implementation of instance variables in code design)

7 ICT Management page 7MBA - 2005 BORM as the Domain Specific Method BORM is good applicable in areas, where problem to be modeled can be interviewed, analyzed and designed as the collection of processes with mutually collaborating objects. This means areas like mobile phones telecommunication industry, e-commerce platforms, point-of-sale systems, managing information systems, workflow information systems etc.) The requirement analysis models in BORM are made up of represented object-oriented concepts related to the domain world and not the code world. BORM is applicable in areas, where software application requirements (problem, scope, goal,...) are not completely specified as the begin of the modeling process

8 ICT Management page 8MBA - 2005 User Requirements in BORM, Object Behavioral Analysis and ORD

9 ICT Management page 9MBA - 2005 Is iterative. Output of OBA is the huge collection of structured textual documentation such as forms, tables, lists, matrices,... Aids the recogniton of the initial objects in the system. All concepts are derived and depend on the set of system processes. Is easily understood by domain experts, because it does not require understanding of software-oriented concepts and is expressed in natural language-like terms. What is OBA? (Object Behavioral Analysis)

10 ICT Management page 10MBA - 2005 1. step a) interview b) create list of required system functions c) create list of system scenarios 2. step a) derive participating objects from scenarios b) create modeling cards 3. step a) classify objects by their properties b) look for other (second-order) objects 4. step a) identify object relations and interactions 5. step a) simulate and evaluate scenarios b) make process diagrams 5 steps of OBA method in BORM listslists formsforms tablestables ORDORD simulationsimulation CASE tool METAEDIT

11 ICT Management page 11MBA - 2005 What is ORD? ORD (Object Relation Diagram) serves in initial stages of analysis for detailed description of processes in the system. In ORD, the process modeled is displayed as mutual communication between objects. Each object that participates (i.e. has role) in the process is displayed as an automaton via a sequence of states and transitions. ORD can be understood as a combination of activity, sequence, interaction and state-transition UML diagrams

12 ICT Management page 12MBA - 2005 ORD Example roles of participants makes a process

13 ICT Management page 13MBA - 2005 ORD Example

14 ICT Management page 14MBA - 2005 Practical example of Requirement Modeling (Processes in Regional Gas Distribution Company)

15 ICT Management page 15MBA - 2005 Required System Functions

16 ICT Management page 16MBA - 2005 Process Scenarios

17 ICT Management page 17MBA - 2005 Modeling Cards of Participants

18 ICT Management page 18MBA - 2005 Process Diagram Example (one process from collection of 97 processes)

19 ICT Management page 19MBA - 2005 Transition from Business Model to Conceptual Model in BORM

20 ICT Management page 20MBA - 2005 How to Create Conceptual Model? Decide for implementation of object types as classes or as collections. Define object types and assemble type hierarchy. Define software system boundary, select objects within the system from all business objects modeled. „Behavioral constraints“ are the tool for performing these transformations. Transform object associations to more concrete relations like object composing, object dependency, polymorphism or object delegation.

21 ICT Management page 21MBA - 2005 Example of Behavioral Constraints IS-A hierarchy behavioral constraints A needs B to perform anything A needs to pass data to B A needs to get data from B object relationship (from A to B) B shares the same behaviour as A B is dynamicaly accessible from A B is dependent on A B is an instance of a class A normal HAS-A hierarchy poly- -morphism inheritanceaggregation B uses the methods of A behav. (methods) of A have influence to values or behav. of B Yes No Yes No Yes No Yes No Yes No values or behav. of B have influence to values or behav. ofA NoYesNo values of A have influence to values or behav. of B

22 ICT Management page 22MBA - 2005 collection name collection type NAME attributes operations Object A Object B method B method A message message parameter message return BORM Conceptual Diagrams BORM uses UML notation, but has following differences: Extra symbol for method. Extra symbol for message among methods. Extra symbol for collection of objects. Extra symbol for class object. Extra symbols for relations known from pure object languages such as delegation, dependence, polymorphism independent in inheritance, etc. In each modeling phase, only limited set of concepts is used. For better expression of some modeling details, it is allowed to put together data, behavioral and history related concepts in one diagram.

23 ICT Management page 23MBA - 2005 Transition from Conceptual Model to Software Model in BORM

24 ICT Management page 24MBA - 2005 How to Create Software Model? Define inheritance hierarchy of object classes. Implement states and transitions via additional attributes and methods, if necessary. Substitute object relations, if they are not supported in your target programming environments. Solve legacy problem. (both legacy components and legacy databases) Define reused objects and components in your model, where possible. Apply design patterns, if possible.


Download ppt "ICT Management page 1MBA - 2005 BORM - BORM © - Business Object Relation Modeling 1993-1999 Know-How Fund of British Council, ČVUT v Praze, ČZU Praha,"

Similar presentations


Ads by Google