Unified Modeling Language Ivan Šaškor (za FESB adaptirala Marijana Puljak)
Osnovne teme Kako je nastao UML? Osnovne ideje Glavni dijagrami Dostupni alati Dodatne informacije
Kako je nastao UML?
Kako je nastao UML? Predmetode UML-a Osnivači UML-a Booch-ova OOAD (Object-Oriented Analysis and Design) Jacobson-ova OOSE (Object-Oriented Software Engineering) Rumbaugh-ova OMT (Object Modeling Technique) Osnivači UML-a Grady Booch Ivar Jacobson James Rumbaugh
Nov ‘97 UML approved by the OMG (preuzeto sa www.rational.com) Walk the audience through the timeline. Point out that the UML is the natural successor to the notations. 1. Late ‘80s and early ‘90 - there are many (50+) OO methodologies 2. Among the first generation methodologies, Booch and OMT stood out 3. Around 1993, second generation methodologies came out - Booch ‘93 and OMT-II. Methodologist borrowed good concepts from each others so many concepts were the same across the methodologies, but different notations. 4. Oct. 1994 - Dr. James Rumbaugh joined Rational to unify Booch & OMT. 5. At OOPSLA ‘95, Grady and Jim announced Unified Method 0.8. 6. Use Case technique developed by Dr. Ivar Jacobson was adapted by all methodologies by then. 7. Rational acquires Objectory in fall of ‘95 - Dr. Ivar Jaconson joins Rational. 8. Jun of ‘96 - Rational submits UML 0.9 to OMG. 9. UML gains industry support from HP, Microsoft, Oracle + 16 others 10. UML is the defacto standard for OO and component technologies 11. The final submission goes in Sep. ‘97 - expect the announcement in Dec. (preuzeto sa www.rational.com)
Osnovne ideje ?
Uhvatiti i opisati poslovne procese
Uhvatiti i opisati poslovne procese
Uhvatiti i opisati poslovne procese
Uhvatiti i opisati poslovne procese
Uhvatiti i opisati poslovne procese
Uhvatiti i opisati poslovne procese
Uhvatiti i opisati poslovne procese
Uhvatiti i opisati poslovne procese
Uhvatiti i opisati poslovne procese
Poboljšati komunikaciju
Poboljšati komunikaciju Projektant Programer
Poboljšati komunikaciju Projektant (poslovanje) Programer
Poboljšati komunikaciju Projektant (poslovanje) Programer (tehnologija)
Poboljšati komunikaciju Projektant (poslovanje) Programer (tehnologija)
Poboljšati komunikaciju Projektant (poslovanje) Programer (tehnologija)
Poboljšati komunikaciju ? ? ? ? Projektant (poslovanje) Programer (tehnologija)
Poboljšati komunikaciju Projektant (poslovanje) Programer (tehnologija)
Pomoć u borbi s kompleksnošću
Pomoć u borbi s kompleksnošću
Pomoć u borbi s kompleksnošću
Pomoć u borbi s kompleksnošću
Pomoć u borbi s kompleksnošću
Pomoć u borbi s kompleksnošću
Pomoć u borbi s kompleksnošću
Pomoć u borbi s kompleksnošću
Pomoć u borbi s kompleksnošću
Definirati logičku arhitekturu sustava
Definirati logičku arhitekturu sustava
Definirati logičku arhitekturu sustava
Definirati logičku arhitekturu sustava Korisničko sučelje Visual Basic, Java Poslovna logika C++, Java Baza podataka C++ & SQL
Definirati logičku arhitekturu sustava Korisničko sučelje Visual Basic, Java Poslovna logika C++, Java Baza podataka C++ & SQL
Ponovno korištenje već gotovih komponenti
Ponovno korištenje već gotovih komponenti
Ponovno korištenje već gotovih komponenti
Ponovno korištenje već gotovih komponenti Projekt A
Ponovno korištenje već gotovih komponenti Projekt A Projekt B
Ponovno korištenje već gotovih komponenti Projekt A Projekt B Projekt C
Ponovno korištenje već gotovih komponenti Projekt A Projekt B Projekt C Projekt D
Ponovno korištenje već gotovih komponenti Projekt A Projekt B Projekt C Projekt D
Ponovno korištenje već gotovih komponenti Projekt A Projekt B Projekt C Projekt D
Ponovno korištenje već gotovih komponenti Projekt A Projekt B Projekt C Projekt D
Osnovne ideje Uhvatiti i opisati poslovne procese Poboljšati komunikaciju Pomoći u borbi s kompleksnošću Definirati logičku arhitekturu sustava Omogućiti ponovno korištenje već gotovih komponenti
Glavni dijagrami
Activity Diagram Pokazuje tok iz aktivnosti u aktivnost unutar sustava i bavi se dinamičkim pogledom na sustav. Za razliku od dijagrama toka može podržavati i paralelno ponašanje. Moguće upotrebe: prije početka projekta, za modeliranje najvažnijih business workfolow-a, za vrijeme faze specifikacije zahtjeva, za detaljnije pojašnjavanje tijeka aktivnosti u use case-vima, za vrijeme analize i dizajna, kao pomoć pri definiranju ponašanja pojedinih operacija.
Provjera podataka o članu Activity Diagram Provjera podataka o članu
Provjera podataka o članu
Provjera podataka o članu Izdavanje kazeta
Provjera podataka o članu Izdavanje kazeta Povrat kazeta
Provjera podataka o članu Izdavanje kazeta Povrat kazeta Naplata računa
Provjera podataka o članu Izdavanje kazeta Povrat kazeta Naplata računa
Provjera podataka o članu Izdavanje kazeta Povrat kazeta Naplata računa
Provjera podataka o članu Izdavanje kazeta Povrat kazeta Naplata računa
Provjera podataka o članu Izdavanje kazeta Povrat kazeta [Nema računa] [Ima računa] Naplata računa
Provjera podataka o članu Izdavanje kazeta Povrat kazeta [Nema računa] [Ima računa] Naplata računa
Provjera podataka o članu Izdavanje kazeta Povrat kazeta [Nema računa] [Ima računa] Naplata računa
Provjera podataka o članu Služba korisnika Financijska služba Provjera podataka o članu Izdavanje kazeta Povrat kazeta [Ima računa] [Nema računa] Naplata računa
Use Case Diagram
Use Case Diagram Radnik u videoteci
Radnik u videoteci
Član Radnik u videoteci
Član Radnik u videoteci Centralni sistem
Član Radnik u videoteci Obrada rezervacije Centralni sistem Obrada člana
Pregled ponude Član Rezervacija filma Radnik u videoteci Obrada rezervacije Centralni sistem Obrada člana
Pregled ponude Član Rezervacija filma Radnik u videoteci Obrada rezervacije Centralni sistem Obrada člana Provjera stanja
Pregled ponude Član Rezervacija filma Rezervacije Radnik u videoteci Obrada rezervacije Centralni sistem Obrada člana Provjera stanja
Sequence Diagram
Sequence Diagram Karla:Radnik u videoteci
Karla:Radnik u videoteci
Karla:Radnik u videoteci Sučelje PR: Sučelje prema radniku
Karla:Radnik u videoteci Sučelje PR: Sučelje prema radniku Knjiga Č: Knjiga članova
Karla:Radnik u videoteci Sučelje PR: Sučelje prema radniku Knjiga Č: Knjiga članova
Registriraj izdavanje kazete Karla:Radnik u videoteci Sučelje PR: Sučelje prema radniku Knjiga Č: Knjiga članova Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’)
Registriraj izdavanje kazete Karla:Radnik u videoteci Sučelje PR: Sučelje prema radniku Knjiga Č: Knjiga članova Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Da li postoji član (154, ‘Marko Breljak’)
Registriraj izdavanje kazete Karla:Radnik u videoteci Sučelje PR: Sučelje prema radniku Knjiga Č: Knjiga članova Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Da li postoji član (154, ‘Marko Breljak’) Otvori karton člana (154)
Registriraj izdavanje kazete Karla:Radnik u videoteci Sučelje PR: Sučelje prema radniku Knjiga Č: Knjiga članova Karton Č (154): Karton člana Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Da li postoji član (154, ‘Marko Breljak’) Otvori karton člana (154) Pripremi podatke
Registriraj izdavanje kazete Karla:Radnik u videoteci Sučelje PR: Sučelje prema radniku Knjiga Č: Knjiga članova Karton Č (154): Karton člana Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Da li postoji član (154, ‘Marko Breljak’) Otvori karton člana (154) Pripremi podatke
Registriraj izdavanje kazete Registriraj izdavanje kazete (57) Karla:Radnik u videoteci Sučelje PR: Sučelje prema radniku Knjiga Č: Knjiga članova Karton Č (154): Karton člana Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Da li postoji član (154, ‘Marko Breljak’) Otvori karton člana (154) Pripremi podatke Registriraj izdavanje kazete (57)
Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Karla:Radnik u videoteci Sučelje PR: Sučelje prema radniku Knjiga Č: Knjiga članova Karton Č (154): Karton člana Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Da li postoji član (154, ‘Marko Breljak’) Otvori karton člana (154) Pripremi podatke Registriraj izdavanje kazete (57) Izdavanje kazete uspješno registrirano
Collaboration Diagram
Collaboration Diagram Karla:Radnik u videoteci
Karla:Radnik u videoteci
Karla:Radnik u videoteci Sučelje PR: Sučelje prema radniku Knjiga Č: Knjiga članova Karton Č (154): Karton člana
Karla:Radnik u videoteci Sučelje PR: Sučelje prema radniku Knjiga Č: Knjiga članova Karton Č (154): Karton člana
1: Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Karla:Radnik u videoteci 1: Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Sučelje PR: Sučelje prema radniku Knjiga Č: Knjiga članova Karton Č (154): Karton člana
1: Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Karla:Radnik u videoteci 1: Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Sučelje PR: Sučelje prema radniku 2: Da li postoji član (154, ‘Marko Breljak’) Knjiga Č: Knjiga članova Karton Č (154): Karton člana
1: Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Karla:Radnik u videoteci 1: Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Sučelje PR: Sučelje prema radniku 2: Da li postoji član (154, ‘Marko Breljak’) 3: Otvori karton člana (154) Knjiga Č: Knjiga članova Karton Č (154): Karton člana
1: Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Karla:Radnik u videoteci 1: Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Sučelje PR: Sučelje prema radniku 2: Da li postoji član (154, ‘Marko Breljak’) 3: Otvori karton člana (154) Knjiga Č: Knjiga članova 4: Pripremi podatke Karton Č (154): Karton člana
1: Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Karla:Radnik u videoteci 1: Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Sučelje PR: Sučelje prema radniku 2: Da li postoji član (154, ‘Marko Breljak’) 5: Registriraj izdavanje kazete (57) 3: Otvori karton člana (154) Knjiga Č: Knjiga članova 4: Pripremi podatke Karton Č (154): Karton člana
1: Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Karla:Radnik u videoteci 1: Registriraj izdavanje kazete (57, 154, ‘Marko Breljak’) Sučelje PR: Sučelje prema radniku 6: Izdavanje kazete uspješno registrirano 2: Da li postoji član (154, ‘Marko Breljak’) 5: Registriraj izdavanje kazete (57) 3: Otvori karton člana (154) Knjiga Č: Knjiga članova 4: Pripremi podatke Karton Č (154): Karton člana
Class Diagram
Class Diagram (II) Naglasak na nasljeđivanju (I) Naglasak na komunikaciji (II) Naglasak na nasljeđivanju
Class Diagram (I)
Class Diagram (I) Sučelje prema radniku
Sučelje prema radniku
Knjiga članova Sučelje prema radniku Karton člana
Knjiga članova Sučelje prema radniku Karton člana
Knjiga članova Sučelje prema radniku Karton člana
Knjiga članova Sučelje prema radniku Registriraj izdavanje kazete() Karton člana
Knjiga članova Da li postoji član () Otvori karton člana () Sučelje prema radniku Registriraj izdavanje kazete() Karton člana
Knjiga članova Da li postoji član () Otvori karton člana () Sučelje prema radniku Registriraj izdavanje kazete() Karton člana Pripremi podatke() Registriraj izdavanje kazete()
Knjiga članova Da li postoji član () Otvori karton člana () Sučelje prema radniku Registriraj izdavanje kazete() Karton člana Ime Prezime Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Knjiga članova Broj članova Da li postoji član () Otvori karton člana () Sučelje prema radniku Registriraj izdavanje kazete() Karton člana Ime Prezime Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Knjiga članova Broj članova Da li postoji član () Otvori karton člana () Sučelje prema radniku Aktivni radnik Odabrani član Registriraj izdavanje kazete() Karton člana Ime Prezime Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Knjiga članova Broj članova Da li postoji član () Otvori karton člana () Sučelje prema radniku Aktivni radnik Odabrani član Registriraj izdavanje kazete() Karton člana Ime Prezime Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
1 1 Knjiga članova Sučelje prema radniku Broj članova Aktivni radnik Da li postoji član () Otvori karton člana () Sučelje prema radniku Aktivni radnik Odabrani član Registriraj izdavanje kazete() 1 1 Karton člana Ime Prezime Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
1 1 1 1 Knjiga članova Sučelje prema radniku Broj članova Da li postoji član () Otvori karton člana () Sučelje prema radniku Aktivni radnik Odabrani član Registriraj izdavanje kazete() 1 1 1 Karton člana Ime Prezime Ulica i broj Pripremi podatke() Registriraj izdavanje kazete() 1
1 1 1 1 0..* 1 Knjiga članova Sučelje prema radniku Broj članova Da li postoji član () Otvori karton člana () Sučelje prema radniku Aktivni radnik Odabrani član Registriraj izdavanje kazete() 1 1 1 1 0..* Karton člana Ime Prezime Ulica i broj Pripremi podatke() Registriraj izdavanje kazete() 1
Class Diagram (II)
Class Diagram (II) Karton člana Ime Prezime Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Karton člana Ime Prezime Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Karton člana Naziv Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Član – Fizička osoba Karton člana Naziv Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Član – Fizička osoba Član – Pravna osoba Karton člana Naziv Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Član – Fizička osoba Ime Prezime Ulica i broj Član – Pravna osoba Karton člana Naziv Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Član – Fizička osoba Ime Prezime Ulica i broj Član – Pravna osoba Tvrtka Sjedište (ulica i broj) Kontakt osoba Karton člana Naziv Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Član – Fizička osoba Ime Prezime Ulica i broj Član – Pravna osoba Tvrtka Sjedište (ulica i broj) Kontakt osoba Karton člana Naziv Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Član – Fizička osoba Ime Prezime Ulica i broj Član – Pravna osoba Tvrtka Sjedište (ulica i broj) Kontakt osoba Karton člana Naziv Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Član – Fizička osoba Ime Prezime Ulica i broj Član – Pravna osoba Tvrtka Sjedište (ulica i broj) Kontakt osoba Prelazak na mjesečnu naplatu() Karton člana Naziv Ulica i broj Pripremi podatke() Registriraj izdavanje kazete()
Član – Fizička osoba Ime Prezime Ulica i broj Član – Pravna osoba Tvrtka Sjedište (ulica i broj) Kontakt osoba Prelazak na mjesečnu naplatu() Karton medija za najam Broj Naziv filma Glavni glumac Pripremi podatke() Karton člana Naziv Ulica i broj Pripremi podatke() Registriraj izdavanje kazete() Medij - Kazeta Medij - DVD
Član – Fizička osoba Ime Prezime Ulica i broj Član – Pravna osoba Tvrtka Sjedište (ulica i broj) Kontakt osoba Prelazak na mjesečnu naplatu() Karton medija za najam Broj Naziv filma Glavni glumac Pripremi podatke() Karton člana Naziv Ulica i broj Pripremi podatke() Registriraj izdavanje kazete() Medij - Kazeta Kvaliteta snimka Medij - DVD Jezici sinhronizacije Jezici titla
Član – Fizička osoba Ime Prezime Ulica i broj Član – Pravna osoba Tvrtka Sjedište (ulica i broj) Kontakt osoba Prelazak na mjesečnu naplatu() Karton medija za najam Broj Naziv filma Glavni glumac Pripremi podatke() Karton člana Naziv Ulica i broj Pripremi podatke() Registriraj izdavanje kazete() Medij - Kazeta Kvaliteta snimka Prijava uništenje trake() Prijava popravka() Medij - DVD Jezici sinhronizacije Jezici titla
State transition Diagram
State transition Diagram Inicijalizacija
Inicijalizacija
Inicijalizacija Kazeta dostupna
Inicijalizacija Kazeta dostupna Kazeta iznajmljena
Inicijalizacija Kazeta dostupna Kazeta iznajmljena
Inicijalizacija Kazeta dostupna Kazeta iznajmljena
Inicijalizacija Kazeta dostupna Kazeta iznajmljena
Iznajmljivanje kazete Inicijalizacija Kazeta dostupna Iznajmljivanje kazete Kazeta iznajmljena
Iznajmljivanje kazete Povrat kazete Inicijalizacija Kazeta dostupna Iznajmljivanje kazete Povrat kazete Kazeta iznajmljena
Iznajmljivanje kazete Povrat kazete Inicijalizacija Kazeta na popravku Kazeta dostupna Iznajmljivanje kazete Povrat kazete Kazeta iznajmljena
Iznajmljivanje kazete Povrat kazete Inicijalizacija Kazeta na popravku Ide na popravak Kazeta dostupna Iznajmljivanje kazete Povrat kazete Kazeta iznajmljena
Iznajmljivanje kazete Povrat kazete Inicijalizacija Kazeta na popravku Ide na popravak Kazeta dostupna Kazeta popravljena Iznajmljivanje kazete Povrat kazete Kazeta iznajmljena
Iznajmljivanje kazete Povrat kazete Inicijalizacija Kazeta na popravku Ide na popravak Kazeta dostupna Kazeta popravljena Iznajmljivanje kazete Povrat kazete Kazeta iznajmljena
Iznajmljivanje kazete Povrat kazete Kazeta uništena Inicijalizacija Kazeta na popravku Ide na popravak Kazeta dostupna Kazeta popravljena Iznajmljivanje kazete Povrat kazete Kazeta uništena Kazeta iznajmljena
Iznajmljivanje kazete Povrat kazete Kazeta uništena Inicijalizacija Kazeta na popravku Ide na popravak Kazeta dostupna Kazeta popravljena Kazeta ukradena Iznajmljivanje kazete Povrat kazete Kazeta uništena Kazeta iznajmljena
Iznajmljivanje kazete Povrat kazete Kazeta uništena Inicijalizacija Kazeta na popravku Ide na popravak Kazeta dostupna Kazeta popravljena Kazeta ukradena Iznajmljivanje kazete Povrat kazete Kazeta uništena Kazeta iznajmljena Kazeta ukradena
Iznajmljivanje kazete Povrat kazete Kazeta uništena Inicijalizacija Kazeta u opticaju Kazeta na popravku Ide na popravak Kazeta dostupna Kazeta popravljena Iznajmljivanje kazete Povrat kazete Kazeta uništena Kazeta iznajmljena Kazeta ukradena
Iznajmljivanje kazete Povrat kazete Kazeta uništena Inicijalizacija DO: Postavi podatke o kazeti Kazeta u opticaju Kazeta na popravku Ide na popravak Kazeta dostupna Kazeta popravljena Iznajmljivanje kazete Povrat kazete Kazeta uništena Kazeta iznajmljena Kazeta ukradena
Iznajmljivanje kazete Povrat kazete Kazeta uništena Inicijalizacija DO: Postavi podatke o kazeti Kazeta u opticaju Kazeta na popravku Ide na popravak Kazeta dostupna ENTRY: Prijava kazete u popis dostupnih kazeta EXIT: Odjava kazete iz popisa Kazeta popravljena Iznajmljivanje kazete Povrat kazete Kazeta uništena Kazeta iznajmljena Kazeta ukradena
Iznajmljivanje kazete Povrat kazete Kazeta uništena Inicijalizacija DO: Postavi podatke o kazeti Kazeta u opticaju Kazeta na popravku Otišla na popravak Kazeta dostupna ENTRY: Prijava kazete u popis dostupnih kazeta EXIT: Odjava kazete iz popisa Kazeta popravljena Iznajmljivanje kazete Povrat kazete Kazeta uništena Kazeta iznajmljena DO: Provjera isteka roka najma EXIT: Proračunavanje cijene posudbe Kazeta ukradena
Component Diagram
Component Diagram karton_clana.cls
karton_clana.cls
knjiga_clanova.cls karton_clana.cls
knjiga_clanova.cls karton_clana.cls
clanovi.dll knjiga_clanova.cls karton_clana.cls
clanovi.dll knjiga_clanova.cls karton_clana.cls
clanovi.dll knjiga_clanova.cls karton_clana.cls
video.exe clanovi.dll knjiga_clanova.cls karton_clana.cls
video.exe clanovi.dll knjiga_clanova.cls karton_clana.cls
video.exe clanovi.dll knjiga_clanova.cls karton_clana.cls
video.exe clanovi.dll backup.exe knjiga_clanova.cls karton_clana.cls
video.exe clanovi.dll backup.exe knjiga_clanova.cls karton_clana.cls
Deployment Diagram
Deployment Diagram Kasa
Kasa
Pretraživanje filmova 1 Kasa
Pretraživanje filmova 2 Pretraživanje filmova 1 Kasa
Pretraživanje filmova 2 Pretraživanje filmova 1 Lokalni server Kasa
Pretraživanje filmova 2 Pretraživanje filmova 1 Lokalni server Kasa
Pretraživanje filmova 2 Pretraživanje filmova 1 Lokalni server Kasa
Pretraživanje filmova 2 Pretraživanje filmova 1 Lokalni server Kasa
Pretraživanje filmova 2 Pretraživanje filmova 1 Centrala Pretraživanje filmova 1 Lokalni server Kasa
Pretraživanje filmova 2 Pretraživanje filmova 1 Centrala Pretraživanje filmova 1 Lokalni server Kasa
Glavni dijagrami Activity Diagram Use Case Diagram Sequence Diagram Collaboration Diagram Class Diagram (I i II) State transition Diagram Component diagram Deployment diagram
Alati
Rational Rose
Ostali alati Microsoft Visio System Architect Describe Enterprise ...
Dodatne informacije
Internet www.rational.com/uml www.omg.org www.uml.org www.rational.com/products/rose www.sdmagazine.com
Knjige Adison Wesley Object Technology Series (www.aw.com) UML Distilled, Martin Fowler
Key notes
Osnivači UML-a Grady Booch Ivar Jacobson James Rumbaugh
Nov ‘97 UML approved by the OMG (preuzeto sa www.rational.com) Walk the audience through the timeline. Point out that the UML is the natural successor to the notations. 1. Late ‘80s and early ‘90 - there are many (50+) OO methodologies 2. Among the first generation methodologies, Booch and OMT stood out 3. Around 1993, second generation methodologies came out - Booch ‘93 and OMT-II. Methodologist borrowed good concepts from each others so many concepts were the same across the methodologies, but different notations. 4. Oct. 1994 - Dr. James Rumbaugh joined Rational to unify Booch & OMT. 5. At OOPSLA ‘95, Grady and Jim announced Unified Method 0.8. 6. Use Case technique developed by Dr. Ivar Jacobson was adapted by all methodologies by then. 7. Rational acquires Objectory in fall of ‘95 - Dr. Ivar Jaconson joins Rational. 8. Jun of ‘96 - Rational submits UML 0.9 to OMG. 9. UML gains industry support from HP, Microsoft, Oracle + 16 others 10. UML is the defacto standard for OO and component technologies 11. The final submission goes in Sep. ‘97 - expect the announcement in Dec. (preuzeto sa www.rational.com)
Osnovne ideje Uhvatiti i opisati poslovne procese Poboljšati komunikaciju Pomoći u borbi s kompleksnošću Definirati logičku arhitekturu sustava Omogućiti ponovno korištenje već gotovih komponenti
Glavni dijagrami Activity Diagram Use Case Diagram Sequence Diagram Collaboration Diagram Class Diagram (I i II) State transition Diagram Component diagram Deployment diagram