Äîêóìåíò âçÿò èç êýøà ïîèñêîâîé ìàøèíû. Àäðåñ îðèãèíàëüíîãî äîêóìåíòà : http://sp.cs.msu.ru/courses/fmsp/msc&sdl.pdf
Äàòà èçìåíåíèÿ: Tue May 6 18:01:15 2003
Äàòà èíäåêñèðîâàíèÿ: Mon Oct 1 21:26:18 2012
Êîäèðîâêà:
. .

. ., . .

: MSC SDL
( 4 )

1998


681.142 - . , , , , . , MSC ( ) SDL ( ), SDT - MSC SDL. .

: .. , ..-.., .. , ..-..

. ., . . : MSC SDL ( 4 ). ( 040777 23.07.96), 1998.- 126 . - . ... ISBN 5-89407-021-X @ . .. 1998

2


. , 1997 . . : . : , , . . . , . MSC. , , . SDL. SDT ­ MSC SDL. , . TeleLOGIC AB () SDT .

3


1. .................................................................................................... 8 1.1. ............................................................................. 9 1.2. ................................................................................ 11 1.3. ............................................................ 12 1.4. ............................................................. 13 2. ................................................................................. 14 2.1. ...................................................................................... 14 2.1.1. ..................................................................................................... 15 2.1.2. .............................................................................................. 15 2.1.3. ............................................................................................ 15 2.2. .......................................................................... 15 2.2.1. ................................................................. 15 2.2.2. ..................................................................... 16 2.3. ...................................................................................... 17 2.4. ........................................................................ 17 2.4.1. ................................................. 18 3. .......................................................................... 20 3.1. .............................................................................. 21 3.2. ............................................................................. 22 3.3. ........................................................................ 22 3.4. .............................................................................. 23 3.5. ................................................................................................. 24 4. ........................................................... 25 4.1. ...................................................................................... 25 4.1.1. ............................................................................................ 25 4.1.2. .................................................................................................. 26 4.2. ....................................................................................................... 27 4.2.1. ........................................................................................... 27 4.2.2. ............................................................................................... 29 4.2.3. ................................................................................ 29 4.2.4. ......................................................................... 30 4.2.5. .................................................................................................. 30 4.2.6. ................................................. 31 4.3. ..................................................... 32 4.4. ............................................................................... 35 4.4.1. ............................................................................................. 35 4.4.2. .................................................................... 37 4.4.3. ............................................................................. 37 4.4.4. .............................................................. 38 4.4.5. ........................................... 39 5. ...................................................................... 42

4


5.1. ......................................................................................................... 5.2. ..................................................................... 5.3. ....................................................................................................... 5.4. ........................................................................................................ 5.5. ................................................................................................. 6. SDL ................................................................................................. 6.1. ................................................................................ 6.2. ......................................................................... 6.3. SDL ............................................................................ 6.3.1. ................................................................................................ 6.3.2. ....................................................................................................... 6.3.3. ................................................................................................. 6.3.4. ............................................................................................ 6.4. .......................................................................................... 6.4.1. ................................................................................................... 6.4.2. .................................................................................. 6.4.3. ..................................................................................................... 6.4.4. ....................................................................... 6.5. ................................................................................................... 6.5.1. .................................................................. 6.5.2. ............................................................................... 6.5.3. ............................................................................................. 6.5.4. ..................................................................................... 6.5.5. ............................................................................ 6.5.6. .................................................................................................... 6.5.7. ................................................................................................ 6.5.8. ..................................................................... 6.5.9. ............................................................................................... 6.5.10. .............................................................................................. 6.5.11. .............................................................................................. 6.6. ......................................................................................................... 6.7. ................................................................................................. 7. SDT .................................................................... 7.1. " "................................................................... 7.2. SDT .................................................................................. 7.3. ............................................................................ 7.3.1. ............................................................................. 7.3.2. .................................................... 7.4. SDL ............................................................... 7.4.1. ................................. 7.4.2. ............................................................... 7.5. .................................................................................................

42 42 46 47 47 48 48 48 50 53 53 54 56 56 57 58 58 59 59 59 59 60 60 61 62 62 63 64 66 66 67 68 69 69 69 70 70 71 72 72 73 74

5


