UML-BUSINESS-PROFILE-BASED BUSINESS MODELING IN ITERATIVE AND INCREMENTAL SOFTWARE DEVELOPMENT - PowerPoint PPT Presentation

About This Presentation
Title:

UML-BUSINESS-PROFILE-BASED BUSINESS MODELING IN ITERATIVE AND INCREMENTAL SOFTWARE DEVELOPMENT

Description:

UML-BUSINESS-PROFILE-BASED BUSINESS MODELING IN ITERATIVE AND INCREMENTAL ... best engineering techniques (Booch, OMT, OOSE) which are successfully proved in ... – PowerPoint PPT presentation

Number of Views:105
Avg rating:3.0/5.0
Slides: 23
Provided by: www2Infor2
Category:

less

Transcript and Presenter's Notes

Title: UML-BUSINESS-PROFILE-BASED BUSINESS MODELING IN ITERATIVE AND INCREMENTAL SOFTWARE DEVELOPMENT


1
UML-BUSINESS-PROFILE-BASED BUSINESS MODELING IN
ITERATIVE AND INCREMENTAL SOFTWARE DEVELOPMENT
  • Dražen Brdanin, Slavko Maric
  • bdrazen_at_etfbl.net ms_at_etfbl.net
  • Faculty of Electrical Engineering Banja Luka

4th Workshop Software Engineering Education and
Reverse Engineering Zagreb, 06-10.09.2004.
2
Dražen Brdanin, Slavko MaricUML-BUSINESS-PROFILE
-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
  • This presentation includes
  • review of present business modeling techniques
    based on UML
  • standard UML,
  • UML extensions,
  • UML business profile.
  • one proposal for UML-business-profile-based
    business modeling
  • business use case model exterior view to
    business domain
  • business use case diagrams,
  • textual description of business use cases,
  • high level business activity diagrams.
  • business object model interior view to business
    domain
  • detailed business activity diagrams,
  • business sequence diagrams,
  • business object diagrams.
  • static aspect of business modeling in
    iterative-incremental software development,
  • dynamic aspect of business modeling in
    iterative-incremental software development.

3
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Business modeling
  • Business systems
  • complex (sometimes large-scale) systems that
    offer to customers/users desired
    products/services.
  • they are characterized by appropriate
    organizational structure and business processes
    to satisfy customers/users .
  • Business process - specific sequence of
    spatio-temporal activities which has begin and
    end, as well as clearly defined goal, inputs and
    outputs.
  • Organizational structure mutual connectivity
    of human and material resources required for
    successful business process realization.
  • Business domain
  • totality consists of customers/users,
    organizational structure and business processes
    in particular business system
  • Business modeling
  • discipline that deals with modeling of business
    domain
  • Business model
  • abstraction of business system parts and their
    relationships
  • authors focus on Business Process Modelling BPM

4
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Business modeling (continued)
  • Motives for business modeling
  • better understanding of key concepts in present
    business processes,
  • base for information system development,
  • base for improvement of present business
    structure and organization,
  • presentation of proposed reconstruction in
    present business processes,
  • experimental check through different types of
    simulation...
  • Goals of business modeling
  • Business Process Improvement - BPI,
  • Business Process Reengineering - BPR.
  • Types of business modeling
  • modeling of present state - "as-is" model,
  • modeling of proposed state - "to-be" model.

5
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Business modeling (continued)
  • Complete business model
  • view in business domain from different
    perspectives,
  • its result of different aspects of analysis in
    business domain each view is represented with
    single or more different diagrams
  • aspects of analysis
  • concept
  • the highest apstraction level view of the
    business domain where the problems are ilustrated
    and the goal system architecture is described
  • structure
  • organizational structure of business system
  • process
  • business activities in the system
  • behaviour
  • interactions between resources workers and
    objects
  • Business model structure
  • unique model (Penker, Eriksson),
  • two models (UML standard).

Fig. 1. Aspects of business domain analysis.
6
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Business modeling (continued)
  • Business modeling role in information system
    development
  • usually prephase or first phase in IS development
    (eg. RUP)
  • business model
  • is used for system requirements identification,
  • serves for identification of the most suitable IS
    architecture for the particular business domain
  • Business modeling tasks
  • During business modeling we must identify
  • processes and activities in particular processes,
  • actors,
  • process initiators,
  • process goals and results,
  • required resources (human, material and
    nonmaterial),
  • process rules and constraints,
  • automatization level of present processes,
  • responsibilities for particular activities,
  • possibilities that some alternate activities can
    be chosen,
  • manners for efficiency improvement and augment in
    present processes, etc.

7
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
UML
  • UML is graphic language for visualization,
    specification, design and documenting of software
    systems, but nonsoftware systems too.
  • UML has rich notation and semantics thanks to
    totality of the best engineering techniques
    (Booch, OMT, OOSE) which are successfully proved
    in modeling large-scale and complex systems, as
    well as it offers possibilities to use and
    integrate different concepts of IS analysis and
    design.
  • leading modeling language (implemented in many
    CASE tools),
  • de facto industrial standard for software
    modeling (ISO ?)
  • standard UML is open system its possible to
  • extend base concept with user extensions, or
  • specialize base concept in particular domain by
    introducing profile.

