L4: Aspects in Analysis and Design: Theme and JPDD
Preber si túto prednášku so svojou AI
Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.
Zhrnutie prednášky
Prednáška sa zaoberá aspektovo orientovanou analýzou a návrhom, teda tým, ako už vo fáze špecifikácie požiadaviek identifikovať budúce aspekty. Na príklade bezpečnostného systému s alarmami a senzormi ukazuje, že väčšina požiadaviek je samostatných, no požiadavka R8 o vynechaní alarmov napojených na špeciálne senzory pri vypínaní systému odkazuje na viaceré ďalšie požiadavky. Z požiadaviek sa extrahujú témy (themes), ktoré tvoria sieť súvislostí a odhaľujú štruktúru budúceho systému; takúto sieť možno generovať aj automaticky nástrojmi spracovania prirodzeného jazyka. Každej téme sa priradí zodpovednosť za konkrétnu požiadavku a téma zodpovedná za R8 svoje dôsledky vnucuje ostatným témam, čo zodpovedá aspektu, ktorý by sa v AspectJ implementoval ako samostatný aspekt.
- - Pri rozsiahlych systémoch je potrebné modelovať a komunikovať rozhodnutia, nielen programovať.
- - Požiadavky sa zbierajú aj ako jednoduché textové výroky od klienta; niektoré sú samostatné, iné závisia od ďalších.
- - Z požiadaviek sa extrahujú témy (themes), ktoré sa prejavujú v celej špecifikácii a odhaľujú budúcu štruktúru systému.
- - Vzťahy medzi požiadavkami sa vyjadrujú cez ich prepojenie na témy, nie priamo medzi požiadavkami.
- - Extrakciu tém možno automatizovať nástrojmi spracovania prirodzeného jazyka.
- - Každá téma preberá zodpovednosť za implementáciu určitej požiadavky; požiadavka R8 sa vnucuje ostatným témam.
- - Téma „vylúčiť alarmy pripojené k špeciálnym senzorom“ sa v AspectJ implementuje ako aspekt.
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky