Jak budować zakres projektu z pomocą inżynierii systemowejJaroslaw Zelinski
Inżynieria systemów to także analiza i precyzowanie wymagań, to zawieranie kontraktu na wykonanie i dostarczenie produktu. Oprogramowanie, mimo wymaganej i popularnej "zwinności" także należy tworzyć "z głową".....
Oprogramowanie bardzo często zastępuje konstrukcje rzeczywiste takie jak zegarek, kartoteka, biblioteka, księgi handlowe, programator pralki i wiele innych rzeczy. Dlatego analiza powinna polega na zrozumieniu mechanizmy działania "tego czegoś" a nie spisaniu zewnętrznych oznak tego działania.
Celem referatu jest pokazanie systemu ERP_II jako złożonego środowiska usługowego wspomagającego zarządzanie firmą (organizacją), w którym korzystanie z rozproszonej architektury wymaga specyficznego podejścia.
Modelowanie procesów biznesowych oraz trendy w rozwoju tej dziedziny. Stosowanie notacji, tabel decyzyjnych, reguł biznesowych, RACI. autor: Jarosław Żeliński
Narzędzia do analizy biznesowej: wady i zalety. Plan analizy biznesowej w pra...Business Analysts Meetup
•Analiza Biznesowa jako złożoność treści jej produktu
•Spójny, niesprzeczny i Kompletny czyli jaki?
•Czym jest plan pracy AB czyli struktura modelu biznesowego
•Realia korzystania z narzędzi CASE zwinny vs. mało ryzykowny
•Narzędzia CASE dobre praktyki
Autorem prezentacji jest Jarosław Żeliński - analityk biznesowy, projektant systemowy, który wystąpił jako prelegent na naszych spotkaniach 10 marca 2016 we Wrocławiu.
Jak budować zakres projektu z pomocą inżynierii systemowejJaroslaw Zelinski
Inżynieria systemów to także analiza i precyzowanie wymagań, to zawieranie kontraktu na wykonanie i dostarczenie produktu. Oprogramowanie, mimo wymaganej i popularnej "zwinności" także należy tworzyć "z głową".....
Oprogramowanie bardzo często zastępuje konstrukcje rzeczywiste takie jak zegarek, kartoteka, biblioteka, księgi handlowe, programator pralki i wiele innych rzeczy. Dlatego analiza powinna polega na zrozumieniu mechanizmy działania "tego czegoś" a nie spisaniu zewnętrznych oznak tego działania.
Celem referatu jest pokazanie systemu ERP_II jako złożonego środowiska usługowego wspomagającego zarządzanie firmą (organizacją), w którym korzystanie z rozproszonej architektury wymaga specyficznego podejścia.
Modelowanie procesów biznesowych oraz trendy w rozwoju tej dziedziny. Stosowanie notacji, tabel decyzyjnych, reguł biznesowych, RACI. autor: Jarosław Żeliński
Narzędzia do analizy biznesowej: wady i zalety. Plan analizy biznesowej w pra...Business Analysts Meetup
•Analiza Biznesowa jako złożoność treści jej produktu
•Spójny, niesprzeczny i Kompletny czyli jaki?
•Czym jest plan pracy AB czyli struktura modelu biznesowego
•Realia korzystania z narzędzi CASE zwinny vs. mało ryzykowny
•Narzędzia CASE dobre praktyki
Autorem prezentacji jest Jarosław Żeliński - analityk biznesowy, projektant systemowy, który wystąpił jako prelegent na naszych spotkaniach 10 marca 2016 we Wrocławiu.
Modele i metodyki wdrażania i zarządzania projektami eaiJaroslaw Zelinski
Enterprise application integration (EAI) is the use of software and computer systems' architectural principles to integrate a set of enterprise computer applications. How to use BPMN and UML notation.
Analityk w świecie automatyzacji i robotyzacji biznesuAndrzej Sobczak
Zaawansowana automatyzacja i robotyzacja zmienia rynek pracy i modele działania przedsiębiorstw. Jak w takiej rzeczywistości ma się odnaleźć analityk biznesowy/systemowy? Czy roboty zabiorą mu prace?
Biznes się zmienia. IT się zmienia. Ale czy narzędzia i metody pracy analityka i architekta zmieniają się lub powinny zmienić się - w szczególności w czasach coraz powszechniejszej robotyzacji procesów? W prezentacji będę starał się spojrzeć na relacje występujące między analitykiem-architektem a robotami z dwóch różnych perspektyw – tj. czy musimy inaczej niż do tej pory podejść do analizy i architektury zrobotyzowanego biznesu i jak roboty mogą pomóc w pracy analityka/architekta. Okazuje się bowiem, że coraz częściej wiele firm patrzy na analityków/architektów jako koszt (który może i przynosi korzyści, ale mocno odroczone w czasie) i zastanawia się, czy jest jakieś podejście umożliwiające podniesienie efektywności pracy tych ról.
Elitmind @ SQLDay2018: Stream Analytics i Machine Learning – czy to dobrze do...Elitmind
Współczesne rozwiązania w obszarze zaawansowanej analityki danych muszą być gotowe na nowego typu wyzwanie: analizę danych pochodzących z różnych źródeł w czasie bliskim rzeczywistemu. Jednym z celów może być reagowanie na zdarzenia w social media czy dostarczanie spersonalizowanych ofert klientom dokładnie wtedy, kiedy tego rzeczywiście potrzebują.
W trakcie prezentacji Barbara Leśniarek (Data Scientist w Elitmind) oraz Kamil Słomka (Senior Business Intelligence Consultant) pokazali przykład implementacji takiego rozwiązania w oparciu o usługi Microsoft Azure: Stream Analytics oraz Machine Learning.
Prezentacja powstała na potrzeby webinara pt. Praca testera w Scrumie.
Podczas webinara Ola Woszczyk- testerka z testuj.pl, opowiedziała, o tym czym jest SCRUM i jak wygląda praca w zespole Scrumowym. Ponadto wyjaśniła, jaką rolę w Scrumie pełni tester i jakie najczęstsze błędy popełniają członkowie zespołu.
Prezentacja dostępna jest jako kolejny slajd po wyświetlonym filmie.
Robotyzacja procesów biznesowych - od optymalizacji do transformacji modelu d...Andrzej Sobczak
Obecnie coraz więcej przedsiębiorstw w mniejszym lub większym zakresie wdrożyło lub planuje wdrożyć u siebie rozwiązania klasy RPA (Robotic Process Automation). Pojawia się pytanie – jaki może być scenariusz wykorzystania tej technologii. Część z firm może zatrzymać się na punktowo wdrożonych rozwiązaniach RPA, część będzie automatyzować poszczególne procesy lub obszary, a tylko nieliczne będą postrzegły wdrożenie zrobotyzowanej automatyzacji procesów jako okazję do transformacji modelu działa przedsiębiorstwa. Oczywiście każda z tych ścieżek wiąże się z innym podejściem - nie tylko na etapie wdrożenia, ale również utrzymania, zarządzania zmianą i dalszego rozwoju. Prezentacja poświęcona jest sposobowi konsekwencjom – zarządczym i organizacyjnym wdrożenia RPA w organizacji.
Jak budujemy inteligentnego asystenta biznesowego2040.io
Dlaczego inteligentny asystent może się okazać najważniejszą przewagą konkurencyjną na Twoim rynku? Co zrobić, by wdrożyć nowoczesną technologię do Twojego działu sprzedaży już dzisiaj? Jak zyskać na wdrożeniu sztucznej inteligencji w dziale sprzedażowym?
>> https://edward.ai/pl <<
Kompendium wiedzy dla każdego programisty, projektanta i kierownika projektu
* Nowoczesne metodyki wytwarzania oprogramowania
* Narzędzia do modelowania aplikacji i automatycznego generowania kodu
* Koncepcja architektury sterowanej modelami
* Sposoby zapewnienia jakości aplikacji
Tworzenie aplikacji korporacyjnych to wyścig z czasem. Organizacje zmieniają się podobnie jak otoczenie biznesowe, w którym działają. Zbyt długi okres przygotowania aplikacji może sprawić, że po wdrożeniu okaże się ona bezużyteczna. Z drugiej jednak strony, zbyt duży pośpiech przy tworzeniu aplikacji powoduje, że pomija się fazę modelowania i testowania, pisząc kod źródłowy bez jakiejkolwiek koncepcji i planu. Efektem takiego pośpiechu są aplikacje niedostosowane do wymagań użytkowników i pracujące niestabilnie. Sposobem na stworzenie odpowiedniego systemu informatycznego dla korporacji jest wykorzystywanie odpowiednich metodyk projektowych i nowoczesnych narzędzi ułatwiających zarówno pisanie, jak i testowanie aplikacji.
Książka "J2EE. Podstawy programowania aplikacji korporacyjnych" przedstawia najlepsze praktyki projektowe stosowane przy tworzeniu systemów informatycznych z wykorzystaniem platformy J2EE. Opisano w niej kolejne etapy projektu oraz narzędzia i metodyki, dzięki którym przeprowadzenie każdego z nich będzie szybsze i efektywniejsze. Czytając ją, poznasz metodyki RUP i XP, typy architektur systemów oraz sposoby modelowania aplikacji i narzędzia do automatycznego generowania szkieletu kodu źródłowego. Dowiesz się, jak optymalnie skonfigurować środowiska programistyczne i jak testować kolejne moduły aplikacji. Nauczysz się korzystać z nowoczesnych metodyk i narzędzi.
* Podstawowe wiadomości o błyskawicznym wytwarzaniu aplikacji (RAD)
* Metodyki projektowe Rational Unified Process (RUP) oraz Extreme Programming (XP)
* Wielowarstwowe architektury systemów
* Modelowanie systemów za pomocą języka UML
* Automatyczne generowanie kodu
* Stosowanie narzędzi XDoclet i Hibernate
* Komunikacja z bazami danych
* Zasady programowania aspektowego
* Testowanie aplikacji
Wiadomości zawarte w tej książce sprawią, że będziesz w stanie szybciej projektować i tworzyć aplikacje korporacyjne.
Aplikacje biznesowe dotyczą danych -- niezależnie od tego, czy są to dane o produkcie, szczegóły dotyczące kart kredytowych użytkowników czy preferowanego koloru kupowanych samochodów. Wraz ze wzrostem znaczenia informacji wzrosła także złożoność dostępu do nich. Programiści Javy mogą wybierać teraz spośród różnego rodzaju interfejsów API i technologii -- EJB, JDO, JDBC, SQL, RDBMS, OODBMS i innych. Do tej pory byli oni zdani na siebie przy podejmowaniu decyzji o tym, który model najlepiej pasuje do ich aplikacji i jak w najlepszy sposób korzystać z wybranego API.
Książka "Java. Aplikacje bazodanowe. Najlepsze rozwiązania" przychodzi z pomocą programistom. Teraz nie muszą już oni przeszukiwać kilku książek na temat różnych API, aby zdecydować o odpowiedniej metodzie. Ten obszerny przewodnik omawia podstawy wszystkich wiodących interfejsów API (Enterprise JavaBeans, Java Data Objects, JDBC, a także innych, mniej znanych opcji), objaśnia metodologię i komponenty projektowe wykorzystujące wspomniane interfejsy oraz prezentuje rozwiązania najbardziej dostosowane do różnych typów aplikacji.
Książka omawia także zagadnienia dotyczące projektowania baz danych, począwszy od architektury tabel, skończywszy na normalizacji. Autor przedstawia najlepsze rozwiązania rozmaitych problemów. Nauczysz się w jaki sposób przeprowadzać różne rodzaje normalizacji, a także dowiesz się, kiedy warto przeprowadzić denormalizację. Uzyskasz także szczegółowe instrukcje dotyczące optymalizacji zapytań SQL w celu najlepszego wykorzystania struktury bazy danych. Zaprezentowano także praktyczne zastosowania omawianych technik dostarczając informacje, które Czytelnik może zastosować natychmiast we własnych projektach aplikacji biznesowych.
Projekty IT nie istnieją (zrezygnujmy z tej nazwy). Każdy projekt jest projektem biznesowym z cześcią informatyczną (technoloiczną). IT nie istnieje samo dla siebie. Usługi IT wspierające procesy biznesowe. Najlepsze praktyki (best practices) pomagają prowadzić projekty z częścią IT. Jest to szczególnie ważne przy wdrażaniu kontraktów outsourcingowych oraz Centów Usług Wspólnych (Shared Service Centres, SSC)
Best Practice User Group™ (BPUG™) Polska to stowarzyszenie promujące najlepsze praktyki z zakresu zarządzania projektami, programami, portfelami, usługami i ryzykiem. Organizacja powstała w 1993 w Wielkiej Brytanii jako PRINCE2 User Group, od 2005 jako Best Practice User Group, od 2011 działa polski oddział BPUG Polska.
Podstawowe metodyki i produkty to Projects In Controlled Environments (PRINCE2™), Managing Successful Programmes (MSP™), Management of Risk (M_o_R®), Portfolio, Programme and Project Offices (P3O®), Portfolio, Programme, and Project Management Maturity Model (P3M3®), Management of Value (MoV®), Management of Portfolios (MoP™).
Zwinne metodyki zawdzięczają swoje powstanie dzięki potrzebie elastycznej obsługi szybko zmieniających się wymagań klienta w czasie trwania projektu oraz tworzeniu wysokiej jakości programów, aplikacji czy serwisów internetowych. Prezentacja ukazuje jedną z najpopularniejszych technik wspierających zbieranie i opisywanie wymagań użytkownika w postaci historyjek (User Stories) oraz ich późniejszą projekcję na codzienną pracę zespołu poprzez zbiór kryteriów akceptacji (Acceptance Criteria).
[PL] Bez trudu i ryzyka! Jak tworzyć przepływy pracy w SharePoint?Datapolis
SharePoint, wbrew temu, co często twierdzą użytkownicy, jest świetną platformą do tworzenia biznesowych przepływów! Tomasz Głogosz, project manager Datapolis, pokazuje w tej prezentacji, jak można uniknąć wielu problemów podczas wdrażania przepływów dzięki wcześniejszemu planowaniu
Sztuka wojny wg analityka IT - jak współpracować z trudnym klientemKatarzyna Mrowca
Sztuka wojny wg analityka IT - jak współpracować z trudnym klientem?
Materiały dodatkowe z warsztatu przeprowadzonego podczas 10. Studenckiego Festiwalu Informatycznego
Modele i metodyki wdrażania i zarządzania projektami eaiJaroslaw Zelinski
Enterprise application integration (EAI) is the use of software and computer systems' architectural principles to integrate a set of enterprise computer applications. How to use BPMN and UML notation.
Analityk w świecie automatyzacji i robotyzacji biznesuAndrzej Sobczak
Zaawansowana automatyzacja i robotyzacja zmienia rynek pracy i modele działania przedsiębiorstw. Jak w takiej rzeczywistości ma się odnaleźć analityk biznesowy/systemowy? Czy roboty zabiorą mu prace?
Biznes się zmienia. IT się zmienia. Ale czy narzędzia i metody pracy analityka i architekta zmieniają się lub powinny zmienić się - w szczególności w czasach coraz powszechniejszej robotyzacji procesów? W prezentacji będę starał się spojrzeć na relacje występujące między analitykiem-architektem a robotami z dwóch różnych perspektyw – tj. czy musimy inaczej niż do tej pory podejść do analizy i architektury zrobotyzowanego biznesu i jak roboty mogą pomóc w pracy analityka/architekta. Okazuje się bowiem, że coraz częściej wiele firm patrzy na analityków/architektów jako koszt (który może i przynosi korzyści, ale mocno odroczone w czasie) i zastanawia się, czy jest jakieś podejście umożliwiające podniesienie efektywności pracy tych ról.
Elitmind @ SQLDay2018: Stream Analytics i Machine Learning – czy to dobrze do...Elitmind
Współczesne rozwiązania w obszarze zaawansowanej analityki danych muszą być gotowe na nowego typu wyzwanie: analizę danych pochodzących z różnych źródeł w czasie bliskim rzeczywistemu. Jednym z celów może być reagowanie na zdarzenia w social media czy dostarczanie spersonalizowanych ofert klientom dokładnie wtedy, kiedy tego rzeczywiście potrzebują.
W trakcie prezentacji Barbara Leśniarek (Data Scientist w Elitmind) oraz Kamil Słomka (Senior Business Intelligence Consultant) pokazali przykład implementacji takiego rozwiązania w oparciu o usługi Microsoft Azure: Stream Analytics oraz Machine Learning.
Prezentacja powstała na potrzeby webinara pt. Praca testera w Scrumie.
Podczas webinara Ola Woszczyk- testerka z testuj.pl, opowiedziała, o tym czym jest SCRUM i jak wygląda praca w zespole Scrumowym. Ponadto wyjaśniła, jaką rolę w Scrumie pełni tester i jakie najczęstsze błędy popełniają członkowie zespołu.
Prezentacja dostępna jest jako kolejny slajd po wyświetlonym filmie.
Robotyzacja procesów biznesowych - od optymalizacji do transformacji modelu d...Andrzej Sobczak
Obecnie coraz więcej przedsiębiorstw w mniejszym lub większym zakresie wdrożyło lub planuje wdrożyć u siebie rozwiązania klasy RPA (Robotic Process Automation). Pojawia się pytanie – jaki może być scenariusz wykorzystania tej technologii. Część z firm może zatrzymać się na punktowo wdrożonych rozwiązaniach RPA, część będzie automatyzować poszczególne procesy lub obszary, a tylko nieliczne będą postrzegły wdrożenie zrobotyzowanej automatyzacji procesów jako okazję do transformacji modelu działa przedsiębiorstwa. Oczywiście każda z tych ścieżek wiąże się z innym podejściem - nie tylko na etapie wdrożenia, ale również utrzymania, zarządzania zmianą i dalszego rozwoju. Prezentacja poświęcona jest sposobowi konsekwencjom – zarządczym i organizacyjnym wdrożenia RPA w organizacji.
Jak budujemy inteligentnego asystenta biznesowego2040.io
Dlaczego inteligentny asystent może się okazać najważniejszą przewagą konkurencyjną na Twoim rynku? Co zrobić, by wdrożyć nowoczesną technologię do Twojego działu sprzedaży już dzisiaj? Jak zyskać na wdrożeniu sztucznej inteligencji w dziale sprzedażowym?
>> https://edward.ai/pl <<
Kompendium wiedzy dla każdego programisty, projektanta i kierownika projektu
* Nowoczesne metodyki wytwarzania oprogramowania
* Narzędzia do modelowania aplikacji i automatycznego generowania kodu
* Koncepcja architektury sterowanej modelami
* Sposoby zapewnienia jakości aplikacji
Tworzenie aplikacji korporacyjnych to wyścig z czasem. Organizacje zmieniają się podobnie jak otoczenie biznesowe, w którym działają. Zbyt długi okres przygotowania aplikacji może sprawić, że po wdrożeniu okaże się ona bezużyteczna. Z drugiej jednak strony, zbyt duży pośpiech przy tworzeniu aplikacji powoduje, że pomija się fazę modelowania i testowania, pisząc kod źródłowy bez jakiejkolwiek koncepcji i planu. Efektem takiego pośpiechu są aplikacje niedostosowane do wymagań użytkowników i pracujące niestabilnie. Sposobem na stworzenie odpowiedniego systemu informatycznego dla korporacji jest wykorzystywanie odpowiednich metodyk projektowych i nowoczesnych narzędzi ułatwiających zarówno pisanie, jak i testowanie aplikacji.
Książka "J2EE. Podstawy programowania aplikacji korporacyjnych" przedstawia najlepsze praktyki projektowe stosowane przy tworzeniu systemów informatycznych z wykorzystaniem platformy J2EE. Opisano w niej kolejne etapy projektu oraz narzędzia i metodyki, dzięki którym przeprowadzenie każdego z nich będzie szybsze i efektywniejsze. Czytając ją, poznasz metodyki RUP i XP, typy architektur systemów oraz sposoby modelowania aplikacji i narzędzia do automatycznego generowania szkieletu kodu źródłowego. Dowiesz się, jak optymalnie skonfigurować środowiska programistyczne i jak testować kolejne moduły aplikacji. Nauczysz się korzystać z nowoczesnych metodyk i narzędzi.
* Podstawowe wiadomości o błyskawicznym wytwarzaniu aplikacji (RAD)
* Metodyki projektowe Rational Unified Process (RUP) oraz Extreme Programming (XP)
* Wielowarstwowe architektury systemów
* Modelowanie systemów za pomocą języka UML
* Automatyczne generowanie kodu
* Stosowanie narzędzi XDoclet i Hibernate
* Komunikacja z bazami danych
* Zasady programowania aspektowego
* Testowanie aplikacji
Wiadomości zawarte w tej książce sprawią, że będziesz w stanie szybciej projektować i tworzyć aplikacje korporacyjne.
Aplikacje biznesowe dotyczą danych -- niezależnie od tego, czy są to dane o produkcie, szczegóły dotyczące kart kredytowych użytkowników czy preferowanego koloru kupowanych samochodów. Wraz ze wzrostem znaczenia informacji wzrosła także złożoność dostępu do nich. Programiści Javy mogą wybierać teraz spośród różnego rodzaju interfejsów API i technologii -- EJB, JDO, JDBC, SQL, RDBMS, OODBMS i innych. Do tej pory byli oni zdani na siebie przy podejmowaniu decyzji o tym, który model najlepiej pasuje do ich aplikacji i jak w najlepszy sposób korzystać z wybranego API.
Książka "Java. Aplikacje bazodanowe. Najlepsze rozwiązania" przychodzi z pomocą programistom. Teraz nie muszą już oni przeszukiwać kilku książek na temat różnych API, aby zdecydować o odpowiedniej metodzie. Ten obszerny przewodnik omawia podstawy wszystkich wiodących interfejsów API (Enterprise JavaBeans, Java Data Objects, JDBC, a także innych, mniej znanych opcji), objaśnia metodologię i komponenty projektowe wykorzystujące wspomniane interfejsy oraz prezentuje rozwiązania najbardziej dostosowane do różnych typów aplikacji.
Książka omawia także zagadnienia dotyczące projektowania baz danych, począwszy od architektury tabel, skończywszy na normalizacji. Autor przedstawia najlepsze rozwiązania rozmaitych problemów. Nauczysz się w jaki sposób przeprowadzać różne rodzaje normalizacji, a także dowiesz się, kiedy warto przeprowadzić denormalizację. Uzyskasz także szczegółowe instrukcje dotyczące optymalizacji zapytań SQL w celu najlepszego wykorzystania struktury bazy danych. Zaprezentowano także praktyczne zastosowania omawianych technik dostarczając informacje, które Czytelnik może zastosować natychmiast we własnych projektach aplikacji biznesowych.
Projekty IT nie istnieją (zrezygnujmy z tej nazwy). Każdy projekt jest projektem biznesowym z cześcią informatyczną (technoloiczną). IT nie istnieje samo dla siebie. Usługi IT wspierające procesy biznesowe. Najlepsze praktyki (best practices) pomagają prowadzić projekty z częścią IT. Jest to szczególnie ważne przy wdrażaniu kontraktów outsourcingowych oraz Centów Usług Wspólnych (Shared Service Centres, SSC)
Best Practice User Group™ (BPUG™) Polska to stowarzyszenie promujące najlepsze praktyki z zakresu zarządzania projektami, programami, portfelami, usługami i ryzykiem. Organizacja powstała w 1993 w Wielkiej Brytanii jako PRINCE2 User Group, od 2005 jako Best Practice User Group, od 2011 działa polski oddział BPUG Polska.
Podstawowe metodyki i produkty to Projects In Controlled Environments (PRINCE2™), Managing Successful Programmes (MSP™), Management of Risk (M_o_R®), Portfolio, Programme and Project Offices (P3O®), Portfolio, Programme, and Project Management Maturity Model (P3M3®), Management of Value (MoV®), Management of Portfolios (MoP™).
Zwinne metodyki zawdzięczają swoje powstanie dzięki potrzebie elastycznej obsługi szybko zmieniających się wymagań klienta w czasie trwania projektu oraz tworzeniu wysokiej jakości programów, aplikacji czy serwisów internetowych. Prezentacja ukazuje jedną z najpopularniejszych technik wspierających zbieranie i opisywanie wymagań użytkownika w postaci historyjek (User Stories) oraz ich późniejszą projekcję na codzienną pracę zespołu poprzez zbiór kryteriów akceptacji (Acceptance Criteria).
[PL] Bez trudu i ryzyka! Jak tworzyć przepływy pracy w SharePoint?Datapolis
SharePoint, wbrew temu, co często twierdzą użytkownicy, jest świetną platformą do tworzenia biznesowych przepływów! Tomasz Głogosz, project manager Datapolis, pokazuje w tej prezentacji, jak można uniknąć wielu problemów podczas wdrażania przepływów dzięki wcześniejszemu planowaniu
Sztuka wojny wg analityka IT - jak współpracować z trudnym klientemKatarzyna Mrowca
Sztuka wojny wg analityka IT - jak współpracować z trudnym klientem?
Materiały dodatkowe z warsztatu przeprowadzonego podczas 10. Studenckiego Festiwalu Informatycznego
Zasady technicznej organizacji projektów programistycznych
Klasyfikacja wymagań jako sposób zarządzania nimi
1. Klasyfikacja wymagań jako sposób zarządzania
nimi. Systemowa analiza organizacji jako metoda
specyfikowania wymagań
Jarosław Żeliński – analityk
biznesowy, projektant systemów
2014-03-18 Konferencja Inżynieria Wymagań
2. Agenda
• Co wiemy o wymaganiach
• Analiza i projektowanie obiektowe
– Programowanie obiektowe to nie to samo co
analiza i projektowanie…
• Klasyfikacja wymagań
• Lesson learned czyli co na to praktyka…
2014-03-18 (c) Jarosław Żeliński 2
3. IEEE 830-1998
• Poprawna: nie może być np. niezgodna z prawem
• Jednoznaczna: (log. «stosunek zachodzący między co najmniej dwoma
różnymi wyrażeniami, z których każde ma to samo znaczenie»
• Kompletna: o tym za moment
• Spójna: brak konfliktów logicznych ale o tym także za moment
• Uporządkowana wg ważności/stabilności: np. metodą triage czyli każde
wymaganie ma jeden z trzech atrybutów – musi być, powinno być, mogło
by być (inna wersja to waga wymagania dla całego projektu: duża średnia,
mała)
• Weryfikowalna: można jednoznacznie stwierdzić, że wymaganie zostało
zrealizowane
• Modyfikowalna: to dotyczy struktury dokumentu i narzędzia jakim powstał
dokument wymagań
• Umożliwiająca śledzenie powiązań: dotyczy struktury dokumentu jak i
jego formatu (dokumentacja html będzie lepsza od dokumentacji
tekstowej do przeglądania ale nie do druku).
2014-03-18 (c) Jarosław Żeliński 3
6. MDA i OOAD
Model Driven Architecture to
trzyetapowy proces tworzenia
oprogramowania.
OOAD/
DDD Zamawiający
Developer
Model jako
wymaganie
dziedzinowe
Architektura biznesowa
2014-03-18 (c) Jarosław Żeliński 6
7. The current state of CIM creation in the OOA
Źr. Formal Computation Independent Model of the Problem Domain within the MDA
Janis Osis1, Erika Asnina1, Andrejs Grave11 Faculty of Computer Science and Information Technology, Institute of Applied
Computer Systems, Riga Technical University, Latvia
{janis.osis, erika.asnina}@cs.rtu.lv, andrejs.grave@inbox.lv
2014-03-18 (c) Jarosław Żeliński 7
8. (źr.) OMG.org MDA® Specifications
Applications and Frameworks (that is, parts of applications
that perform a particular function) can all be defined in the
MDA as a base PIM that maps to one or more PSMs and
implementations. Standards written this way enjoy two
advantages:
• The base PIM is truly a business specification,
defining business functionality and behavior in a
technology-independent way. Technological considerations
do not intrude at this stage, making it easy for business
experts to model exactly the business rules they want into
the PIM.
• Once business experts have completed the PIM, it can be
implemented on virtually any platform, or on multiple
platforms with interoperability among them, in order to
meet the needs of the industry and companies that use it.
2014-03-18 (c) Jarosław Żeliński 8
9. Architektura Korporacyjna i SOA
Misja i Wizja firmy
Proces (aktywność) Proces (aktywność) Proces (aktywność) Proces (aktywność)
Przypadki Użycia
Usługi Aplikacyjne
integracja
DXBM
BO BO
Środowisko Środowisko
SOA
Architektura Korporacyjna
BO BO BO BO
2014-03-18 (c) Jarosław Żeliński 9
11. Model pojęciowy
wymaganie «warunek lub zespół
warunków, którym ktoś lub coś musi
odpowiadać»
usługa «pomoc okazana komuś»
przypadek «pojedyncze zdarzenie lub
pojedyncza sytuacja»
użycie «stosowanie czegoś»
dziedzina «zakres czyjegoś działania w
obrębie nauki, gospodarki, techniki,
kultury itp.»
aplikacja «komputerowy program
użytkowy»
(źr. słownik języka polskiego PWN)
2014-03-18 (c) Jarosław Żeliński 11
12. Analiza biznesowa i specyfikowanie wymagań
Model CIM (notacja BPMN, SBVR, BMM) Model PIM (notacja UML)
Model procesów
biznesowych
Kontekst projektu (notacja UML) Model PIM (notacja UML)
Model przypadków
użycia
Model dziedziny
Model Sekwencji
Obiekty biznesowe
Reguły biznesowe
Scenariusze
obiekty operacje
Wymagania
dziedzinowe
Wymagania
funkcjonalne
Wymagania poza-funkcjonlane
Przypadki użycia jako usługi systemu czyli usługi aplikacyjne
Wszelkie ograniczenia i wymagane osiągi
2014-03-18 (c) Jarosław Żeliński 12
13. Po co to wszystko?
• Bo:
– skoro kluczowym problemem w projektach z obszaru
inżynierii oprogramowania są wadliwe specyfikacje
wymagań
– a opis „czarnej skrzynki” jest z zasady
niejednoznaczny
• więc bezpieczniej jest przekazać wymagania w
postaci projektu a nie tylko listy wymaganych
cech bo tak opracowane wymagania są:
– Spójne
– Kompletne
– Niesprzeczne Co można sprawdzić poprzez śladowanie…
2014-03-18 (c) Jarosław Żeliński 13
14. Martin Fowler:
• Wyobraźmy sobie kogoś, kto chce napisać program symulujący grę
w snookera. Problem ten może zostać opisany przypadkami użycia
opisującymi powierzchownie cechę: "Gracz uderza biała kulę, która
przemieszcza się z pewną prędkością, ta po określonym czasie
uderza czerwoną kulę pod określonym kątem, uderzona czerwona
kula przemieszcza się na pewna odległość w pewnym kierunku."
• Możesz sfilmować setki tysięcy takich uderzeń, zarejestrować
parametry każdego uderzenia i jego skutki. Jednak tą metodą i tak
nie stworzysz nawet dość dobrej symulacji. Aby napisać na prawdę
dobrą grę, powinieneś raczej zrozumieć prawa rządzące ruchem
kul, ich zależność od siły i kierunku uderzenia, kierunku itp.
Zrozumienie tych praw pozwoli Ci znacznie łatwiej napisać dobre
oprogramowanie.
2014-03-18 (c) Jarosław Żeliński 14
15. Czego i skąd wymagać…
2014-03-18 (c) Jarosław Żeliński 15
16. Podział ról
• OOA i OOD jest łączone w OOAD z tego powodu, że obiektowy opis (model)
"czegoś" jest 9w metodach obiektowych) zarazem projektem "tego czegoś". Mając
obiektowy model oprogramowania (części opisującej jego biznesową logikę
działania, nazywanej Modelem Dziedziny) możemy sprawdzić (przetestować) jak
spełnia on wymagania funkcjonalne zanim jeszcze, powstanie znacznie droższa od
projektu, implementacja. Mamy szanse, relatywnie niskim kosztem, zmienić
projekt zanim uruchomimy kosztowny zespół programistów. Na bazie takiego
modelu możliwe jest w ogóle wykonanie analizy wykonalności.
• Metoda ta jest sprawdzona, działa, jest skuteczna. Pierwszy, głośno, napisał o tym
Eric Evans w dziele Domain-Driven Design: Tackling Complexity in the Heart of
Software . Problem polega na tym, że biznesowa analiza obiektowa (OOAD),
dająca jako efekt model dziedziny (czyli sedno biznesowych aplikacji), wymaga
zupełnie innych kompetencji (nie licząc rozumienia samej obiektowości) niż
kompetencje programistów i architektów oprogramowania. Nie prawdą jest, że
tylko "developer" ma tu kompetencje do projektowania oprogramowania. W
obszarze analizy i modelowania "biznesu" z reguły nie ma żadnych kompetencji.
• Potwierdza to także obecny model kompetencji Analityka Biznesowego
prezentowany przez organizację IIBA.
2014-03-18 (c) Jarosław Żeliński 16
17. Lesson learned czyli co na to praktyka…
Metody MDA/OOAD
50% 50%
20% 80%
Harmonogram
Koszt
Opracowanie CIM i PIM Implementacja
2014-03-18 (c) Jarosław Żeliński 17
18. 80% wpadek i od lat ani drgnie …
• Jako zwierzęta, ludzie są w przytłaczającej większości
konformistami szukającymi prostych sposobów na
przeżycie. Heurystyka, jako metoda podejmowania decyzji,
góruje nad analitycznym myśleniem, nie dopuszczamy
myśli, że coś, co komukolwiek się udało, może być trudne,
dajemy wiarę temu, że ukryto przed nami ten „prosty
sposób”. Praktyka jest straszna : otóż nie istnieją proste
sposoby rozwiązywania złożonych problemów (nie licząc
odkryć przypadkowych).
• Daniel Kahneman w książce „Thinking, fast and slow“
pokazuje, że nasze poglądy i postępowanie kształtują dwa
systemy myślowe: szybki (automatyczny, bezrefleksyjny) i
wolny (oparty na refleksji i namyśle). Zastanawiające, jak
często ludzie korzystają tylko z tego pierwszego systemu.
2014-03-18 (c) Jarosław Żeliński 18
19. O mnie…
Od 1991 roku w branży IT i zarządzania
Od 1998 roku jako niezależny analityk, projektant i
firma IT-Consulting.Pl
Dziesiątki publikacji w prasie branżowej i
gospodarczej
Członek stowarzyszenia doradców gospodarczych
Wykładowca katedry systemów informacyjnych
wydziału przedsiębiorczości akademii morskiej w
Gdyni
Kilkudziesięciu odbiorców usług doradczych, małe,
średnie i duże firmy zarówno informatyczne jak i ich
klienci.
Poświadczenie bezpieczeństwa wydane przez ABW
Były ekspert przy gabinecie komisji nadzoru
finansowego
Projekty analityczne
między innymi dla…
Publikacje między innymi w …
2014-03-18 (c) Jarosław Żeliński 19