Szkolenia eduFuturo
Szkolenia eduFuturo
  • 10
  • 11 845
Domain-Driven Design - czym jest, a czym nie jest
Webinar prowadził Jarosław Żeliński.
Omówiono oryginalną koncepcję Evansa oraz wskazano elementy, które zamiast projektowania dotykają programowania, a nie powinny. Omówiono bloki funkcjonalne i przykładowe wzorce (DDD nie zawiera wzorców projektowych).
Link do przykładów:
jaroslawzelinski.biz/asp-products/domain-driven-design-with-uml/
Prezentacja do pobrania
it-consulting.pl/download/domain-driven-design-czym-jest-a-czym-nie-jest/
Więcej dowiesz się na szkoleniu:
www.edufuturo.pl/inzynieria-systemow-biznesowych/236-analiza-obiektowa-i-projektowanie-logiki-oprogramowania-z-uzyciem-notacji-uml.html
Kontakt: biuro@eduFuturo.pl, 794930124
Переглядів: 386

Відео

Architektura integracji i obiektowy paradygmat w UML
Переглядів 594Рік тому
Webinar prowadził Jarosław Żeliński. Zapraszamy na nasze szkolenia: www.eduFuturo.pl Kontakt: biuro@eduFuturo.pl, ( 48) 794930124
DDD, model dziedziny a model architektury systemu czyli model jako wymaganie
Переглядів 772Рік тому
Webinar prowadził Jarosław Żeliński. Agenda: - "domain model" jako model pojęciowy - "domain model" jako model realizacji logiki biznesowej - DDD czyli co? Zapraszamy na wspomniane szkolenie z Analizy obiektowej UML: www.edufuturo.pl/inzynieria-systemow-biznesowych/236-analiza-obiektowa-i-projektowanie-logiki-oprogramowania-z-uzyciem-notacji-uml.html Kontakt: biuro@eduFuturo.pl, 794930124 Link ...
Agregat: co to takiego i dlaczego jest super narzędziem analizy wymagań i specyfikowania rozwiązania
Переглядів 710Рік тому
Webinar prowadził Jarosław Żeliński. Agregat: co to takiego i dlaczego jest super narzędziem analizy wymagań i specyfikowania rozwiązania. - agregat w DDD (E.Evans: Domain Driven Design) - Budowanie agregatów w UML i ich walidacja Zapraszamy na nasze szkolenia otwarte: www.edufuturo.pl/katalog-szkolen/kalendarz-szkolen.html oraz zamknięte: www.edufuturo.pl/katalog-szkolen.html Kontakt: biuro@ed...
Model procesów biznesowych i przypadki użycia na podstawie tego modelu
Переглядів 844Рік тому
Webinar prowadził Jarosław Żeliński. Agenda: 1. Procesy biznesowe - definicja i standaryzacja w BPMN 2. Przypadki użycia - definicja i standaryzacja w UML 3. Prezentacja specyfikowania przypadków użycia na podstawie modeli procesów biznesowych. 4. A gdzie User Story? 5. Podsumowanie. Zapraszamy na nasze szkolenia: www.edufuturo.pl/katalog-szkolen/kalendarz-szkolen.html Kontakt: biuro@eduFuturo....
Narzędzia CASE: organizacja repozytorium projektu, tworzenie dokumentacji dla użytkownika i dostawcy
Переглядів 835Рік тому
Webinar prowadził Jarosław Żeliński. Agenda: 1. czym jest model w UML i czym są narzędzia CASE 2. model vs pakiet vs element modelu 3. czym jest tu diagram 4. organizacja modelu: - orientacja na przypadki użycia - orientacja na poziomy abstrakcji - niestety dziedzinowy model pojęciowy to analiza biznesowa - a ta jest konsekwencją modelu procesów biznesowych 5. świat to nie tylko UML, gdzie i il...
cz.2 Analiza obiektowa czy może jakaś inna jaka? Stary i nadal dobry ICONIX i interfejsy
Переглядів 685Рік тому
Poprzednia prezentacja (ua-cam.com/video/mmbt3sOzanI/v-deo.html) była poświęcona omówieniu aktualnego stanu wiedzy o projektowaniu aplikacji zorientowanych komponentowo (obiektowo), Jarosław Żeliński omówił krótko czym jest ICONIX jako zwinny proces analizy i projektowania. Ten webinar to prezentacja na żywo jak wygląda praca wg. tego procesu i jakie diagramy UML powstają i po co. Webinar prowa...
Analiza obiektowa czy może jakaś inna jaka? Stary i nadal dobry ICONIX i interfejsy
Переглядів 725Рік тому
Webinar prowadził Jarosław Żeliński Agenda: - proces ICONIX dzisiaj czyli co to znaczy "zaprojektować oprogramowanie" - zwinny czy nie? - kto tu jest programistą? - user story i wymagania: dla kogo? Zapraszamy na nasze szkolenia otwarte: www.edufuturo.pl/katalog-szkolen/kalendarz-szkolen.html Kontakt: biuro@eduFuturo.pl, 794930124
5 ZŁOTYCH ZASAD DOBREJ UMOWY IT
Переглядів 2572 роки тому
Przedsiębiorstwa mogą być konkurencyjne między innymi dzięki posiadanym technologiom informatycznym, które wspierają przepływ danych i informacji w firmie. Urzędy i instytucje również przetwarzają i przechowują coraz większe ilości danych. Zapewnienie harmonijnej wymiany informacji i dany w każdym z podmiotów zależy od sprawnego wdrażania systemów informatycznych. Dobrze skrojona umowa pozwala ...
Analiza Biznesowa od zlecenia do kompletnego projektu technicznego z użyciem CASE
Переглядів 6 тис.3 роки тому
Prezentacja prowadzona przez Jarosława Żelińskiego z użyciem Visual Paradigm Polecamy cykl szkoleń: 1. Analiza obiektowa i projektowanie logiki oprogramowania z użyciem notacji UML 2. Modelowanie procesów biznesowych jako analiza systemowa organizacji z użyciem notacji BPMN 3. Dokumentowanie wymagań i zarządzanie nimi: model motywacji biznesowej, Przypadki Użycia i Wymagania w SysML Szczegóły: ...

