Logos 2000
(további információk)
Alkalmazásfejlesztés
a Unified Modeling Language
szabványos jelöléseivel
(ISBN: 963 03 7660 1, 242o, 1999 május)
Részlet a bevezetőből,
Tartalomjegyzék, Tárgymutató
.
Ajánljuk ezt a könyvet mindazoknak, akik már fejlesztettek, éppen fejlesztenek vagy fejleszteni fognak számítógépes alkalmazásokat és szeretnék azokat mind magasabb szinten, a jó értelemben vett nagyipari módon kivitelezni. Ajánljuk továbbá azoknak, akik érdeklődnek az informatika alkímiájának műhelytitkai iránt. Az alapismereteket tárgyaló részek és a technika megoldások széles spektruma miatt a könyv egyszerre tankönyvként és a fejlesztés mindennapjainak kézikönyveként is alkalmazható.
A könyv, a szabványossá vált objektumorientált vizuális modellező nyelv, az UML (Unified Modeling Language) jelöléseit ismerteti, valamint egy olyan egyszerű, mégis hatékony módszert, amellyel alkalmazásainkat többéves tapasztalat nélkül is gyorsan kifejleszthetjük.
A tartalom három fő részre osztható. A háttér-információkat követően a kifejlesztendő alkalmazással szemben támasztott igények, követelmények összegyűjtésére kapunk egy hatékony módszert és jelölésrendszert. Ez a rész nem hivatkozik objektumorientált technikákra, sem mélyebb informatikai ismeretekre. A második rész az UML legjobban kidolgozott elemét, az osztálydiagramot tárgyalja, amely segítségével az alkalmazás alapvető szerkezeti felépítését ábrázolhatjuk. Itt olyan módszert is találunk, amit követve a rögzített követelményekből félig automatikusan felépíthetjük az alkalmazás vázlatos modelljét. A harmadik nagyobb rész az UML további, kevésbé kidolgozott diagramjainak jelöléseit tekinti át — az alapvető jelentőségű osztálydiagramokhoz így szemléltetésként további diagramokat kapcsolhatunk. Itt megtalálunk egy olyan pontokba foglalt lépéssorozatot is, amit vezérfonalként használhatunk egy tipikus fejlesztés folyamán.
Felépítése miatt a könyv ismeretanyaga az egyes részek elolvasásával párhuzamosan a gyakorlatban is alkalmazható.
Napjainkra az objektumorientált szemlélet az informatika egyik legjelentősebb tényezőjévé vált. Az “OO” rövidítés állandó jelzője lett a magas színvonalú szoftveralkalmazásoknak, amelyektől joggal várjuk el a nagyobb megbízhatóságot és flexibilitást. Egyrészről nyilvánvalóvá váltak a jól megtervezett OO alkalmazás előnyei, például a robosztusság, a fejlesztési ciklusok rövidülése és az egyszerűbb módosítás lehetősége, mely leegyszerűsíti a változások követését. Azonban be kell vallanunk, hogy több mint három évtizedes múltja ellenére az objektumorientált szemlélet még mindig nem érett és teljes. Legtöbb fogalma bizonytalan és homályos, és a háttérben sem áll egzakt matematikai elmélet. Az OO szemlélet így irányzatról irányzatra, sőt, személyről személyre más és más értelmet kap. Mindenki megalkotja a saját szabályait és konvencióit, melyeket több-kevesebb sikerrel alkalmaz a gyakorlatban.
Kialakulatlansága miatt ma az objektumorientált technológia alkalmazása személyekhez, “gurukhoz” kötődik, akik a napi munkában felbukkanó kérdőjelekre tapasztalatuk vagy éppen helyes ráérzésük alapján képesek megadni a válaszokat. A technológiai sor hiányosságaival és bizonytalanságával indokolható, hogy sokan még nem OO technológia mellett döntenek, vagy éppen elakadnak egy fejlesztés közepén.
...A következő oldalak egy rendhagyó alkalmazásfejlesztési módszert ismertetnek, amely célja, hogy az objektumorientált technológiát ipari méretekben is alkalmazhassuk. Ennek feltétele egy érthető, világos és ezért könnyen alkalmazható technológiai sor, hogy ne csak “guruk” legyenek képesek jó minőségű szoftver gyors előállítására. (...) A “gyors” jelzőt olyan értelemben használjuk, hogy egyrészt a módszer segítségével csak a valóban szükséges lépéseket hajtjuk végre, így nem készítünk felesleges dokumentumokat vagy éppen programkódokat, csak azokat, amelyekre egy ipari méretekben előállított (tehát bonyolult, nem saját használatra készült és a későbbiekben valószínűleg módosítandó) alkalmazás esetén szükségesek. Másrészt a gyorsaság abból ered, hogy fejlesztés közben minimálisra csökkenthetjük a bizonytalanságot, azaz mindig tudjuk, hogy mi a következő lépés.
Jelen könyv a Unified Modeling Language
(“Egységesített modellező nyelv”,
rövidítve: UML) jelölésrendszerét használja fel a
modellek ábrázolására. Minden jelölés tárgyalásra kerül, így a könyv első része
UML tankönyvként is használható.
Az UML jelöléseivel az elkészített modelljeinket szabványos módon
ábrázolhatjuk. Az UML-t a három legelterjedtebb
objektumorientált módszer szerzője alkotta meg, amely tény már önmagában
elegendő lenne ahhoz, hogy jelöléseik “de facto” szabvánnyá váljanak. Az UML
mögé azonban több száz informatikai cég sorakozott fel, így javaslatuk
eredményeként az UML-t közös (OMG-) szabványként fogadták el.
Modellezés 3
Rendszerszervezés 3
Modellezés 4
Vizuális jelölések 5
Bonyolultság kezelése 6
A valóság modellezése 8
Absztrakt modellek 10A történet 13
Programozási nyelvek 13
Módszertanok 15
Egységesítés és szabványosítás 17
Mi az UML? 19Nyelv és módszer 21
Az OMT jellemzői 21
Rational Unified Process 22A “Q” modellező módszer 24
A fejlesztés lépcsőfokai 25
Kiegészítő ajánlások és értelmezések 27
A szemlélet 27
Hogyan használjuk? 28
A “Q” modellező módszer és a RUP 28
I. Követelmények rögzítése 31
Megjegyzések, fogalomszótár 32
Megjegyzések 32
Elnevezések 33
Fogalomszótár 34Áttekintés 35
Kiterjesztési mechanizmusok 36
Sztereotípia 36
Megszorítások 38
Megszorítás és kulcsszavas érték 38
Kiterjesztési mechanizmusok használata 39Használati esetek 40
Aktor 40
Használati eset 41
Aktor és használati eset 43
Aktorok általánosítása és pontosítása 44
Változatok (extends) 45
Részfunkció (include) 47
Használati esetek általánosítása 47
Változat, részfunkció vagy általánosítás? 48
Diagramok kialakítása 49
Felhasználó céljai és az interakciók 50
Használati eset diagramok 51Csomagok 53
Csomag (package) 54
Függőségek 55
Névterület (namespace) 56
Csomag pontosítása 56
Csomagok használata 57Rendszerek együttműködése 58
Közvetett vezérlés 61
A követelményelemzés szöveges dokumentumai 63
Alkalmazási példák 63
Forgatókönyvek 65
Működési leírások 67
Felhasználói felületek 67
Előzetes felhasználói leírás 70Követelményelemzés 71
Kidolgozás 72
A követelményelemzés célja 73
II. Osztálydiagramok 75
Osztály 76
Objektum és osztály 76
A szakterületi modell első elemei 78
Attribútumok 79
Műveletek 80
Lekérdezés és módosító 81
Származtatott attribútum és osztály 82
Láthatóság 82
Lekérdező és beállító műveletek 83
Attribútumok és műveletek értelmezése 84Jellegzetességek 88
Részletezettség szintjei 88
Közös sztereotípia és megszorítás 89
Részek 89
Változatlanság 90
Jellegzetességek elérése 90Jellegzetességek keresése 92
Adatszolgáltató és tároló felelősségek 92
Entitások és értékek 93
Műveletek keresése 95
CRC-kártyák 95
Felelősségek és belső osztályok keresése 96
A művelet alanya és tárgya 99Kommunikációs útvonalak 100
Kommunikációs út 100
Asszociáció és kapcsolat 101
Szerepek 102
Attribútum és osztály számossága 103
Módosítás lehetősége 104
Elnevezések 104
Kollekció és felsorolás 105
Származtatott és részhalmaz asszociációk 106
Asszociációk értelmezése 107Elérési utak 112
Minősített asszociáció 112
“Vagy” asszociáció 113
Asszociációs osztály 114
Aggregáció és kompozíció 115
Erős és gyenge kapcsolat 117
Attribútum és asszociáció 118
Függőségek 119Általánosítás és pontosítás 121
Általánosítás és pontosítás 121
Többszörös osztályozás 123
Megkülönböztető 125
Dinamikus és többszörös változat 126
Kiterjesztés és korlátozás 127
Műveletek átdefiniálása 128
Osztályhierarchia 130
Absztrakt osztályok és interfészek 130
Generikus osztály 134Különleges műveletek 136
Értékek másolása és ellenőrzése 136
Konstrukció és destrukció 137
Kezdőértékek értelmezése 138
Konverzió 139Kiegészítő technikák 140
Osztályattribútumok és osztályműveletek 140
Metaosztály 142
Sztereotípia 143
Invariánsok, elő- és utófeltételek 143
Műveletek végrehajtási módja 144Objektumok 146
Objektumok 146
Objektum attribútumértékei és állapota 147
Objektumok és kapcsolatok 148Osztálydiagramok használata 151
III. Interakció-diagramok 153
Interakció-diagramok 154
Példaobjektum 155
Üzenet 155Szekvencia-diagram 157
Konkurens folyamatok 158
Üzenetek 159Együttműködési diagram 161
Interakció-diagramok használata 163
Tervezési minta 163
IV. Időben lezajló változás 165
Aktivitás-diagramok 166
Aktivitás és sorrendiség 166
Akció- és aktivitás-állapot 169
Aktivitás és objektum 170
Szignál küldése és fogadása 173Állapotdiagram 175
Állapot és átmenet 175
Esemény 178
Esemény és átmenet 180
Állapot 180
Üzenetküldés 182
Tevékenység és akció 183
Strukturált állapotdiagram 184
Konkurencia 185
V. Adatfolyam-diagram 187
Adatfolyam-diagram 188
Feldolgozás és adatfolyam 189
Aktív és passzív objektumok 190
Vezérlésfolyam és strukturálás 191
VI. Reprezentáció 193
Osztályként történő reprezentáció 194
Felhasználói felületek 196
Pontosítás megvalósítása 198
Pontosítás és kompozíció 200
Állapotdiagramok értelmezése 202
VII. Szakterületi elemzés 205
Diagramok a követelményelemzésben 206
Szakterületi elemzés 207
Áttekintő szakterületi modell 208
Részletes szakterületi modell 211
Csomagok és osztályok 213
VIII. Implementációs diagramok 215
Komponens-diagramok 216
Alkalmazási-diagramok 218
IX. Tervezés és megvalósítás 221
Alkalmazási környezet 222
Részletes tervezés 224
Megvalósítás 227
A. “Objektumokon túl” 229
“Beyond objects” 230
A. abstract class, 137. abstract operation, 137. abstract state, 181. absztrakció, 12. absztrakt állapot, 181, 183, 190, 191. absztrakt esemény, 184. absztrakt megoldási mód, 18, 230. absztrakt művelet, 137. absztrakt osztály, 137, 140. action, 151, 186, 189. action state, 175, 189. active, 151, 156, 161. activity, 151, 172, 176, 187, 189. activity diagram, 172. activity state, 176, 189. actor, 46, 47, 196. adatfolyam, 195. adatfolyam-diagram, 195. adatszolgáltatási felelősség, 98. adattár, 196. aggregáció, 121. aggregate value, 195. aggregation, 121. akció, 151, 186, 189. akció-állapot, 175, 189. aktív művelet, 105. aktív objektum, 156, 161, 209. aktív osztály, 151. aktivitás, 172, 173. aktivitás-állapot, 175, 176. aktivitás-diagram, 172, 175, 176, 181. aktor, 46, 48, 50, 64, 84, 196. alapértelmezett konstruktor, 144. algebrai szabály, 218, 219. alkalmazási diagram, 224. alkalmazási környezet, 229, 230. alkalmazási példák, 69, 70, 76. állapot, 153, 175, 181, 183, 187, 188, 202, 209. állapot-átmenet diagram, 172, 176, 181, 182, 190. alosztály, 128, 129, 131, 132, 204. általánosítás, 50, 54, 62, 127, 130, 190. analízis, 10. analysis, 10, 21. . ancestor, 127. anchor, 200. AOP - Aspect Oriented Programming, 34. association, 107, 154. association class, 120. aszinkron üzenet, 162, 164, 167, 184. asszociáció, 107, 110, 112, 113, 121, 139, 154, 215, 232. asszociációs osztály, 120, 215. átfedő pontosítás, 130, 132. átmenet, 173, 182, 183, 191, 208, 209. áttekintés, 40, 41, 76. attribute, 85. attribútum, 85, 86, 89, 94, 98, 102, 106, 109, 122, 144, 153, 175, 203, 214. attribútumértékek felajánlása, 121. automatic transition, 186. automatikus átmenet, 186, 191.
B. backward reference, 106, 200. backward service, 200. beállító metódus, 89. behavior, 86. belső akció, 179, 188, 189, 202. belső állapot, 181, 191. bemeneti akció, 176, 187, 202. bezárás, 88. bidirectional association, 111. bináris asszociáció, 107. binding, 135, 204. blob, 22. bonyolultság kezelése, 12. Booch módszer, 22, 25, 29. brain storm, 102. branch, 165.
C. C++, 20, 246. cache, 87, 88, 232. cached, 92. call event, 184. cascading delete, 121. centre-out, 31, 69, 71, 78. change event, 185. class, 82, 129. class attribute, 146. class method, 146. classification, 82. collaboration diagram, 160. collection, 111. compartment, 95. composition, 122, 123. concrete class, 137. concrete state, 181. condition, 162, 186. conform, 129. connection, 225. constraint, 44, 149. construction, 143. constructor, 143. container class, 111, 140, 231. continuous loop, 187. continuous transformation, 194. control flow, 197. controller, 42. conversion, 145. copy constructor, 144. CRC-kártyák, 22, 101. csomag, 60, 64, 103, 202, 214, 216, 219. csomópont, 224.
D. DAG - directed acyclic graph, 117, 136. data flow, 195. data flow diagram, 195. data store, 196. dealing with complexity, 12. decision, 174. default constructor, 144. default transition, 186. delegáció, 101, 121. delegation, 101, 121. dependency, 61, 125. deployment diagram, 224. derived association, 112. derived attribute, 88. derived class, 88. derived element, 88. descendent, 127. design, 10, 21. design by contract, 149. design pattern, 169. destructor, 143. destruktor, 143, 166, 202. dinamika, 172, 182. dinamikus osztályozás, 132. dinamikus típus, 206. discriminator, 131. disjoint generalization, 130, 132. diszjunkt pontosítás, 130. döntés, 174. dynamic classification, 132. dynamic typing, 206.
E. early binding, 205. egész-rész, 121. egyed, 82. egy-életciklusú diagram, 187. egyesített osztály, 129, 130, 131, 205. egyetlen osztályozás, 130. egyirányú asszociáció, 111. együttműködési diagram, 160. elaboration, 233. elemzés, 10, 17, 21, 27, 29, 31, 32, 79, 88, 99, 103, 119, 126, 157, 208, 212, 213. elérés felelőssége, 106, 113. elérési útvonal, 62. életvonal, 163, 164. ellenőrzött, 31. előfeltétel, 149, 209, 218. előfordulás, 14. előzetes iteráció, 79. embedding, 206. encapsulation, 88. entitás, 82. entitás-objektum, 100. entity, 82. entry action, 187. enumeration, 100, 112, 123. érték-objektum, 100. érték-osztály, 123. értéktárolási felelősség, 99. értelmezés, 40. esemény, 75, 182, 183, 184, 185, 186, 188, 201, 208. eseményfolyam, 72. eseménygenerálás, 188. eszköztár, 147. event, 182, 184, 201. event-flow, 72. example object, 161. exception, 95, 184, 202. exit action, 187. extension, 133. extension point, 52, 95.
F. feature, 94. feldolgozás, 194, 195. felelősség, 94, 95, 98, 101, 102, 104, 106, 113, 119. felfüggesztett állapot, 161, 164. felhasználói felület, 19, 73, 74, 76, 79, 84, 98, 101, 102, 103, 119, 120, 124, 148, 203, 213, 214, 216, 217, 218, 219, 231. felhasználói felületek diagramja, 76. feltétel, 75, 162, 174, 186. felügyelt művelet, 150. figyelő, 201. final state, 176, 186. finomítás, 126. flow-chart, 172. focus of control, 164. fogalomszótár, 40, 57. folyamatábra, 172. folytonos transzformáció, 194. foreign key, 231. forgatókönyv, 71, 72, 74, 75. fork, 195. függőség, 61, 62, 66, 125, 139, 154, 160.
G. garbage collection, 19, 143. General System Science, 16. generalization, 127. generikus osztály, 115, 116, 140. generikus szerkezet, 115. getting method, 89. globális csomag, 62. globális függvény, 146. globális objektum, 154. globális változó, 146. glossary, 40. guard, 165, 186. GUI - Graphical User Interface, 19. gyorsítótár, 87, 88. gyűjtemény, 111.
H. használati eset, 23, 24, 28, 29, 46, 48, 50, 51, 54, 59, 65, 98, 101, 102, 103, 160, 169, 202, 212. használati eset diagram, 46, 57, 63, 72, 103. hatványtípus, 125. helyzetjelentés, 201. hívás-esemény, 184. horgony, 200.
I. időben lezajló változás, 86, 154, 172, 181, 182. idő-esemény, 185. implementáció és teszt, 33. implements, 138. inheritance, 127, 128, 204. initial state, 176, 186. inkrementális fejlesztés, 29, 31. instance, 14, 82, 146. instance attribute, 146. instance operation, 146. instantiation, 14, 146. integráció és együttes teszt, 33. interaction diagram, 160. interakció-diagram, 160, 169. interface, 137. interfész, 137, 138, 223. internal action, 179, 188. invariáns, 149, 218. invariant, 149. iterációs jelző, 162. iteration marker, 162. iteratív, 79. iteratív fejlesztés, 29, 31. iterator, 112. iterátor, 112.
J. jellegzetesség, 94, 206. jelzés, 95, 162, 175, 179, 184, 201, 209. join class, 129, 205.
K. kapcsolat, 106, 107, 154, 225. késői kötés, 205. készülék, 225. kétirányú asszociáció, 111. kezdőállapot, 176, 186. kibernetika, 16. kiemelés, 12, 129. kimeneti akció, 176, 187, 189, 202. kiterjesztés, 66, 133. kiterjesztett állapot, 181, 208. kivétel, 95, 150, 184, 202, 209. kizáró általánosítás, 131. kizáró pontosítás, 130, 131, 132. kollekció, 111, 116, 147, 155, 213, 231. komponens, 122, 222, 223, 224. kompozíció, 122, 123, 205, 206. kompozit állapot, 191. konkrét, 14. konkrét állapot, 181, 183. konkrét osztály, 137. konkurencia, 191. konkurens folyamat, 164. konkurens művelet, 151. konstans adattár, 196. konstrukció, 143, 166, 200. konstruktor, 143, 144, 145, 202. konverzió, 145, 217. korai kötés, 205. korlátozás, 133, 135. kötés, 135, 204, 205. követelményelemzés, 32, 78, 212, 218. közös sztereotípia, 95. közreműködő, 49. kulcsszavas érték, 42, 44, 45. külső állapot, 181.
L. late binding, 205. láthatóság, 89, 146. layer, 216. leágazás, 162. leképezés, 18, 33. lekérdezés, 50, 87, 114, 151. lekérdező metódus, 89. lényegi tartalom, 60. leszármazott, 232. life cycle, 186. lifeline, 163. link, 106, 107, 123. listener, 201. lock, 151. lokális objektum, 155. lokális változó, 164. lollipop, 139, 223.
M. magasabbrendű asszociáció, 107, 121. mapping, 18, 33, 232. másoló konstruktor, 144. megfigyelhető állapot, 87. megkülönböztető, 131, 132, 134. megosztás, 13. megszorítás, 42, 44, 88, 95, 99, 134, 149. megvalósít, 129, 138, 139. message, 161, 163, 184. message passing, 161, 163. metaclass, 148. metaosztály, 148. method, 86. method war, 23. metódus, 86, 137, 138, 204, 205. minősített asszociáció, 118, 119. minősítő, 118, 215. mirror, 203, 231. modell, 10, 16, 18, 27, 112. modellező nyelv, 14, 18, 25, 27, 28, 44. modifier, 87. módosító, 87, 102, 151. módszertan, 27. multiobject, 155, 161. multiobjektum, 155, 161. multiple classification, 130, 205. multiplicitás, 108. multiplicity, 108. munkafolyamat-diagram, 172. működési leírás, 73, 76, 214. művelet, 86, 87, 94, 103, 105, 106. művelet kiterjesztése, 135. művelet továbbítása, 121.
N. name compartment, 83. namespace, 62. navigability, 111. névrész, 83. névterület, 62. node, 224. not null, 109. notify, 105. nyomkövetés, 126.
O. object, 82, 152. object diagram, 152. object-flow, 178. Objective-C, 20. Objectory, 23, 24, 25, 28, 29, 42. objektum, 82, 152. objektum osztály, 83. objektum példány, 83. objektumazonosító, 83. objektum-folyam, 178. objektumorientált szemlélet, 15, 19, 27, 29, 82, 87, 121, 194, 200. observable state, 87. OCL - Object Constraint Language, 44. OID - object identifier, 83. OMG - Object Management Group, 23. OMT - Object Modeling Technique, 25, 27, 30, 108, 129, 131, 146, 228. one-shot diagram, 187. operation, 86, 189. operator overloading, 142. or-association, 119. osztály, 82, 100, 107, 109, 120, 219. osztályattribútum, 146. osztályművelet, 146, 154. osztályozás, 82. overlapping generalization, 130, 131. overloading, 86. overriding, 135.
Ö. öndelegáció, 167. öröklés, 127, 204. őrszem, 165, 174, 186, 208. őrzött művelet, 150. ősosztály, 128, 129, 130, 131, 132, 145, 204, 232. összetett érték, 195, 196, 200. összhangban van, 128, 129.
P. package, 60, 202. paraméter, 87, 91. parameterized class, 140. partíció, 216. partition, 216. passzív művelet, 105. passzív objektum, 156, 161, 196, 209. példány, 14, 82, 125, 152. példányképzés, 14, 146. példányosítás, 125. persistent, 45. polimorfizmus, 135, 204. polymorphism, 135. pontosítás, 62, 128, 129, 131, 132, 190, 204, 206. postcondition, 149. powertype, 125. precondition, 149. preliminary iteration, 79. privát, 89. private, 89, 125, 129. process, 27, 195. procesz, 27. processzor, 225. propagáció, 121. propagation, 121. protected, 89, 125, 200. pseudo state, 176, 186. pszeudo-állapot, 176, 186. public, 89. publikálás, 115, 217. publikus, 89.
Q. qualified association, 118. qualifier, 118, 215. query, 87.
R. RDD - responsibility-driven design, 22, 34. read only, 96. realize, 138. real-time, 164. reflexív asszociáció, 107. release, 233. rendezettség, 110. rendszerszervezés, 9, 10. requirement, 219. responsibility, 94, 219. restriction, 133. részekre bontás, 12. részfunkció, 53, 54. részletes tervezés, 32, 228, 230. réteg, 216. return, 162. reuse, 13, 129. role, 108, 110.
S. sáv, 163, 176. scenario, 71. self-delegation, 165, 167. send, 184. sequence diagram, 160, 163. sequential, 150, 173. service class, 200, 203. setting method, 89. setup, 233. sharing, 13. signal, 96, 151, 175, 179, 184, 201, 209. signature, 86. SIMULA ’67, 19, 20. single classification, 130. slot, 152. Smalltalk, 19, 245. start state, 176, 186. start-állapot, 176. state, 175, 181. state chart, 181. state-transition diagram, 181. static classification, 132. static typing, 206. statikus osztályozás, 132. stereotype, 42, 149. stick-note, 38. stop state, 176, 186. stop-állapot, 176. stratégiai tervezés, 32, 228, 229. strukturális kapcsolat, 107. subclass, 127. substitutability, 129. superclass, 127. swimlane, 163, 176. synchronization, 173, 174. synchronization bar, 173. szakterületi elemzés, 32, 79, 213. számosság, 108, 109, 120, 155. származtatás, 88, 92, 112, 113, 125. származtatott asszociáció, 112. származtatott attribútum, 88, 92, 96, 203, 208, 230, 232. származtatott osztály, 88. szekvencia-diagram, 160, 163, 164. szekvenciális, 150, 173. szerep, 108. szerepnév, 110, 111, 122. szignál, 151, 162, 184. szignatúra, 86. szinkronizáció, 168, 174. szinkronizációs vonal, 173, 174. szójegyzék, 40. szolgáltató osztály, 200, 201, 203. sztereotípia, 42, 43, 95, 149. szuperállapot, 190. szuperosztály, 127.
T. tagged value, 44. tároló osztály, 111, 116, 139. teljes általánosítás, 128. template, 140. template class, 140. természetesebb jelölések, 16. ternáris asszociáció, 107, 111, 121. tervezés, 10, 17, 21, 27, 29, 31, 32, 88, 93, 99, 113, 117, 120, 126, 147, 157, 182, 203, 214, 215, 217, 219, 228, 230. tervezési minta, 34, 169. tevékenység, 70, 73, 151, 172, 176, 186, 187, 189, 212. tevékenység-állapot, 189. time event, 185. típuskonverzió, 145. több számosságú változat, 133. többalakúság, 204. többszörös osztályozás, 130, 136, 205. törlés továbbítása, 121. transition, 173, 182, 186. túlterhelés, 86. tükör-osztály, 203, 231.
U. újrafelhasználás, 13, 129. unidirectional association, 111. Unified Method, 24, 28. use case, 23, 24, 46, 48. use case diagram, 46. user interface, 74. utility, 109, 147. utófeltétel, 149, 209, 218.
Ü. üzenet, 95, 161, 184, 201, 209, 217, 231. üzenetküldés, 161, 163, 186, 188, 201.
V. vagy-asszociáció, 119. változás-esemény, 185. változtatható, 96, 110. végtelen ciklusú diagram, 187. vezérlésfókusz, 163, 164. vezérlésfolyam, 197. virtuális metódus tábla, 204, 205. viselkedés, 86. visibility, 89. visszafelé hivatkozás, 106, 200. visszatérési érték, 87.
W. whole/part, 121. work-flow diagram, 172.
Z. záróállapot, 176, 186.