projektowanie systemów informatycznych

Projekty

Kategorie

Linki

Polecam


tagi

archiwum

Umarł Król niech żyje Król

poniedziałek 18 sty 2010

The Rational Edge to, moim zdaniem, jeden z najlepszych magazynów wydawanych w formie elektronicznej. Cenię go bardzo także za to, że w sposób niesłychanie merytoryczny traktował o produktach Rationala i nie tylko. The Rational Edge to teksty, które miały i mają niesamowity wpływ na rozwój inżynierii oprogramowania. Pierwsze wydanie miało miejsce 15 grudnia 2000 roku i można było wnim przeczytać teksty Jim Rumbaugh’a – “Trends in UML and e-development” i Philippe Kruchtena’a “From Waterfall to Iterative Development” – KLASYKA. Po niemalże dekadzie na rynku z miesięcznika zrobił się kwartalnik a obecnie IBM zastąpił Rational Edge  nowym wydawnictwem Leading Innovation.

Umarł The Rational Edge niech żyje Leading Innovation.

Niestety moim zdaniem Leading Innovation nie dorasta do pięt swojemu poprzednikowi bo to co jest pod hasłem Rational leading innovation library to miernota.  Widać wyraźnie, że IBM zagubił się w swojej wizji rozwiązań wspierających inżynierię oprogramowania. Wydaje mi się, że akwizycja Rational’a i Telelogica nie pomogły. Co z tego, że IBM posiada w swoim portfolio największą grupę narzędzi CASE jak one się dublują (patrz DOORS i RequisitePro, System Architect i Software Architect). Istna wieża Babel, w której nie ma ducha innowacyjności i twórczego podejścia do inżynierii oprogramowania, z jaką można było się spotkać na łamach The Rational Edge w tekstach wielu wybitnych fachowców. Szkoda, że trak się stało. Liczę jednak na prawa natury, która nie lubi pustki. Czym wypełni brak kolejnych wydać The Rational Edge. Zobaczymy.


o wymaganiach

poniedziałek 11 sty 2010

W sieci pojawił się nowy blog o wymaganiach (http://owymaganiach.pl/). Cieszy mnie ta inicjatywa, Pana Jakuba Jurkiewicza – doktoranta na Politechnice Poznańskiej, gdyż w sieci jest mało zasobów na temat inżynierii oprogramowania a te zapowiadają się sensownie.    Z pierwszych wpisów polecam teksty o przypadkach użycia. Powodzenia :)


BoUml

wtorek 29 gru 2009

Od pewnego czasu o moje uszy obija się nazwa BoUML. Co to jest? To jest narzędzie do open source’owe narzędzie do modelowania. Zaintrygowany pochlebnymi opiniami zainstalowałem i oto moja króciutka opinia. Naprawdę króciutka, bo całe dobro i zło danego narzędzia wychodzi w projektach.

Podoba mi się, że klasę (a więc także aktora i przypadek użycia) można opisać nie tylko za pomocą pola description ale także jest dedykowane miejsce dla wszelkich warunków i ograniczeń.

image 

A teraz największa porażka. Brak polskich liter.

image

przeczytaj pozostałą część »


Listopadowe szkolenia

poniedziałek 30 lis 2009

Listopad dla mnie to przede wszystkim przygotowania do projektu o kodowej nazwie“tormigo” – lubię myśleć o tym projekcie, że to będzie mała rewolucja, ale o tym napisze w odpowiednim czasie. Ponadto przeprowadziłem dwa szkolenia. Jedno z zakresu modelowania procesów biznesowych, drugie z zakresu modelowaniu w UML z wykorzystaniem Enterprise Architect. Szkolenia były przeprowadzane, dla różnych organizacji. Oba wydarzenia łączyło to, że podstawą działań było dokładne i permanentne zrozumienie procesu biznesowego. Dlaczego? Moim zdaniem dziś nie można mówić o modelowaniu systemów IT bez analizy procesu biznesowego – to podstawa działań.

W anonimowych ankietach, w obu organizacjach, otrzymałem dobre i bardzo dobre oceny za moje przygotowanie i przeprowadzenie szkolenia. Najbardziej w pamięci utkwiły mi dwa komentarze. W jednej z ankiet dot. szkolenia zakresu modelowaniu w UML z wykorzystaniem Enterprise Architect w punkcie co najbardziej podobało Ci się na niniejszym szkoleniu: “Ćwiczenia praktyczne i konkretny pomysł, co przekazać słuchaczom (co rzadko się zdarza)”.  Natomiast w ankiecie dot. szkolenia z modelowania biznesowego zostałem nagrodzony jednym słowem: “Perfekcyjnie”. Wielkie dzięki :)


Czy warto stosować mechanizmy inżynierii wprzód i wstecz w zwinnym modelowaniu?

piątek 13 lis 2009

Ostatnie kilka wpisów:

dotyczyło metod integracji kodu z jej modelem. Przedstawiłem to zagadnienie w różnych wariantach z pluginem (MDG Integration for Eclipse) i bez. Teraz czas na podsumowanie i pytanie czy jest sens synchronizować model z jego implementacją w trakcie kodowania. Moim skromnym zdaniem NIE. Dlaczego?

przeczytaj pozostałą część »


Mały sekret reverse i forward engineering w Enterprise Architect

piątek 13 lis 2009

W poprzednich tekstach (Inżynieria wstecz w projektach JAVA za pomocą Enterprise Architect, MDG Integration for Eclipse i generowanie kodu aplikacji z poziomu Enterprise Architect) pisałem o inżynierii wstecz w Enterprise Architect. Teraz czas na mały sekret.

przeczytaj pozostałą część »