КОМЕНТАРІ

  • @pao6doce
    @pao6doce 6 місяців тому

    Drogi Panie Jarosławie, zarzeka się Pan o powoływaniu się na materiały i merytorykę. Mówi Pan o używaniu PHP jako języka zmniejszającego koszty produkcji software'u. Twierdzi Pan, że amazon został napisany w PHP; Ale tak naprawdę cała baza w 1994 roku zaczęła być wytwarzana w C/ C++ o czym można przeczytać w biografii Jeffa Bezosa, później rewrite został dokonany na jave; Facebook zaczął od PHP faktycznie, ale wydajność była poszukiwana w cpp i javie; Netflix jeden z największych kontrybutorów narzędziówki do współczesnej architektury rozproszonej, przez przypadek znowu w javie. Cieszę się, że jest Pan i tworzy jakąś przeciwwagę swoimi materiałami, pokazując jak formalizować zapis efektów analizy systemowej i funkcjonalnej, za co dziękuję. Przydają się, żeby uporządkować wiedzę zebraną w trakcie warsztatów EventStormingowych :)) Nie mniej jest mi przykro, że robi Pan fikołek intelektualny jakoby język programowania decydowała bezpośrednio o tym jak dany framework, czy to Java czy PHP, czy Java EE/ Spring czy Symfonia/Laravel został niewłaściwe wykonany. Niestety jestem zdania, że program studiów implementowany przez uczelnie jest niewłaściwie prowadzony; Większość znaczącej wiedzy z zakresu inżynierii oprogramowania, modelowania rozwiązań czy nawet podstaw programowania obiektowego jest pomijana. Jedyną znaną uczelnią, gdzie jest to realizowane we właściwy sposób jest PJATK, niestety sam jestem absolwentem WAT'u, gdzie większość tej wiedzy musiałem zdobyć we własnym zakresie. Moim skromnym zdaniem nie jest problemem język tylko kto i w jaki sposób zdobywa wiedzę. Znajome mi grono osób zaczynając w PHP, w tym pośrednio ja to grupa pasjonatów zaczynająca od najmłodszych lat tworzenie oprogramowania. Dla nich programowanie to możliwość stworzenia czegoś z niczego. Niestety cpp, java, c# agreguje sporą grupę absolwentów uczelni wyższych, ale też i bootcampów w Polsce. Uwzględniając poprzedni akapit, jakoś kształcenia zawodowego w zakresie inżynierii oprogramowania odbiega od ideału. Finalnie Ci absolwenci = traktują programowanie jak zwykły zawód realizowany 9-5, bez chęci pogłębiani swojej wiedzy i podważania czy robią go w prawidłowy sposób. Bez refleksji czy tutorial pokazywany na youtube prezentuje produkcyjne rozwiązanie oraz jaki jest kontekst odpowiedzi na stackoverflow.

  • @nofenak
    @nofenak 6 місяців тому

    To tych podpakietów typu "domain", "application" itd. ma nie być tylko po prostu płaskie pakiety per kontekts np. "orders", "invoices" a w nich klasy?

  • @JarekZelinski
    @JarekZelinski 6 місяців тому

    Jeszcze w kwestii Java/C++ itp... ua-cam.com/video/TbP2B1ijWr8/v-deo.htmlsi=t-Vw2mhvX3o8rCFm&t=501

  • @nofenak
    @nofenak 7 місяців тому

    A ticket reklamacyjny nie musi mieć id tego customera?

    • @JarekZelinski
      @JarekZelinski 7 місяців тому

      może mieć jego NIP, email, telefon.... masa opcji lokalny ID jest nieintegrowalny z innymi systemami dlatego lokalny to budowani samotnej wyspy

  • @nofenak
    @nofenak 7 місяців тому

    A skąd te id brać jeśli mają nie być "sztuczne"? Co mogłoby być np. id zamówienia?

    • @JarekZelinski
      @JarekZelinski 7 місяців тому

      id zamówienia to nic innego jak Numer zamówienia na dokumencie, jest na 100% unikalny w danej firmie, a po dodaniu NIP staje unikalny co najmniej w EU,

  • @JarekZelinski
    @JarekZelinski 7 місяців тому

    "A co jest takiego w tym PHP?" jest to, że implementacja projektu w PHP trwa nie raz 10 krotnie szybciej niż w Java czy C#, czyli także taniej i wcale nie jest mniej wydajna, bo często są wydajniejsze, w PHP powstał między innymi Amazon i FB,, i masa innych, PHPO to także znacznie niższe koszty bo Java i C++/C# realnie nie są obiektowe polecam to: ua-cam.com/video/HClSfuT2bFA/v-deo.htmlsi=xAWn0SPjYB4g5o3N

    • @nofenak
      @nofenak 7 місяців тому

      Można link do tych badań na temat języków skryptowych?

  • @nofenak
    @nofenak 7 місяців тому

    A co jest takiego w tym PHP?

  • @JarekZelinski
    @JarekZelinski 7 місяців тому

    "The Spring Framework is an application framework and inversion of control container for the Java platform.[2] The framework's core features can be used by any Java application, but there are extensions for building web applications on top of the Java EE (Enterprise Edition) platform. The framework does not impose any specific programming model.[citation needed]. The framework has become popular in the Java community as an addition to the Enterprise JavaBeans (EJB) model.[3] The Spring Framework is free and open source software.[4]: 121-122 [5]" en.wikipedia.org/wiki/Spring_Framework przypodrowana Java EE "ava Beans, As part of the standardization, all beans must be serializable, have a zero-argument constructor, and allow access to properties using getter and setter methods." en.wikipedia.org/wiki/JavaBeans czyli najgorsze metody w powstaci "access to properties using getter and setter methods". "Every getter and setter in your code represents a failure to encapsulate and creates unnecessary coupling. A profusion of getters and setters (also referred to as accessors, accessor methods, and properties) is a sign of a poorly-designed set of classes." typicalprogrammer.com/doing-it-wrong-getters-and-setters www.infoworld.com/article/2073723/why-getter-and-setter-methods-are-evil.html

  • @nofenak
    @nofenak 7 місяців тому

    Teraz w Javie króluje Spring. Słyszał pan o nim? Jestem ciekaw opinii

    • @JarekZelinski
      @JarekZelinski 7 місяців тому

      "The Spring Framework is an application framework and inversion of control container for the Java platform.[2] The framework's core features can be used by any Java application, but there are extensions for building web applications on top of the Java EE (Enterprise Edition) platform. The framework does not impose any specific programming model.[citation needed]. The framework has become popular in the Java community as an addition to the Enterprise JavaBeans (EJB) model.[3] The Spring Framework is free and open source software.[4]: 121-122 [5]" en.wikipedia.org/wiki/Spring_Framework na czym polega rózniaca ;) ??? Jest to przypudrowana Java EE której głowną wadą jest model Enterprise JavaBeans (EJB) z najgorszá formą dostępu do danych: "all beans must be serializable, have a zero-argument constructor, and allow access to properties using getter and setter methods."

  • @nofenak
    @nofenak Рік тому

    19:30 Nie łączymy encji z logiką biznesową? Załóżmy, że mamy zamówienie i taką logikę, że można je anulować maksymalnie godzinę po potwierdzeniu. Klasa "Zamówienie" nie może mieć metody "anuluj" i w niej tej logiki?

    • @JarekZelinski
      @JarekZelinski Рік тому

      Czy zna Pan założenia wzorca projektowego factory i repository? Znajdzie Pan łatwo opisy. ale... Anulowanie Zamówienia realizuje Zamawiający a nie Zamówienie. Reguła mówiąca kiedy można to zrobić nie jest cechą zamówienia tylko polityki sprzedaży. Pan chyba w Java EE/SE tylko pracuje.... ???

  • @nofenak
    @nofenak Рік тому

    30:54 Co pan ma na myśli mówiąc, że w kodzie nie powinno się tworzyć agregatów za pomocą związków kompozycji? To jak jest inny sposób?

  • @nofenak
    @nofenak Рік тому

    A jakby mieć jedną tabelę Invoice?

    • @JarekZelinski
      @JarekZelinski Рік тому

      w jakim sensie?

    • @nofenak
      @nofenak Рік тому

      Chodzi mi o to, żeby wszystkie potrzebne informacje do faktury trzymać w jednej tabelce Invoice tak jak w 1 dokumencie@@JarekZelinski

    • @JarekZelinski
      @JarekZelinski Рік тому

      @@nofenak tabela jest płaska a faktura ma strukturę zagnieżdżoną więc nie bardzo jest to możliwe, ale faktura jako JSON/XML jako pole jednego wiersza tabeli jak najbardziej

  • @nofenak
    @nofenak Рік тому

    Jeśli mielibyśmy Post i Komentarz (do tego postu) to te 2 dokumenty zapisywalibyśmy w 2 oddzielnych repozytoriach czy w jednym do Postów? Czy dobre OOP pozwala w ogóle na trzymanie referencji do kolekcji innych obiektów czy lepiej w ogóle czegoś takiego unikać?

    • @JarekZelinski
      @JarekZelinski Рік тому

      to to samo co karty w aktach sprawy w sądzie ;), pozew i kolejne dokumenty :), każdy dokument ma sygnaturę sprawy i numer w hierarchii dokumentów. Stos dokumentów jest płaski a dokumenty w treści zawierają odnośniki to swojego poprzednika, w bazach dokumentowych jest to trywialne do uzyskania. Nie jest to cecha OOP//OOAD, to jest cecha zarzadzania danymi zorganizowanymi w dokumenty.

  • @nofenak
    @nofenak Рік тому

    A co pan sądzi o programowaniu funkcyjnym? Ostatnio wiele się o nim słyszy.

    • @JarekZelinski
      @JarekZelinski Рік тому

      Bywa efektywniejsze od metod kodowania wymuszanych stylem C++/Java. Osobiście uważam, że jedynym sensownym miernikiem jakości jest cykl życia aplikacji i jego koszt.

  • @nofenak
    @nofenak Рік тому

    Bardzo ciekawie pan o tym wszystkim opowiada. Ma pan jakieś przykłady dobrze napisanego kodu obiektowego i DDD?

    • @JarekZelinski
      @JarekZelinski Рік тому

      to nie musi być kod, wystarczy projekt, znajdzie Pan projekt Biblioteka na mojej stronie

  • @krzych1701
    @krzych1701 Рік тому

    jak zwykle bomba

  • @CichyNick
    @CichyNick Рік тому

    @JarekZelinski W nagraniu została poruszona kwestia diagramu klas jako zbędnego. Tylko w zasadzie to. W związku z czym, jako że pojawiło się to ciekawe pytanie, jak diagram klas ma się do modelu dziedziny? Wynika z niego? I dorzuciłbym kolejne pytania 1. Jakim diagramem modelować diagram dziedziny? 2. Jakim diagramem modelować diagram pojęciowy/koncepcyjny (concept model)?

  • @CichyNick
    @CichyNick Рік тому

    Odnoszę wrażenie, że wobec tego jeśli programista/koder mówi o DDD ma na myśli wobec tego biblioteki i inne techniczne rozwiązania, które przynosi jakiś framework, a nie DDD w rozumieniu modeli.

    • @JarekZelinski
      @JarekZelinski Рік тому

      mam identyczne wrażenie a nawet pewność ;)

  • @nofenak
    @nofenak Рік тому

    Jak to nie powinno się stosować operatora "new"? To jak fabryka ma stworzyć jakaś nową fakturę bez czegoś w stylu "new Invoice..."?

    • @JarekZelinski
      @JarekZelinski Рік тому

      Nie mylmy metody wytwórczej z operacją new. Czyli: - klasa Faktura nie ma operacji "nowa faktura" - klasa "Fabryka faktur" ma operację "nowa faktura" osobna kwestią jest to jak sobie tym radzą poszczególne języki programowania, a jest ich więcej niż jeden. Opis z przykładem jest na mojej stronie z pliku Biblioteka.

    • @nofenak
      @nofenak Рік тому

      @@JarekZelinski Metoda wytwórcza to antywzorzec?

    • @JarekZelinski
      @JarekZelinski Рік тому

      @@nofenak nie napisałem, że metoda wytwórcza to antywzorzec, antywzorcem jest operacja tworząca obiekty własnej klasy, (patrz DDD: do tworzenia obiektów używamy innej klasy: Factory)

    • @JarekZelinski
      @JarekZelinski Рік тому

      @@nofenak c.d. en.wikipedia.org/wiki/Factory_method_pattern

    • @nofenak
      @nofenak Рік тому

      @@JarekZelinski Tylko czy wtedy nie ryzykujemy, że ktoś utworzy niepoprawny obiekt? Nie mamy gwarancji, że ktoś użyje fabryki. Nie lepiej zrobić prywatny konstruktor i wystawić faktory method za walidacją na tej samej klasie?

  • @nofenak
    @nofenak Рік тому

    Co masz dokładnie na myśli mówiąc, że łączenie danych i operacji na nich to anty wzorzec? Mówi się, że właśnie anemic model to anty wzorzec

    • @JarekZelinski
      @JarekZelinski Рік тому

      Mam na myśli np. wzorzec fabryka i template, anemiczny model to klasy bez operacji, same płaskie atrybuty i asocjacje między klasami jako kalka struktury bazy danych (typowe dla Java). Nie łączymy danych i funkcji na nich w jednym obiekcie, np. faktury trzymamy w tysiącach prostych obiektów (lub agregaty) mających jedynie operacje zachowaj przywołaj (a nie dziesiątki set/get) ale podatki, upusty, walidacje na tych fakturach realizujemy z użyciem innego obiektu który ma operacje np. "waliduj", ładnie to wyjaśnia Evans w DDD (serwisy, encje i agregaty to osobne klasy). Obiektowa (komponentowa) architektura to podział na role a nie pakowanie danych z funkcji to jedengo worka razem. I na pewno nie budowanie jednej relacyjnej bazy pod spodem... [Wirfs-Brock, R., & McKean, A. (2009). Object design: Roles, responsibilities, and collaborations. Addison-Wesley.] polecam to: ua-cam.com/video/wyABTfR9UTU/v-deo.html i to: ua-cam.com/video/TbP2B1ijWr8/v-deo.html oraz to: ua-cam.com/video/zlFqjD2LKlE/v-deo.html

    • @nofenak
      @nofenak Рік тому

      @@JarekZelinski Ale operacje get nadal są potrzebne bo np. jakiś walidator odpowiedzialny za poprawność faktur musi się dostać do ich atrybutów np. daty wystawienia, żeby sprawdzić czy jest poprawna, dobrze rozumiem?

    • @JarekZelinski
      @JarekZelinski Рік тому

      @@nofenak operacje get/set są szkodliwe i niepotrzebne, pobranie faktury ta metodą to kilkadziesiąt wywołań i sklejanie faktury w całość, MASA kodu i pracy. "np. jakiś walidator odpowiedzialny za poprawność faktur musi się dostać do ich atrybutów np. daty wystawienia, żeby sprawdzić czy jest poprawna, dobrze rozumiem?" nie pobieramy z pamięci całą fakture (agreegat) jedym prostym poleceniem "read(agregat)", ta faktura (JSPN, XML) jest walidowana w komponencie "service" która ją pobrał jednym prostym poleceniem. Polecam referat: A Philosophy of Software Design | John Ousterhout | Talks at Google ua-cam.com/video/bmSAYlu0NcY/v-deo.html

    • @JarekZelinski
      @JarekZelinski Рік тому

      @@nofenak nie, pobieramy jednym wywołaniem całość danych jako serializację lub JSON/XML

  • @McCrymat
    @McCrymat Рік тому

    Dziękuję za prezentację. Mówi pan że "new" w językach programowanie jest najgorsze. Może pan to trochę rozwinąć? Bo nawet używając Dependency Injection gdzieś ten obiekt powstać musi. Jaką koncepcję pan przyjmuje?

    • @JarekZelinski
      @JarekZelinski Рік тому

      W ddd mamy fabrykę, wśród wzorców projektowych także metody wytwórcze lub template, dla jasności: tworząc agregat agregat Faktura, polecenie 'nowa faktura' nie jest operacją klasy Faktura. Pisząc o dependecy injection rozumiem że ma pan na myśli framework Java... Nie jest ani jedyny ani najlepszy sposób tworzenia oprogramowania... Mam na myśli frameworki Java niezgodne z MVC

  • @nofenak
    @nofenak Рік тому

    Powiedział pan, że przy używaniu relacyjnych baz, żeby wyciągnąć np. fakturę trzeba napisać skomplikowane zapytanie SQL, ale w dobie ORMów to chyba nieaktualne?

    • @JarekZelinski
      @JarekZelinski Рік тому

      aktualne, bo: - ORM to automat który te zapytania generuje, ale tylko dla wzorców active table i active record - resztę musi zrobić człowiek - nawet jak zapytanie powstanie "samo" z automatu to i tak: (1) efekt jest taki na na prezentacji: zarzyna procesor, (2) dane i tak są współdzielone w bazie, bo ORM nie usuwa żadnej wady modelu relacyjnego (3) każda zmiana logiki to prucie całości i migracja danych

  • @nofenak
    @nofenak Рік тому

    A co pan myśli o UUID jako id?

    • @JarekZelinski
      @JarekZelinski Рік тому

      Jeżeli uznać, że UUID jest globalny, to ma wartość adresu email, jednak: (1) ludzie nie używają UUID w swoich dokumentach, wiec kiepsko, (2) jeżeli ma powstać konkurencja np. .między Microsoft a Apple, to też kiepsko. Tak zwaną "dobra praktyką" jest budowanie systemów na podstawie i z użyciem danych (informacji) jakimi operują ludzie. Problem w tym, że "system (logika) ma działać nawet po wyłączeniu prądu"... a UUID nie spełnia tej zasady... Dlatego ja nie używam.

  • @JarekZelinski
    @JarekZelinski Рік тому

    modelowanie, złe karteczki na ścianach i flipcharty, czyli architektura C4 i UML ua-cam.com/video/gNj8I4uSTgc/v-deo.html

  • @JarekZelinski
    @JarekZelinski Рік тому

    architektura hexagonalna c.d. ua-cam.com/video/JubdZIdLQ4M/v-deo.html

  • @andrzejandrzejczak6731
    @andrzejandrzejczak6731 Рік тому

    ja bym tą prezentację zrobił inaczej

  • @pawelk8684
    @pawelk8684 Рік тому

    Totalne uproszczenie. Kompletna nieznajomość dużych złożonych systemów. Wymieszane ze szczyptą truizmów. Do tego ministerialna znajomość biznesu. Jedyna mądra rzecz to używanie tam gdzie się da grafikę zamiast opisu.

    • @JarekZelinski
      @JarekZelinski Рік тому

      A konkretnie? Bo nie wiem do czego mam sie odnieść

  • @grikvolf
    @grikvolf Рік тому

    Cześć, można prosić o wrzucenie linków udostępnianych na czacie teams, do komentarza albo opisu filmu? W szczególności skrót z Evansa, ale też pozostałe. Serdecznie pozdrawiam.

    • @szkoleniaedufuturo4934
      @szkoleniaedufuturo4934 Рік тому

      Avram, A., & Marinescu, F. (2006). Domain-Driven Design Quickly: [A summary of Eric Evans’ Domain-Driven Design. C4Media Inc. www.infoq.com/minibooks/domain-driven-design-quickly/ Šenkýř, D., & Kroha, P. (2019). Problem of Incompleteness in Textual Requirements Specification: Proceedings of the 14th International Conference on Software Technologies, 323-330. doi.org/10.5220/0007978003230330

    • @grikvolf
      @grikvolf Рік тому

      @@szkoleniaedufuturo4934 Super, ślicznie dziękuję Pani Karolino. Pozdrowienia dla Pana Jarka. Brawo za inicjatywę i popularyzację podejścia tematu !

    • @JarekZelinski
      @JarekZelinski Рік тому

      The One Question To Haunt Everyone: What is a DDD Aggregate? - Thomas Ploch - DDD Europe 2022 ua-cam.com/video/zlFqjD2LKlE/v-deo.html

  • @michalrw5713
    @michalrw5713 Рік тому

    @szkoleniaedufuturo4934 filmy z KŻ nie wpadają mi do powiadomień? [dzwonkek mam ON]

  • @pawegorka8589
    @pawegorka8589 Рік тому

    przesłuchałem 5 min i myślę sobie "WOW facet wie o czym mówi", a nie jak większość ytbowych pajacy 15 mówią o analizie tak żeby czasem nie powiedzieć czegoś o analizie

  • @CichyNick
    @CichyNick Рік тому

    Jak wygląda kwestia wymagań? Możemy te opisywać na podstawie procesy to-be, a dopiero potem opisywać UC. Jeśli mapowalnysmy procesy na UC bezpośrednio, gdzie w tym ciągu byłyby wymagania? Przed procesem to-be?

    • @JarekZelinski
      @JarekZelinski Рік тому

      Kluczowe pytanie brzmi: "czym jest wymaganie". Literatura przedmiotu pełna jest różnych definicji, jednak wydaje się, że jedyne spójne i kompletne podejście to klasyczne definicje z inżynierii, która z zasady wskazuje na potrzeby użytkownika oraz projekt systemu. Co do zasady użytkownik nie projektuje systemu, użytkownik ma potrzeby a potem projektowany jest "system" (aplikacja, oprogramowanie) który je realizuje. Tak więc: np. potrzebą działu sprzedaży jest wystawianie faktur i wiemy czym jest ta faktura (formularz i jego poprawna postać). Kolejny krok to zaprojektowanie mechanizmu dzięki któremu na żądanie sprzedawcy powstanie faktura o żądanej treści. Wiedząc i rozumiejąc jak powstaje faktura (powstał opis tego mechanizmu) można ten opis przekazać do implementacji deweloperowi. Ten opis to wymagania wobec oprogramowania. Ważne: potrzeby użytkownika nie są wymaganiem wobec oprogramowania! Tu pojawia się pytanie: skąd te potrzeby? Ano z docelowego modelu procesów biznesowych, a to czy jest to model to-be czy po prostu aktualny model procesów danej organizacji, to kwestia tego czy w ramach całego projektu był etap poprawy/zmiany tych procesów (nie musiał być). Tak więc: 1. w toku analizy biznesowej powstaje model procesów biznesowych, z gradacją jaką opisałem w prezentacji 2. na tym modelu określamy zakres wdrożenia (bo nie zawsze jest to cała organizacja: wszystkie procesy) 3. mając wskazane do zakresu wdrożenia procesy, robimy transformację ich aktywności na przypadki użycia 4. teraz pora na analizę i złączenie w jeden tych przypadków, które operują na tych samym dokumencie. Od tego momentu można postępować zgodnie z procesem ICONIX lub analogicznym (omawiałem go wcześniej) Pojawia się pytanie (zarzut) czy to waterfall. To zależy. Jeżeli architektura aplikacji będzie monolitem zbudowanym na jednej centralnej relacyjnej bazie danych, to owszem, to jest waterfall. Jeżeli jednak zaprojektujemy aplikację jako komponentowy system oparty na mikro serwisach, będzie to "zwinny" iteracyjno-przyrostowy projekt. To dlatego, projektowanie architektury coraz częściej "zabiera się" deweloperowi i staje sie ona etapem poprzedzającym wybór dewelopera. Tu polecam ten opis ról w projektach: builtin.com/recruiting/software-engineer-vs-programmer

  • @szkoleniaedufuturo4934
    @szkoleniaedufuturo4934 Рік тому

    Zapraszamy za tydzień (21 kwietnia 2023 r.) na dwa dwugodzinne webinary z Jarosławem Żelińskim - tego na YT już nie będzie! Rabat 10% przy zgłoszeniu na obydwa: 👌Techniki modelowania procesów biznesowych z użyciem Visual-Paradigm lnkd.in/eFv27SU 👌Techniki analizy i modelowania logiki aplikacji zorientowana na dokumenty/ekrany z użyciem Visual-Paradigm lnkd.in/ecuf8ef

  • @box3rcrew
    @box3rcrew Рік тому

    "Zatrudnić lisa do zaprojektowania kurnika" mistrzostwo :)

  • @box3rcrew
    @box3rcrew Рік тому

    Ostatnio był u mnie majster i wykańczał mieszkanie. Miał profesjonalną wiertarkę, wkrętarkę, a nawet profesjonalne urządzenie do zarabiania kabli do gniazdek. A mógł przecież użyć łopatkę z piaskownicy, śrubokręt i nóż ;) Panie Jarosławie zgadzam się z Pana metaforą jak najbardziej o robieniu zębatek w wordzie :) :D Nie zgadzam się z problemem nie używania Case w firmach bo firma nie chce kupić . Z mojego doświadczenia wynika , że to zespół analityków nadal woli używać łopatek .. Dlaczego tak wolą pewnie sami możemy sobie odpowiedzieć. Za każdym razem jak nacisnąłem , że potrzebuje Case do pracy , dowództwo tylko pytało jakie i żebym znalazł coś w rozsądnej cenie . Raczej problem jest w "specjalistach" a nie managmentem

    • @JarekZelinski
      @JarekZelinski Рік тому

      "Raczej problem jest w "specjalistach" a nie managmentem" No tak, powinienem doprecyzować: "używa", bo faktycznie samo "ma" to za mało..... drugi problem to "wdrożone", bo jak w jednej firmie każdy ma swoje inne, to już lepiej, że używali tego samego worda :)

  • @krzych1701
    @krzych1701 Рік тому

    super materiał, czekam na więcej

  • @marekkozowski4532
    @marekkozowski4532 Рік тому

    A przy Akcie urodzenia mamy datę wystawienia i datę urodzenia przecież. To te daty nie mają innych tożsamości ?

    • @JarekZelinski
      @JarekZelinski Рік тому

      " przy Akcie urodzenia mamy datę wystawienia i datę urodzenia przecież", data urodzenia to cecha urodzonego , a data wystawienia dokumentu, to cecha tego dokumentu.

    • @middev5996
      @middev5996 Місяць тому

      @@JarekZelinski a jesli potrzebuje mieć datę utworzenia zamówienia i datę edycji danego bytu?

    • @JarekZelinski
      @JarekZelinski Місяць тому

      @@middev5996 data utworzenia jest cechą dokumentu, kolejna data edycji jest cecha jego historii

  • @marekkozowski4532
    @marekkozowski4532 Рік тому

    Które rozdziały z książki o AWS poleca Pan dla Analityków ?

  • @krzych1701
    @krzych1701 Рік тому

    super materiał

  • @rafalgranatyr1740
    @rafalgranatyr1740 Рік тому

    istnieje możliwość wysyłki prezentacji na mail?

    • @szkoleniaedufuturo4934
      @szkoleniaedufuturo4934 Рік тому

      link jest aktywny do 13 lutego: kuduro-my.sharepoint.com/:b:/g/personal/biuro_kuduro_pl/EbjjySoZiOBInIdNNMwIL7wBgpli-cUBX19-AW-RDRmiXQ

    • @rafalgranatyr1740
      @rafalgranatyr1740 Рік тому

      @@szkoleniaedufuturo4934 dziękuje

    • @michalrw5713
      @michalrw5713 Рік тому

      @@szkoleniaedufuturo4934 zróbcie cos z tymi zasiegami. tzn - wiecej marketing ;) pzdr

  • @MonkKingKong
    @MonkKingKong 2 роки тому

    Bardzo fajna prezentacja. Mocno skoncentrowana wiedza. Dziękuję :)