Przykład 1 Iteracja 2 tworzenia oprogramowania Diagramy klas i sekwencji:

Podobne dokumenty
Instrukcja 1 Laboratorium 1 Zapoznanie się z wybranym narzędziem UML wprowadzenie do UML

Instrukcja 1 Laboratorium 1 Zapoznanie się z wybranym narzędziem UML wprowadzenie do UML

Przykład 1 Iteracja 1 tworzenia oprogramowania

Diagram stanów Laboratorium 9

Laboratorium 8 Diagramy aktywności

Instrukcja 1 Laboratorium 1 Zapoznanie się z wybranym narzędziem UML wprowadzenie do UML

Instrukcja 3 Laboratorium z Podstaw Inżynierii Oprogramowania

Laboratorium z przedmiotu: Inżynieria Oprogramowania INP002017_ Laboratorium 11 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 7

Diagramy klas i sekwencji Wykład5

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 6

Instrukcja 2 Laboratorium z Podstaw Inżynierii Oprogramowania

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Laboratorium 10 Testy jednostkowe z użyciem narzędzia JUnit

Laboratorium 2_3_4 Wzorce oprogramowania zastosowane w modelu obiektowym (wg Alan Shalloway, James R.Trott)

Wykorzystywanie parsera DOM w programach Java i PL/SQL

Instrukcja 5 Laboratorium z Podstaw Inżynierii Oprogramowania. Warstwy integracji z bazą danych: Wzorzec DAO Technologia ORM

Pętle while, for, do while, instrukcje break, continue, switch 1. Pętle

Diagramy czynności Na podstawie UML 2.0 Tutorial

Iteracyjno-rozwojowy cykl oprogramowania cykl 2. Java Zofia Kruczkiewicz 1

Instrukcja 4 Laboratorium z Podstaw Inżynierii Oprogramowania. Warstwa klienta: Interfejs graficzny użytkownika

Programowanie obiektowe i zdarzeniowe

Diagramy maszyn stanowych, wzorce projektowe Wykład 5 część 1

Diagramy stanów tworzenie modeli analizy i projektowania Na podstawie UML 2.0 Tutorial

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

Diagramy maszyn stanowych, wzorce projektowe Wykład 5 część 1

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Języki i metody programowania Java INF302W Wykład 2 (część 1)

Metryki. Przykłady pomiaru złożoności modułowej i międzymodułowej oprogramowania. autor: Zofia Kruczkiewicz

Wykład 4_2 część druga. Iteracyjno-rozwojowy cykl oprogramowania 4

Przykład zastosowania notacji UML dla realizacji zastosowania wzorca Mediator (materiały dla studentów na prawach rękopisu)

Java: interfejsy i klasy wewnętrzne

Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse

Wykład 2 Wybrane konstrukcje obiektowych języków programowania (1)

Metody Metody, parametry, zwracanie wartości

Java Programowanie Obiektowe Ćwiczenie 1- wprowadzenie

Diagramy klas, diagramy sekwencji

Kompozycja i dziedziczenie klas

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej

Tworzenie aplikacji w języku Java

Katalog książek cz. 2

JAVA W SUPER EXPRESOWEJ PIGUŁCE

Programowanie obiektowe