8
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
UML and business modeling
UML (industrial standard)

business modeling (first phase in IS development)
language for business modeling
  • PRO
  • during the whole cycle of IS development, from
    business modeling to software implementation and
    transition in business domain, harmonized
    notation will be used
  • transition from business models to system UML
    models will be easier
  • possibilities for extending, adopting and
    specialization of standard UML
  • CONTRA
  • too rich OO notation (not optimal and not
    adequate for business modeling)
  • traditional techniques and notations are more
    popular
  • there is no standard for business modeling based
    on UML
  • standard UML,
  • UML extensions,
  • UML profile.

9
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
BM based on standard UML
  • too rich OO notation, not optimal and not
    adequate for business modeling
  • combination with other approaches and notations,
    such as IDEF, etc.
  • Example integration of business models and
    system UML models within Popkin Software based on
    hierarchical decomposition to elementary
    processes which are transferred to system use
    cases
  • Advantages hierarchical decomposition which
    solves complexity problems.
  • Disadvantages heterogeneous and not harmonized
    notation, impossible to deal with resources,
    decisions, as well as it is static system model.

Fig. 2. Integration of business model and system
UML model.
10
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
BM based on UML extensions
  • UML extensions are mechanisms for extending base
    UML concept to be possible specific details
    modeling without changing entire language.
  • Extension can be realized by using stereotypes,
    tagged values and constraints.
  • Several extensions for business modeling has been
    realized because there is no standard for
    business modeling based on UML, such as
    Eriksson-Penker, McLeod, etc.., but neither
    extension didnt solve problems of use UML for
    business modeling.
  • Eriksson-Penker extension
  • The most important set of extensions

Fig. 3. Generic example of business model
according to Eriksson-Penker extension.
Fig. 4. Implementation of business process.
11
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
UML business profile
  • Profile - defined set of standard language
    extensions which is built in UML and specialized
    for modeling in particular domain.
  • Business profile (v1.3) specializes some base
    classes of standard UML by introduction of
    business domain specific classes.
  • Business model two models
  • business use case model
  • represents outside view of business system and
    describes business system and its relationships
    with the exterior systems through the business
    use cases
  • business object model
  • represents inside view of business system and in
    the completeness shows process, procedures,
    business worker's behaviour, used resources -
    business objects, and their relationships and
    organization, that goals can be realized and
    expected results achieved

Fig. 5. Business model defined by UML business
profile.
12
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Business use case model
  • Outside view of business system which describes
    business system and its relationships with the
    exterior systems through the business use cases.
  • Business use case is the business process, or
    some concrete function in business system offered
    to the exterior systems. Those exterior systems
    are called business actors. Business use case is
    the sequence of actions, preformed by workers in
    business system, and by them business system
    makes some concrete and recognable value.
  • Business use case model contains descriptions of
    business actors and business use cases, and their
    interactions too. We represent that by business
    use case diagrams.
  • Business use case model also contains realization
    descriptions of identified business use cases. We
    can document realization
  • textually, and
  • graphically (high level sequence diagram or
  • activity diagram)

Fig. 6. Generic example of UC diagram.
Fig. 7. Generic example of high-level activity
diagram.
13
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Business object model
  • Inside view of business system and in the
    completeness shows process, procedures, business
    worker's behaviour, used resources - business
    objects, and their relationships and
    organization, that goals can be realized and
    expected results achieved
  • Business object model includes
  • detailed activity diagrams,
  • interaction diagrams, and
  • object diagrams.
  • Detailed activity diagram
  • high level activity diagram completed by workers'
    responsibilities, used objects and object flows
  • Responsibility areas of involved workers are
    emphasized by swimlanes
  • activity diagram is procedurally (algorithmic)
    oriented and it is not appropriate for OO
    analysis and design

Fig. 8. Generic example of detailed activity
diagram.
14
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Business object model (continued)
  • business object model also includes some of OO
    interaction diagrams
  • collaboration diagram
  • focus on structural component of process
  • sequence diagram
  • focus on temporal component of process
  • messages between classes can be easy mapped
    in the responsibilities (methods) during the
    development of system class diagram

business object model includes business object
diagram shows the static structure and
relationships between objects can be
used to show organizational structure of
business system
Fig. 10. Generic example of object diagram.
Fig. 9. Generic example of sequence diagram.
15
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
RUP iterative and incremental approach
  • Today, integral IS development in "one breath"
    according to the traditional waterfall model in
    one pass, from domain analysis to implementation
    in real world is impossible and actually
    unimaginable
  • An iterative approach is necessary that in
    sequence of iterations, better domain
    understanding will be achieved and risk reduced,
    what incrementally leads to goal system. As an
    example of well structured iterative and
    incremental process, which found wide
    application in SE practice, we often take the
    RUP.

