PRZEGLĄD MIAR OCENY OPROGRAMOWANIA. Paweł WEICHBROTH, Cezary ORŁOWSKI
|
|
- Wiktor Marszałek
- 8 lat temu
- Przeglądów:
Transkrypt
1 PRZEGLĄD MIAR OCENY OPROGRAMOWANIA Paweł WEICHBROTH, Cezary ORŁOWSKI 1. Wstęp Problem oceny oprogramowania istnieje od momentu pojawienia się pierwszego programu komputerowego. Historycznie miary jakości oprogramowania miały zupełnie inne przeznaczenie, gdyż skupiały się na częstotliwości defektów lub błędów oprogramowania. Błędnie bazowało to na założeniu, że jakość oprogramowania to brak błędów. Stąd też używano prostej statystyki typu liczby błędów, wykrytych w określonym przedziale czasu (np. rocznym) lub w danej wersji programu, na tysiąc wierzy kodu tzw. gęstości błędów. Oczywiste jest, iż niższe wartości tej miary oznaczały wyższą jakość programu. Jedną z pierwszych znanych miar wykorzystanych do opisu programów komputerowych był jego rozmiar [17]. Możemy stwierdzić, iż rozmiar oprogramowania (ang. software size) jest miarą objętości, długości, ilości, znaczenia i ogólnie rozmiaru programu komputerowego [5]. W połowie lat 60-tych pierwszą stosowaną miarą rozmiaru oprogramowania była liczba linii kodu LOC (ang. lines of code). Prawie dekadę później, w późnych latach 70-tych, pojawiły się bardziej wyszukane miary rozmiaru oprogramowania takie jak: liczba tokenów (ang. number of tokens), wolumin (ang. volume), liczba funkcji (ang. function count), liczba punktów funkcyjnych (ang. function points) [5]. Kolejną miarą opisującą rozmiar programu był wolumin, oparty na wielkości linii kodu w bitach, reprezentowany przez zera i jedynki [10]. Krótko potem, pojawiła się liczba funkcji, jako miara rozmiaru oprogramowania, określająca stopień modularności programu [2]. Po niej, zaproponowano liczbę punktów funkcyjnych, której ideą było oszacowanie liczby, wejść, wyjść, plików głównych, zapytań i interfejsów [1]. Jednakże rozmiar oprogramowania nie jest miarą jakości oprogramowania samą w sobie, stanowi fundament wielu miar w dzisiejszych czasach (np. liczby defektów, błędów, stosunku błędów do linii kodu, punktów funkcyjnych). Ponadto, często spotyka się opinie, iż rozmiar oprogramowania stanowi podstawową miarę oceny złożoności oprogramowania [14]. Z powyższych względów, ewolucja pomiaru jakości oprogramowania byłaby niekompletna bez wprowadzenia na temat rozmiaru oprogramowania. 2. Błędy oprogramowania W latach 50-tych XX wieku, pierwszą stosowaną miarą oceny jakości oprogramowania była liczba wykrytych błędów. Można je rozumieć jako wadliwe działania ludzkie w procesie implementacji programu. Koncepcja błędów na wyrażenie (ang. errors per statement") po raz pierwszy pojawiła się we wczesnych latach 60-tych, a jej dorobkiem jest pojęcie wystąpienia błędu (ang. error proneness). Pojęcie gęstości błędu (ang. error density) powstało w połowie lat 70-tych i odnosiło się do prostego stosunku błędów do wielkości oprogramowania [24]. Gęstość błędu była stosowana w odniesieniu do liczby anomalii powodujących błędy do wielkości oprogramowania [15]. Termin gęstości wad (ang. defect density), używany w połowie lat 80-tych, był stosunkiem liczby błędów programowych do wielkości oprogramowania [23]. Wiele różnych cech było branych pod uwagę takich jakich liczba wymagań, projekt, kodowanie, czy testowanie [5]. Na początku lat 90-tych pojawiła się koncepcja gęstości problemu (ang. problem density), która odnosiła się do liczby problemów
2 zgłoszonych przez klientów [14]. Praktyka liczenia błędów i wad, jako środka mierzenia jakości oprogramowania cieszyły się nieprzerwaną popularnością przez ponad pięć dekad. 3. Atrybuty oprogramowania Innym podejściem do problemu mierzenia jakości oprogramowania była praktyka określania ilości i złożoności jego atrybutów. Atrybuty oprogramowania są przyporządkowaną jakościową cechą, taką jak funkcjonalność, wydajność i użyteczność. Logicon zaprojektował model do mierzenia atrybutów oprogramowania takich jak poprawność, logiczność, sprawność, stopień optymalizacji, zrozumiałość, modyfikowalność i użyteczność [22]. Następnie, zostały zidentyfikowane atrybuty oprogramowania takie jak: przenośność, wiarygodność, efektywność, modyfikowalność, testowalność, ergonomia i zrozumiałość [3]. Wymienione prace przyczyniły się do powstania wielu modeli do mierzenia atrybutów konserwacji oprogramowania [25] i nawet projektowania bazy danych [8]. Podejście skierowane na klienta doprowadziło do wypracowania jakościowych i ilościowych metryk oprogramowania [4,6,7]. W dalszej kolejności, został wypracowany model FURPS, na który składało się pięć atrybutów: funkcjonalność (ang. functionality), użyteczność (ang. usability), wiarygodność (ang. reliability), wydajność (ang. performance) i stopień wsparcia (ang. supportability) [9]. 4. Statyczne modele błędów Jednym z najwcześniejszych podejść do przewidywania jakości oprogramowania były modele statyczne, które opierały się teorii niezawodności. Model statyczny posługuje się innymi atrybutami do oszacowania liczby błędów w oprogramowaniu - nie bierze pod uwagę współczynnika zmian [5]. Jednym z pierwszych modeli predykcji błędów były funkcja wielkości, rachunek decyzji (decision count) i liczba wywołań procedur. Zostały stworzone linowe modele do 10 wejść dla różnych typów wyrażeń w kodzie źródłowym takich jak: komentarze, dane czy instrukcje [18]. W teorii nauki o programowaniu wolumin jest wejściem w modelu i tym samym funkcją języka programu [10]. Równolegle w tym samym czasie, McCabe przedstawił topologiczną, bazującą na teorii grafów miarę złożoności cyklomatycznej, jako miarę liczby liniowo niezależnych ścieżek, które składają się na program komputerowy. Zostało rozwiniętych jeszcze wiele innych skrzyżowanych ze sobą modeli, biorących pod uwagę zasoby słów (ang. vocabulary), długość (ang. length), złożoność (ang. difficulty) i prachochłonność (ang. effort) [23]. Później firma IBM rozwinęła modele szacowania błędów i wystąpień defektów w oprogramowaniu, które zostały wykorzystane do projektowania systemów operacyjnych [14]. 5. Złożoność oprogramowania Systemy komputerowe są tworami o wysokim stopniu złożoności. Na początku lat 70-tych, badania na temat złożoności oprogramowania stały się jedną z bardziej powszechnych metod oceny jakości programów komputerowych. Złożoność oprogramowania może być rozumiana jako stopień kompozycji i dekompozycji, czyli podział na części o dobrze wyrażonej semantyce i dobrze wyspecyfikowanej wzajemnej interakcji. Powstało wiele technik obliczania lub raczej szacowania stopnia złożoności. Najprostsza z nich to LOC (ang. lines of code) lub SLOC (ang. source lines of code). Jest to syntetyczna miara dające ogólne pojęcie o skali programu, jednak nie jest wystarczająca do szczegółowych analiz. Wartość LOC jest silnie zależna od poziomu wykorzystanego języka programowania ten sam algorytm w
3 języku wysokiego poziomu będzie miał wielokrotnie mniej linii kodu niż w języku niskiego poziomu. W roku 1977 profesor Maurice H. Halstead zaproponował takie miary jak [12]: liczba różnych operatorów w programie (n 1 ) liczba różnych operandów w programie (n 2 ) liczba wystąpień operatora (N 1 ) liczba wystąpień operandu (N 2 ) opisu: gdzie: W kolejnym etapie wyprowadził zestaw miar pochodnych od podstawowych w celu słownika symboli (ang. Vocabulary) (n), n=n 1 +n 2 (1) długości programu (ang. Length) (N), N=N 1 +N 2 =n 1 log 2 (n 1 )+n 2 log 2 (n 2 ) (2) rozmiar (ang. Volume) (V), V=Nlog 2 (n)=nlog 2 (n 1 +n 2 ) (3) poziom (ang. Level) (L), L=V*/V=(2/n 1 )*(n 2 /N 2 ) (4) trudność (ang. Difficulty) (D), D=V/V*=(n 1 /2)*(N 2 /n 2 ) (5) pracochłonność (ang. Effort) (E), E=V/L (6) błędy (ang. Faults) (B), B=V/S* (7) V* to minimalny rozmiar reprezentowany przez wbudowaną funkcję, która może wykonywać zadanie całego programu, S* to średnia liczba umysłowych decyzji lub rozróżnień między błędami, oszacowana przez Halsteada na 3000 [12]. Wadą tego podejścia jest, iż długość programu zależy od dwóch zmiennych N 1 i N 2, których wartość jest dokładnie znana tuż przed zakończeniem pisania programu. 6. Wiarygodność oprogramowania Na początku lat 70-tych sformułowano pojęcie wiarygodności oprogramowania w celu oszacowania liczby błędów w oprogramowaniu jako metodzie mierzenia jego jakości. Można ją określić jako prawdopodobieństwo, iż oprogramowanie będzie działać w określonym przedziale czasu bez żadnego przestoju, ważone przez koszt użytkownika każdego przestoju [20]. Inne źródło [12] podaje, iż jest to stopień w jakim systemy, komponenty lub procesy producenta oprogramowania potrafią spełniać określone wymagania oraz potrzeby i oczekiwania użytkowników. Istnieje kilka modeli wiarygodności, które można sklasyfikować w trzech grupach: skończone i nieskończone [19], statyczne i dynamiczne [5], deterministyczne i probabilistyczne [21].
4 Modele deterministyczne są wykorzystywane do badania liczby różnych operatorów i operandów w programie, jak również do liczby błędów i liczby instrukcji maszynowych. Miary wydajności w grupie modeli dynamicznych są otrzymywane poprzez analizę struktury programu i nie biorą pod uwagę żadnych losowych zdarzeń. Dwie dobrze znane miary to metryka Halstead a i cyklomatyczna metryka McCabe a. Miarę złożoności cyklomatycznej, która bazuje na teorii grafów, McCabe przedstawił w 1976 roku [21]. Jest to liczba liniowo niezależnych ścieżek, które składają się na program komputerowy. W celu obliczenia miary M dla programu komputerowego przedstawionego w formie grafu lub diagramu przepływu należy skorzystać ze wzoru (8): gdzie: M= V(G)=e-n+2p (8) V(G) to cyklomatyczna liczba grafu G programu e to liczba krawędzi grafu n to liczba węzłów grafu p to liczba niepołączonych części grafu Istnieje prosta zależność pomiędzy miarą M i liczbą binarnych decyzji BD, gdyż zachodzi równość M=BD+1. Podobnie jak w przypadku innych wczesnych miar jakości, które koncentrują się na samych programach lub nawet ich modułach, ukryte jest źródło złożoności architektonicznej, czyli powiązania między modułami. Według Kana, oprócz długości modułu, najważniejszym predyktorem częstotliwości defektów jest ogólna liczba zmian projektowych oraz poziom złożoności, niezależnie od sposobu ich obliczania [13]. 7. Miary punktów funkcyjnych Dwa przedstawione podejścia Halstead a i McCabe a reprezentują ilościowe podejście do wymiarowania oprogramowania. Miary jakości bazujące pośrednio lub bezpośrednio na liczeniu wierszy kodu programu lub modułów są niewystarczające [12]. Miary te możemy określić jako substytuty wskaźników liczby okazji do popełnienia błędu z perspektywy implementacji kodu źródłowego programu. Metoda punktów funkcyjnych zdefiniowana przez Albrechta powstała w wyniku kilkuletnich doświadczeń przy opracowywaniu systemów informatycznych z zakresu przetwarzania danych [26]. Punkty funkcyjne możemy określić jako znaczące grupy mierzalnego kodu z perspektywy użytkownika a nie programisty. Uwzględniają one potrzeby użytkownika oraz zebraną w trakcie analizy wymagań funkcjonalność - nie są wyłącznie wskaźnikiem ukończenia go a posteriori przez programistę [12]. Zaproponowana przez Albrechta typowa miara punktów funkcyjnych (ang. function point metric) to ważona suma pięciu składników, które cechują aplikację [12,26]: 4 x liczba wejść zewnętrznych do systemu (lub typów transakcji), 5 x liczba typów lub raportów zewnętrznych, 10 x liczba wewnętrznych plików logicznych (zbiorów danych), 7 x liczba zewnętrznych plików interfejsu (zbiorów danych),
5 4 x liczba obsługiwanych zewnętrznych zapytań do systemu. Metoda ta szybko zdobyła dużą popularność i jest dalej rozwijana przez organizację IFPUG (ang. International Function Point Users Group), która opracowała również jej standard [11]. Wykorzystywana na przestrzeni czasu przez wytwórców oprogramowania bardzo dużych systemów informatycznych (1000 i więcej punktów funkcyjnych), metoda ta wykazuje wysoki poziom powtarzalności i przydatności [12]. 8. Miary zadowolenia użytkownika i dostępności Grupa miar prezentowana jako ostatnia swoją uwagę skupia na użytkowniku końcowym i na jego ocenie działania, niezawodności i stabilności oprogramowania w codziennym użytkowaniu. Zalecana jest tu jednak ostrożność, gdyż problemy z systemem nie koniecznie mogą wynikać z błędów w aplikacji, a wynikają z niewiedzy użytkowników. Zwykle satysfakcja klienta mierzona jest wedle pięciopunktowej skali [12]: bardzo zadowolony, zadowolony, obojętny, niezadowolony, bardzo niezadowolony. Wielowymiarowa ocena oprogramowania przez klientów odbywa się poprzez kwestionariusze. Firma IBM stosuje model CUPRIMDA w którym ocenie poddawane są: możliwości (ang. categoriescapability), łatwość użycia (ang. usability), wydajność (ang. performance), niezawodność (ang. reliability), łatwość instalacji (ang. installability), łatwość konserwacji (ang. maintainability), dokumentację (ang. documentation), dostępność (ang. availability). Z kolei firma Hewlett-Packard stosuje model FURPS w którym ocenie poddawane są: możliwości (ang. categoriesfunctionality), użyteczność (ang. usability), niezawodność (ang. reliability), wydajność (ang. performance), łatwość obsługi (ang. serviceability).
6 Niektórzy producenci stosują uproszczony ogólny wskaźnik zadowolenia OWZ (ang. net satisfaction index) w celu porównania różnych produktów ze sobą. Można wyróżnić w nim następujące wagi: w pełni zadowolony - 100% zadowolony - 75% obojętny - 50% niezadowolony - 25% całkowicie niezadowolony - 0% Pomimo tego, iż wskaźnik ten jest powszechnie stosowany, nie wskazuje dokładnie na źródło problemu. 9. Podsumowanie W pracy dokonano przeglądu kluczowych miar służących ocenie oprogramowania. Jest to aktualny problem biorąc pod uwagę obecne koszty zakupu i utrzymania systemów informatycznych. Obecnie często podejmowaną kwestią jest poziom na jakim powinna być dokonywana ocena. Pierwsze miary stosowane były do oceny na poziomie kodu źródłowego i koncentrowały się na liczbie błędów i defektów. Rozwój języków programowania i tym samym kompilatorów, przyniósł bogatsze biblioteki standardowych funkcji, makroinstrukcje, czy dyrektywy kompilacji. Wzbogaceniu języka, szczególnie w środowisku graficznym, udoskonalono obudowę środowiska pracy. Do kompilatora włączono edytor, konsolidator oraz debugger - w jednym zintegrowanym pakiecie umieszczono wszystkie narzędzia pracy programisty. Liczba błędów na poziomie kodu źródłowego znacznie się zmniejszyła - tym samym ocena w oparciu o takie miary okazała się być niewystarczająca. Wraz z dynamicznym postępem w dziedzinie języków programowania, towarzyszyły temu zmiany w podejściu do oceny oprogramowania. Zaproponowano podejście ilościowe, biorąc pod uwagę liczbę funkcji i tokenów, woluminu i ostatecznie liczbę punktów funkcyjnych. Profesor Halstead, uważany za ojca nauki o miarach oprogramowania, zaproponował nowatorskie jak na swoje czasy podejście. Zaproponował cztery główne miary, z których wyprowadził siedem pochodnych wzorów między takimi relacjami jak słownik, długość, rozmiar, poziom, trudność i pracochłonność. Podejście to, nie sprawdza się jako bezpośrednie miary ilościowe, gdyż uniemożliwia przewidzenie rozmiaru i jakości programu na wystarczająco wczesnych etapach jego rozwoju. Kolejną opisaną w pracy miarą jest złożoność cyklomatyczna McCabe a. Z jej stosowania wynika zalecenie, aby nie tworzyć modułów większych niż 10 niezależnych ścieżek w grafie, reprezentujących przepływ sterowania w metodzie. Podobnie jak w przypadku innych wczesnych miar jakości, położono nacisk wyłącznie na programie i jego modułach, bez badania powiązań między modułami. Nowatorskie podejście zaproponował Allan Albrecht z firmy IBM, gdyż jego miara punktów funkcyjnych jest oceną funkcjonalności dostarczonej przez oprogramowanie. Odwrócony został kierunek oceny z perspektywy implementacji programu do potrzeb użytkownika. Obecnie jest to ciągle rozwijane stanowisko, gdyż pozwala na audyt projektów,
7 wybór systemów funkcjonujących systemów do reinżynierii oraz porównywania i oceny różnych ofert dostawców oprogramowania. Ostatnia grupa zaprezentowanych miar zadowolenia użytkownika, skupia swoją uwagę na ocenie działania, niezawodności, funkcjonalności i stabilności oprogramowania przez użytkownika końcowego. Złożoność dzisiejszych systemów oraz wysoka wydajność sprzętu komputerowego, są przesłankami do posługiwania się syntetycznymi miarami oceny oprogramowania. Należy zwrócić uwagę, iż słowo oprogramowanie może być niewystarczające do pełnego oddania skali przedmiotu oceny. W kontekście opisu specyfikacji i wymagań używa się pojęcia technologii informatycznej, które wydaje się szerzej obejmować zagadnienia charakterystyki dzisiejszego oprogramowania. Zauważalny jest rozwój nowej nauki o miarach architektury oprogramowania. Co zaskakujące, odbywa się to w obliczu braku powszechnie przyjętych definicji takiej architektury i pojęć ściśle z nią powiązanych. W tym miejscu należy wymienić takie pojęcia jak technologia informatyczna, technologia informacyjna czy system informatyczny. Jak widać ocena oprogramowania jako niezależnych bytów zdaje się być nieaktualna, ze względu na coraz wyższą integrację różnego typu oprogramowania. Przyszłość zarządzania oprogramowaniem sprowadza się do syntetycznej oceny całych technologii informatycznych oraz zarządzania ich portfelem. Bibliografia [1] Albrecht A. J.: Measuring application development productivity. Proceedings of the IBM Applications Development Joint SHARE/GUIDE Symposium, Monterrey 1979, s [2] Basili V. R., Reiter R. W.: An investigation of human factors in software development. IEEE Computer, 1979 nr 12(12), s [3] Boehm B. W., Brown J. R., Kaspar H., Lipow, M.: Characteristics of software quality. Redondo Beach 1973, TRW Corporation (TRW-SS-73-09). [4] Cavano J. P., McCall, J. A.: A framework for the measurement of software quality. Proceedings of the Software Quality Assurance Workshop on Functional and Performance Issues, San Diego 1978, s [5] Conte S. D., Dunsmore H. E., Shen V. Y.: Software engineering metrics and models. Benjamin Cummings, Menlo Park [6] Dzida W., Herda S., Itzfeldt W. D.: User perceived quality of interactive systems. Proceedings of the Third International Conference on Software Engineering, Atlanta 1978, s [7] Gaffney J. E.: Metrics in software quality assurance. Proceedings of the ACM SIGMETRICS Workshop/Symposium on Measurement and Evaluation of Software Quality, Las Vegas 1981, Nevada, s [8] Gilb T.: Software metrics. Winthrop Publishers, Cambridge [9] Grady R. B., Caswell R. B.: Software metrics: Establishing a company wide program. Englewood Cliffs, Prentice Hall, New York [10] Halstead M. H.: Elements of software science. Elsevier, New York [11] http: Function Point Counting Practices Manual. Release 4.1, 5 lipiec 2009.
8 [12] Jayaswal B. K., Patton P. C.: Oprogramowanie godne zaufania. Metodologia, techniki i narzędzia projektowania, Helion, Gliwice [13] Kan S. H.: Metrics and Models in Software Quality Engineering, Pearson Education, Singapur [14] Kan S. H.: Metrics and models in software quality engineering. Addison-Wesley [15] Lipow M.: Number of faults per line of code. IEEE Transactions on Software Engineering, 1982 nr 8(4), s [16] McCabe T. J.: A complexity measure. IEEE Transactions on Software Engineering, 1976 nr 2(4), s [17] McIlroy M. D.: Macro instruction extensions of compiler languages. Communications of the ACM, 1960 nr 3(4), s [18] Motley R. W., Brooks W. D.: Statistical prediction of programming errors. Griffis AFB, New York [19] Musa J. D.: Software reliability engineering. McGraw Hill, New York [20] Myers G. J.: Software reliability: Principles and practices. John Wiley & Sons, New York [21] Pham H.: System Software Reliability, Springer, London [22] Rubey R. J., Hartwick R. D.: Quantitative measurement of program quality. Proceedings of the 23rd ACM National Conference, Washington 1968, s [23] Shen V. Y., Yu T. J., Thebaut S. M., Paulsen L. R.: Identifying error prone software: An empirical study. IEEE Transactions on Software Engineering, 1985 nr 11(4), s [24] Shooman M. L., Bolsky M. I.: Types, distribution, and test and correction times for programming errors. Proceedings of the International Conference on Reliable Software, Los Angeles 1975, s [25] Swanson E. B.: The dimensions of maintenance. Proceedings of the Second International Conference on Software Engineering, San Francisco 1976, s [26] Szyjewski Z.: Wymiarowanie zmian w projektach informatycznych [w]: Zarządzanie wiedzą i technologiami informatycznymi. Automatyka i Informatyka nr 5. Technologie Informacyjne: Zarządzanie. Orłowski C., Kowalczuk Z., Szczerbicki E. (red.), Pomorskie Wydawnictwo Naukowo-Techniczne PWNT, Gdańsk 2009, s Paweł WEICHBROTH*, Cezary ORŁOWSKI** * Zakład Zarządzania Technologiami Informatycznymi, Wydział Zarządzania i Ekonomii, Politechnika Gdańska, pwi@zie.pg.gda.pl ** Zakład Zarządzania Technologiami Informatycznymi, Wydział Zarządzania i Ekonomii, Politechnika Gdańska, cor@zie.pg.gda.pl
Jarosł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
Plan. Zapewnienie jakości produktu informatycznego. Zarządzanie jakością i metryki oprogramowania. Podstawowe parametry mierzalne
Zarządzanie jakością i metryki oprogramowania Organizacja i Zarządzanie Projektem Informatycznym Jarosław Francik, kwiecień 2002 Zapewnienie jakości produktu informatycznego Pomiar jako główny element
<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ą
Metodyka projektowania komputerowych systemów sterowania
Metodyka projektowania komputerowych systemów sterowania Andrzej URBANIAK Metodyka projektowania KSS (1) 1 Projektowanie KSS Analiza wymagań Opracowanie sprzętu Projektowanie systemu Opracowanie oprogramowania
Faza strategiczna. Synteza. Analiza. Instalacja. Faza strategiczna. Dokumentacja. kodowanie implementacja. produkt konserwacja
Faza strategiczna określenie wymagań specyfikowanie projektowanie kodowanie implementacja testowanie produkt konserwacja Faza strategiczna Analiza Synteza Dokumentacja Instalacja Faza strategiczna (ang.
Praktyczne 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
Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik
Projektowanie oprogramowania Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik Agenda Weryfikacja i zatwierdzanie Testowanie oprogramowania Zarządzanie Zarządzanie personelem
Wprowadzenie do jakości systemów informatycznych
Jarosław Kuchta Jakość Systemów Informatycznych Jakość Oprogramowania Wprowadzenie do jakości systemów informatycznych http://www.eti.pg.gda.pl/katedry/kask/pracownicy/jaroslaw.kuchta/jakosc J.Kuchta@eti.pg.gda.pl
Jakość 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
Zasady 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
Wykład 8. Testowanie w JEE 5.0 (1) Autor: Zofia Kruczkiewicz. Zofia Kruczkiewicz
Wykład 8 Testowanie w JEE 5.0 (1) Autor: 1. Rola testowania w tworzeniu oprogramowania Kluczową rolę w powstawaniu oprogramowania stanowi proces usuwania błędów w kolejnych fazach rozwoju oprogramowania
Kurs 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
Wykł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
Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej.
Efekty dla studiów pierwszego stopnia profil ogólnoakademicki na kierunku Informatyka w języku polskim i w języku angielskim (Computer Science) na Wydziale Matematyki i Nauk Informacyjnych, gdzie: * Odniesienie-
Dlaczego testowanie jest ważne?
Testowanie Dlaczego testowanie jest ważne? Oprogramowanie które nie działa poprawnie może doprowadzić do: straty czasu, pieniędzy utraty reputacji uszkodzeń ciała a nawet śmierci Definicja błędu Oprogramowanie
INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE
Studia podyplomowe dla nauczycieli INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Przedmiot JĘZYKI PROGRAMOWANIA DEFINICJE I PODSTAWOWE POJĘCIA Autor mgr Sławomir Ciernicki 1/7 Aby
Błę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
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma
Technologie informacyjne - wykład 12 -
Zakład Fizyki Budowli i Komputerowych Metod Projektowania Instytut Budownictwa Wydział Budownictwa Lądowego i Wodnego Politechnika Wrocławska Technologie informacyjne - wykład 12 - Prowadzący: Dmochowski
PYTANIA PRÓBNE DO EGZAMINU NA CERTYFIKAT ZAAWANSOWANY REQB KLUCZ ODPOWIEDZI. Część DODATEK
KLUCZ ODPOWIEDZI Część DODATEK 8.1 9.4 PYTANIA PRÓBNE DO EGZAMINU NA CERTYFIKAT ZAAWANSOWANY REQB Na podstawie: Syllabus REQB Certified Professional for Requirements Engineering, Advanced Level, Requirements
Modelowanie i Programowanie Obiektowe
Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do
Kod doskonały : jak tworzyć oprogramowanie pozbawione błędów / Steve McConnell. Gliwice, cop Spis treści. Wstęp 15.
Kod doskonały : jak tworzyć oprogramowanie pozbawione błędów / Steve McConnell. Gliwice, cop. 2017 Spis treści Wstęp 15 Podziękowania 23 Listy kontrolne 25 Tabele 27 Rysunki 29 Część I Proces budowy oprogramowania
WYKŁAD. Jednostka prowadząca: Wydział Techniczny. Kierunek studiów: Elektronika i telekomunikacja. Nazwa przedmiotu: Język programowania C++
Jednostka prowadząca: Wydział Techniczny Kierunek studiów: Elektronika i telekomunikacja Nazwa przedmiotu: Język programowania C++ Charakter przedmiotu: podstawowy, obowiązkowy Typ studiów: inŝynierskie
Model referencyjny doboru narzędzi Open Source dla zarządzania wymaganiami
Politechnika Gdańska Wydział Zarządzania i Ekonomii Katedra Zastosowań Informatyki w Zarządzaniu Zakład Zarządzania Technologiami Informatycznymi Model referencyjny Open Source dla dr hab. inż. Cezary
Inż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/
Język opisu sprzętu VHDL
Język opisu sprzętu VHDL dr inż. Adam Klimowicz Seminarium dydaktyczne Katedra Mediów Cyfrowych i Grafiki Komputerowej Informacje ogólne Język opisu sprzętu VHDL Przedmiot obieralny dla studentów studiów
The concept, models and metrics of software quality an overview
Pojęcie, modele i metryki jakości oprogramowania przegląd Yuliia Horobets*, Marek Miłosz Politechnika Lubelska, Instytut Informatyki, Nadbystrzycka 36B, 20-618 Lublin, Polska JCSI 4 (2017) 92-98 Wysłane:
Maciej Oleksy Zenon Matuszyk
Maciej Oleksy Zenon Matuszyk Jest to proces związany z wytwarzaniem oprogramowania. Jest on jednym z procesów kontroli jakości oprogramowania. Weryfikacja oprogramowania - testowanie zgodności systemu
Michał Gadomski. Grzegorz Poręcki
[Prezes Zarządu] [Wiceprezes Zarządu] Michał Gadomski Dr hab. Beata Czarnacka-Chrobot, prof. SGH [Wiceprezes Zarządu] Dr Bogusław Machowski [Członek Zarządu] Grzegorz Poręcki Misją PSMO jest podniesienie
Etapy ż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
Przypadki użycia. Czyli jak opisywać funkcjonalność. Jerzy Nawrocki Mirosław Ochodek
Przypadki użycia Czyli jak opisywać funkcjonalność Jerzy Nawrocki Jerzy.Nawrocki@cs.put.poznan.pl Mirosław Ochodek Miroslaw.Ochodek@cs.put.poznan.pl Wymagania w kontekście procesu wytwarzania Opis problemu
Analiza współzależności zjawisk
Analiza współzależności zjawisk Informacje ogólne Jednostki tworzące zbiorowość statystyczną charakteryzowane są zazwyczaj za pomocą wielu cech zmiennych, które nierzadko pozostają ze sobą w pewnym związku.
Testowanie i walidacja oprogramowania
i walidacja oprogramowania Inżynieria oprogramowania, sem.5 cz. 3 Rok akademicki 2010/2011 Dr inż. Wojciech Koziński Zarządzanie testami Cykl życia testów (proces) Planowanie Wykonanie Ocena Dokumentacja
APLIKACJA NAPISANA W ŚRODOWISKU LABVIEW SŁUŻĄCA DO WYZNACZANIA WSPÓŁCZYNNIKA UZWOJENIA MASZYNY INDUKCYJNEJ
POZNAN UNIVE RSITY OF TE CHNOLOGY ACADE MIC JOURNALS No 83 Electrical Engineering 2015 Damian BURZYŃSKI* Leszek KASPRZYK* APLIKACJA NAPISANA W ŚRODOWISKU LABVIEW SŁUŻĄCA DO WYZNACZANIA WSPÓŁCZYNNIKA UZWOJENIA
Tom 6 Opis oprogramowania Część 8 Narzędzie do kontroli danych elementarnych, danych wynikowych oraz kontroli obmiaru do celów fakturowania
Część 8 Narzędzie do kontroli danych elementarnych, danych wynikowych oraz kontroli Diagnostyka stanu nawierzchni - DSN Generalna Dyrekcja Dróg Krajowych i Autostrad Warszawa, 21 maja 2012 Historia dokumentu
Szkoła programisty PLC : sterowniki przemysłowe / Gilewski Tomasz. Gliwice, cop Spis treści
Szkoła programisty PLC : sterowniki przemysłowe / Gilewski Tomasz. Gliwice, cop. 2017 Spis treści O autorze 9 Wprowadzenie 11 Rozdział 1. Sterownik przemysłowy 15 Sterownik S7-1200 15 Budowa zewnętrzna
Wprowadzenie 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
Dni: 3. Opis: Adresaci szkolenia
Kod szkolenia: Tytuł szkolenia: ISTQB/TTA ISTQB - Technical Test Analyst Dni: 3 Opis: Adresaci szkolenia Szkolenie jest skierowane do testerów posiadających certyfikat ISTQB Certified Tester przynajmniej
Etapy ż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
Wykład Ćwiczenia Laboratorium Projekt Seminarium Liczba godzin zajęć zorganizowanych w
WYDZIAŁ MATEMATYKI KARTA PRZEDMIOTU Nazwa w języku polskim: Analiza danych ankietowych Nazwa w języku angielskim: Categorical Data Analysis Kierunek studiów (jeśli dotyczy): Matematyka stosowana Specjalność
PRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Algorytmy i programowanie Algorithms and Programming Kierunek: Zarządzanie i Inżynieria Produkcji Rodzaj przedmiotu: kierunkowy Poziom studiów: studia I stopnia forma studiów: studia
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 1. Wprowadzenie do aplikacji internetowych
PRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: moduł specjalności obowiązkowy: Inżynieria oprogramowania Rodzaj zajęć: wykład, laboratorium TESTOWANIE OPROGRAMOWANIA Software testing Forma
Nazwa wariantu modułu (opcjonalnie): Laboratorium programowania w języku C++
Uniwersytet Śląski w Katowicach str. 1 Kierunek i poziom studiów: Chemia, poziom pierwszy Sylabus modułu: Laboratorium programowania (0310-CH-S1-019) Nazwa wariantu modułu (opcjonalnie): Laboratorium programowania
Projektowanie systemów informatycznych. Roman Simiński programowanie.siminskionline.pl. Cykl życia systemu informatycznego
systemów informatycznych Roman Simiński roman.siminski@us.edu.pl programowanie.siminskionline.pl Cykl życia systemu informatycznego Trochę wprowadzenia... engineering co to oznacza? Oprogramowanie w sensie
Praktyka Programowania
Praktyka Programowania Dariusz Dereniowski Materiały udostępnione przez Adriana Kosowskiego Katedra Algorytmów i Modelowania Systemów Politechnika Gdańska deren@eti.pg.gda.pl Gdańsk, 2010 strona przedmiotu:
Faza Określania Wymagań
Faza Określania Wymagań Celem tej fazy jest dokładne określenie wymagań klienta wobec tworzonego systemu. W tej fazie dokonywana jest zamiana celów klienta na konkretne wymagania zapewniające osiągnięcie
INŻYNIERIA OPROGRAMOWANIA TESTOWANIE SYSTEMOWE
INŻYNIERIA OPROGRAMOWANIA TESTOWANIE SYSTEMOWE Ważne pojęcia (I) Warunek testowy (test condition) to element lub zdarzenie modułu lub systemu, który może być zweryfikowany przez jeden lub więcej przypadków
STRESZCZENIE. rozprawy doktorskiej pt. Zmienne jakościowe w procesie wyceny wartości rynkowej nieruchomości. Ujęcie statystyczne.
STRESZCZENIE rozprawy doktorskiej pt. Zmienne jakościowe w procesie wyceny wartości rynkowej nieruchomości. Ujęcie statystyczne. Zasadniczym czynnikiem stanowiącym motywację dla podjętych w pracy rozważań
Skró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.
Architektura 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,
Problemy 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
Kontrola jakości artefaktów
Kontrola jakości artefaktów Artefakty produkty, wytwory rąk ludzkich: Dokumenty Specyfikacje Kod Jakość zgodność z wymaganiami (jawnymi i ukrytymi, z których istnienia klient nie zdaje sobie sprawy) Philip
Programowanie komputerowe. Geodezja i Kartografia I stopień (I stopień / II stopień) akademicki (ogólno akademicki / praktyczny)
Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Programowanie komputerowe Nazwa modułu w języku angielskim Computer programming
UPEDU: Testowanie (ang. Testing discipline)
Wydział Informatyki PB Wprowadzenie Inżynieria oprogramowania II Marek Krętowski e-mail: mkret@wi.pb.edu.pl http://aragorn.pb.bialystok.pl/~mkret Wykład 9: UPEDU: Testowanie (ang. Testing discipline) Dwa
Modelowanie 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
Testowanie oprogramowania. Piotr Ciskowski
Testowanie oprogramowania Piotr Ciskowski TESTOWANIE testowanie o proces eksperymentalnego badania programu lub jego komponentu o próbne wykonanie w znanych warunkach o rejestrowanie wyników o ocena właściwości
Grzegorz 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
Spis treści. Przedmowa... XI. Rozdział 1. Pomiar: jednostki miar... 1. Rozdział 2. Pomiar: liczby i obliczenia liczbowe... 16
Spis treści Przedmowa.......................... XI Rozdział 1. Pomiar: jednostki miar................. 1 1.1. Wielkości fizyczne i pozafizyczne.................. 1 1.2. Spójne układy miar. Układ SI i jego
Jakość oprogramowania część 2 Zapewnianie jakości oprogramowania
Jakość oprogramowania część 2 Zapewnianie jakości oprogramowania Wykładowca Dr inż. Zofia Kruczkiewicz 2018-05-15 1 Literatura 1. I. Sommerville, Inżynieria oprogramowania, s. Klasyka informatyki, WNT
Zaawansowane programowanie w języku C++
Kod szkolenia: Tytuł szkolenia: C/ADV Zaawansowane programowanie w języku C++ Dni: 3 Opis: Uczestnicy szkolenia zapoznają się z metodami wytwarzania oprogramowania z użyciem zaawansowanych mechanizmów
wbudowane October 7, 2015 KSEM WETI PG Komputery przemysłowe i systemy wbudowane Oprogramowanie systemów wbudowanych - wydajność Wydajność
KSEM WETI PG October 7, 2015 Inżynieria wydajności oprogramowania Software performance engineering (SPE) - dyscyplina zajmująca się poprawą dojrzałości procesu budowy i rozwoju dla zwiększenia ich wydajności.
Tom 6 Opis oprogramowania
Część 4 Narzędzie do wyliczania wielkości oraz wartości parametrów stanu Diagnostyka stanu nawierzchni - DSN Generalna Dyrekcja Dróg Krajowych i Autostrad Warszawa, 30 maja 2012 Historia dokumentu Nazwa
Język programowania C C Programming Language. ogólnoakademicki
Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Nazwa modułu w języku angielskim Obowiązuje od roku akademickiego 2013/2014
Programowanie komputerowe Computer programming
KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Nazwa modułu w języku angielskim Obowiązuje od roku akademickiego 2015/2016 Programowanie komputerowe Computer programming A. USYTUOWANIE MODUŁU
tel. (+48 81) 538 47 21 tel. (+48 81) 538 42 91 Wykład 30 21 Ćwiczenia Laboratorium 30 21 Projekt
tel. (+48 8) 538 47 tel. (+48 8) 538 4 9 ul. Nadbystrzycka 40, 0-68 Lublin fax (+48 8) 538 4580 Przedmiot: Rok: 3 INF I st. Projektowanie interfejsu i ergonomia systemów Semestr: VII Rodzaj zajęć i liczba
1. 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
Programowanie I. O czym będziemy mówili. Plan wykładu nieco dokładniej. Plan wykładu z lotu ptaka. Podstawy programowania w językach. Uwaga!
Programowanie I O czym będziemy mówili Podstawy programowania w językach proceduralnym ANSI C obiektowym Java Uwaga! podobieństwa w podstawowej strukturze składniowej (zmienne, operatory, instrukcje sterujące...)
Kumulowanie się defektów jest możliwe - analiza i potwierdzenie tezy
Kumulowanie się defektów jest możliwe - analiza i potwierdzenie tezy Marek Żukowicz 14 marca 2018 Streszczenie Celem napisania artykułu jest próba podania konstruktywnego dowodu, który wyjaśnia, że niewielka
Zamieszczanie ogłoszenia: obowiązkowe. Ogłoszenie dotyczy: zamówienia publicznego.
Gdańsk: Dostawa oprogramowania dla Wydziału Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej Numer ogłoszenia: 58219-2013; data zamieszczenia: 17.04.2013 OGŁOSZENIE O ZAMÓWIENIU - dostawy
EFEKTY KSZTAŁCENIA DLA KIERUNKU STUDIÓW
EFEKTY KSZTAŁCENIA DLA KIERUNKU STUDIÓW WYDZIAŁ KIERUNEK z obszaru nauk POZIOM KSZTAŁCENIA FORMA STUDIÓW PROFIL JĘZYK STUDIÓW Podstawowych Problemów Techniki Informatyka technicznych 6 poziom, studia inżynierskie
PRZEWODNIK PO PRZEDMIOCIE
Inżynieria Software quality engineering Informatyka Stacjonarne IO2_05 Obowiązkowy w ramach specjalności: inżynieria II stopień Rok: I Semestr: II wykład, laboratorium 1W, 2L 3 ECTS I KARTA PRZEDMIOTU
Podstawy Programowania Obiektowego
Podstawy Programowania Obiektowego Wprowadzenie do programowania obiektowego. Pojęcie struktury i klasy. Spotkanie 03 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Idea programowania obiektowego Definicja
Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa
1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko
Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat
Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie
Strategia testów mająca doprowadzić do osiągnięcia pożądanych celów
Dokumentacja testowa. Plan testów [ang. Test Plan] Plan testów jest jednym z podstawowych dokumentów w procesie testowym. Przedstawiamy wzór planu testów. testerzy.pl Zapraszamy do dyskusji o planie testów
Wykład 7. Projektowanie kodu oprogramowania
Wykład 7 Projektowanie kodu oprogramowania Treść wykładu cykl życiowy oprogramowania zagadnienia inżynierii oprogramowania tworzenie oprogramowania z gotowych elementów tworzenie niezawodnego oprogramowania
Historia modeli programowania
Języki Programowania na Platformie.NET http://kaims.eti.pg.edu.pl/ goluch/ goluch@eti.pg.edu.pl Maszyny z wbudowanym oprogramowaniem Maszyny z wbudowanym oprogramowaniem automatyczne rozwiązywanie problemu
Projekt przejściowy 2015/2016 BARTOSZ JABŁOŃSKI, TOMASZ JANICZEK
Projekt przejściowy 2015/2016 BARTOSZ JABŁOŃSKI, TOMASZ JANICZEK Kto? dr inż. Tomasz Janiczek tomasz.janiczek@pwr.edu.pl s. P1.2, C-16 dr inż. Bartosz Jabłoński bartosz.jablonski@pwr.edu.pl s. P0.2, C-16
KARTA KURSU. Grafika komputerowa
KARTA KURSU Nazwa Nazwa w j. ang. Grafika komputerowa Computer graphics Kod Punktacja ECTS* 3 Koordynator dr inż. Krzysztof Wójcik Zespół dydaktyczny: dr inż. Krzysztof Wójcik dr inż. Mateusz Muchacki
Optymalizacja Automatycznych Testów Regresywnych
Optymalizacja Automatycznych Testów Regresywnych W Organizacji Transformującej do Agile Adam Marciszewski adam.marciszewski@tieto.com Agenda Kontekst projektu Typowe podejście Wyzwania Cel Założenia Opis
REFERAT 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
Egzamin / 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
Projekt przejściowy 2016/2017 BARTOSZ JABŁOŃSKI
Projekt przejściowy 2016/2017 BARTOSZ JABŁOŃSKI Kto, co, jak i kiedy Kto? dr inż. Bartosz Jabłoński bartosz.jablonski@pwr.edu.pl s. P0.2, C-16 http://jablonski.wroclaw.pl O co chodzi? Celem przedmiotu
Programowanie komputerów
Programowanie komputerów Wykład 1-2. Podstawowe pojęcia Plan wykładu Omówienie programu wykładów, laboratoriów oraz egzaminu Etapy rozwiązywania problemów dr Helena Dudycz Katedra Technologii Informacyjnych
Usł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
SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa
Autorzy scenariusza: SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH
WPROWADZENIE 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,
Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki
Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki Turbo Pascal jest językiem wysokiego poziomu, czyli nie jest rozumiany bezpośrednio dla komputera, ale jednocześnie jest wygodny dla programisty,
Metryki oprogramowania. Marian Jureczko
Metryki oprogramowania Marian Jureczko Plan wykładu Metryki wyliczane z kodu źródłowego CK Metrics (1994) Złożoność cyklomatyczna McCabe'a (1976) Metryki wyliczane z diagramów (2002) Narzędzia do wyliczania
Wykład Ćwiczenia Laboratorium Projekt Seminarium
WYDZIAŁ ELEKTRONIKI KARTA PRZEDMIOTU Nazwa w języku polskim Języki programowania Nazwa w języku angielskim Programming languages Kierunek studiów (jeśli dotyczy): Informatyka - INF Specjalność (jeśli dotyczy):
Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów
Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów przeznaczonych do wykonania w komputerze (ang. software).
KARTA MODUŁU KSZTAŁCENIA
KARTA MODUŁU KSZTAŁCENIA I. Informacje ogólne 1 Nazwa modułu kształcenia Inżynieria 2 Nazwa jednostki prowadzącej moduł Instytut Informatyki, Zakład Informatyki Stosowanej 3 Kod modułu (wypełnia koordynator
Szczegół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
Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32
Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:
Parametry wydajnościowe systemów internetowych. Tomasz Rak, KIA
Parametry wydajnościowe systemów internetowych Tomasz Rak, KIA 1 Agenda ISIROSO System internetowy (rodzaje badań, konstrukcja) Parametry wydajnościowe Testy środowiska eksperymentalnego Podsumowanie i
Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki
Studia Podyplomowe INFORMATYKA Podstawy Informatyki Wykład V Rzut okiem na języki programowania 1 Kompilacja vs. interpretacja KOMPILACJA Proces, który przetwarza program zapisany w języku programowania,
Opis 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
PROJEKTOWANIE. kodowanie implementacja. PROJEKT most pomiędzy specyfikowaniem a kodowaniem
PROJEKTOWANIE określenie wymagań specyfikowanie projektowanie kodowanie implementacja testowanie produkt konserwacja Faza strategiczna Analiza Dokumentacja Instalacja PROJEKT most pomiędzy specyfikowaniem