import java.util.*; public class ListExample { public static void main(string args[]) { List<String> lista1= new ArrayList<String> ();

Dzisiejszy wykład. Wzorce projektowe. Visitor Client-Server Factory Singleton

Podejście obiektowe. Tablice obiektów Przykład 1 metody i atrybuty statyczne oraz niestatyczne

Lista dwukierunkowa - przykład implementacji destruktorów

Polimorfizm, metody wirtualne i klasy abstrakcyjne

Podejście obiektowe. Tablice (1) obiektów

Projekt INP Instrukcja 1. Autor Dr inż. Zofia Kruczkiewicz

Remote Method Invocation 17 listopada rozproszonych. Dariusz Wawrzyniak (IIPP) 1

Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1

Zaawansowane aplikacje WWW - laboratorium

Wprowadzenie do laboratorium. Zasady obowiązujące na zajęciach. Wprowadzenie do narzędzi wykorzystywanych podczas laboratorium.

public enum Environment { Development("Deweloperskie"), Test("Testowe"), Production("Produkcyjne"); private String name;

Laboratorium z przedmiotu: Inżynieria Oprogramowania INP

Singleton. Cel: Przykład: Zastosowanie: Zapewnienie, że klasa ma tylko jedną instancję i dostarczenie globalnego dostępu do niej.

Programowanie obiektowe

Wywoływanie metod zdalnych

Podstawy i języki programowania

Programowanie obiektowe

Wstęp. Ale po co? Implementacja

Opis zagadnieo 1-3. Iteracja, rekurencja i ich realizacja

Tworzenie aplikacji w języku Java

Programowanie obiektowe

Instrukcja 1 Laboratorium z Podstaw Inżynierii Oprogramowania. Relacja 1 do 1..0 instrukcja z lab1

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Akademia ETI. Wprowadzenie do programowania w Javie PG Java User Group Przemysław Kulesza

Wykład 4: Klasy i Metody

Remote Method Invocation 17 listopada 2010

Remote Method Invocation 17 listopada Dariusz Wawrzyniak (IIPP) 1

Podstawy programowania obiektowego

Podejście obiektowe do budowy systemów rozproszonych

Wątki. Definiowanie wątków jako klas potomnych Thread. Nadpisanie metody run().

1. Czynności przygotowujące aplikację działającą na platformie Java SE Biblioteka5 (należy ją pobrać z załącznika z p.1)

Od wymagań do Javy w mgnieniu oka

Iteracyjno-rozwojowy cykl oprogramowania 4

Podstawy programowania obiektowego

Diagramy czynności tworzenie modelu przypadków użycia Wykład 2

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 5

Modelowanie obiektowe

Microsoft IT Academy kurs programowania

Wywoływanie metod zdalnych

Abstract Factory (fabryka abstrakcyjna)

dr inż. Piotr Czapiewski Tworzenie aplikacji w języku Java Laboratorium 1

Programowanie i projektowanie obiektowe

11.6 Klasa do obsługi liczb wymiernych

Dawid Gierszewski Adam Hanasko

Projektowanie obiektowe. dr Jarosław Skaruz

Kiedy potrzebne. Struktura (rekord) Struktura w języku C# Tablice struktur. struktura, kolekcja

PROGRAMOWANIE W ŚRODOWISKU FLASH wykład 2

Koncepcja, projekt i implementacja wielowarstwowego systemu informatycznego Inżynieria oprogramowania Zofia Kruczkiewicz

Zofia Kruczkiewicz, Programowanie obiektowe - java, wykład 2 1

Klasy i obiekty cz II

Projektowanie obiektowe oprogramowania Wykład 4 wzorce projektowe cz.i. wzorce podstawowe i kreacyjne Wiktor Zychla 2015

Języki i metody programowania Java Lab1 Zofia Kruczkiewicz

Programowanie obiektowe

Programowanie obiektowe

Kurs programowania. Wykład 13. Wojciech Macyna. 14 czerwiec 2017

Instrukcja 1 Laboratorium z Podstaw Inżynierii Oprogramowania. Relacja 1 do 1..0 instrukcja z lab1

0.1 Hierarchia klas Diagram Krótkie wyjaśnienie

Transkrypt:

Przykład 1 Iteracja 2 tworzenia oprogramowania Diagramy klas i sekwencji: Relacja 1 do 0..* między klasami modelu obiektowego

Cele drugiej iteracji 2-i etap projektu. Instrukcja zawiera przykłady powiązań 1:* (jeden do wiele) między klasami reprezentującymi dane: z 1-go etapu (TTitle_book oraz nową klasą TBook, która została zidentyfikowana po zaprojektowaniu kolejnego przypadku użycia PU Dodaj_ksiazke. Wykonaj kopię projektu UML z etapu 1 (laboratorium 2). Uzupełnij diagramy przypadków użycia, klas oraz uzupełnij i/lub dodaj nowe diagramy sekwencji. Należy wykorzystać te dwa typy powiązań 1:* oraz 1:0..1 w wykonywanym 2-im etapie projektu i jego implementacji na podstawie instrukcji do laboratorium 3. Wykonaj prosty program stanowiący realizację 2-go etapu wybranego projektu. Program ten stanowi rozwinięcie programu z etapu 1.

1. Diagram klas

2.Iteracja 2 Dodawanie książki

2.1. Diagram sekwencji metody add_book klasy TFacade

2.2. Kod metody: add_book klasy TFacade public ArrayList<String> add_book(string data1[], String data2[]) { TTitle_book help1, title_exist; TFactory fabryka = new TFactory(); help1 = fabryka.create_title_book(data1); if ((title_exist = search_title_book(help1))!= null) { return title_exist.add_book(data2); return null;

2.3. Diagram sekwencji metody add_book klasy TTitle_book

2.4. Kod metody: add_book klasy TTitle_book public ArrayList<String> add_book(string data[]) { TFactory factory = new TFactory(); TBook newbook; newbook = factory.create_book(data); if (search_book(newbook) == null) { mbooks.add(newbook); newbook.setmtitle_book(this); return getbooks(); return null;

2.5. Diagram sekwencji metody search_book klasy TTitle_book

2.6. Kod metody: search_book klasy TTitle_book public TBook search_book(tbook book) { int idx; if ((idx = mbooks.indexof(book))!= -1) { book = (TBook) mbooks.get(idx); return book; return null;

2.7. Diagram sekwencji metody create_book klasy TFactory

2.8. Kod metody: create_book klasy TFactory public TBook create_book(string data[]) { TBook book = null; switch (Integer.parseInt(data[0])) //what_book_type { case 0: book = new TBook(); //TBook object for persisting book.setnumber(integer.parseint(data[1])); break; return book;

2.9./2.9.1.Przykład kodu sprawdzającego działanie dodawanie tytułów książki oraz książek public static void main(string t[]) { TFacade ap = new TFacade(); String t1[] = {"1", "Author1", "Title1", "ISBN1", "Publisher1"; String t2[] = {"1", "Author2", "Title2", "ISBN2", "Publisher2"; String t3[] = {"1", "Author3", "Title3", "ISBN3", "Publisher3"; ap.add_title_book(t1); ap.add_title_book(t2); ap.add_title_book(t2); ap.add_title_book(t3); String lan = ap.getmtitle_books().tostring(); System.out.println(lan); String d1[] = {"0", "ISBN1"; String d2[] = {"0", "ISBN2"; String d3[] = {"0", "ISBN5"; String tr1[] = {"0", "1"; String tr2[] = {"0", "2";

2.9.2. Przykład kodu sprawdzającego działanie dodawanie tytułów książki oraz książek String d1[] = {"0", "ISBN1"; String d2[] = {"0", "ISBN2"; String d3[] = {"0", "ISBN5"; String tr1[] = {"0", "1"; String tr2[] = {"0", "2"; ArrayList<String> pom = ap.add_book(d1, tr1); if (pom!= null) { System.out.print(pom); pom = ap.add_book(d2, tr1); if (pom!= null) { System.out.print(pom); pom = ap.add_book(d2, tr1); if (pom!= null) { System.out.print(pom); pom = ap.add_book(d2, tr2); if (pom!= null) { System.out.print(pom); pom = ap.add_book(d3, tr2); if (pom!= null) { System.out.print(pom);

2.9.2. Przykład kodu sprawdzającego działanie dodawanie tytułów książki oraz książek wynik działania dodawania tytułów książek i książek [ Title: Title1 Author: Author1 ISBN: ISBN1 Publisher: Publisher1, Title: Title2 Author: Author2 ISBN: ISBN2 Publisher: Publisher2, Title: Title3 Author: Author3 ISBN: ISBN3 Publisher: Publisher3] [ Title: Title1 Author: Author1 ISBN: ISBN1 Publisher: Publisher1 Number: 1][ Title: Title2 Author: Author2 ISBN: ISBN2 Publisher: Publisher2 Number: 1][ Title: Title2 Author: Author2 ISBN: ISBN2 Publisher: Publisher2 Number: 1, Title: Title2 Author: Author2 ISBN: ISBN2 Publisher: Publisher2 Number: 2]