8. ..................................................... 75 8.1. ........................................................ 75 8.2. ............................................. 76 8.3. ................................................................................................. 80 9. SDL ......................................................................... 81 9.1. ................................................................................... 81 9.1.1. ........................................................... 81 9.1.2. ................................................ 83 9.1.3. .................................................................. 84 9.1.4. .......................... 85 9.1.5. .................................................... 85 9.1.6. ........................................................ 86 9.1.7. ............................................................ 86 9.1.8. ...................................................................... 87 9.2. .............................................. 88 9.2.1. ............................................................................ 88 9.2.2. ......................... 90 9.2.3. .............................. 90 9.3. ..................................................................................... 91 9.3.1. .................................. 91 9.3.2. .................... 93 9.4. ........................................................ 95 9.5. ............................................................................... 96 9.5.1. ......................................................... 96 9.5.2. Demon ................................. 96 9.5.3. Game ...................................................... 100 9.5.4. Main ...................................................... 103 9.6. .......................................................................... 104 9.7. ............................................................................................... 105 10. SDL ...................................................... 106 10.1. ........................................................... 106 10.2. .................................................. 107 10.3. .......................................................................... 108 10.3.1. ................................ 109 10.3.2. ................................ 109 10.3.3. ................................... 110 10.3.4. ................................................................... 112 10.4. ...................................... 114 10.4.1. .......................................................... 114 10.4.2. ................... 115 10.4.3. ........................................................... 116 10.4.4. ..................................... 117

6


10.5. .................................................. 10.5.1. .............................. 10.5.2. ..................................................................................... 10.5.3. SDL ............................................................... 10.5.4. ................................................................ 10.6. .............................................................................................

117 118 119 123 124 124

7


1. . , , , , , , . , . , , . , , . , (.. , , ..) . , .. , , . (, , ) , , . , . , (): (requirements analysis) , , . « », . . 8


(system analysis) , . (system design) , () . , . (detailed design) . (implementation) , . , , , , , . - . . 1. : . . 1.1. : .

9


. 1. , , . ( . 1). , () . : ,

10


. , . (OMT). . . , .. , ( !). , . MSC. , . , , , . , , , . 1.2. ­ . . , . , , (, , .), . . ­ , , (.. ) . 11


, , , . , , .. . MSC. 1.3. ­ , .. , , , , . , . , . . : , SDL. SDL . . . , . , . SDL . , , . . . 12


SDL. SDL . , .. , . 1.4. . , .. , .

13


2. . . . , , .. . , . , , 1992 . : (use case), (use case model). ( ) . 2.1. ( . actor), , . . . , ­ , . . . . , .. . , .. . , , , . ( ) . .

14


2.1.1. -, . . . . . , , , .. . , . , , . . , , . , . 2.1.2. (.. ) . , . , . 2.1.3. . , . ( ). ( ). 2.2. 2.2.1. . , .

15


. ( ) . , () () , . . . , .. , ( ) . - . , ( ­ ) , , , . , ( C++, Smalltalk, Java ..) , . , . , , . , . 2.2.2. . ( ), "" , . , ( ) , , , . . . .

16


: · ; · ; · -, ; · , "" . . . . . , , . 2.3. , : · ; · ; · . «» , ( ). (. ). . (. ). . 2.4. 1) , ; , ; 2) ; ; ; 3) ; ; 4) . 1.

17


5) , , ; ; 6) . . 2. 2.4.1. . . 1. . . 2. . . : , UC_1 : : , (, ) ; : ; ; . 3-5 . : , , . : «» , , .

. 1.

18


, UC_1 , : ( : ), , : , . , . : : : : ER_1 () , , , « . X» ER_2 : : ER_n , «» , ER_x

AER_x, x 1 n

. 2.

19


3. , . , , , . : , . , , .. . ( ). . «» , . . . , , - . , : , , . , , , , . - , . . , , . : , . , , , . , . , , 20


. , , . , , , , , . ( ), , . 3.1. , , , ? . , , .. . . , . . .. . , , , . , , . . , . , , . ( ). .

21


3.2. , , . . , , . , (). , . , , . . , . . , , . . : , , . , , . 3.3. , , . , . . . , . , . . 22


, . . . , , . . . . , . . , , . , , . , . . , . , . . ­ . . . , . , , . . 3.4. , . . , . . 23


, , . , , . , , . , ( ), ( ). . , . : , (), , , . 3.5. . , , , : , .

24


4. (Message Sequence Charts, MSC) - . , . ­ . 60 . . 1992 . ( Z.120 1992). , ( Z.120 1996). 1992 . . 4.1. , ( ). , , .. , . . . , . , . - , . ( ) . 4.1.1. . . , ( )

25


ENV ( . "environment", .. ""). :
::= contains {{ | }*} ::= ::=

::=

msc

4.1.2. . , , . SDL : ( system), ( block), ( process). SDL-. decomposed , ( ), . :
::= is followed by ::= is associated with ::= [: ] [decomposed] ::=

::= ::= [ ] ::= system | block | process ::= ::= {is followed by is followed by } is followed by { | }

26


::=

::= | | | | | | ::=