RUP has two dimensions structural dimension,
or static aspect of process represented by
activities, resources and artifacts temporal
dimension, or dynamic aspect of
process represented by phases, iterations,
cycles
Fig. 11. Technical perspective of RUP.
16
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Static aspect of business modeling
Business use case model
Business object model
17
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Static aspect of business modeling (continued)
  • Large-scale systems
  • great number of heterogeneous business use cases
    can be identified, often more than several
    hundreds, sometimes more than thousand.
  • In order to get better picture of whole system
    and solve the problem of visualisation
    complexity, all those business use cases can be
    grouped in higher level abstraction
  • business use case package
  • consists of some business use cases and
    appropriate relations
  • business use case system
  • contain more business use case packages,
    single business use cases and appropriate
    relations

Fig. 12. Transition from business models to
system models.
18
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Static aspect of business modeling (continued)
  • Transition from business models to system models
  • Identified business use cases, business actors,
    business workers and business objects can be used
    in transition from business models to initial
    system models. Business use case model is
    transferred in the system use case model, and
    business object model is transferred in the
    system design model.
  • Next rules are valid during transition from
    business use case model to system use case model
  • each business UC is candidate for system UC,
  • each business actor is possible system actor,
  • each worker is possible system actor.
  • During the transition of business object model
    next rules are valid
  • each identified entity (worker or business
    object) is possible system class, and
  • each message in sequence diagram is possible
    member function (method) of system class.

Fig. 13. Transition from business models to
system models.
19
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Dynamic aspect of business modeling
  • IS lifecycle isn't an integral process, but
    process divided into more cycles, where each
    cycle deals with the new product generation.
    Development cycle consists of four phases
    inception, elaboration, construction and
    transition. Each phase ends at the point where
    some great decision must be done, or some great
    goal(s) achieved. Those points we call
    milestones.
  • INCEPTION
  • Inception phase requests from business modeling
    that makes adequate base for the specification of
    functional and non-functional system
    requirements.
  • All exterior entities (business actors) and
    business use cases must be identified, and nature
    of their interactions high-level-described.
    Business use case model must be realized in
    completeness.
  • Inception phase can be done in one iteration (so
    called preliminary iteration). However, in case
    of the large scale systems it is recommended to
    preform business modeling in several iterations
    one subsystem per iteration. Dependent on the
    team dimension and experience, iterations can be
    parallely preformed

Fig. 14. Business model in inception phase.
20
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Dynamic aspect of business modeling (continued)
  • ELABORATION
  • In elaboration phase, realized business object
    model is required from business modeling
    workflow.
  • For all business use cases we must realize
    detailed activity diagrams as base for analysis
    and design.
  • Based on activity diagrams we generate sequence
    diagrams and object diagrams.
  • Business model is here finished with more than
    90 of completeness.
  • Usually, elaboration phase is preformed through
    several iterations, especially in the case of
    large-scale business systems subsystem by
    subsystem one subsystem per iteration.
    Dependent on the team dimension and experience,
    iterations can be parallely preformed.

Fig. 15. Business model in elaboration phase.
21
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Dynamic aspect of business modeling (continued)
  • CONSTRUCTION
  • All features of goal system are realized,
    integrated in system and checked in details.
    Stress is put on resource management to optimise
    expenses and prize, quality and performances,
    etc. Many projects are enough large-scale so many
    activities can be parallel preformed and in this
    manner we can improve and accelerate the
    realization of new product versions, but that can
    also augment the complexity of resource
    management and activity synchronization.
  • At the end of this phase, product must be ready
    for the customer, actually "beta" version. This
    at least means that product is implemented on
    appropriate platform, and also written
    documentation and user manual are required.
    Evaluation criteria is stability of beta-version
    in real world in particular business system.
  • Only some specific processes remain for business
    modeling workflow processes with some errors
    detected during the past iterations.
  • TRANSITION
  • transfer from "labs" to real business system.
    Only fine tuning remains, as well as generating
    newer product versions and users training.
  • This is the last phase in the IS development and
    it doesn't contain business modeling activities.

22
Dražen Brdanin, Slavko Maric UML-BUSINESS-PROFI
LE-BASED BUSINESS MODELING IN ITERATIVE AND
INCREMENTAL SOFTWARE DEVELOPMENT
Conclusion
  • Although primary intended for visual modeling of
    software systems, thanks to business profile, UML
    can be successfully used for business modeling
    too, because of very rich notation and semantics
    offer possibilities for all business domain
    analysis' aspects.
  • UML based business modeling has especial
    importance if it's base for IS development. Then,
    notations for business modeling and system
    modeling are harmonized, and used concepts offer
    possibilities for easy transfer business models
    to system UML models.
  • Described approach is fully integrated in
    iterative-incremental model of software
    development, so thanks to the advantages of
    business modeling based on UML business profile,
    advantages of iterative-incremental approach are
    additionally augment, such as high risk parts
    are discovered earlier and their elimination is
    easier, business process reengineering and system
    changes are easier to be realized, project team
    more and faster learns thanks to iterative
    approach and generally, level of quality is
    increased too.
Write a Comment
User Comments (0)
About PowerShow.com