BUSINESS MODELING BY UML PROFILE
VISA ISSUING SYSTEM
Dražen Brđanin, Slavko Marić [email protected] [email protected]
Faculty of Electrical Engineering Banja Luka
5th Workshop
“Software Engineering Education and Reverse Engineering” Beila Herculane, 28.08-05.09.2005.
2
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: BY UML PROFILE: VISA ISSUING SYSTEMVISA ISSUING SYSTEM
This presentation includes: review of business modeling based on UML-business
profile: 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.
illustration of business modeling approach based on UML-business-profile by some parts of business model of Foreigners Migration System in B&H.
3
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
PROPRO
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
CONTRACONTRA
traditional techniques and notations are more popular
UML and business modeling
UML (industrial standard)+
languagelanguage for businessfor business model modelinging
business modeling(first phase in IS development)
4
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
Business model by UML business profile
Profile - defined set of standard language extensions, built in UML, and specialized for modeling in particular domain.
Business profile (v1.3) specializes base classes of standard UML by introduction of business domain specific classes.
Business model = two models
business use case model
business object model Fig. 1. Business model by UML profile.
Businessuse case model
Business object model
Business model
«UseCaseModel» «ObjectModel»
5
Dražen Brđanin, Slavko Marić BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
Business model by UML business profile (continued)
Business use case model
Outside view of business system
describes business system and its relationships with the exterior systems through the BUCs.
BUC is the business process, or some concrete function in business system offered to the exterior systems. BUC is the sequence of actions, preformed by workers in business system, and by them business system makes some concrete and recognable value.
Exterior systems are called business actors.
Business object model
Inside view of business system
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
6
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
Business use case model
BUC model contains descriptions of business actors and BUCs and their interactions, represented by BUC diagrams.
Fig. 2. Generic example of BUC diagram.
Business actor 1
Generalized business actor
extension of the main BUC
BUC
included BUC
<<include>>
<<extend>>
Business actor 2
Textual description of BUC
FALSE
Activity(s) in case of true
TRUE
Decision point (branch to the alternate activities)
Start
Synchronisation point (branch to the concurent activities)
End of process
Activities A1 i A2 are concurent to activity B
Synchronisation point (joining of the concurent activities)
Joining point of the alternate activities
First activity in process
Final activity
Activity(s) in case of false
Activity A1 Activity B
Activity A2
Fig. 3. Generic example of high-level business activity diagram.
BUC model also contains realization descriptions of identified BUCs. We can document realization:
textually, and graphically (high level activity
diagram)
7
Guarantees checkForeigners Ev idence check
Application processing
<<include>> <<extend>>
Border Visa
Border v isa issuing is the special case of v isa issuing. Foreigner request f or v isa by application in MoFA, MoFa giv es the recommendation, State Border Serv ice (SBS) issues v isa at state border
Application for visa
<<extend>>
Application for Border Visa
<<extend>>
<<extend>> <<extend>>
Visa Extending
Foreigner
Visa extending can be treated as new v isa issuing in MoFA, if f oreigner which is presently in the country , has the appropriate ev idence f or v isa exntending
Visa issuing
<<extend>>
<<include>>
<<extend>>
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
BUC model: visa issuing system
Fig. 4. BUC diagram of visa issuing system(BUCs directly initiated by foreigner)
8
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
BUC model: visa issuing system
Application for visa
Documentation reception
Application rejecting
Interv iew
passport check
complete
correct
Application reception
Making ev idence
application complete
Documentation completeness and correctness check
NO
YES
NO
YES
incorect
correct
NO
YES
Application processing
Sticker personalization
Making evidence in Register of issued visa
Decision about visa
Storing documentation and sticker copy in archives
Visa issuing
Fig. 5. High-level activity diagrams
for the most interesting BUCs
Foreigners Ev idence check
MoS agreement
Application rejecting
Making ev idence
Guarantees check required
Guarantees check
valid guarantee
Request justification
NO
Visa issuing
YES
YES
NO
NO
YES
NO
YES
9
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
Business object model
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’s not appropriate for OO A&D
Poslovni učesnik Other Organization Unit
InternalWorker Business actor CaseWorkwer
form uncompleted
form completed Object
(eg. appl. form)
Rejected form
Reject Concurent activity
Documentation
Final object
Final activity (eg. sending)
Delivered object
Receiving
Initial activity (eg. application)
Analysis
Completing documentation
Development
Fig. 6. Generic example of detailed activity diagram.
10
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
Business object model (continued)
business object model also includes some of OO interaction diagrams:
collaboration diagram (process’ structure)
sequence diagram• focus on temporal component of process • easy mapping messages->methods
during the system class diagram development
Fig. 7. Generic example of sequence diagram.
Fig. 8. Generic example of object diagram.
business object model also
includes business object (class)
diagram • shows the static structure and
relationships between objects
• can be used to show organization structure of business system
Application Form
Folder
Documentation
0..n
InternalWorker CaseWorker
Final Object
Business Actor
1..n
1..n
11
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
BOM model: visa issuing system
Application form Attachments
Application and documentation submission
Application form Attachments
Withdraw
Application and documentation reception
Passport correctness check
Application rejection
Interview
complete & correct
Making evidence
Application complete
Documentation completeness and correctness check
YES
NO
incorrect correct
NO
YES
CaseWorkerForeigner
Fig. 9. Activity diagram of BUC:
Application for visa
12
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
BOM model: visa issuing system
Fig. 10. Sequence diagram of BUC:
Application for visa
Foreigner CaseWorker Application Evidence
submit
passport check
documentation
documentation check
documentation
making evidence
Fig. 11. Business class diagram of BUC:
Application for visa
medical insurance
education institution evidence
guarantee
proprietary evidence
travel evidence
Foreigner CaseWorker
Application
1..n
1
1..n
1
submit
0..n
1
0..n
1
receive
Documentation
1..n
1
1..n
1
attach
0..n
1
0..n
1
receive
1
1..n
1
1..n
connected to
passport
third country visa
13
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
BUC model: visa issuing system
Fig. 12. Business class diagram of visa issuing system (BUCs directly initiated by foreigner)
medical insurance
education institution evidence
guarantee
proprietary evidence
travel evidence
passport
Sticker
third country visa
MoS
ForeignerCaseWorker
Documentation
1..n
1
1..n
1
attach
0..n
1
0..n
1
receive
Approval
0..n
1
0..n
1
give
Application1..n
1
1..n
1
submit0..n
1
0..n
1receive
1
1..n
1
1..n
connected to
1
1
1
1
connected to
Personalized sticker (visa)
1
0..n
1
0..n
connected to
Nonpersonalized sticker
Worker for visa issuing
0..n1
0..n1
check 0..n
1
0..n
1 request
0..n
1
0..n
1
justify0..n
1
0..n
1
0..n0..n
14
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
Static aspect of business modeling - summary
Business use case
model
Textual
description of
BUC
Business object model
Poslovni učesnik
15
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
Transition from business models to system models
Identified BUCs, business actors, business workers and business objects can be used in transition from business models to initial system models.
BUC model is transferred in the system UC model, and business object model is transferred in the system design model.
Next rules are valid during transition from BUC model to system UC model:
each BUC 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 method of system class.
Fig. 13. Transition from business models to system models.
16
Dražen Brđanin, Slavko Marić
BUSINESS MODELINGBUSINESS MODELING BY UML PROFILE: VISA ISSUING SYSTEM BY UML PROFILE: VISA ISSUING SYSTEM
Conclusion
Although primary intended for visual modeling of software systems, thanks to business profile, UML can be successfully used for business modeling too.
Thanks to very rich notation and semantics, UML business profile offers 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 of business modeling is illustrated by some parts of business model of Foreigner’s Migration System implemented for government institutions in Bosnia&Herzegovina.