Jarosław Kuchta. Projektowanie Aplikacji Internetowych. Wprowadzenie
|
|
- Teresa Tomczyk
- 6 lat temu
- Przeglądów:
Transkrypt
1 Jarosław Kuchta Projektowanie Aplikacji Internetowych Wprowadzenie
2 Zagadnienia Rola projektowania w procesie wytwarzania aplikacji internetowych (podejście klasyczne, podejście zwinne) Modele analityczne a modele projektowe Projektowanie wielowarstwowe podział kompetencji deweloperów Współczesne podejścia do projektowania aplikacji: RAD, modelowanie w IDE, frameworki i wzorce projektowe Szczególne problemy w aplikacjach internetowych: przenośność, wydajność, skalowalność, ochrona, bezpieczeństwo, użyteczność i globalizacja Projektowanie Aplikacji Internetowych Wprowadzenie 2
3 Miejsce projektowania w klasycznym procesie wytwarzania aplikacji Analiza dziedziny problemu Analiza statyczna Analiza funkcjonalna Analiza dynamiczna Modele Analiza behawioralna SWS Projektowanie systemowe Projektowanie szczegółowe Projektowanie architektury systemu Projektowanie logiki aplikacji Projekty Projektowanie interfejsu użytkownika Projektowanie struktury danych Implementacja Utworzenie struktury kodu Implementacja logiki aplikacji Implementacja interfejsu użytkownika Implementacja struktury danych Projektowanie Aplikacji Internetowych Wprowadzenie 3
4 Analiza projektowanie implementacja (podejście klasyczne) Cel Analiza Projektowanie Implementacja Zrozumienie oczekiwań klienta przez zespół projektowy Opracowanie koncepcji rozwiązania Realizacja opracowanej koncepcji Pytania Co? Po co? Co? Jak? Jak? Źródła Specyfikacja wymagań, publikacje dziedzinowe, dokumentacja od klienta Specyfikacja wymagań, modele analityczne, wzorce projektowe, dokumentacja z innych projektów dokumentacja projektowa, specyfikacja wymagań, dokumentacja frameworków Środki Rozmowy z klientem, modelowanie w UML Analiza wymagań, opracowywanie projektów Analiza projektów, kodowanie, uruchamianie, debugowanie Efekt Specyfikacja wymagań, model przypadków użycia, model klas, Projekt architektury systemu, projekt logiki aplikacji, projekt interfejsu użytkownika projekt struktury danych Oprogramowanie wdrożone, kod źródłowy, dokumentacja kodu Projektowanie Aplikacji Internetowych Wprowadzenie 4
5 Aspekty analityczne i projektowe Analityczne Projektowe Projekt architektury systemu Projekt logiki aplikacji Projekt interfejsu użytkownika Projekt struktury danych Statyczny Komponenty systemowe Klasy, właściwości Schemat interfejsu, formularze Schemat bazy danych, tabele Funkcjonalny Funkcjonalności, uprawnienia Interfejsy, interakcje Menu, komendy, nawigacja Kwerendy, procedury wbudowane Behawioralny Zdarzenia, stany Zdarzenia, akcje, aktywności Obsługa zdarzeń, obsługa błędów Walidacja danych, kopie zapasowe Dynamiczny Wydajność, dostępność Przetwarzanie asynchroniczne Responsywność, logika u klienta Synchronizacja, migracje b.d. Projektowanie Aplikacji Internetowych Wprowadzenie 5
6 Rozróżnienie pojęć Aspekt wyodrębniony zbiór cech systemu, które są rozważane przy pominięciu innych jego cech Model opis rzeczywiście istniejącego lub projektowanego systemu pokazujący jego wybrany aspekt Diagram graficzne przedstawienie modelu w postaci rysunku, którego elementy mają określone znaczenie Elementy diagramu mają odwzorowanie w elementy modelu. Diagram to nie model: Nie wszystkie elementy modelu są przedstawiane na diagramie. Mogą być inne przedstawienia modelu (np. CRC dla modelu klas). Jeden model może być przedstawiony na kilku diagramach. Elementy modelu mają odwzorowanie w elementy systemu. Model to nie system: Model opisuje system tylko w wybranym aspekcie. Nie wszystkie elementy systemu są modelowane. Gdyby model opisywał w pełni wszystkie elementy systemu, to byłby równoważny systemowi. Projektowanie Aplikacji Internetowych Wprowadzenie 6
7 Modele a diagramy Model Diagram Aspekt Analiza Projektowanie Model przypadków użycia Diagram przypadków użycia, diagram klas Funkcjonalny Modelowanie możliwości systemu Modelowanie możliwości (uprawnień) użytkowników Model obiektowy Diagram klas, diagram obiektów Statyczny Modelowanie pojęć biznesowych i ich relacji Modelowanie struktury obiektowej kodu Model interakcji Diagram interakcji, diagram aktywności, diagram komunikacji (kolaboracji) Funkcjonalny Modelowanie współdziałania systemu z otoczeniem Modelowanie współdziałania komponentów systemowych Model stanów Diagram przejść stanów Behawioralny Modelowanie reakcji systemu na zdarzenia Modelowanie reakcji komponentów systemowych Model czasowy Diagram sekwencji diagram timingu Dynamiczny Modelowanie scenariuszy zdarzeń Modelowanie zależności czasowych zdarzeń i procesów Model architektury systemu Diagram komponentów, diagram wdrożenia Statyczny nie stosowany Modelowanie struktury sprzętowej i programowej systemu Model struktury kodu Diagram pakietów, diagram obiektów Statyczny nie stosowany Modelowanie struktury fizycznej kodu Model struktury danych Diagram ERD, diagram klas Statyczny nie stosowany Modelowanie schematu bazy danych Model nawigacji Diagram WND, storyboard Funkcjonalny nie stosowany Modelowanie przejść między komponentami interfejsu Projektowanie Aplikacji Internetowych Wprowadzenie 7
8 Projektowanie aplikacji za i przeciw Za Szybsze zrozumienie potrzeb klienta Szybsze wykrycie potencjalnych problemów technicznych Możliwość wyboru optymalnego rozwiązania Możliwość zrozumienia złożonej struktury aplikacji Oszczędność na modyfikacji kodu Ułatwienie późniejszej pielęgnacji i rozwoju Przeciw Trudność w zastosowaniu przy niedookreślonych wymaganiach Późniejsze dostarczenie działającej aplikacji do klienta Zagrożenie nierealnością projektu (oderwanie od możliwości implementacji) Koszty opracowania dokumentacji projektowej Późniejszy zwrot kosztów opracowania Projektowanie Aplikacji Internetowych Wprowadzenie 8
9 Współczesne podejścia do projektowania aplikacji (1) RAD Rapid Application Development wytwarzanie bez wcześniejszego projektowania design = development zaleta efektywność wada uzależnienie od IDE (Integrated Development Environment) brak przenośności projektu Modelowanie w IDE Wykorzystanie narzędzi modelowania dołączonych do IDE ograniczone możliwości modelowania zalety: łatwość przełożenia projektu na kod, łatwość utworzenia projektu z działającego kodu wada - uzależnienie od IDE brak przenośności projektu Projektowanie Aplikacji Internetowych Wprowadzenie 9
10 Współczesne podejścia do projektowania aplikacji (2) Wykorzystanie wzorców projektowych wzorzec projektowy sprawdzone rozwiązanie projektowe samodzielna implementacja zaleta uniwersalność zastosowania wada: duży narzut na kodowanie Wykorzystanie frameworków framework zaimplementowany wzorzec projektowy + recepta na sprawdzone rozwiązanie implementacyjne zaleta duży wybór, efektywność w typowych zastosowaniach zagrożenia: niekompatybilność różnych frameworków, brak dostatecznej wiedzy, niedojrzałość rozwiązań wady: brak elastyczności zastosowania, zagrożenie niedotrzymania harmonogramu Wnioski: Stosowanie frameworków jest efektywne, ale i bardzo ryzykowne. Warto wykorzystywać wzorce projektowe, gdy frameworki nie są wystarczające. Projektowanie Aplikacji Internetowych Wprowadzenie 10
11 Projektowanie w metodykach zwinnych? Extreme programming, SCRUM planowanie iteracji (a nie projektowanie) Test Driven Development projektowanie testów Feature Driven Development projektowanie funkcjonalności Projektowanie Aplikacji Internetowych Wprowadzenie 11
12 Prototyp projekt SCRUM W większych projektach informatycznych: Idea Prototyp Projekt Product Backlog Sprint Backlog SPRINT Działający soft Rewizja Projektowanie Aplikacji Internetowych Wprowadzenie 12
13 Design Thinking Wniosek: Projektowanie towarzyszy wytwarzaniu nawet jeśli nie jest uwidocznione jawnie z: Jumpstarting Scrum with Design Thinking Christophe Vetterli et. al. Projektowanie Aplikacji Internetowych Wprowadzenie 13
14 Projektowanie wielowarstwowe podział kompetencji deweloperów Projekt interfejsu użytkownika HTML5 CSS3 JavaScript Front-end developer C# PHP Java Szanse: Zrównoleglenie pracy Podział kompetencji Wykorzystanie kompetencji Projekt architektury systemu Projekt logiki aplikacji Projekt struktury danych Programista SQL proxy MVC Back-end developer Zagrożenia: Brak koordynacji Nieporozumienia Niespójność projektu Projektowanie Aplikacji Internetowych Wprowadzenie 14
15 Szczególne problemy projektowania aplikacji internetowych W specyfikacji wymagań trzeba dookreślić: Wymagania co do architektury systemu (mogą wynikać z organizacji przedsiębiorstwa) Wymagania co do przenośności Wymagania co do wydajności (trudne do określenia oszacować) i skalowalności Wymagania co do ochrony i bezpieczeństwa uświadomić klientowi Wymagania co do dostępności i globalizacji (np. języki interfejsu użytkownika) Projektowanie Aplikacji Internetowych Wprowadzenie 15
16 Problemy przenośności Użytkownicy mogą dysponować rozmaitym sprzętem, również starszym (mniej wydajnym). jakie będą minimalne wymagania sprzętowe? Klienci mogą działać w różnych systemach operacyjnych. na jakich systemach ma działać aplikacja? Część aplikacji może być przeznaczona dla urządzeń mobilnych (responsywność dopasowanie interfejsu do możliwości urządzenia). jak zapewnić responsywność aplikacji? Projektowanie Aplikacji Internetowych Wprowadzenie 16
17 Problemy wydajności Dane muszą być przekazywane na odległość przez łącza o różnej przepustowości jak zminimalizować ilość przesyłanych danych? Serwer musi obsłużyć często wielu klientów. czy i jak podzielić przetwarzanie między serwer a klientów? czy i jak podzielić funkcjonalność na wiele serwerów? Serwer musi zapewnić szybką reakcję na żądania użytkowników. czy i jak przechowywać wyniki obliczeń dla powtórnego użycia? czy i jak podzielić funkcjonalność na wiele serwerów? Projektowanie Aplikacji Internetowych Wprowadzenie 17
18 Problemy skalowalności Trudno jest przewidzieć rzeczywiste obciążenie serwera. jak podzielić funkcjonalność na wiele serwerów? jak umożliwić dołączanie serwerów w miarę potrzeby? jak zabezpieczyć się przez przeciążeniem? Ilość przechowywanych danych może być ogromna. jaki silnik bazy danych użyć? jak umożliwić zwiększenie pojemności serwera danych? czy zastosować rozproszenie bazy danych? Projektowanie Aplikacji Internetowych Wprowadzenie 18
19 Problemy ochrony Serwer internetowy jest widoczny z zewnątrz. w jaki sposób zapewnić uwierzytelnienie użytkowników? jakie role użytkowników zaplanować i jakie im przydzielić uprawnienia? czy ograniczyć dostęp z zewnątrz do serwera? Dane klientów z reguły są poufne. jak chronić dane osobowe? do jakich danych ma mieć dostęp administrator? jak uniemożliwić dostęp użytkowników do nieswoich danych? czy i jak zapewnić bezpieczną komunikację? Serwer internetowy może stać się obiektem ataku hakerów. jak zabezpieczyć się przed skanowaniem portów serwera? jak zabezpieczyć się przed włamaniem? jak ograniczyć potencjalne możliwości ataku? Projektowanie Aplikacji Internetowych Wprowadzenie 19
20 Problemy bezpieczeństwa Serwery mogą ulec awarii. czy zapewnić serwery zapasowe? Dane klientów mogą ulec zniszczeniu. jak i kiedy robić kopie zapasowe? gdzie przechowywać kopie zapasowe? komu dać uprawnienia do odzyskiwania danych? Łącza internetowe mogą ulec awarii lub okazać się niewystarczające. czy i jak zapewnić zapasowe łącza internetowe? Projektowanie Aplikacji Internetowych Wprowadzenie 20
21 Problemy dostępności i globalizacji Serwis internetowy może mieć użytkowników o różnych możliwościach i preferencjach. dla jakiej grupy użytkowników jest przeznaczony ten serwis? jak zapewnić czytelność i zrozumiałość treści dla grupy docelowej użytkowników? jak zapewnić czytelność dla użytkowników nierozróżniających kolorów? czy konieczne jest zapewnienie wersji dla niedowidzących? Serwis internetowy może być dostępny z całego świata. czy konieczna jest dostępność 7/24? kiedy i jak robić konserwację serwera? Serwis internetowy może być dostępny dla ludzi z różnych kultur. jakie wersje językowe zaimplementować? jakie standardy wymiany danych zapewnić? czy i jak dopasowywać się do różnej wrażliwości kulturowej? Projektowanie Aplikacji Internetowych Wprowadzenie 21
22 Literatura Pressman R.S.: Software Engineering, A Practitioner s Approach. 7th Ed., McGraw-Hill, USA, 2010 Booch G., Rumbaugh J., Jacobson I.: UML. Przewodnik użytkownika. WNT, Warszawa, 2006 Projektowanie Aplikacji Internetowych Wprowadzenie 22
Szczególne problemy projektowania aplikacji internetowych. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Szczególne problemy projektowania aplikacji Jarosław Kuchta Miejsce projektowania w cyklu wytwarzania aplikacji SWS Analiza systemowa Analiza statyczna Analiza funkcjonalna Analiza dynamiczna Analiza behawioralna
Bardziej szczegółowoProjektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34
Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. 2/34 Modelowanie CRC Modelowanie CRC (class-responsibility-collaborator) Metoda identyfikowania poszczególnych
Bardziej szczegółowoZakres wykładu. Podstawy InŜynierii Oprogramowania
Zakres wykładu Pojęcia podstawowe InŜynierii Oprogramowania Proces wytwarzania oprogramowania Artefakty procesu wytwarzania i ich modele Jakość oprogramowania Literatura: [1] Sacha K., InŜynieria oprogramowania,
Bardziej szczegółowoJarosław Kuchta Dokumentacja i Jakość Oprogramowania. Wymagania jakości w Agile Programming
Jarosław Kuchta Wymagania jakości w Agile Programming Wady klasycznych metod zapewnienia jakości Duży narzut na dokumentowanie Późne uzyskiwanie konkretnych rezultatów Trudność w odpowiednio wczesnym definiowaniu
Bardziej szczegółowoFeature Driven Development
Feature Driven Development lekka metodyka tworzenia oprogramowania Kasprzyk Andrzej IS II Wstęp Feature Driven Development (FDD) to metodyka tworzenia oprogramowania, która wspomaga zarządzanie fazami
Bardziej szczegółowoUsługa: Audyt kodu źródłowego
Usługa: Audyt kodu źródłowego Audyt kodu źródłowego jest kompleksową usługą, której głównym celem jest weryfikacja jakości analizowanego kodu, jego skalowalności, łatwości utrzymania, poprawności i stabilności
Bardziej szczegółowoCzym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio
Czym jest jpalio? jpalio to unikalna platforma technologiczna pozwalająca na stworzenie szeregu produktów dostosowanych do indywidualnych preferencji klienta. W naszej ofercie znajduje się m.in. system
Bardziej szczegółowoProjektowanie logiki aplikacji
Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie logiki aplikacji Zagadnienia Rozproszone przetwarzanie obiektowe (DOC) Model klas w projektowaniu logiki aplikacji Klasy encyjne a klasy
Bardziej szczegółowoZasady organizacji projektów informatycznych
Zasady organizacji projektów informatycznych Systemy informatyczne w zarządzaniu dr hab. inż. Joanna Józefowska, prof. PP Plan Definicja projektu informatycznego Fazy realizacji projektów informatycznych
Bardziej szczegółowoModelowanie i analiza systemów informatycznych
Katolicki Uniwersytet Lubelski Jana Pawła II Wydział Matematyki, Informatyki i Architektury Krajobrazu Modelowanie i analiza systemów informatycznych ćwiczenia informacja wstępna dr Viktor Melnyk, prof.
Bardziej szczegółowoWykład 1 Inżynieria Oprogramowania
Wykład 1 Inżynieria Oprogramowania Wstęp do inżynierii oprogramowania. Cykle rozwoju oprogramowaniaiteracyjno-rozwojowy cykl oprogramowania Autor: Zofia Kruczkiewicz System Informacyjny =Techniczny SI
Bardziej szczegółowoInżynieria oprogramowania. Jan Magott
Inżynieria oprogramowania Jan Magott Literatura do języka UML G. Booch, J. Rumbaugh, I. Jacobson, UML przewodnik użytkownika, Seria Inżynieria oprogramowania, WNT, 2001, 2002. M. Fowler, UML w kropelce,
Bardziej szczegółowoWprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego
Etapy Ŝycia systemu informacyjnego Wprowadzenie do metodologii modelowania systemów informacyjnych 1. Strategia 2. Analiza 3. Projektowanie 4. Implementowanie, testowanie i dokumentowanie 5. WdroŜenie
Bardziej szczegółowoTechnologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski
Technologie dla aplikacji klasy enterprise Wprowadzenie Marek Wojciechowski Co oznacza enterprise-ready? Bezpieczeństwo Skalowalność Stabilność Kompatybilność wstecz Wsparcie Dokumentacja Łatwość integracji
Bardziej szczegółowoInżynieria oprogramowania (Software Engineering) Wykład 1
Inżynieria oprogramowania (Software Engineering) Wykład 1 Wprowadzenie do inżynierii oprogramowania Zarządzanie przedmiotem Wydział: WEiI Katedra: KIK Web site: http://moskit.weii.tu.koszalin.pl/~swalover/
Bardziej szczegółowoProjekt systemu informatycznego
Projekt systemu informatycznego Kod przedmiotu: PSIo Rodzaj przedmiotu: specjalnościowy ; obieralny Wydział: Informatyki Kierunek: Informatyka Specjalność (specjalizacja): Inżynieria Systemów Informatycznych
Bardziej szczegółowoINŻYNIERIA OPROGRAMOWANIA
INSTYTUT INFORMATYKI STOSOWANEJ 2013 INŻYNIERIA OPROGRAMOWANIA Inżynieria Oprogramowania Proces ukierunkowany na wytworzenie oprogramowania Jak? Kto? Kiedy? Co? W jaki sposób? Metodyka Zespół Narzędzia
Bardziej szczegółowoTematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz
Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, 2004 Zofia Kruczkiewicz 1. Przedstaw znaczenie oprogramowania we współczesnym świecie x 1 2. Jaki wpływ na ludzi, komunikację
Bardziej szczegółowoProjektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Projektowanie architektury systemu rozproszonego Jarosław Kuchta Zagadnienia Typy architektury systemu Rozproszone przetwarzanie obiektowe Problemy globalizacji Problemy ochrony Projektowanie architektury
Bardziej szczegółowoJakość w procesie wytwarzania oprogramowania
Jarosław Kuchta Jakość Oprogramowania http://www.eti.pg.gda.pl/katedry/kask/pracownicy/jaroslaw.kuchta/jakosc/ J.Kuchta@eti.pg.gda.pl Względny koszt wprowadzania zmian w zależności od fazy realizacji projektu
Bardziej szczegółowoKoncepcja wirtualnej pracowni GIS w oparciu o oprogramowanie open source
Koncepcja wirtualnej pracowni GIS w oparciu o oprogramowanie open source Dr inż. Michał Bednarczyk Uniwersytet Warmińsko-Mazurski w Olsztynie Wydział Geodezji i Gospodarki Przestrzennej Katedra Geodezji
Bardziej szczegółowoSpring Framework - wprowadzenie i zagadnienia zaawansowane
Program szkolenia: Spring Framework - wprowadzenie i zagadnienia zaawansowane Informacje ogólne Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Spring Framework - wprowadzenie i zagadnienia
Bardziej szczegółowoTester oprogramowania 2014/15 Tematy prac dyplomowych
Tester oprogramowania 2014/15 Tematy prac dyplomowych 1. Projekt i wykonanie automatycznych testów funkcjonalnych wg filozofii BDD za pomocą dowolnego narzędzia Jak w praktyce stosować Behaviour Driven
Bardziej szczegółowoProjektowanie interakcji
Projektowanie interakcji K2 User Experience www.k2.pl/ux Tytuł dokumentu: k2-projektowanie_ux-oferta.pdf Data: 21 sierpnia 2009 Przygotowany przez: Maciej Lipiec Maciej Lipiec User Experience Director
Bardziej szczegółowoProblemy niezawodnego przetwarzania w systemach zorientowanych na usługi
Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi Jerzy Brzeziński, Anna Kobusińska, Dariusz Wawrzyniak Instytut Informatyki Politechnika Poznańska Plan prezentacji 1 Architektura
Bardziej szczegółowoProjektowanie architektury systemu internetowego
Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie architektury systemu internetowego Zagadnienia Architektura wielowarstwowa a architektura wielopienna Typy architektury systemu internetowego
Bardziej szczegółowoPrzygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia)
Program szkolenia: Przygotowanie do nowoczesnego programowania po stronie przeglądarki (HTML5, CSS3, JS, wzorce, architektura, narzędzia) Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania:
Bardziej szczegółowoEtapy życia oprogramowania
Modele cyklu życia projektu informatycznego Organizacja i Zarządzanie Projektem Informatycznym Jarosław Francik marzec 23 w prezentacji wykorzystano również materiały przygotowane przez Michała Kolano
Bardziej szczegółowoOverlord - specyfikacja uzupełniająca. Jakub Gołębiowski Adam Kawa Piotr Krewski Tomasz Weksej
Overlord - specyfikacja uzupełniająca Jakub Gołębiowski Adam Kawa Piotr Krewski Tomasz Weksej 25 kwietnia 2006 Spis treści 1 Historia zmian 3 2 Wprowadzenie 3 3 Funkcjonalność 3 3.1 Log.........................................
Bardziej szczegółowoSYSTEMY INFORMATYCZNE ćwiczenia praktyczne
SYSTEMY INFORMATYCZNE ćwiczenia praktyczne 12.03.2019 Piotr Łukasik p. 373 email: plukasik@agh.edu.pl / lukasik.pio@gmail.com www.lukasikpiotr.com Zakres tematyczny implementacji projektu informatycznego
Bardziej szczegółowoEgzamin / zaliczenie na ocenę*
WYDZIAŁ PODSTAWOWYCH PROBLEMÓW TECHNIKI Zał. nr 4 do ZW33/01 KARTA PRZEDMIOTU Nazwa w języku polskim : INŻYNIERIA OPROGRAMOWANIA Nazwa w języku angielskim: SOFTWARE ENGINEERING Kierunek studiów (jeśli
Bardziej szczegółowoKurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017
Wykład 12 7 czerwca 2017 Czym jest UML? UML składa się z dwóch podstawowych elementów: notacja: elementy graficzne, składnia języka modelowania, metamodel: definicje pojęć języka i powiazania pomiędzy
Bardziej szczegółowoEtapy życia oprogramowania. Modele cyklu życia projektu. Etapy życia oprogramowania. Etapy życia oprogramowania
Etapy życia oprogramowania Modele cyklu życia projektu informatycznego Organizacja i Zarządzanie Projektem Informatycznym Jarosław Francik marzec 23 Określenie wymagań Testowanie Pielęgnacja Faza strategiczna
Bardziej szczegółowoProces projektowania i wdrożenia serwisu internetowego
Proces projektowania i wdrożenia serwisu internetowego Kluczowe etapy projektu 9 1 Rozwój i optymalizacja Analiza celów, potrzeb i konkurencji 8 Szkolenie IMPROVE THINK Wireframe i prototyp (UX) 2 7 Testy
Bardziej szczegółowoGrzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat
Grzegorz Ruciński Warszawska Wyższa Szkoła Informatyki 2011 Promotor dr inż. Paweł Figat Cel i hipoteza pracy Wprowadzenie do tematu Przedstawienie porównywanych rozwiązań Przedstawienie zalet i wad porównywanych
Bardziej szczegółowoUniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.
Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej Wstęp Programowanie w Javie 2 mgr inż. Michał Misiak Agenda Założenia do wykładu Zasady zaliczeń Ramowy program wykładu
Bardziej szczegółowoBłędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation)
Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation) Zarządzanie wymaganiami Ad hoc (najczęściej brak zarządzania nimi) Niejednoznaczna, nieprecyzyjna komunikacja Architektura
Bardziej szczegółowoKonfiguracja modelowania w procesie wytwarzania oprogramowania
Konfiguracja modelowania w procesie wytwarzania oprogramowania Anna Bobkowska Materiały pomocnicze do wykładu z Modelowania i Analizy Systemów na Wydziale ETI PG. Ich lektura nie zastępuje obecności na
Bardziej szczegółowoPraktyczne aspekty stosowania metody punktów funkcyjnych COSMIC. Jarosław Świerczek
Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC Jarosław Świerczek Punkty funkcyjne Punkt funkcyjny to metryka złożoności oprogramowania wyznaczana w oparciu o określające to oprogramowanie
Bardziej szczegółowoREFERAT PRACY DYPLOMOWEJ
REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany
Bardziej szczegółowoTematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz
Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, 2004 Zofia Kruczkiewicz 1. Przedstaw znaczenie oprogramowania we współczesnym świecie. x 3 2. Jaki wpływ na ludzi, komunikację
Bardziej szczegółowoProjektowanie systemów informatycznych. wykład 6
Projektowanie systemów informatycznych wykład 6 Iteracyjno-przyrostowy proces projektowania systemów Metodyka (ang. methodology) tworzenia systemów informatycznych (TSI) stanowi spójny, logicznie uporządkowany
Bardziej szczegółowoInżynieria wymagań. Jarosław Kuchta Dokumentacja i Jakość Oprogramowania
Inżynieria wymagań Jarosław Kuchta Cele inżynierii wymagań Określenie celu biznesowego projektu Cel biznesowy określa korzyści, jakie osiągną udziałowcy projektu dzięki jego realizacji Identyfikacja wymagań
Bardziej szczegółowoOpis metodyki i procesu produkcji oprogramowania
Opis metodyki i procesu produkcji oprogramowania Rational Unified Process Rational Unified Process (RUP) to iteracyjny proces wytwarzania oprogramowania opracowany przez firmę Rational Software, a obecnie
Bardziej szczegółowoIteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1
Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1 Zofia Kruczkiewicz 1 Zunifikowany iteracyjno- przyrostowy proces tworzenia oprogramowania kiedy? Przepływ działań Modelowanie przedsiębiorstwa
Bardziej szczegółowoAnaliza i projektowanie aplikacji Java
Analiza i projektowanie aplikacji Java Modele analityczne a projektowe Modele analityczne (konceptualne) pokazują dziedzinę problemu. Modele projektowe (fizyczne) pokazują system informatyczny. Utrzymanie
Bardziej szczegółowoReferat pracy dyplomowej
Referat pracy dyplomowej Temat pracy: Wdrożenie intranetowej platformy zapewniającej organizację danych w dużej firmie na bazie oprogramowania Microsoft SharePoint Autor: Bartosz Lipiec Promotor: dr inż.
Bardziej szczegółowoWPROWADZENIE DO UML-a
WPROWADZENIE DO UML-a Maciej Patan Instytut Sterowania i Systemów Informatycznych Dlaczego modelujemy... tworzenie metodologii rozwiązywania problemów, eksploracja różnorakich rozwiązań na drodze eksperymentalnej,
Bardziej szczegółowoPRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy w ramach specjalności: Programowanie aplikacji internetowych Rodzaj zajęć: laboratorium PRZEWODNIK PO PRZEDMIOCIE I KARTA PRZEDMIOTU
Bardziej szczegółowoNarzędzia CASE dla.net. Łukasz Popiel
Narzędzia CASE dla.net Autor: Łukasz Popiel 2 Czym jest CASE? - definicja CASE (ang. Computer-Aided Software/Systems Engineering) g) oprogramowanie używane do komputerowego wspomagania projektowania oprogramowania
Bardziej szczegółowoZAPYTANIE OFERTOWE. Zamawiający. Przedmiot zapytania ofertowego. Wrocław, dnia 23.03.2015 r.
ZAPYTANIE OFERTOWE Wrocław, dnia 23.03.2015 r. W związku z realizacją przez Nova Telecom spółka z ograniczoną odpowiedzialnością, projektu pn.: Wdrożenie zintegrowanego systemu klasy B2B, umożliwiającego
Bardziej szczegółowoSpis treúci. 1. Wprowadzenie... 13
Księgarnia PWN: W. Dąbrowski, A. Stasiak, M. Wolski - Modelowanie systemów informatycznych w języku UML 2.1 Spis treúci 1. Wprowadzenie... 13 2. Modelowanie cele i metody... 15 2.1. Przegląd rozdziału...
Bardziej szczegółowoKARTA PRZEDMIOTU. 1) Nazwa przedmiotu: INŻYNIERIA SYSTEMÓW I ANALIZA SYSTEMOWA. 2) Kod przedmiotu: ROZ-L3-20
Z1-PU7 WYDANIE N2 Strona: 1 z 5 (pieczęć wydziału) KARTA PRZEDMIOTU 1) Nazwa przedmiotu: INŻYNIERIA SYSTEMÓW I ANALIZA SYSTEMOWA 3) Karta przedmiotu ważna od roku akademickiego: 2014/2015 2) Kod przedmiotu:
Bardziej szczegółowoSzkolenie wycofane z oferty
Szkolenie wycofane z oferty Program szkolenia: Java Server Faces 2 Informacje: Nazwa: Java Server Faces 2 Kod: Java-EE-JSF 2 Kategoria: Java EE Grupa docelowa: developerzy Czas trwania: 3 dni Forma: 50%
Bardziej szczegółowoArchitektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu.
Architektura Systemu Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu. Architektura jest zbiorem decyzji dotyczących: organizacji systemu komputerowego,
Bardziej szczegółowoPodstawy modelowania programów Kod przedmiotu
Podstawy modelowania programów - opis przedmiotu Informacje ogólne Nazwa przedmiotu Podstawy modelowania programów Kod przedmiotu 11.3-WI-INFP-PMP Wydział Kierunek Wydział Informatyki, Elektrotechniki
Bardziej szczegółowoAnaliza i projekt systemu pracy grupowej z zastosowaniem metodyki SCRUM w technologii SharePoint Karolina Konstantynowicz
Analiza i projekt systemu pracy grupowej z zastosowaniem metodyki SCRUM w technologii SharePoint Karolina Konstantynowicz Promotor dr inż. Szymon Supernak Warszawa, 22.05.2014 Plan prezentacji 1. Cel i
Bardziej szczegółowoSpis treści 1. Wstęp 2. Projektowanie systemów informatycznych
Spis treści 1. Wstęp... 9 1.1. Inżynieria oprogramowania jako proces... 10 1.1.1. Algorytm... 11 1.2. Programowanie w językach wysokiego poziomu... 11 1.3. Obiektowe podejście do programowania... 12 1.3.1.
Bardziej szczegółowoGłówne założenia XP. Prostota (Simplicity) Komunikacja (Communication) Sprzężenie zwrotne (Feedback) Odwaga (Agressiveness)
Extreme programming Główne założenia XP Prostota (Simplicity) Komunikacja (Communication) Sprzężenie zwrotne (Feedback) Odwaga (Agressiveness) Praktyki Planowanie: Planowanie releasu Planowanie iteracji
Bardziej szczegółowo<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0>
Wersja [Uwaga: Niniejszy wzór dostarczony jest w celu użytkowania z Unified Process for EDUcation. Tekst zawarty w nawiasach kwadratowych i napisany błękitną kursywą
Bardziej szczegółowo12) Wadą modelu kaskadowego jest: Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 13) Wadą modelu opartego na prototypowaniu jest:
Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 1) Oprogramowanie to: 2) Produkty oprogramowania w inżynierii oprogramowania można podzielić na: 3) W procesie wytwarzania oprogramowania
Bardziej szczegółowoJarosław Kuchta Jakość Systemów Informatycznych Jakość Oprogramowania. Pomiary w inżynierii oprogramowania
Jarosław Kuchta Jakość Systemów Informatycznych Jakość Oprogramowania Pomiary w inżynierii oprogramowania Cel pomiarów ocena jakości produktu ocena procesów (produktywności ludzi) stworzenie podstawy dla
Bardziej szczegółowoOceny z prezentacji INKU011S. Zofia Kruczkiewicz
Oceny z prezentacji INKU011S Zofia Kruczkiewicz Data Student Oceny Uwagi 22.10.2017 231085 3.0 Przedstaw idealne środowisko do stosowania inżynierii oprogramowania- opisz elementy tego środowiska (sprzęt
Bardziej szczegółowo1. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI
KARTA PRZEDMIOTU przedmiotu Stopień studiów i forma Rodzaj przedmiotu Grupa kursów Zaawansowane techniki analizy systemowej oparte na modelowaniu warsztaty Studia podyplomowe Obowiązkowy NIE Wykład Ćwiczenia
Bardziej szczegółowoWskazówki projektowe. Programowanie Obiektowe Mateusz Cicheński
Wskazówki projektowe Programowanie Obiektowe Mateusz Cicheński Przydatne zasady SOLID Wzorce struktury aplikacji MVC MVP MVVM Metody wytwarzania oprogramowania Manifest Zwinnego Wytwarzania Oprogramowania
Bardziej szczegółowoudokumentowanych poprzez publikacje naukowe lub raporty, z zakresu baz danych
Rola architektury systemów IT Wymagania udokumentowanych poprzez publikacje naukowe lub raporty, z zakresu metod modelowania architektury systemów IT - UML, systemów zorientowanych na usługi, systemów
Bardziej szczegółowoPrezentacja firmy Royal Solutions Sp. z o.o.
Prezentacja firmy Royal Solutions Sp. z o.o. Zawartość prezentacji Misja Doświadczenie Konsultanci Technologie Podejście do Klienta Proces realizacji projektów Badania dojrzałości projektowej Projekty
Bardziej szczegółowoSkrócone opisy pryncypiów architektury korporacyjnej podmiotów publicznych
Skrócone opisy pryncypiów architektury korporacyjnej podmiotów publicznych Wersja: 1.0 17.06.2015 r. Wstęp W dokumencie przedstawiono skróconą wersję pryncypiów architektury korporacyjnej podmiotów publicznych.
Bardziej szczegółowoI. Opis przedmiotu zamówienia
I. Opis przedmiotu zamówienia Przedmiotem zamówienia jest świadczenie usług z zakresu zapewnienia zasobów ludzkich z branży IT przez okres 12 miesięcy od dnia zawarcia umowy ramowej, polegających na zapewnieniu
Bardziej szczegółowoDLA SEKTORA INFORMATYCZNEGO W POLSCE
DLA SEKTORA INFORMATYCZNEGO W POLSCE SRK IT obejmuje kompetencje najważniejsze i specyficzne dla samego IT są: programowanie i zarządzanie systemami informatycznymi. Z rozwiązań IT korzysta się w każdej
Bardziej szczegółowoZofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2
Modelowanie i analiza systemów informatycznych 1. Warstwowa budowa systemów informatycznych 2. Model procesu wytwarzania oprogramowania - model cyklu życia oprogramowania 3. Wstęp do modelowania systemów
Bardziej szczegółowoBiorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:
Egzaminy na plus Stres na minus! Zdawaj bezpłatne egzaminy Microsoft, Linux, C++ z nami i zadbaj o swoją karierę. Oferujemy Ci pierwsze certyfikaty zawodowe w Twojej przyszłej karierze, które idealnie
Bardziej szczegółowoKontraktor - Analityk Biznesowy
Kontraktor - Analityk Biznesowy Imię i nazwisko: Antal International_JC Lokalizacja: Warszawa Dostępność: 1 miesiąc Godzinowy koszt współpracy: 110 PLN + VAT Znajomość języków obcych: Angielski - Bardzo
Bardziej szczegółowoSzczegółowy opis przedmiotu umowy. 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów:
Rozdział I Szczegółowy opis przedmiotu umowy Załącznik nr 1 do Umowy Architektura środowisk SharePoint UMWD 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów: a) Środowisko
Bardziej szczegółowoInżynieria Programowania - Projektowanie architektoniczne
Inżynieria Programowania - Projektowanie architektoniczne Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 22 października 2016 1 2 3 4 5 Architektury charakterystyczne dla różnych dziedzin
Bardziej szczegółowoInżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji
Inżynieria oprogramowania Jarosław Kuchta Modelowanie interakcji Podstawowe pojęcia Interakcja (interaction) Przepływ komunikatów pomiędzy obiektami konieczny dla wykonania określonego zadania. Interakcja
Bardziej szczegółowoTytuł szkolenia: Angular 4 - budowanie nowoczesnych i wydajnych aplikacji przeglądarkowych
Kod szkolenia: ANGULAR 4 Tytuł szkolenia: Angular 4 - budowanie nowoczesnych i wydajnych aplikacji przeglądarkowych Dni: 5 Opis: Adresaci szkolenia Kurs przeznaczony jest dla programistów posiadających
Bardziej szczegółowoWeb frameworks do budowy aplikacji zgodnych z J2EE
Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida promotor: dr Dariusz Król Przypomnienie Celem pracy jest porównanie wybranych szkieletów programistycznych o otwartym kodzie źródłowym
Bardziej szczegółowoUsługa: Testowanie wydajności oprogramowania
Usługa: Testowanie wydajności oprogramowania testerzy.pl przeprowadzają kompleksowe testowanie wydajności różnych systemów informatycznych. Testowanie wydajności to próba obciążenia serwera, bazy danych
Bardziej szczegółowoProgram szkolenia: Tworzenie aplikacji w Ruby on Rails z wykorzystaniem zwinnych metodyk
Program szkolenia: Tworzenie aplikacji w Ruby on Rails z wykorzystaniem zwinnych metodyk Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Tworzenie aplikacji w Ruby on Rails z wykorzystaniem
Bardziej szczegółowoOgólne określenie wymagań. Ogólny projekt. Budowa systemu. Ocena systemu. Nie. Tak. System poprawny. Wdrożenie. Określenie.
Inżynieria I Andrzej Jaszkiewicz Kontakt Andrzej Jaszkiewicz p. 8, CW Berdychowo tel. 66 52 933 ajaszkiewicz@cs.put.poznan.pl Rynek 2008 Świat 304 miliardy $ (451 miliardów 2013F) Bez wytwarzanego na własne
Bardziej szczegółowoCel wykładu. Literatura. Wyższa Szkoła Menedżerska w Legnicy. Modelowanie wymagań Wykład 2
Wyższa Szkoła Menedżerska w Legnicy Systemy informatyczne w przedsiębiorstwach Zarządzanie, ZIP, sem. 6 (JG) Modelowanie wymagań Wykład 2 Grzegorz Bazydło Cel wykładu Celem wykładu jest przekazanie wiedzy
Bardziej szczegółowoWytwarzanie oprogramowania
AiPA 6 Wytwarzanie oprogramowania Proces tworzenia oprogramowania jest procesem przekształcenia wymagań w oprogramowanie zgodnie z metodyką, która określa KTO CO robi JAK i KIEDY. - Wymagania Proces tworzenia
Bardziej szczegółowoProjekt: Współpraca i Rozwój wzrost potencjału firm klastra INTERIZON
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Projekt: Współpraca i Rozwój wzrost potencjału firm klastra INTERIZON Opis szkoleń z obszaru INFORMATYKA planowanych
Bardziej szczegółowoTestowanie oprogramowania
Testowanie oprogramowania 1/17 Testowanie oprogramowania Wykład 01 dr inż. Grzegorz Michalski 13 października 2015 Testowanie oprogramowania 2/17 Dane kontaktowe: Kontakt dr inż. Grzegorz Michalski pokój
Bardziej szczegółowoWytwórstwo oprogramowania. michał możdżonek
Wytwórstwo oprogramowania michał możdżonek 01.2008 Plan wykładu 1. Proces tworzenie oprogramowania 2. Zarządzanie projektami 3. Wymagania 4. Projektowanie 5. Testowanie 6. Szacowanie złożoności i kosztu
Bardziej szczegółowoOpis realizacji dla czterech zespołów (4 przypadki użycia)
Projektowanie oprogramowania Termin zajęć: czwartek, sala L2.6, C16 7.30-9.00, 9.15-10.45 Na podstawie materiału ze strony http://gromit.iiar.pwr.wroc.pl/p_inf/ Przebieg realizacji projektu (tabela 1)
Bardziej szczegółowoModelowanie i analiza systemów informatycznych
Modelowanie i analiza systemów informatycznych MBSE/SysML Wykład 11 SYSMOD Wykorzystane materiały Budapest University of Technology and Economics, Department of Measurement and InformaJon Systems: The
Bardziej szczegółowoProjekt współfinansowany ze środków Europejskiego Funduszu Rozwoju Regionalnego w ramach Programu Operacyjnego Innowacyjna Gospodarka
Warszawa dnia 25 lutego 2013 r. Szanowni Państwo,, z siedzibą w Warszawie przy ul. Wolność 3A, zwraca się z prośbą o przedstawienie oferty cenowej na usługę analizy przedwdrożeniowej i wdrożenia dla aplikacji
Bardziej szczegółowoKarta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty
Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty przedmiotu Stopień studiów i forma: Rodzaj przedmiotu Kod przedmiotu Grupa kursów Zaawansowane techniki analizy
Bardziej szczegółowoInżynieria oprogramowania I
Kontakt Inżynieria I Andrzej Jaszkiewicz Andrzej Jaszkiewicz p. 424y, Piotrowo 3a tel. 66 52 371 jaszkiewicz@cs.put.poznan.pl www-idss.cs.put.poznan.pl/~jaszkiewicz Literatura A. Jaszkiewicz, Inżynieria,
Bardziej szczegółowoPodrozdziały te powinny zawierać informacje istotne z punktu widzenia przyjętego celu pracy
Uwaga: 1. Praca powinna być napisana z użyciem formy bezosobowej np. wykonano. Nazwa rozdziału Zawartość Liczba stron 1. Wstęp Rozdział ten powinien zawierać zarys najważniejszych elementów pracy Krótki
Bardziej szczegółowoKomputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl
Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki
Bardziej szczegółowoINŻYNIERIA OPROGRAMOWANIA
INSTYTUT INFORMATYKI STOSOWANEJ 2014 Nowy blok obieralny! Testowanie i zapewnianie jakości oprogramowania INŻYNIERIA OPROGRAMOWANIA Inżynieria Oprogramowania Proces ukierunkowany na wytworzenie oprogramowania
Bardziej szczegółowoInformatyczne fundamenty
Informatyczne fundamenty Informatyka to szeroka dziedzina wiedzy i praktycznych umiejętności. Na naszych studiach zapewniamy solidną podstawę kształcenia dla profesjonalnego inżyniera IT. Bez względu na
Bardziej szczegółowoModelowanie przypadków użycia. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Modelowanie przypadków użycia Jarosław Kuchta Podstawowe pojęcia Przypadek użycia jest formalnym środkiem dla przedstawienia funkcjonalności systemu informatycznego z punktu widzenia jego użytkowników.
Bardziej szczegółowoProgramowanie zespołowe
Programowanie zespołowe Laboratorium 4 - modele tworzenia oprogramowania, manifest Agile i wstęp do Scruma mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 14 marca 2017 1 / 21 mgr inż. Krzysztof
Bardziej szczegółowo