1) . . . " ". 2) - . . . " ". 4.2. 4.2.1. (.. ) . , : . , , , , . . . . .. (message instance name), . , ( ).

27


, . . . :
::= ::= ::= is associated with is connected to { | |} [is followed by ] ::= ::= is associated with is connected to{{ |}} ::= [,] [()] ::= [,] ::= ::= ::=

: : 1. (.. ); 2. ; 3. ; (.. ), , .

28


: 1. : . 2. . 3. . 4.2.2. , , (, ). :
::= contains ::=

::=

: 1. , . 2. . 3. "". 4.2.3. . , . . :
::= [is associated with ] is connected to ::=

29


: (.. ). : 1. : ; 2. : , ("" "") ; 3. , .. ; 4. . 4.2.4. . :
::= H

: , .. . 4.2.5. . , , . : . . SDL. SDL , . , .

30


:
::= | ::= ::=

::= is associated with [()] is connected to ::=

::= is associated with [()] is connected to ::=

::= ::=

: : , . : 1. , . 2. , , . 3. . 4.2.6. . , . , : .

31


:
::= is followed by {|} is followed by ::= ::= { is followed by }+ ::= { is followed by }+ ::=

::=

: . 4.3. . , . . ( - ). : , . . , ( , , ). - , , . . , ( ). , ( , ).

32


ordering, a, b c. . a m1 ; m2 b; m3 c; m4 b. b m2 a; m4 a. m3 a. c . ordering:
MSC ordering

a

b

c

m1 m2 m4 m3

. 2. ordering ordering: MSC ordering; INST a, b, c; INSTANCE a; IN m1 FROM ENV; OUT m2 TO b; OUT m3 TO c;* IN m4 FROM b; ENDINSTANCE;

33


INSTANCE b; IN m2 FROM a; OUT m4 TO a; ENDINSTANCE; INSTANCE c; IN m3 FROM a; ENDINSTANCE; ENDMSC; m in(m), m out (m). ordering:
E={in(m1),out(m2),in(m2),out(m3),in(m3),out(m4),in(m4)}

( ), ordering, E: in(m2) < out(m2) in(m3) < out(m3) in(m4) < out(m4) A E: out(m1) < out(m2) < out(m3) < in(m4) B E: in(m2) < out(m4)





E , ( E): in(m1)

out(m2)

in(m2)

out(m3)

in(m3)

in(m4)

out(m4)

34


, , ( , , ). 4.4. . (.. ). (.. ). 4.4.1. , . - . , , . , , ( ), ( , ) ( ). ( ), . ( ), , . ( ). . ( ), . ( ), . .

35


:
::= ::= contains ::=

::= | | ::= is associated with is connected to { | } ::=

::= is connected to { | } ::= |

::=

::=

::= ::=

::=

36


: : , (.. ). : 1. . 2. . 3. . 4. . 4.4.2. , , . (.. ). , . (MSC) Si. MSC (MSC1 MSC2) , Si MSC1 MSC2. 4.4.3. . , . , , - , . : , ( ,

37


); , ( ). , , , . , . I (, , ). , (MSC1) (MSC2), MSC1 I Si, I MSC2 . ( ) Si . , I ( MSC1 MSC2), . , MSC1 MSC2 , I. , MSC1 , MSC2 (.. ) . 4.4.4. . , , ( ) (.. ). , . , , , , .

38


, , ( ) , . , . , , , , . , , (MSC2) (MSC1), MSC2 MSC1 ( ). , . , . , , , . . , , ( ) . . , , , , . 1992 . ( 1996 .). 4.4.5. (.. ). .

39


submsc. , decomposed ( decomposed ). , decomposed . , . . :
/* from */,

msc submsc). :



(

::= contains { { |}*} ::= ::= submsc ::=

:
::= submsc /* from */ ::= msc | submsc

: decomposed : 1. , decomposed, . 2. , decomposed, . 3. , decomposed,

40


. 4. , , : ( , ). : 1. (.. - ). 2. . 3. , .

41


5. , . 5.1. . , . . . 3. Class1 , . Class2 . Class2 : attrib1 ( ) attrib2 ( atype). Class2 : op1 ( ) op2 arg1 type1 type2.
Class1 Class2

attrib1 attrib2 : atype op1 opr2( arg1:type1) : type2 . 3. 5.2. . , . . 4.

42


. 4. () (. 5). / .

. 5. « ­ ». . , . 6 , . 8. . 43


. (. . 7 ) _. 1 _, 2 ­ _.

. 6.





1


2

. 7. , . , . , , , . (. 8 ). , . .

44


* 0,1 1..*

Class Class Class Class

. 8.









. , ( , ). . , , . , ,

, (« », « »), . , «», «--». 45


. .. 9.


1 *


2 *

3

. 9. 5.3. , . , . , , , , . . . 10.

. 10

46


5.4. , . . , , , , : ExternalModule::Class. 5.5. , , . .

47


6. SDL 6.1. SDL , . . SDL- : 1. - , : , , ; 2. : ( ); 3. . «» . , . (.. ) -, , . 4. : ; (.. ), , . , .. . , . ; , 5. ­ , ; 6.2. SDL, , . . . , , (-) . , . . 48


, .. . . : 1) ; 2) ; 3) ; 4) ; 5) ; 6) ; 7) ; 1) 2) . 2) . 3) . < >. 4), 5) 6) . 4) . , . , , .. . , () - . 6) . 7) . -. - : X is associated with Y X contains Y X is connected to Y Y X X Y X Y

