Визуальное моделирование: теория и практика: Курс...
TRANSCRIPT
l1.pdf
1
1. .
(, , ..), , , , , . , , .
. , , , , . , , , . , , , . , , , , - .. - , , . , , .
, ( , .). , , , , . , , , .
, , as is.
.
, , . , , , . , , , , , , , .
, , , .:
2
; ; ; .
,
, , , . . 1.
. 1.1.
, , , , . , , - , , , . , , .
. , , , , . , , - . - , , , 90% . , , , , , .. , - -, . .
, , . , , , (, , ), , , , . , - , , , ( , ) .
, , . ( , , /) ,
3
, , - . , , , . , , , .. , , . , , , 1. , , ( ). ( ), .
, , , . , , , . , .
, , , ( ). , .. , , . , , , - , , .
, , . .
. , . , .
, , .
, , :
;
( , , , .);
, , WYSIWYG (What You See Is What You Get), , , ;
1
. , .
4
, , Windows;
. , ,
.
- ,
, , . .
. . , - , . , , , , .. , , , UML. , , , ., . , UML. .
, , [3], [4], [5].
. 2
.
. 1.2
B?
~B?
State
S1S3
S2
VIPR (Visual Imperative
Programming) if B then S1 else S2; S3.
5
. , -, , , .. . 3 (), (), () UML.
, - .
, , .
, . , , ..
, , ,
, . , (interaction diagrams) (timing diagrams) UML. 13 UML 2.0 11, 2.
1. F. Brooks. No Silver Bullet. Information Proceeding of the IFIP 10th World Computing Conference. 1986. P. 1069-1076. ( : . . - . , 2000).
2. .. . : . . - , 2004. 143.
3. .. . , 2001, N 5. . 3-17. 4. ... . http://cv.imm.uran.ru/articles/
cvtheory_w23print.pdf. 5. D. Gracanin, K. Matkovic, M. Eltoweissy. Software Visualization. Innovation in Systems
and Software Engineering. A NASA Journal. V. 1, No. 2 September 2005, Springer. P. 221- 230.
l10.pdf
10. C DSM-
(software product line). , . , DSM- (Domain- Specific Modeling) product line . DSM-. DSM-: Eclipse/GMF, Microsoft DSL Tools, MetaEdit+, Microsoft Visio 2003.
.
(, , , ), , , , . , , , . (product line) .
, , . , , .
.
. : . , (requirement engineering) .
. . .
. , - .
. , .. .
. (IDEs Integrated Development Environments), (), , , ..
, , (, ).
. , , , , .
. , , , ( ), (, - ), . . ,
. ? , ( ) , . , . , , , , , . .
( ), , (, , , , , , ..). , . (. . 10.1):
; ; .
. 10.1. .
. 10.2.
. , ,
. , ( ), - , , . , ( ), .
. ,
. , . , , .
. , ,
, , .
DSM-. , , . , , , . - , .
, DSM- (Domain Specific Modeling). (, , ) , , . , , ( , , ) .
DSM- ( , .) , Microsoft DSL Tools, Microsoft Visio, MetaEdit+, Eclipse (EMF&GEF).
. ,
. (problem domain, domain) (,
, - ), . - , , Linux1 , , , - .
- (Domain Specific Language, DSL) , . - , DSL.
DSM- DSL, , . DSM- (DSM-, DSM-) DSM-, .
DSM- DSM- (, Eclipse/GMF, Microsoft DSL Tools).
DSM-. DSM-
, software-, , , DSM- . . , , DSM-, , , , . , DSM- , .
1 http://www.linux.org/.
, , , Borland Together Control Center2, DSM-. , DSM- :
MDI-, ( , /// , , , , , ..), ( , ..), DSL, , . : , , ..
( ), ( , -, , , , ..), ( , , ). , , , ( ), , (layout) ..;
, DSM-, ;
, ( , , , ), , , , / ;
, , ..;
, , . DSM- ,
- , , , , (round-trip engineering).
DSM- , , . , , Java- .Net- , UML- . , .
DSM- , . , - (DSM-, )
2 ,
Boland, http://www.borland.com/us/products/together/
, . DSM- ( , ) . , .
, DSM-, , , DSM- .
DSM-: Eclipse/GMF. Eclipse -
. 2006 Eclipse Graphical Modeling Framework3 (GMF), , Eclipse Modeling Framework (EMF) Graphical Editing Framework (GEF). DSM- MVC-4. GEF, EMF.
GEF : org.eclipse.draw2d ( OED5), Eclipse, GEF. OED . , , , , , Drag & Drop, . , .
, , , ( MVC) , , - . OED Java-. OED , , . GEF. - GEF , . , , . .
GEF , DSM- , GEF EMF.
EMF , -. ( run-time ) EMF , Ecore6,
3 http://www.eclipse.org/gmf/ 4 MVC (Model View Controller)
(model) , (view) (controller), .
5 , .
6 Ecore Eclipse .
: XMI7- ( , , , UML- IBM Rational Rose8), Java-, XML-. , , . (features): / XMI, () , ( API9) . , EMF EMF.Edit, ( GEF) , EMF-.
GEF/EMF DSM- . , , DSM-. , , GEF , EMF - . , . Eclipse GMF, DSM- GEF/EMF.
DSM- GMF . 10.3 :
1. , , GMF Ecore ( *.ecore).
2. ( *.gmfgraph). 3. ,
, ( *.gmftool). 4. ,
, OCL Java ( *.gmfmap).
5. , ( *.gmfgen). 6. DSM-, Eclipse
Application .
7 XMI (XML Metadata Interchange) OMG,
XML. 8 ,
IBM, http://www-306.ibm.com/software/rational/. 9 API (Application Program Interface)
.
GMF
/ DSL (*.ecore)
/
(*.gmftool)
/
--
(*.gmfmap)
/
(*.gmfgen)
/ (*.gmfgraph)
. 10.3.
DSM-: Microsoft DSL Tools. Microsoft Software Factories . , . (, Microsoft Visual Studio) DSM-, , , , , . Microsoft DSL Tools, Visual Studio SDK, DSM- Visual Studio 2005.
Microsoft DSL Tools : , DSL, , .
, , , , , , , . . 10.4 , .
, a , , . , .
. 10.4
Microsoft DSL Tools , , , XML- . . Microsoft Visual Studio .
, , (partial classes) .Net, . , , .
( . 3): , , , , .
/ , DSL,
DSL Visual Studio
2005
DSL
. 10.5.
, , ( , , ..) . . , , C# .
DSM-: MetaEdit+. MetaEdit+ MetaCase , DSL, DSM-. (. .10.6): Method Workbench: DSL; MetaEdit+: , DSLs, Method Workbench, .
Method Workbench DSLs GOPPRR10. , DSL.
. 10.6. DSL GOPPRR
(Objects), DSL, (Relationships), , (Roles), . , (Properties), , . , GOPPRR (Port). , . (Graph). , , ---, , . ( - ) . . Method Workbench .
MetaEdit+ - , DSL, Method Workbench. , DSL, , , , ,
10 Graph, Object, Property, Port, Relationship, and Role.
, / , .
DSM-: Microsoft Visio 2003. Microsoft Visio 2003
, (, , / ..), , , (, ) .. , , , , , -, .. , , -, , -, ( ) . Microsoft Visio , . ( ), , .
Microsoft Visio : (stencils), (shapesheet tables). , . , Visio-. , DSM-, Microsoft Visio SDK, API .Net, Microsoft Visio. DSM-, , DSM-, .
1. Jack Greenfield, Keith Short et al. Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools. John Wiley & Sons. 2004. 666 p.
2. ., ., , ., ., ., ., . - // . 2, 2006 ., - -.
3. A Framework for Software Product Line Practice. Version 4.2. http://www.sei.cmu.edu/productlines/framework.html
4. J.-P. Tolvanen, S. Kelly, J. Gray, K. Lyytinen. Proceedings of OOPSLA workshop on Domain-Specific Visual Languages, Tampa Bay, Florida, USA; Technical Reports, TR-26, University of Jyvaskyla, Finland, 2001. 101 p.
5. Journal of Visual Languages and Computing. 15 (2004). Preface. P. 207209. 6. K.Czarnecki, U.W.Eisenecker. Generative programming: Methods, Tools, and Applications.
Addison-Wesley 2000. 832 p. 7. Clements, P. & Northrop, L. Software Product Lines: Practices and Patterns. Boston, MA:
Addison-Wesley, 2002.
l11.pdf
1
11. .
, - (domain-specific languages). , , , .
: c, . , . , (, ..) - . . 11.1. .
( -
, .., , , ) , :
- , , , , , , , , , ( ), ;
, , , , , , , , ; , , ;
, , , , , (, , ).
2
, ,
, , , , .
. , . , .
: (syntax), (semantic) (pragmatic) .
, ,
. , . : , , , ( , .). , , .. - , . , .
,
, . , , ( , , ..), .
, ,
, , . , , , . , ( , integrated development environment (IDE)), .
3
, , 11.2.
, . .
. , : , , , , .. , . , .
, . :
(oncrete) , ;
(abstract) , , , ;
(serialization) ; ; , (, html).
: ,
, , , , . , , .
:
, , . , , .
4
, ,
, ( ) . . :
, , , , , ; , DSM- DSM-, ; , , , , Microsoft DSL Tools, DSM- , ;
, ; , ., .
. , , UML,
BPMN. , . , , , , , , . . 11.3 11.4 , .
, Client, Server Monitor. / , , .
5
, , , . ( Monitor) , , , 1, . , , 1. Server ( ) Client ( ). , . , . 11.4.
Start, Init(), . Idle, . ( Request), Respond , . Info1 Info2. , . Accept - AcceptHandle(), Reject. Idle . Terminate, ( TerminateHandle). End . , .
, . , , . , , .., , , , .
. , , .
.
- . ( Java, C3, C++ . ), UML, .
. , . , , , -, .
(, ..). , , , . , , , . . , ( ) :
:: = +
6
, , , + .
, . , , :
:: = + :: =
, . , , . . 11.5.
+
+
. 11.5.
, - ( ), , .
: :: = * [] * , (), ()
() (), (). *, , , , . * +. , , .
, . , , :
::= (, )
7
,
, , . , , , .
, (), (+):
::= + .
, , , , . , . 1, . , , ref.
: ::= * , , ,
. , , : :: = []/ {; }* ,
( ), () , , ( ). , . /, ; , , . , . , , , . *: , ; , .
, :
:: = | | .
, , :
1 ++ , .
8
:: = < method name>() ::= :: = :: = ::= ::= < method_invocation > :: = () : :: = + :: = * [] * ::= (, ) < statechart > ::= + ::= * :: = []/ (; )* :: = | :: = < method name>() ::= :: = :: = ::= ::= < method_invocation > :: = ()
9
. 11.6 , .
namemodel
signal_list nameinitnum
class
namesignal
namemethod
statechart
namestate
transition
input action
send handle_invocation
0..*
0..*
0..1
1..*
target_state_ref
nametype
attribute0..* 0..*
0..*
1..*1..*
1..*
signal_ref
signal_ref
method_ref
class_ref
. 11.6 ,
, *, +, [ ] 0.., 1.., 0..1 . , name. , | , .
, , , :
1. , ,
. 2. , , ,
. 3. ,
.
. , . OCL, UML.
10
. .
: ; ; : , , , ;
: , , .
:
:: = :: = :: = :: = :: =
. [2]. - :
contains ; is associated with ,
; , , (, , );
is followed by ( ) ( ), ;
is connected to () , - ;
set , , , .
11
, : ::= { +} set ,
( ) . : ::= contains { } [] * } . ::= contains is associated with , ( )
. . ::= {[]/ {; }*}} is associated with ,
. ::= is connected to ,
. ::= contains .
. , , -
, , -, , , , ( [2] , SDL/GR) ..
. . 11.3, . , (Arial 12). , , , ( Arial 10). / , , .
, , , .
, , .
-. - , . , , -, . 11.7. , . , , .
12
. ,
. . , , . .
. . /, /, . . /, / . -. , . . . .
Microsoft Visio
, Microsoft DSL Tools , , #C ( ). , Microsoft Visio . Microsoft DSL Tools . DSM-, DSM- . , , , .
. .
/ . . . , , . , ( ). , , . , . . . .
. . ( , ).
, C# . , ,
13
C#. , .
. . ,
, -, . , Microsoft DSL Tools.
1. Jack Greenfield, Keith Short et al. Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools. John Wiley & Sons. 2004. 666 p.
2. ITU Recommendation Z.100: Specification and Description Language. 08/2002. 206 p. 3. ... . http://cv.imm.uran.ru/articles/cvtheory_w23print.pdf
l12.pdf
1
12. DSM- Microsoft DSL Tools.
, - (DSLs) Microsoft DSL Tools, DSM-.
Microsoft DSL Tools: .
DSM- Microsoft DSL Tools. Visual Studio 2005 SDK Microsoft (http://www.microsoft.com/downloads). Microsoft Visual Studio DSM-, .
, DSL- Microsoft DSL Tools, , , , , , , .. , . 12.1.
DSL
-
MS DSL Tools
DSM- MS Visual Studio
DSM-
-
-
DSM-
( C#)
. 12.1
. ,
, ( ). , , , ( DSL-). , DSL Tools.
2
. DSM- , Microsoft Visual Studio solution Other Project Types\Domain Specific Language Designer. solution : Dsl DslPackage. , , , DSM-. DSM- .
Microsoft DSL Tools DSL , ( ). -, .
, , C#, DSL Tools. , DSL-solution , , DSM-.
, , , . , . , SDL , , , , . , . DSM- ( !).
, DSM-, . DSM- , , , .
DSM- (Items) Microsoft Visual Studio. solution . DSM- .
.
DSM- Microsoft DSL Tools . , DSM- , .
. 12.2 12.4 , .
3
. 12.2.
. 12.3.
4
. 12.5. ,
, ( . 11.6 ). 12.2 12.4 DSL , . Classes and Relations Diagram Elements. , . - , , DSM-.
. 12.4.
. 12.5.
5
, ,
. -, . -, , , , DSM- ( . 12.2 12.4, ). -, : UML 2.0, DSL .
DSL . (domain class)
, .. () . . 12.2. Root, Class, SignalList .. , DSL ( Root). , , .
(embedding relationship)
. . 12.2 12.4 , , RootHasElement. 1*:1..1, Element Root, Root Element. ( ) , . , --.
(reference relationship)
UML. (inheritance) UML. , DSL
. (shapes) (connectors). :
(geometry shape)
, , , .
(compatment shape)
, , / (, , ). , . 12.2. 12.4. ClassShape SignalListShape , .
(image shape) (
, , jpg- bmp- ) . ,
6
- , , , .
(connector) .
. 12.4 TransitionConnector, - .
,
. DSL (diagram element map). . 12.2 12.4. , ( Classes and Relationships) ( Diagram Elements). . . , .
DSL :
(named domain class) , ; , , DSL ;
(swimlane) , , , Classes and Relationships Diagram Elements DSL , , DSM-;
(port Shape) , (, UML 2.0); . 12.6 , , . 12.7 , , . 12.6.
. 12.6.
7
, , 12.8, , .
. 12.7.
. 12.8.
8
DSL . 1:
(Domain properties) ; (Decorators) ( ).
(Domain Propeties). DSL ,
. :
Code C#-; , DSL C#-, C#- ; code C#- , , (public protected ..);
Definition , , (Name), (Default Value), (Is Element Name) , DSM-;
Kind, , normal, calculated; , C#, (, . 12.1 );
Documentation ; Resources C#- .
calcutated-. .
12.4. Transition ComplexTransition. , . -, , -, . C#, :
public partial class Transition { public string GetComplexCaptionValue() { string result = string.Empty; result += string.Format(@"{0}/{1};{2}{3}", this.InvokedBy == null ? string.Empty : this.InvokedBy.Name, this.Signal == null ? string.Empty : this.Signal.Name, Environment.NewLine, this.Method == null ? string.Empty : this.Method.Name); return result; 1 , , ,
, . , , Microsoft DSL Tools. , Microsoft DSL Tools .
9
} } C#,
Transition, Transition. , Dsl.
(Decorators).
. , StateShape . 12.3. StateName, , DSM-.
: (text); (icon); (Expand Collapse).
,
, .
: Appearance ; Definition ; Layout ; Documentation ; Resources .
. . 12.5, , (toolbox),
, . DSL Tools. Edit/Toolbox solution : , , . .
l2.pdf
2. , , .
, (viewpoint) , , . (), . , , .
. , . , , ( ), ( , , , , ), run time , , , .. . . 2.1.
, /, -, , , . / : , , , , , , , - .. .
. 2.2.
,
, , . , ,
, , .
.
(viewpoint) , - - . , ,
, , . , .
, , . , , , , , . , . , , . , , ( , ). . , , UML, , . - , . , . , , .
, UML ,
. , (use case diagrams): , , , , , ( , ), ..
, 60- , SADT (Structured Analysis and Design Technique) [4]. SADT . , , , , . , (70-80- ), (-, , ..) [3], . , 1995 , - , [5] , , . UML, , ( ). UML, . , ( ) -, . .. ..
. ,
, , .
, . , , . , . .
. , , . , , , , . , UML, , ( , ). , .
. , - , , , , . - , . . , , , ,
, , , . ( , ) , ? , , . , , , , (, ). , - .
: ( , , ), , , , . ( , ). , . , , . , , .
.
. . ( ) . , , .
IBM Rational Rose, Borland Together Control Center .. , . , . . 2.3.
/
. 2.3.
, . , , . .
. 2.4 () ,
, , , , - . . 2.4 () , E. A E , . . , E . 2.4 (). , . 2.4 () . , .
. . , . . , , , . , , (, ). , , , , .
, , , , , , .
, , . 2.4 () (), . 2.5.
a11()a12() : bool
a1 : boola2 : chara3 : int
C
D
1 ** 1b11() : floatb12() : int
b1 : intb2 : float
E
F G H
. 2.5.
, .
, . ? , . . 2.4 () . 2.4 () . , . , , . , . . 2.3.
.
. , . 2.5, , , , . , , . , , . 2.4 (), , . 2.4 (), . , , . : , , . , , .
. .
. , , / . , , , , . ,
, . , , - .
, , .
. , , . , .
, , , , (. . 2.6.). , , . . , , ..
- , . , . - -. , , 2, , , , .
N
N+1
N+2
. 2.6.
UML, (. . 2.7). .
*
*
* *
3
2
1
11 *
Target
A C D
*Source
pp-
- - 4
h-
. 2.7. 1. (user objects),
, , . , , , , .. UML- , .
2. (model) . , . . UML- , . () , , SADT, .
3. (meta-model) . UML. , , , , , ..
4. - (meta-metamodel) . , UML , . UML, , (, ). .
, - UML UML: ,
OMG MOF (Meta Object Facility). OMG Common Warehouse Metamodel (CWM), ORBA Component Model (CCM) .
, MOF UML -, -. UML, MOF . , MOF OMG , UML.
1. ., ., . . UML. / . . . 2-. 2006. 735 . 2. UML 2.0 Infrastructure Specification, September, 2004. http://www.omg.org/ 3. .. . :
. . - , 2004. 143 .
4. D.A.Marca, C.L.McGowan, SADT Structured Analysis and Design Technique. McGraw-Hill, 1988.
5. P.Kruchten. The 4+1 View Model of Architecture. IEEE Software, 1995, 12(6). P. 42-50.
l3.pdf
1
3. UML 2.0.
UML 2.0. .
UML. . UML (Unified Modeling Language) 2.0, .
UML, , , , , , - , UML. UML, .
UML ( ) . UML. , UML . , UML.
, UML (. 3.1): :
(class diagrams); (component diagrams); (object diagrams); (composite structure diagrams); (deployment diagrams); (package diagrams).
:
(activity diagrams); (use case diagrams); (state machine diagram); (interaction diagram):
(sequence diagram); (interaction overview diagram); (communication diagrams); (timing diagrams).
2
-
. 3.1.
, UML . , UML , y . , . 3.15 , , . , , UML, . , , .
.
UML . , UML-, , , . , , . , UML , , .
, , . , , . , , . , .
. .
3
(use case diagrams). . UML. . 3.2.
,,
,
Log-in
. 3.2.
, . . , , UML, . , , .
, , . . , , . . ( ) , , , ,
4
. , , , ( ). , . , , . , . , , , . , . , .
, , - . . , , ( ), / UML. UML RUP/USDP.
(activity diagrams).
- , . , . - . - . . . 3.3 .
[ ]
[ ]
[ ]
[]
. 3.3.
. , , , , , ,
5
, ( ), ..
- , , . - , , . , - , . , , Word/Excel , . , . -.
(deployment diagrams).
. . 3.4 () , (PBX Public Branch Exchange), , . UML . , (. ). . 3.4 () . , , PBX, , PBX. , ( , . 3,10 .. . , .
PBX
. 3.4.
1*
1*
:
:PBX
1:
:
2:
() :
() :
, ,
, , . , , . , , .
6
, , .
(component diagrams).
, . 3.5.
ClientNetworkSupport
ServerNetworkSupportClientGUI
ICNSupport_GUI INetwort
IGUI
INetwort
RequestDB
ServerBusinessLogic
ISNSupport_BL
ISNSupport_BL
IServerBL_ReqDB
IServerBL_ReqDB
. 3.5. UML,
, . , -, , . ClientGUI , ClientNetworkSupport ServerNetworkSupport , ServerBusinessLogic - , RequestDB . -, , . -, (, dll-). -, - , , (threads).
, , , . . , , , , .
, , , ..
7
, , . , . , , , . . - , . , , .
, . , , , .
, , . 3.6.
PBX
. 3.6.
ClientNetworkSupport
ClientGUI
ICNSupport_GUI
IGUIRequestDB
IServerBL_ReqDB
ServerNetworkSupport
INetwort ISNSupport_BLINetwort
ISNSupport_BL
ServerBusinessLogic
1*
*1
,
, . ,
, . , , , , . , , , , .. , , - , ..
8
(communication diagrams). , , . ( ) , , , , . , , . , , . . , , , .. , . . .
. 3.7 , . , , , .
, , . .
, PBX , . . , . , ( ) . , (, 3 PBX - ). , , , .
4:
6: :
:
:
5:
3: :
2:
1:
. 3.7.
:- :PBX
Comm ClientCallPath
9
(sequence diagrams). , , . UML . . 3.8.
.
. 3.8.
. -, , . , , , , .. , PBX. , , , . . , . , . , , . , , , , , , , , .
10
(class diagrams). - , . , , , . , . , , .
. 3.9. .
+Start() : void+Stop() : void
CPBX_Agent+IncomingCall(in COpID) : void+ReceiveMessage(in CMessage) : void
CDispatche
+GetID() : COpID-ID : COpID
COperator
+Get(in COpID) : COperator+GetFree() : void
COperatorList
+SetConnection() : void+FreeConnection() : void+SendMessage(in : CMessage) : int
CServerNetworkConnectionSupport
. 3.9
1
1
1
0..1
1
1
0..1
0..1
CSubOperator
0..*
0..*
, ,
, , . . - . . . 3.9 CDispatcher CPBX_Agent, COperator, CServerNetworkConnectionSupport COperatorList. .
, , , () , , .. , . , , , , 1 a1, 2 . 3.10.
,
. , C2 , (
11
-), 1 2 (. . 3.11 ()), , . . 3.11 (). , 3.11 (). , .
C1 C2
()
C1 C2
()
. 3.11.
C1 C2
()
, , .
. , . , .
, . 3.12 CListItem, . , Prev ( ), Next ( ), ( ) ( ). , CListItem , , . , CListItem Prev Next.
, , Prev Next, . , / .
12
(multiplicity),
( ), . , :
0..1 10 0..* 3..5,10..20,100,200..* , . 3.9 CDispatcher COperator ,
COperator CDispatcher, CDispatcher COperator . COperator, 0.
, . / (part of), . , , . 3.9 , COperator COperatorList. , , . , - , , . , . COperator COperatorList (, , .), :
13
(package diagrams). UML , - . , , , UML-. , , , . UML , , (projects) Microsoft Visual Studio. : , Microsoft Visual Studio .
Microsoft .Net Studio (solutions), . , , , , . , -.
. 3.14.
Client ClientGUI, ClientNetwork, . . Visual Studio, , .
Server ,
. ServerBusinessLogic , - , ServerNetwork , RequestDB . Util ( Visual Studio), , , .., . . 3.15 , ServerBusinessLogic.
14
ServerBusinessLogic
+Start() : void+Stop() : void
CPBX_Agent+IncomingCall(in COpID) : void+ReceiveMessage(in CMessage) : void
CDispatcher
+GetID() : COpID-ID : COpID
COperator
+Get(in COpID) : COperator+GetFree() : void
COperatorList
+SetConnection() : void+FreeConnection() : void+SendMessage(in : CMessage) : int
CServerNetworkConnectionSupport
. 3.15
1
1
1
0..1
1
1
0..1
0..1
CSubOperator
0..*
0..*
. ,
. 50- . , . , . , - .
, , . - , , , . , . .
(object diagrams). - . , . . 3.16.
,
( , , ), . , , , ,
15
. , , , . , , , : ?. , . .
(composite structure diagrams): . UML. , , , . , , . , , . , . , , , . , , , (, ), ( , ), ( ).
-, UML- , UML, Structured Classifier.
, , . , c UML. , , - . . , . . . , , , UML, , .
. (cooperation) (, - , , - ) . , . 3.17 ( ).
16
. , , , . . 3.17. , , (. , ). 3.17 () , . 3.17 () , .
, , , . 3.18. UML, , .
. 3.18 , . . , .
17
, , . 3.19.
, . , .
. , /, /. , , , .
(composite structure diagrams):
. , . 3.20 () , ( , ), , . . ( ), , ( ), , , , , , , - .. ( ) , , , - , .. , ( ) , , , .
, , , . , , . 3.20 () (), ( ,
18
). , . . 3.20 () . , , . , .
, . , , ( , ). . 3.20 ().
,
1 2. , . Sony422, Dvdcam1394. , . . - Dvdcam, Sony 422 DVDCam1394. , 2 - . Vtr Sony 422 1, 2 ( - Dvdcam).
19
. vtr.
, . , , -, , . - , -, . , , . , (, , , ).
(statechart diagrams). . 3.21
. COperator , . 3.15.
Idle.
, , . , WaitingForConnection . Connected Connected, , . .
WaitingForConnection Idle, T12.
Disconnect, , Idle, . Terminate, .
20
(timing diagrams). . . .
. 3.22 AccessControl,
/ . . , panel, , . panel locked ( ). , , panel verify (access_processor) waiting. verify idle, verify. panel door unlock enable. panel open. , door (, ), locked , unlock, ( unlock). 5 , lock , locked. lock panel, locked.
, , , , . ,
21
. - . .
, ( ) , . , . ( ).
(interaction overview diagram). n . (). , , .
1. ., ., . . UML. . 2-. , 2006. 735 . 2. UML 2.0 Infrastructure Specification, September, 2004. http://www.omg.org/ 3. .. . :
. . - , 2004. 143 .
l4.pdf
4. RUP/USDP - .
, - . , - RUP/USDP. , , UML. (round-trip engineering) .
. USDP/RUP
. . USDP/RUP , UML. , UML . - UML, . , , , (use cases). , , RUP/USDP. , , RUP/USDP. , , , .
60- . MIT SADT (Structured Analysis and Design Technique) [9] . IDEF ( IDEF0 IDEF1x), ( , / .). SADT . C 70- , ( ) [4] . , ( -, ). 80- , - [11] - . 90- (, [12, 10]) , . - UML (Unified Modeling Language), OMG 1997 . - . , , , 70- , Eriksson. CCITT ( ITU). 1976 SDL (Specification and Description Language) [7], 1976 2000 , ( , MSC [8]).
, ( ). UML, , , ( UML 2.0 ITU MSC [8]). 1987 Objectory AB , , (use cases). 1995 Rational Software Corp., ( ) [5], ( ) . Rational , , , .. RUP Rational Unified Process , , . - , , , [1] , (USDP Unified Software Development Process). RUP/USDP .
. USDP/RUP , . . 4.0.
, ,
. , , , , , , , . , , , .. : . . , , ( !) .
OMG, UML, MDA (Model Driven Architecture) [13]. - , - (Platform Independent Model PIM) - (Platform Specific Model PSM). PIM . PIM PSM, . PSM PIM , . PSM, . . , UML. , . .
, , , , .
RUP/USDP. RUP/USDP:
(use cases) , , ;
; - , , , , , , ; , , .
, UML . , , . UML, , , .
RUP/USDP 4.1. . :
(inception) , (, , , , );
(elaboration) , , , ;
(construction) ; (transition) .
. 4.1.
RUP/USDP :
- (business modeling) - , ;
(requirements) ( );
(analysis) , , , ; , , , ;
(design) , , ( );
(implementation); (testing) , , , , , ;
(deployment); (configuration and
change management );
(project management); (environment). . 4.1 ,
, , .
1. . ? , : ( -, -, ..);
, , , ;
, ; , , , , .
, . , , . , .
1 -.
. .
, :
- , - ;
( ), IT- ;
(, ). RUP/USDP
:
, , ;
, , ; , ; , , ; , -, ;
RUP/USDP ; , , , ;
, , , , , : ( , ), , , .
. RUP/USDP -, 2. :
- (, , , ..); ,
( , .);
(, , ).
2 .
, . - . , , , , . RUP/USDP UML-, .
- , . - - (, -) (, , ). :
1. - , ( , , .). , .
2. , , , , .
, RUP/USDP .
, - IT-. , , , . . , , , .. , - - , , . , , . , . , , . , , , , , .
, . 4.1, () 10% ( , ), , 80%, , 10 %. , . , , . , .
, , ( ) /. , . , .
, , .
. . , ,
. ( ). , - , .
, , , . , . , . , , .
. 4.2 .
, -
, . , , . , , c UML ( , , ..). , , , . , , , , , , .
. , RUP/USDP . :
, , ( , ); ;
, , ,
.
1:5, . :
, ;
, ( );
- , , , , ; ;
, ; .
, . 4.3. , . , . , , .. , .
,
,
,
, ..
: - .
1.
2.
3.
. 4.3. .
. RUP/USDP :
( , , .);
(), ;
;
, ; , , ; , ;
, .
. , .
UML- . 4.4.
,
,
,
, , ,
.
: - .
1.
2.
3.
-
. 4.4. .
, , , . , , , , . ,
. , .
UML- RUP. - , : ? , , .
[ :
1. - , , .
2. .
, , . , , : , , , ...
, as is , , , . , , , ..
, RUP/USDP, , . - , , , , , , , , . , , , ( ).
1. ., ., . . . // . . .: - , 2002. 492 .
2. . Rational Unified Process 2- . // . . .: . , 2002.
3. .. RUP . 06, 2004. http://www.osp.ru/text/302/184459/_p3.html.
4. Tom DeMarco. Structured Analysis and System Specification. Englewood Cliffs, N.J.: Prentice-Hall. 1979.
5. P.Kruchten. The 4+1 View Model of Architecture. IEEE Software, 1995, 12(6). P. 42-50. 6. E.Yourdon. Modern Structured Analysis. Yourdon Press, 1989. 672 p.
7. ITU Recommendation Z.100: Specification and Description Language. 08/2002. 206 p. 8. ITU Recommendation Z.120: Message Sequence Chart . 11/1999. 138 p. 9. D.A.Marca, C.L.McGowan, SADT Structured Analysis and Design Technique. McGraw-
Hill, 1988.
10. G. Booch Object-Oriented Analysis And Design With Application. 2nd edition. The Benjamin/Cummings Publishing Company, Inc. 1994. 589 p.
11. D.Champeaux, M.L.Constantine, I.Jacobson, S.Mellor, P.Ward, E.Yourdon. PANEL: Structured Analysis and Object Oriented Analysis. ECOOP/OOPSLA Proceedings.1990. P. 135-139.
12. I. Jacobson. Object-Oriented Software Engineering. ASM press. 1992. 528 p. 13. Object Management Group (OMG). MDA Guide Version 1.0.1. http://www.omg.org/mda/ 14. D.V. Koznov. Visual Modeling and Software Project Management. Proceedings of 2nd
International Workshop "New Models of Business: Managerial Aspects and Enabling Technology", edited by N. Krivulin, 2002. P.161-169.
15. .., .., .., .., .. UML . . . 1: . . .: - , 2005. .18-35.
l5.pdf
5. .
. , : , ; ; ; . /.
.
. , , , , .
: - , , , , .. , , , .
, , , (, , ). , , . .
.
, : , ; , ;
; .
, , , .
, . , , , , ,
. . , , .
, , , .
, - , : , , , , .
, .
, - . , , , . , , ? , , . , , ( ) , .
, , , . , , , . , .
. , ( ) , , .. , , , .
, , . , , 1. , . , . , . , . - . - , .
- . , , , . , , - . , , .
1 .. , , , . , , , , .
, . , . , , . , , .. , , . . , , , , , . , .
-, , . , , , .. , !2
, . , . - , , .
, . 3. , .
. , , , , . .
, , , , . ( , ). . , , , .
, . , , , , . , ,
2 , , , . , . , , . , , . 3 ( ) . , .
. , , , .
, , , , , . , , , . , . , , . , , (, , ..), . , .
. . , , , . , , , ..
, . , . , , , , , . , .
, , , . . , , . . , , , , . , . . , , , , .
, . , .
, . , , . , , , , , . , . .
. , , ,
, . , , .
(, , ) , . (, , .) , 4.
. . , , , . , , . .
( ). .
, , , , , .. , . , , , . , , . - . , , . .
, , , , , , , , .
, , , . , , . . , , , . .
-, . .
. : , , , , , . ,
4 , , , UML . . , , , . UML .
- , . .
-- , . , , .
, . , . , , .. , .
, , , , , , .. , , , , , , , , , , . , , .
, , , . , , , , , , . , , , .
/. . /.
SADT [2]
IDEF [3].
, , . . , , , : , .. , , .
/ : (author) ; (reader) , , ;
(commenter) , ; , ;
(librarian) ; , , , , ;
(technical review committee) , , , ; , , .
,
.
1. .., .. UML. . . 1: . . .: - , 2005. .18-35.
2. D.A.Marca, C.L.McGowan, SADT Structured Analysis and Design Technique. McGraw-Hill, 1988. Integration Definition For Function Modeling (IDEF0). Draft Federal Information Processing Standards Publication 183, 1993, 79 p.
3. Integration Definition For Function Modeling (IDEF0). Draft Federal Information Processing Standards Publication 183, 1993, 79 p.
4. . . . .: , 1976. 5. Koznov D.V. Visual Modeling and Software Project Management. Proceedings of 2nd
International Workshop "New Models of Business: Managerial Aspects and Enabling Technology", edited by N. Krivulin, Saint-Petersburg, 2002. P.161-169.
6. .. . , , 2003. 7. . : . ,
, 1997.
l6.pdf
1
6. .
, , , - , , - . (reverse engineering), (round-trip engineering) (inconsistency management).
. ,
( , , , ..), , , , . .
, , , , - . , , . , , . , , ?
, - , - , . - , , .
2
. . . 6.1.
. 6.1.
. , , , , . , , .
-, , , , .., - . , : , , , ..
COBOL, Fortran, PL/1, Algol60, C, Pascal, C++, Java, #C . , . , , , , .
3
, , : , - . - . , , . , ( , , , , , ).
, , . , , , . , . , . , , , .. , , . , , , . , , , , , , . , , , , . . 6.2.
. 6.2.
: ? ,
, . , , , . , , , , . , . , , . , ? , , .
, , . 6.3.
4
, , . 6.2.
, , , . , , , , . , .
,
. , , Intentional Programming Aspect-Oriented programming [4] .
. 6.3.
? , , , . :
1. product lines.
, , , . ( ), . (product line approach).
2. . ,
. . : ; - ; ; - .
5
3. . . .
4. . ,
, , , , ( , ).
.
,
. 6.4.
6
. , , .
-, (reverse engineering)
, . , , , .. .
-, (roundtrip engineering)
, . , , . , . UML- (inconsistency management).
1. .. . : . . - , 2004. 143 .
2. .., .., .. UML // . .2: . . .: - , 2006.
3. F. Brooks. No Silver Bullet. Information Proceeding of the IFIP 10th World Computing Conference. 1986. P. 1069-1076. ( : . . - . , 2000).
4. K.Czarnecki, U.W.Eisenecker. Generative programming: Methods, Tools, and Applications.
Addison-Wesley 2000. 832 p. 5. E.1. Chikofsky, J. H. Cross. Reverse Engineering and Design Recovery: Taxonomy. IEEE
Software, January 1990. P. 13 -17. 6. S. Sendall, J. Kuster. Taming Model Round-Trip Engineering. Proceedings of Workshop
on Best Practices for Model-Driven software Development (part of 19th Annual ACM Conference on Object-Oriented Programming, Systems, Languages, Applications), Vancouver, Canada, 25th October 2004.
7. M. Elaasar, L. Briand. An Overview of UML Consistency Management. Technical Report SCE-04-18. Department of Systems and Computer Engineering. 2004.
l7.pdf
1
7. .
. , ( ) . .
. , , :
;
; , .
: , ( , , ); UML 2.0. ;
; ( , , , ) , , , ; , ( ), , ; , , ISO/OSI; UML 2.0 .
(, UML 2.0), . ( ), , .
2
, (performance modeling).
(state transition diagrams, statecharts, UML 2.0 ). , , . , , .
- , VHDL. , , .
SDL [8]. , , , . ROOM [9] , . ( , , .) [11, 12], . ( , ) [10].
ROOM [9]. SDL , (connects) (gates) , , ROOM, SDL . UML 2.0. ROOM.
MSC [7]. , . , . UML 2.0 MSC. (performance modeling) [15].
1987 [5], [6]. , SDL, , . UML 2.0. - . [14], [13].
3
. . , , , , . , .
( ) S = {A, Q, V, , }, :
A = {a1, .,an} ; V = {v1,..,vm} ; Q = {q1,..qk} ; : Q x A -> Q ; : Q x A - > V . .
. . .
. 7.1 Q = {q1,q2,q3,q4},
A = {a1,a2,a3}, V={v1,v2}. ,
. ,
.
4
. , :
, , ;
, .. , - ;
; , - () ;
. (reactive).
- , ( ) . (, .), . , , . , - , , , . , - , .
, : .
5
.
PIN
PIN
& n3
PIN
PUK
& n11
PUK
*
PIN,
PUK,,
0,5
. 7.2
6
. . , , . , . , .
VHDL. .
FPGA-1. FPGA , , . , , FPGA Virtex 2, XILINX2. FPGA- DSP-3 TigerShark .
TigerShark . . .
: reset_p. reset ().
128 . reset_p , DSP-.
read. TigerShark. write. TigerShark. dispatcher. . . idle
( ). reset, TigerShark , reset_p.
reset, read_SYSCON . SYSCON , , (. . ). read. , write_block, write, 8 .
1 FPGA Field Programmable Gate Array 2 www.xilinx.com 3 DSP Digital Signal Processor
7
read_comp_block read. , , , , , . TigerShark. , / , , .
/ changemode. DSP-. TigerShark : master slave. slave. , . master, . idle.
VHDL-, FPGA-, STD-, , dispatcher.
8
1. ... . .: , 2003. 206 . 2. .., ... VHDL. .:
-, 2003. 556 . 3. .. . :
. . - , 2004. 143. 4. ., ., . . UML. . 2-. , 2006. 735 .
5. Harel D., Statecharts: a visual formalism for complex systems. Sci. Computer Program., vol.8, 1987. P. 213-274.
6. D.Harel, M.Politi. Modeling Reactive Systems with Statecharts: state machine approach. McGraw-Hill. 1998. 258 p.
7. ITU Recommendation Z.120. Formal description techniques Message Sequence Chart. 1999. 98 p.
8. ITU Recommendation Z.100: Specification and Description Language. 08/2002. 206 p. 9. B.Selic, G.Gullekson, P.T. Ward. Real-Time Object-Oriented Modeling. John Wiley &
Sons. Inc. 1994. 525 p. 10. . . .
//- / . . .. : .- , 1999. .86-100.
11. .., .. RTST . // . . 5: , . , 1997. C. 228-256.
12. .. " - ". .-. . : .- , 1995. // http://www.math.spbu.ru/.
13. . . , . . , . . , . . . UniTesK . , 29(6), 2003. C. 25-43.
14. .. . . . , , 2006. 238 .
15. E.Dimitrov, A.Schmietendorf, R.Dumke. UML-Based Performance Engineering Possibilities and Techniques. Software, January/February 2002 (Vol. 19, No. 1). P. 74-83.
l8.pdf
1
8. .
-. , , , . , . Microsoft Visual Studio Microsoft SQL Server.
- .
. , , , .. , . .
, , . , , .. , .
, . , RUP/USDP . .
-. , , , , SQL/DLL. -, 1976 [1].
(entity) "" , , "". , .
(relationship) , , , , ..
. 8.1 (): , , . .
2
8.1. () : . . 8.1 () , .
, - , , , () . , , , , , , , . , , , , , . 8.1 ().
, - (attribute) , ( ) ( , , 8.1. ()). . 8.1. () , . , , , , 1 6, ..
, , ( -) , .
3
-,
, , , , . , [1], , , IDEF1x [2]. , UML, ( , , , ..), , -, , . , , UML (, -, ..) [6,4].
, ,
- UML. , , .
4
. (. . 8.2):
, , ; , , RUP/USDLP, ;
, , ; , ; RUP/USDP, -;
, , , ..; RUP/USDP /; , ;
, , SQL/DDL: , , .. , ;
(SQL/DDL-) ( MS Access, MA SQL Server, Oracle ..), , , ..; (persistent).
()
()
(, SQL/DDL )
()
. 8.2
()
5
. . , , . . 8.3.
**
*
. 8.3.
*
*
, 1:
, , , . , . , , , , ( , , , ). , -, , . -, , , , . , , , , .
1 , , .
6
. . 8.4. , . 8.3, .
: string : enum {1,2,3,4,5,6}: string
: string
: string
: string
**
*
. 8.4.
{, .} : enum {..-.., ..-..}
*
*
: string: string: string: string
: string : string : string : string enum {, , }
* 1
: string : string
1
1
0..1
*
1
, . 8.3 8.4?
, , . . , , , .
1. : , -, , . , , , : , . , .
2. .
3. : ( ), . , , , . . , , . , 0..1 ( , ).
7
4. --. , --. , , , , -- , , . , .
. 8.2. 8.3. .
, . 8.3 . , , , .. .
, . , , . , , UML -. , , . , , .
8
. , . 8.5, , . 8.3. 8.4. Microsoft Visual Studio 2005 Microsoft SQL Server.
Chair
Id int
Name varchar(50)
DepartmentId int
Column Name Data Type
Department
Id int
Name varchar(50)
FacultyId int
Column Name Data Type Faculty
Id int
Name varchar(50)
Column Name Data Type
Position
TeacherId int
ChairId int
Name varchar(20)
[Work] varchar(20)
Column Name Data Type
Student
Id int
StudyGroup varchar(50)
Course tinyint
Profession varchar(50)
DepartmentId int
ChairId int
Column Name Data Type
Teacher
Id int
Degree tinyint
Rank tinyint
Column Name Data Type
Address
Id int
Street varchar(50)
Build varchar(50)
Appartment varchar(50)
Registration tinyint
Column Name Data Type
Person
Id int
FirstName varchar(20)
SecondName varchar(50)
Patronymic varchar(20)
Phone varchar(15)
AddressId int
Column Name Data Type
. 8.5 , ,
( Microsoft SQL Server). , -- :
1. --. 2. . , ,
.
9
SQL/DDL. , . 8.5., Microsoft Visual Studio 2005 SQL, . .
CREATE TABLE [Faculty]( [Id] [int] NOT NULL, [Name] [varchar](50) NULL, CONSTRAINT [PK_Faculty] PRIMARY KEY([Id] ASC) ) CREATE TABLE [Address]( [Id] [int] NOT NULL, [Street] [varchar](50) NULL, [Build] [varchar](50) NULL, [Appartment] [varchar](50) NULL, [Registration] [tinyint] NULL, CONSTRAINT [PK_Address] PRIMARY KEY([Id] ASC) ) CREATE TABLE [Teacher]( [Id] [int] NOT NULL, [Degree] [tinyint] NULL, [Rank] [tinyint] NULL, CONSTRAINT [PK_Teacher] PRIMARY KEY([Id] ASC) ) CREATE TABLE [Student]( [Id] [int] NOT NULL, [StudyGroup] [varchar](50) NULL, [Course] [tinyint] NULL, [Profession] [varchar](50) NULL, [DepartmentId] [int] NOT NULL, [ChairId] [int] NULL, CONSTRAINT [PK_Student] PRIMARY KEY([Id] ASC) ) CREATE TABLE [Department]( [Id] [int] NOT NULL, [Name] [varchar](50) NOT NULL, [FacultyId] [int] NOT NULL, CONSTRAINT [PK_Department] PRIMARY KEY([Id] ASC) ) CREATE TABLE [Chair]( [Id] [int] NOT NULL, [Name] [varchar](50) NOT NULL, [DepartmentId] [int] NOT NULL, CONSTRAINT [PK_Chair] PRIMARY KEY([Id] ASC) ) CREATE TABLE [Position]( [TeacherId] [int] NOT NULL, [ChairId] [int] NOT NULL, [Name] [varchar](20) NULL, [Work] [varchar](20) NULL, CONSTRAINT [PK_Position] PRIMARY KEY([TeacherId] ASC, [ChairId] ASC) ) CREATE TABLE [Person]( [Id] [int] NOT NULL, [FirstName] [varchar](20) NULL, [SecondName] [varchar](50) NULL, [Patronymic] [varchar](20) NULL, [Phone] [varchar](15) NULL, [AddressId] [int] NULL, CONSTRAINT [PK_Person] PRIMARY KEY([Id] ASC) ) ALTER TABLE [Teacher] ADD CONSTRAINT [FK_Teacher_Person] FOREIGN KEY([Id]) REFERENCES [Person] ([Id]) ALTER TABLE [Student] ADD CONSTRAINT [FK_Student_Chair] FOREIGN KEY([ChairId]) REFERENCES [Chair] ([Id]) ALTER TABLE [Student] ADD CONSTRAINT [FK_Student_Department] FOREIGN KEY([DepartmentId]) REFERENCES [Department] ([Id]) ALTER TABLE [Student] ADD CONSTRAINT [FK_Student_Person]
10
FOREIGN KEY([Id]) REFERENCES [Person] ([Id]) ALTER TABLE [Department] ADD CONSTRAINT [FK_Department_Faculty] FOREIGN KEY([FacultyId]) REFERENCES [Faculty] ([Id]) ALTER TABLE [Chair] ADD CONSTRAINT [FK_Chair_Department] FOREIGN KEY([DepartmentId]) REFERENCES [Department] ([Id]) ALTER TABLE [Position] ADD CONSTRAINT [FK_Position_Position] FOREIGN KEY([ChairId]) REFERENCES [Chair] ([Id]) ALTER TABLE [Position] ADD CONSTRAINT [FK_Position_Teacher] FOREIGN KEY([TeacherId]) REFERENCES [Teacher] ([Id]) ALTER TABLE [Person] ADD CONSTRAINT [FK_Person_Address] FOREIGN KEY([AddressId]) REFERENCES [Address] ([Id]) /* BEGIN HANDLE-WRITTEN CODE */ CREATE PROCEDURE [InsertStudent] @Id int, @FirstName varchar(20) null, @SecondName varchar(20) null, @Patronymic varchar(20) null, @Phone varchar(15) null, @AddressId int null, @StudyGroup varchar(50) null, @Course tinyint null, @Profession varchar(50) null, @DepartmentId int null, @ChairId int null AS BEGIN INSERT INTO Person (Id, FirstName, SecondName, Patronymic, Phone, AddressId) VALUES (@Id, @FirstName, @SecondName, @Patronymic, @Phone, @AddressId); INSERT INTO Student(Id, StudyGroup, Course, Profession, DepartmentId, ChairId) VALUES (@Id, @StudyGroup, @Course, @Profession, @DepartmentId, @ChairId) END /* END HANDLE-WRITTEN CODE */
, , ,
, , , .. .
, -
, -. , - . , -. .
Microsoft Visual Studio, . , - , . #C, SQL/DDL , , . , SQL/DDL. , , (round-trip engineering).
.
Microsoft Visual Studio, Oracle .. , . IBM Erwin. , , IBM Rational Rose.
SQL .
.
11
. , , . , , 50% . ( RUP, , , , ), , , , . , . , , , . , , ad hoc, , .
[7].
(, ), , [8]. , , , , , [5,6].
1. .. . - - . 3 1995. http://lib.csu.ru/dl/bases/prg/dbms/1995/03/source/chen.html / : in ACM Transactions on Database Systems v.1 N1, 1976, 1976.
2. Integration Definition For Information Modeling (IDEF1X). Draft Federal Information Processing Standards Publication, 1993. 87 p.
3. .., .., .. REAL . . 2. - , 2004. .120-139.
4. .. REAL-IT: / . - , 2004. .89-100.
5. .. - . . , 2004. .101-123.
6. A.Ivanov, D.Koznov. REAL-IT: Model-BASED User Interface Development Environment. Proceedings of IEEE/NASA ISoLA 2005 Workshop on Leveraging Applications of Formal Methods, Verification, and Validation. Loyola College Graduate Center Columbia, Maryland, USA, 23-24 September 2005. P. 31-41.
7. . . ..-.. , 2004. 89 .
8. J.-M. Hick, J.-L. Hainaut. Strategy for Database Application Evolution: The DB-MAIN Approach Lecture Notes in Computer Science, Volume 2813/2003 P. 291-306.
l9.pdf
1
9. -.
-, - BPMN, - , . (round-trip engineering) . - Web-.
-. 70-80- - . , . 90- , . - (business process), (business reengineering), - (business process reengineering), - (business process modeling).
. 18- , , 19- . 20- , . . , , .
90- , (-). - . , . , . , , .
-. - (-) . , , , / . , , -. , , .
2
-, , . ?
1. . 2. ,
.
3. - . 4. -
, / , .
ERP- (Enterprise Resource Planning). SAP, Oracle, Microsoft . ERP- - . ERP- , , , , , , , , . ( ).
ERP- - - , .
-, ERP- : , , ... ERP- ( , - ), .
, . , . , , , .
-. . , . 9.1.
3
-
-
. 9.1.
- ,
. , , , . , , .
. . , , . , ,
4
- ( , ) , .
, , . .
, , . , , , ( ) .
. .
. , , - .
5
-. , . 9.1. , -. . , : ; , , ; ; .
. , , . , , :
, , , , , , , ;
, 13 15 , , , ; ;
, , , , ; 58- , ; ; , , , ;
, , ; , ..
, , , :
;
, ., ;
, , ( ), , , - : , , , , , , , .
- . . / -. , , , ( ) . , -, . , - -. , - .
6
BPMN. - BPMN (Business Process Management Notation). BPMI (Business Process Modeling Initiative, http://www.bpmi.org), 2004 . OMG 2006 OMG- .
BPMN : (flow sobjects), :
(activities), (gateways), (events);
(connecting objects), - , , (, ); , , . BPMN-; :
(sequence flow), (message flow), (association);
(swimlanes) , : (pools) (lanes), , , -;
(artifact) : (data object), (groups), (annotations).
.
7
BPMN: (activities). , - . :
(task) . 9.2 (); (collapse subprocess) . 9.2 (); (subprocess expanded) . 9.2 ().
() ()
()
() ()
. 9.2.
(task) -, . , . 9.2 (a). . 9.2 () , BPMN , .
(loop) , . , , . / , .
(multiple instance) , . , , ( ) .
(compensation) , , . 9.3.
8
. 9.3.
, , : Service, Receive, Send, User, Script, Manual, Reference, None. , , .
(subprocess) . (collapsed subprocesses) . . 9.2 () (expanded suprocesses) . . 9.2 (). , , , , (ad hoc) . . 9.2 (). , , , .
, , , .
(, .. , ) , . 9.4.
9
BPMN: (connecting objects). . 9.5 , BPMN:
(sequence flow) . 9.5. (); , -;
(message flow) . 9.5. (); , ; pool swimlane, ;
(association) . 9.5. (), (); . 9.1 , .
10
BPMN: (gateways). . - ( ) . . BPMN . 9.6.
. 9.6 () .
BPMN . , , , . . 9.6 () . , . , switch , , , .
. 9.6 () . , .
11
. 9.6 () , , . , . , , (, ). .
. 9.6 () . , , . , . , , . , , , . , , , - , .
, . 9.6 () , . . .
12
BPMN: (events). -. / , / , - .. , , . - BPMN .
BPMN , . 9.7 (). , , . :
(start) , ; (intermidiate), ;
(end), .
-
-
() ()
()
. 9.7.
13
- BPMN-, . 9.7 (). . . 9.7 ():
(massage) / ; (timer) ; (error) , , ;
(cancel) ( , /);
(compensation) , ;
(rule) , , - - -, , - , ;
(link) ( , ) goto ; . , , , link, . link , link;
(multiple) ( ) , ; .
(terminate) , , , ( ) .
, , . , (, ). , , .
-. - , - . , .
, , BPMN , , . , ERP-, - .
14
, , ( ). - , . , , , . -.
- Web-. , BPMN BEPL, - Web-.
Web-, [4] , URI, XML. , , XML, -. URI (Uniform Resource Indicator) (URL Uniform Resource Locator) (URN Uniform Resource Name). URN , . Web- [5], -, B2B (Business to Business) . , , , .. .
1. ., .. . // . . . - -, 1999. 328 .
2. M.Havey. Essential Business Process Modeling. OREILLY, 2005. 332 p. 3. Business Process Modeling Notation. Final Notation Specification dtc/06-02-01. OMG
2006. http://www.omg.org/
4. Web-services architecture requirements. W3C Working Group, Note 11, February 2004. http://www.w3.org/TR/wsa-reqs/
5. S.Dietzen. Standards for Service-oriented architecture. Weblogic Pr. May/June 2004. 6. BPEL4WS Specification: Business Process Execution Language for Web Services.
Version 1.1, 5 May 2003. 137 p.
Preface.pdf
i
:
, . UML, RUP/USDP, - (Domain Specific Modeling) . , , , . IT-, , - , .
, , , . . , , , . , , .
- - () 25- , CASE- . . ., ., ., ., ., ., ., ., ., ., . , , .
, , . , , Microsoft Visual Studio, SQL Server, Visio 2003, DSL Tools. Microsoft DSL Tools DSM-.
.
1. . (, , ..), , , , , . , , .
2. , , . , (viewpoint) , , . (),
ii
. , , .
3. UML 2.0. UML 2.0. .
4. RUP/USDP - . , - . , - RUP/USDP. , , UML.
5. . . , : , ; ; ; . /, .
6. . , , , - , , - . (reverse engineering), (round-trip engineering) (inconsistency management).
7. . . , ( ) . .
8. . -. , , , . , . Microsoft Visual Studio Microsoft SQL Server.
9. -. -, - BPMN (Business Process Management Notation), - , . -, Web-.
10. C DSM-. (software product line),
iii
, . , DSM- (Domain-Specific Modeling) product line . DSM-. DSM-: Microsoft DSL Tools, Microsoft Visio 2003, MetaEdit+, Eclipse/GMF.
11. . , - (Domain-Specific Languages, DSLs). , , . - .
12. DSM- Microsoft DSL Tools. , - (DSLs) Microsoft DSL Tools, DSM-. , , , Microsoft DSL Tools.
, - ,
, 16 2006 .