Sunteți pe pagina 1din 10

Introducere in tehnici de dezvoltare software si UML

Ce este UML Istoricul UML Terminologia OO Abordarea OO, abordarea profesionala

Made by Anton DUCA

UML (Unified Modeling Language)


UML este un limbaj grafic de modelare care pune la dispozitie (furnizeaza) o sintaxa pentru descrierea elementelor de baza folosite la dezvoltarea aplicatiilor (sistemelor) sofware. UML este inclinat catre dezvoltarea de aplicatii software care sunt OO (Orientate Obiect).

Made by Anton DUCA

Alte industrii alte notatii


MATEMATICA Modul CHIMIE Benzen C6H6 MUZICA Portativ cu note

|| x ||

Made by Anton DUCA

Istoric (1)
La inceputul anilor 90: BOOCH limbaj pentru design si implementare OO, Grady Booch (lucra intensiv cu limbajul Ada) OMT (Object Modelling Technique) pentru analiza si sisteme data-intensive, Jim Rumbauch (General Electric) OOSE (Object Oriented Software Engineering) a introdus diagramele de utilizare (Use cases), Ivar Jacobson 1994 UM (Unified Method) unirea ideilor de baza ale BOOCH / UMT, G. Booch si J. Rumbauch (Rational Corp.) 1995 UML I. Jacobson se alatura Rational Corp., este incorporata ideea de Use cases in noul limbaj de modelare
Made by Anton DUCA

Istoric (2)
1997 UML este adoptat de OMG, devenind un limbaj public si non-propietary OMG (Object Management Group) www.omg.org un consortiu de corporatii care include Oracle, Microsoft, Hewlett-Packard, etc. Actualmente UML este dezvoltat si intretinut de catre OMG.

Made by Anton DUCA

Abordarea Orienta Obiect (1)


principalul avantaj => modeleaza lumea reala modul de gandire este diferit de cel din abordarea structurala combina date (ATRIBUTE) si functii (METODE) in acelasi modul (CLASA) => simplificand modalitatea de rezolvare a problemei un program (o functie) poate crea instante ale unei clase, sub forma de (cunoscute sub denumirea de) OBIECTE

Made by Anton DUCA

Abordarea Orienta Obiect (2)


incapsularea datelor numai anumite instante/obiecte (cele care detin datele) pot avea acces la ele (private) obiectele pot colabora intre ele; prin apelarea metodei unui obiect de catre alt obiect principalul dezavantaj => nu exprima clar comportamentul intregului sistem (aplicatii) software

Made by Anton DUCA

Terminologie OO: exemplu


import java.util.*; public class Lista <T extends Number> { T [] elemente; int numarCurentElemente = 0; Lista(Class<T> _T, int n) { elemente = (T []) java.lang.reflect.Array.newInstance(_T, n); } void adaugaElement(T element) { elemente[numarCurentElemente] = element; numarCurentElemente ++; } void afiseaza() { for(T t : elemente) { //for(int i=0; i<elemente.length;i++) System.out.println(t); // System.out.println(elemente[i]) } } public static void main(String [] args) { Lista<Integer> li = new Lista<Integer>(Integer.class, 2); li.adaugaElement(new Integer(0)); li.adaugaElement(new Integer(2)); li.afiseaza(); } }

Made by Anton DUCA

Abordarea profesionala
sprijina si propune utilizarea UML si uitarea de obiecte / clase (abordarea OO) in fazele incipiente ale dezvoltarii proiectului recomanda ca in fazele initiale proiectul sa se concentreze pe ceea ce trebuie sa realizeze sistemul (functionalitatea aplicatiei) obiectele / clasele vor fi introduse si construite gradual (pe masura ce proiectul avanseaza) pentru a realiza cerintele de functionalitate impuse sistemului

Made by Anton DUCA

Exemplu: diagrama de clase

Made by Anton DUCA

S-ar putea să vă placă și