Zastosowania wzorców analizy
Transkrypt
Zastosowania wzorców analizy
Zastosowania wzorców analizy Anna Bobkowska 1. 2. 3. 4. Wzorce analizy M.Fowlera Wzorce analizy z konferencji PLoP Różnorodność wzorców analizy Zastosowanie wzorców analizy elowania d o w analizie systemów M z u d G. do wykła le ETI P ocnicze ia m z o d p y ły W ia ładzie. k ów na Mater y m w e t a s n y i S i Analizy obecnośc elu oraz ich je u p ę t s a nie za innym c Ich lektur nie materiałów w nione. o r b a a t z s t y s z Wykor hnianie je c e z s w o rozp Wzorce analizy • Wzorzec – powtarzalny problem i jego uniwersalne rozwiązanie • Analiza – głównie modele obiektowe… • Cel zastosowania: redukcja kosztów i czasu, podniesienie jakości • Opis Fowlera – rozwiązanie, które było użyteczne w jakimś praktycznym kontekście, może być też przydatne w innych • PLoP – uniwersalne szablony, uniwersalne rozwiązania, niezależne od dziedziny zastosowania • Terminologia na wyższym poziomie abstrakcji - analogia do wzorców projektowych Planning [Fowler] > protokoły Planning - 2 > szczegóły dla zasobów zużywalnych i niezużywalnych Observation and measurement [Fowler] > jednostki złożone Observation and measurement - 2 > podwójny zapis czasu > rodzaje obserwacji Trading [Fowler] Kontrakt Portfolio Wycena Scenariusz Grupy wzorców Fowlera • Odpowiedzialność (ang. Accountability) • Obserwacje i pomiary (ang. Observations and Measurements) • Inwentarz i księgowość (ang. Inventory and Accounting) • Planowanie (ang. Planning) • Handel (ang. Trading) Zalety i wady wzorców Fowlera + powstały w oparciu o doświadczenia w rzeczywistych projektach + precyzja, szczegóły - inna notacja niż UML (na stronie martinfowler.com niektóre diagramy są w UML) - opis tekstowy (brak stosowania szablonu) - wiele powiązanych diagramów Repair [PLoP E.Fernandez,X. Yuan] Repair -2 Some aspects not represented in the pattern are: • Description of contextual and environmental aspects of the broken entity • Billing and payment policies • How to deal with varieties of customers, e.g., individual, corporate, preferred • Exceptions, e.g., bringing back the repaired entity (repair not satisfactory) • How to order parts when the parts required to repair the broken entity are not available • How to keep track of the parts in stock • How to queue up customer requests when no free technicians are available • How to ship the repaired entity to the customer when shipping is required • The customer makes an appointment with the repair technician to bring in the broken entity, or an appointment for the repair technician to come to the house (or other location) where repair is needed Negotiations [PLoP H.Hamza, M.Fayad] Negotiations - 2 EBTs – enduring business themes BOs – business objects IOs – industrial objects ea c tra ty f i o ir a eral ite gen r C d an ity l i b Lista wzorców z PLOP • Order and Shipment of a Product - PLoP 2000 • Temporal and Time Patterns - PLoP 1998 • Reservation and Use of Reusable Entities PLoP 1999 • Inventories - PLoP 2000 • Recurring Fulfilments - PLoP 2000 • Repair of an entity - PLoP 2001 • Negotiation - PLoP 2004 • … Zalety i wady wzorców z PLoP + zapisane według szablonu +ograniczony zakres i krytyczna analiza (aspekty, których nie pokrywają; powiązania z innymi wzorcami) - proste, trywialne - często brak danych o zastosowaniu - czasami ‘nieintuicyjne’ rozwiązanie, brak uwzględnienia niektórych istotnych aspektów Różnorodność/Jakość/Przydatność wzorców analizy • • • • • • Zakres (1-20 klas) Poziom precyzji (Fowler -PLoP) Jakość opisu (szablon, diagramy, aspekty) Powszechność dziedziny (planowanie -handel) Podobieństwo projektów (księgowość - CRM) Zależność od kontekstu (kontekst odkrycia – kontekst zastosowania) • Aktualność wzorców (związana z ewolucją systemów) Zastosowanie wzorców analizy – analogia do ‘reuse’ problems objectives context FOR REUSE WITH REUSE domain analysis requirements Creation and collection of analysis patterns Software development storage application Repository of analysis patterns Wzorce analizy w analizie systemów – szkic metody Prepare Vision [change vision request] [first approach] [new part of problem to explore] elaborate draft models acquire pattern improve vision [no patterns] [patterns found] Customisation – specialisation, simplification, enhancement, replacement, relation to other elements etc. elaborate models evaluate applicability [no application] [possible application] customise to the problem ? ? ? e izy dzini l a n e e a ej dzi c r o n Wz nkret o wk Integrate with model [more areas to elaborate] [model completed] Validate the model Powiązanie z innymi technikami analizy i inżynierii wymagań • Wywiady z klientem/ użytkownikami w celu pozyskania wymagań • Poznawanie organizacji: modelowanie procesów biznesowych, obserwacje pracowników, studiowanie dokumentów • Analiza istniejących i podobnych systemów • Analiza z zakresu strategii informatyzacji • … Anty-wzorce związane z fazą analizy • • • • • Szczątkowe specyfikacje (ang. napking specifications) Wymagania na telefon (ang. phony requirements) Ukryte wymagania (ang. Hidden requirements) Wiedza plemienia Specyfikacje po zakodowaniu (ang.Retro-specifications) • Zamrożenie w fazie analizy (ang. Analysis Paralysis) • Projekt-drukarnia Literatura • Fower M., Analysis Patterns: Reusable Object Models, Addison-Wesley, 1997. • Wzorce analizy w UML http://martinfowler.com • Pattern Languages of Programs (PLOP), http://hillside.net/