49


X is followed by Y

X Y ( ) X Y ; X Y - , , Y X

6.3. SDL . 11 SDL: , , .

50


. 11.

51


SDL :

. 12. (Package Reference Symbol) .





(Kernel Heading Symbol) SDL . . . (Additional Heading Symbol) , . (Frame Symbol) . , . (Page Number Symbol) . . .

52


6.3.1. . . , , . . , . , . . :
::= [ ] is associated with contains { { }* { }* } ::=

::= system ::= contains { | }* ::= { | }* ::= contains ::=

6.3.2. ( ). , . : 53


::= contains { { }* }* {|}} is associated with { }* ::= {,}*

: . , .
::= block ::= ::= { | | }+ ::= ::= contains{[]} ::=

::= is connected to { } ::=

6.3.3. «» . . ­ , . () . .

54


( ), . . , . ( ). ( «-» «-»). :
::= contains { { }* { }* } ::= contains { [ ] { | | | | }* ::= process [ ; ] [] ::= { | }* ::= (,) ::= ::= ::= signalset [ ] ; ::= fpar { , }* ::=

: , . . ( ). ,

55


, , . 6.3.4. . :
::= contains { { }* ::= ::= contains { | }* ::= { ::= text area> area> }

contains name> }

::= procedure [] [] ::= [] { | }* ::= is followed by ::=

::= fpar { , }* ::= ::=[ in/out | in ] ::= returns



6.4.

56


. 13. SDL . ( ). (-) (). - - . , .. - , -. , . , , . 6.4.1.

57


:
::= signal [] ::= ( { , }* )

6.4.2. .. :
::= contains ::=

::= signallist = ; ::= { , }* ::= { | ( ) | ::= name ::= name ::=

6.4.3. . . .

:
::= is associated with { [ ] } is connected to { { | } ::= | |

58


::= ::= ::=

6.4.4. :
::= is associated with { [ ] } is connected to { { } ::= | ::= ::=

6.5. 6.5.1. ( ) . , ( ) . ( ) ( ). :
::= dcl [:= ] ;

: . 6.5.2.

59


, .. , ( ). :
::= is followed by ::=

6.5.3. (). . «*» : , .
::= contains is associated with { | } * ::= ::= * ::= |

::= is connected to ::= is connected to

6.5.4. ( ). , , . 60


:
::= contains { } is followed by ::= { | } [ ( { , }* ) ] ::=

6.5.5. , , . ( ) . , , , , . :
::= { contains } ::= { | } ::=

61


6.5.6. , . :
::= contains is followed by ::= ::=

6.5.7. , . , , . , , ( ), . :
::= [] is followed by { | | | | | | } ::= { | | | | | } [ is followed by ]

62


6.5.8. 6.5.8.1. , . , . . :
::= ::= contains ::= { | } ::=

6.5.8.2. . , . :
::= is connected to ::= ::=

::= contains ::=

6.5.8.3. . :
::=

63


6.5.8.4. . :
::= [ is associated with ] ::=

,

6.5.9. 6.5.9.1. :
::= contains ::=

6.5.9.2. :
::= contains ::= [ ] ::= ( { , }* ) ::=

SDL . , . . PId. . . , , . 64


-

PId: ( self); ( parent); , ( child); - , ( sender). (.. , , offspring Null, . 6.5.9.3. :

::= contains ::= [ ] ::=

6.5.9.4. , ( via), - ( to) : -, PId -. -, ( ). :
::= contains ::= [ ] [ to ] [ via ] ::= | ::= | ::= ::= ::= ::=

65


6.5.10. :
::= contains is followed by { { }* | { {}+ [ ] }* ::=

::= is associated with is followed by ::= is associated with is followed by ::= ::= else

6.5.11. :
::= timer [ ] [ := ] ::= contains ::= contains ::= set ::= ( [