• Nie Znaleziono Wyników

tworzenie diagramów klas i sekwencji na podstawie kodu

N/A
N/A
Protected

Academic year: 2021

Share "tworzenie diagramów klas i sekwencji na podstawie kodu "

Copied!
27
0
0

Pełen tekst

(1)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

In Ŝ ynieria odwrotna –

tworzenie diagramów klas i sekwencji na podstawie kodu

ź ródłowego

Podstawy in Ŝ ynierii oprogramowania

Zofia Kruczkiewicz

(2)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

Wybór in Ŝ ynierii odwrotnej – tworzenie diagramów

UML na podstawie kodu ź ródłowego programu

(3)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

(4)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

(5)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

Generowane diagramu klas dla całej aplikacji

(6)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

(7)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

(8)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

Generowanie diagramów sekwencji

(9)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

Tworzenie diagramów sekwencji

(10)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

(11)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

Diagramy sekwencji dla klasy

Uchwyt

(12)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

public void dodaj_tytul(String a, String b, String c, String d, String e)

(13)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

Bez poprawek – po procesie Reverse Engineering

(14)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

public void dodaj_tytul(String a, String b, String c, String d, String e)

{

Tytul_ksiazki tytul_ksiazki=new Tytul_ksiazki();

tytul_ksiazki.setTytul(a);

tytul_ksiazki.setNazwisko(b);

tytul_ksiazki.setImie(c);

tytul_ksiazki.setISBN(d);

tytul_ksiazki.setWydawnictwo(e);

addTytul_ksiazki(tytul_ksiazki);

}

Kod do procesu Reverse Engineering

(15)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

public void addTytul_ksiazki(Tytul_ksiazki tytul_ksiazki) – po procesie Reverse Engineering

public void addTytul_ksiazki(Tytul_ksiazki tytul_ksiazki) {

if (! mTytul_ksiazki.contains(tytul_ksiazki)) mTytul_ksiazki.add(tytul_ksiazki);

}

Kod do procesu Reverse Engineering

(16)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

public void dodaj_ksiazke(String ISBN_, int numer_)

(17)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

public void dodaj_ksiazke(String ISBN_, int numer_) { Tytul_ksiazki pom=new Tytul_ksiazki();

pom.setISBN(ISBN_);

int idx=mTytul_ksiazki.indexOf(pom);

if (idx!=-1) {

Tytul_ksiazki pom1=mTytul_ksiazki.get(idx);

pom1.dodaj_ksiazke(numer_);

System.out.println(pom1.getKsiazka().toString());

}

//linia tymczasowsa

}

Kod do procesu Reverse Engineering

(18)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

Diagramy sekwencji dla klasy

Tytul_ksiazki

(19)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

public boolean equals(Object ob)

(20)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

public boolean equals(Object ob) {

boolean a=ISBN.equals(((Tytul_ksiazki)ob).getISBN());

System.out.println(a); //linia tymczasowa return a;

}

Kod do procesu Reverse Engineering

Bez poprawek – po procesie Reverse Engineering

(21)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

public String toString()

public String toString() {

String pom="Tytul: "+getTytul();

pom+=" Autor:"+getNazwisko() +" "+getImie();

pom+=" ISBN: "+getISBN();

pom+=" Wydawnictwo:„

+getWydawnictwo();

return pom;

}

(22)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

public void dodaj_ksiazke(int numer_)

(23)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

public void dodaj_ksiazke(int numer_) {

Ksiazka nowa= new Ksiazka();

if (nowa != null)

{ nowa.setNumer(numer_);

addKsiazka(nowa);}

}

Bez poprawek – po procesie Reverse Engineering

Kod do procesu Reverse Engineering

(24)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

public void addKsiazka(Ksiazka nowa) {

if (!mKsiazka.contains(nowa)) { mKsiazka.add(nowa);

nowa.setTytul_ksiazki(this); } }

Kod do procesu Reverse Engineering

public void addKsiazka(Ksiazka nowa) – po procesie Reverse Engineering

(25)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

Diagramy sekwencji dla klasy

Ksiazka

(26)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

public String Ksiazka::toString()

(27)

Zofia Kruczkiewicz, Podstawy inŜynierii oprogramowania

Bez poprawek – po procesie Reverse Engineering

public String toString() // your code here {

String pom = mTytul_ksiazki.toString();

pom+=" Numer: "+getNumer();

return pom;

}

Kod do procesu Reverse Engineering

Cytaty

Powiązane dokumenty

public void addTytul_ksiazki(Tytul_ksiazki tytul_ksiazki) – po procesie Reverse Engineering.. Zofia Kruczkiewicz, Podstawy in Ŝ

Wybór inżynierii odwrotnej – tworzenie diagramów UML na podstawie kodu źródłowego programu... Zofia Kruczkiewicz, Podstawy inż

Przedsta- wione w poprzednich pracach autorów [3, 4] wyniki badań dotyczyły analizy wpływu stanu magistrali danych, argu- mentu rozkazu, wyniku operacji, adresu rozkazu w pamięci

Jest jednak kilka istotnych różnic pomiędzy referencją a wskaźnikiem: po pierwsze referencja tuż przy swoim powstaniu musi wiedzieć na co ona będzie referencją, wskaźnik

Na pierwszy rok studiów w roku aka- demickim 2005/2006 przyjêto 365 osób, w tym 128 na jednolite studia magister- skie oraz 149 na studia pierwszego stop- nia (in¿ynierskie), w tym

x W wyniku przeprowadzonych badaĔ dopracowano narzĊdzia oraz zgromadzono dane doĞwiadczalne i obliczeniowe, które bĊdą pomocne przy planowaniu dalszych, teoretycznych i

Spoœród wszystkich analizowanych parametrów wyznaczono trzy parametry najbardziej istotne: modu³ deformacji warstwy II , modu³ deformacji warstwy III oraz k¹t tarcia

Markery mikrosatelitarne wykorzystywane są do analizy zmienności genetycznej w obrębie ras i między rasami, w szacowaniu stopnia zinbredowania po- szczególnych