SVN 10 października 2011 Instalacja Wchodzimy na stronę http://tortoisesvn.tigris.org/ i pobieramy aplikację uruchamiany ponownie komputer Rysunek 1: Instalacja - krok 1
Rysunek 2: Instalacja - krok 2 Rysunek 3: Instalacja - krok 3 Kryzys oprogramowania odpowiedzialność a zawodność (złożoność i niedojrzałem metody tworzenia) jakość a czas koszty utrzymywania i niska kultura ponownego wykorzystywania komponentów długi i kosztowny cykl tworzenia oprogramowania eklektyczny zestaw narzędzi nieprzejrzystość oprogramowania (trudność przystosowania) dynamiczne zmiany języków programowania i narzędzi (zmiany serwerów aplikacji, bibliotek, języka) 2
Rysunek 4: Instalacja - krok 4 Rysunek 5: Instalacja - krok 5 uzależnienie organizacji od systemów komputerowych współdziałanie systemów komputerowych przystosowanie istniejących systemów do nowych wymagań i platform Zagadnienia Faza strategiczna: cele, planowanie, zdefiniowanie projektu Wymagania projektu Analiza wymagań Projektowanie 3
Rysunek 6: Instalacja - krok 6 Implementacja - rozwijanie, testowanie, dokumentacja Transfer oprogramowania Przygotowywanie użytkowników - szkolenie Działanie i wspomaganie tworzenia aplikacji Utrzymanie, pielęgnacja Miary oprogramowania Zarządzanie jakością i konfiguracją Zarządzanie projektem Dobre oprogramowanie jest: zgodne z wymaganiami niezawodne efektywne łatwe w konserwacji ergonomiczne Ograniczanie wpływu złożoności systemu 1. Zasada dekompozycji: rozdzielenie problemu na podproblemy, które można rozpatrywać i rozwiązywać niezależnie od siebie i niezależnie od całości 4
2. Zasada abstrakcji: eliminacja, ukrycie lub pominięcie mniej istotnych szczegółów rozważanego przedmiotu lub mniej istotnej informacji; wyodrębnianie cech wspólnych i niezmiennych dla pewnego zbioru bytów i wprowadzaniu pojęć lub symboli oznaczających takie cechy 3. Zasada ponownego użycia: wykorzystanie wcześniej wytworzonych schematów, metod, wzorców, standardów komponentów projektu, komponentów oprogramowania itd. 4. Zasada sprzyjania naturalnym ludzkim właśnościom: dopasowanie modeli pojęciowych i modeli realizacyjnych systemów do wrodzonych ludzkich własności psychologicznych, instynktów oraz mentalnych mechanizmów percepcji i rozumienia środowiska Modele cyklu życia oprogramowania Rysunek 7: Kaskada Rysunek 8: Zmodyfikowana kaskada 1. spiralny 2. prototypowania - budowa prototypu na podstawie ogólnych wymagań i późniejsze postępowanie kaskadowe na podstawie szczegółowych wymagań 5
Rysunek 9: Model spiralny Rysunek 10: Model przyrostowy 3. montażu z gotowych komponentów - bibliotek, wcześniej napisanego kodu, innych aplikacji UML czyli Unified Modeling Language, ujednolicony język modelowania, to ustandaryzowany sposób modelowania systemów, w szczególności informatycznych. Składa się na niego zespół diagramów służących do określonych celów, etapów realizacji projektu. Pozwala na przełożenie abstrakcji wymagań projektu na język zrozumiały dla wszystkich i ułatwia podział prac, ustalanie harmonogramu, ogranicza liczbę błędów i niezgodności. 6
Przypadki użycia Przedstawia interakcje pomiędzy systemem a użykownikami lub innymi systemami zewnętrznymi. Pomocny w przypadku odwzorowywania wymagań dla systemu. Rysunek 11: Przypadki użycia Ćwiczenia 1. Pomysły i burza mózgów nad każdym pomysłem 2. Projekt podzielony na podproblemy 7
Pomysły 1. Webowa/offline. Korzystając ze strony: http://vls1.icm.edu.pl/cgi-bin/sciserv.pl?collection=springer należy zaprojektować i oprogramować aplikację, która zalogowanemu użytkownikowi będzie ułatwiała gromadzenie artykułów, informowała o nowych artykułach, pozwalała na określenie najciekawszych wg użytkownika artykułów, budowała bazę preferencji użytkowników, sugerowała inne czasopisma i artykuły. Literatura [1] Dąbrowski W., Subieta K., Podstawy inżynierii oprogramowania. Wydawnictwo PJWSTK, Warszawa, 2005. [2] Miles R., Hamilton K., UML 2.0. Wprowadzenie. Helion, Gliwice, 2007. 8