Pisanie kodu w Enterprise Architect

czwartek 12 lis 2009

Czy można pisać kod aplikacji w Enterprise Architect? Tak można i zaprezentuje to na przykładzie z którego korzystałem w tekście: Inżynieria wstecz w projektach JAVA za pomocą Enterprise Architect

przeczytaj pozostałą część »


MDG Integration for Eclipse i generowanie kodu aplikacji z poziomu Enterprise Architect

wtorek 10 lis 2009

W tekście Enterprise Architect i MDG Integration for Eclipse w praktyce opisałem wstępnie wtyczkę MDG Integration for Eclipse, która ułatwia integrację Enterprise Architecta ze środowiskiem Eclipse. Teraz postaram się zaprezentować możliwości wtyczki w zakresie synchronizacji kodu z modelem.

przeczytaj pozostałą część »


Enterprise Architect i MDG Integration for Eclipse w praktyce

wtorek 10 lis 2009

Tradycyjną metodę inżynierii wstecz opisałem kilka dni temu w tekście: Inżynieria wstecz w projektach JAVA za pomocą Enterprise Architect. Dziś chciałbym się skupić na płatnej wtyczce jaką można zastosować do Enterprise Architecta celem synchronizacji modeli ze środowiskiem JAVA czyli MDG Integration for Eclipse.

przeczytaj pozostałą część »


Inżynieria wstecz w projektach JAVA za pomocą Enterprise Architect

poniedziałek 9 lis 2009

Mechanizm inżynierii wstecz (ang. reverse engineering) wstecz jest użyteczny w tedy, gdy mamy napisany program i chcemy go udokumentować za pomocą modeli UML. Powstała w ten sposób dokumentacja jest modelem implementacji. W Enterprise Architect można dokonać tego poprzez wybór odpowiedniego parametru w menu kontekstowym pakietu do którego będzie importowany kod.

przeczytaj pozostałą część »


O systemach dwa słowa

poniedziałek 9 lis 2009

Dużo się mówi na temat modelowania systemów informatycznych w języku UML. A co z systemami, które nie są informatycznymi? Za nim odpowiem na to pytanie warto przypomnieć sobie czym jest system a pomoże mi w tym zestawienie jakie zrobił Robert Gwiazdowski, którego pozwalam sobie zacytować:

Pod pojęciem systemu nauka rozumie zintegrowaną całość, której własności nie są prostą sumą własności poszczególnych części tej całości, istnienie jednak szereg związków i interakcji pomiędzy nimi. (E. Laszlo, Systemowy obraz świata, Warszawa 1978; L. von Bertalanffy, Ogólna teoria systemów, Warszawa 1984) „Doniosłą cechą systemów jest tkwiący w samej ich istocie charakter dynamiczny. Systemy pod względem formy nie są sztywnymi strukturami; ich forma wyraża zmienne, a jednocześnie trwałe przejawy procesów zachodzących w systemach”. (F. Capra, Punkt zwrotny, Warszawa 1987) Funkcjonowanie systemu stanowi rezultat zachodzących w nich pętli sprzężeń zwrotnych polegających na tym, że element A oddziaływa na element B, B na C, zaś C zwrotnie na A. W systemie nie działa linearny łańcuch przyczyn i skutków, lecz zjawisko nielinearnej współzależności.

Z powyższych definicji wynika, że system składa się ze struktur, które zmieniają swój stan – przejawiają zachowanie. Jest to wspólna cecha systemów informatycznych (np.: struktura: klasa, zachowanie metoda, która zmienia stan klasy) i systemów nieinformatycznych (np.: struktura: siłownik, zachowanie: uruchomienie dźwigni, która zmienia położenie – stan  -siłownika).

Reasumując skoro UML nadaje sie do modelowania systemów informatycznych to nadaje się także do modelowania wszystkich innych typów systemów ze szczególnym  naciskiem na automatykę i robotykę.  Nie można też zapomnieć o innych dziedzinach społecznych nie związanych z informatyką, gdzie są stosowane różnej maści systemy (np.: system wynagrodzeń). W obszarach nietechnicznych UML sprawdza się bardzo dobrze przy modelowaniu procesów biznesowych, gdzie także możemy odnotować, że (cytując R. Gwiazdowskiego)  element A oddziaływa na element B, B na C, zaś C zwrotnie na A. Co w konsekwencji pozwala sądzić, że w modelach biznesowych (ponownie cyt.) nie działa linearny łańcuch przyczyn i skutków, lecz zjawisko nielinearnej współzależności.


Szacowanie projektu w Enterprise Architect cz. 1

piątek 2 paź 2009

Warto wiedzieć, że istnieją na rynku narzędzia CASE, które wspierają inżynierów oprogramowania nie tylko w zarządzaniu wymaganiami, modelowaniu, projektowaniu systemów informatycznych, generowaniu kodu aplikacji, ale również w szacowaniu pracochłonności ich wytworzenia. Jednym z nich jest Enterprise Architect firmy Sparx System, który wspiera estymację pracochłonności wykonania sytemu informatycznego metodą punktów przypadków użycia.

W celu skorzystania z funkcjonalności związanej z szacowaniem pracochłonności, należy podczas tworzenia modelu systemu informatycznego konsekwentnie definiować istotne z punktu widzenia metody punktów przypadków użycia parametry wybranych komponentów, z których składa się model oraz zdefiniowania odpowiednich wartości parametrów dla tej metody.

clip_image002

Rysunek 1. Przeglądarka projektu narzędzia Enterprise Architect i widoczne elementy modelu systemu oceny pracowników: aktorzy systemu i przypadki użycia.

przeczytaj pozostałą część »