Thread View: pl.comp.objects
16 messages
16 total messages
Started by Filip Sielimowicz
Thu, 23 Aug 2007 13:33
Do czego porównać konstrukcję dużego systemu informatycznego
Author: Filip Sielimowicz
Date: Thu, 23 Aug 2007 13:33
Date: Thu, 23 Aug 2007 13:33
82 lines
5706 bytes
5706 bytes
Interesuje mnie zagadnienie znalezienia dobrej analogii między konstrukcją systemu informatycznego a konstrukcją jakiegoś złożonego bytu, np. architektonicznego (wysokościowca ? wiaduktu w miejscu przecięcia się dwóch autostrad ?). Generalnie chodzi o to, by przy dyskusjach na temat budowy takiego systemu, jego rozbudowy czy bardziej wprowadzania zmian, móc się posługiwać jakimś w miarę wyrazistym modelem, który pobudza wyobraźnię przestrzenną, posługuje się w miarę znanymi pojęciami ze świata rzeczywistego, dzięki czemu złożoność takiej konstrukcji jest łatwiejsza do ogarnięcia dla zespołu ludzi, którzy mają przy takim systemie grzebać i przewidywać konsekwencje swoich działań, a mają na dzień dzisiejszy bardzo różne kwalifikacje i perspektywy widzenia tego systemu. Generalnie chodzi o to, by taki model pomógł wypracować kierunki prac przy przebudowie starego, dużego systemu opartego o pliki dbf na bazę relacyjną. Stary system jest słabo zmodularyzowany, ma słabo zarysowaną logikę biznesową - wszystko wbudowane w interfejs użytkownika (fox pro), komunikuje się z wieloma innymi systemami za pośrednictwem różnych technik integracji, głównie 'file transfer'. Od modernizacji oczekuje się spełnienia dwóch podstawowych celów: - system ma zostać przeniesiony na relacyjną bazę danych (bezpieczeństwo danych i inne) - system ma uzyskać architekturę umożliwiającą jego rozwój (kontrolowane, bezpieczne spełnianie żądań zmian - zapanować nad powiązaniami w systemie) Jest wiele koncepcji, które kładą podstawy pod to przedsięwzięcie, ale są dość radykalnie różne. Model miałby posłużyć wstępnemu testowaniu "na papierze", "w czasie burzy mózgu" tych koncepcji. Pojawiają się np. takie pytania, jak: - czy/jak budować interfejsy wewnętrzne i precyzyjnie rozdzielić odpowiedzialności za dane pomiędzy elementy systemu (silna modularyzacja także na poziomie bazy danych). - czy pozostawać przy jednej, centralnej bazie danych - w sensie jednej struktury danych, czy dzielić ją na kawałki. Jeśli to drugie, to czy budować złożony system replikacji między tymi bazami, czy budować system usług, czy wydzielać osobno bazę danych raportową zbierającą dane i oddzielić raporty od pierwotnego systemu - czy dażyć do architektury silnie warstwowej, z wyraziście zarysowanymi usługami i możliwie silnie oddzielonym interfejsem - czy zachowywać jednolitość technologiczną komponentów systemu (czyli pozostać przy fox pro powoli wbudowując go w .NET) - jak podzielić przedsięwzięcie na małe kawałki - projekty, gdzie każdy z nich przechodziłby przez pełen cykl życia oprogramowania (powiedzmy od analizy poprzez projekt, implementację, testowanie aż do wdrożenia i utrzymania) - jak zrównoleglić prace - by wiele projektów pracujących nad różnymi kawałkami systemu mogło biec równocześnie, możliwie niezależnie - na jakiego typu decyzje strategiczne należy się już teraz przygotować Generalnie klarują się dwa ogólne obozy ;) - centraliści - jak najdłużej utrzymać jedną, spójną bazę danych i w pierwszej kolejności spróbować wymienić bazę na relacyjną, nawet jeśli oznacza to grzebanie w bardzo słabo uporządkowanym i opisanym kodzie. Siłą tego obozu jest teza, że taką zmianę można w dużym stopniu wykonać automatycznie i zajmie to stosunkowo mało czasu. - usługowcy - zbudować model wielu technologii i baz danych. Siłą tego obozu jest teza, że tylko takie podejście pozwoli na stopniowe przenoszenie systemu i w ten sposób kontrolę przedsięwzięcia jako takiego, a jednocześnie bardzo szybko daje podstawy pod rozbudowę systemu w oparciu o nowsze technologie, bez oczekiwania, aż całe przedsięwzięcie sięskończy. Jednocześnie usługowcy radykalnie krytykują wizję półautomatycznego przerabiania kodu fox pro na bazę relacyjną (poprzedni system jest w dbf) bez wcześniejszego uporządkowania logiki - twierdzą, że to niewykonalne lub co najmniej bardzo trudne w oszacowaniu - zarówno kosztów jak i ryzyka niepowodzenia. Trudne także z punktu widzenia zarządzalności - trudno to podzielić na etapy zakończone wdrożeniem u klienta. Centraliści zaś krytykę opierają na tezie, że modularyzacja jest bardzo kosztowna, także w utrzymaniu, w szczególności wskazują na złożoność systemów replikacji danych między powstałymi podsystemikami. Macie jakieś pomysły, jak wybrnąć z tej sytuacji ? :))) (kupić inny system, sparametryzować i zmigrować ...) ;)
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: A.L.
Date: Thu, 23 Aug 2007 14:19
Date: Thu, 23 Aug 2007 14:19
29 lines
2224 bytes
2224 bytes
On Thu, 23 Aug 2007 15:33:30 +0200, "Filip Sielimowicz" <sielim@wp.pl> wrote: >Interesuje mnie zagadnienie znalezienia dobrej analogii między konstrukcją >systemu informatycznego >a konstrukcją jakiegoś złożonego bytu, np. architektonicznego (wysokościowca >? wiaduktu w miejscu przecięcia >się dwóch autostrad ?). > > Wizezowiec: a) trzeba miec plan architektoniczny, b) tzreba miec plan konstrukcyjny. Plan konstrukcyjny musi byc wykonany przez inzynierow posiadaajcych odpowiednei uprawnienia, c) plany musza byc zatwierdzone pzrez odpowiednie uzredy miejskie, a to co do lokacji a to co do wygladu, a to co do spraw ekologicznych, d) Budowa odbywa sie pod nadzorem odpowiednich fachowcow z miaste, inspektorow budowlanych (czy "kody" sa pzresztregane), inzynierow srodowiska, a sama firma jest prowadzona przez inzynierow posiadajacych odpowiednei uprawnienia, e) Po zakonczeniu budynek pzrechodzi szcagolowa inspekcja odpowiednich uzredow miasta (owe "kody", sprawy ekologiczne, bezpieczenstwo, zgodnosc z dokumentacja), a jezeli jest na przyklad blisko autostrady i moga z tego wyniknac problemy, to i pzrez nadzor panstwowy Budowa systemu informatycznego: a) CHLOPAKI, LAC BETON! Co mi tam beda p... o jakiejs dokumentacji! b) Jak cos spieprzymy to sie odkuje. A.L.
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: DarekM
Date: Thu, 23 Aug 2007 20:32
Date: Thu, 23 Aug 2007 20:32
47 lines
2892 bytes
2892 bytes
Filip Sielimowicz pisze: > Interesuje mnie zagadnienie znalezienia dobrej analogii między konstrukcją > systemu informatycznego > a konstrukcją jakiegoś złożonego bytu, np. architektonicznego (wysokościowca > ? wiaduktu w miejscu przecięcia > się dwóch autostrad ?). Mnie się wydaje, że dobrą analogią jest budowa miasta, tzn. tu budujemy dom, tam drogę, teraz most, a potem remontujemy kanalizację Od modernizacji oczekuje się spełnienia > dwóch podstawowych celów: > - system ma zostać przeniesiony na relacyjną bazę danych (bezpieczeństwo > danych i inne) > - system ma uzyskać architekturę umożliwiającą jego rozwój (kontrolowane, > bezpieczne spełnianie żądań zmian - zapanować > nad powiązaniami w systemie) Ten drugi jest ważniejszy. Im lepsza architektura tym prostsze przeniesienie i inne zmiany, a te mogą być ważniejsze. O ile się nie wybierze budowy od podstaw to jest to raczej operacja na otwartym sercu. Kluczowym jest takie przerobienie, a właściwie przerabianie kodu aby można było go sprawnie ... przerabiać, czyli aby system realizował kolejne zadania. Czy baza centralna, która technologia, gdzie wyznaczyć warstwy to tak jakbyś pytał mieszkańców miasta: -- ile ma być przystanków, dworców, lotnisk -- z czego budujemy domy -- czym ogrzewamy -- jakie napięcie ma być w sieci A jeżeli spytasz kogoś innego, to sprawdź w jakim mieście żyje. > > Macie jakieś pomysły, jak wybrnąć z tej sytuacji ? :))) Nie, ale jak wymyślisz jak to zrobić tanio, szybko i przyjemnie to się pochwal, niekoniecznie bezinteresownie. Albo jeden: znaleźć nową funkcjonalność, niedostępną dla dotychczasowej architektury i wokół niej oprzeć całą migrację, dzięki czemu klient (zewnętrzny lub wewnętrzny) otrzyma realną korzyść i wytrzyma koszty migracji (czas, pieniądze, nerwy). Darek
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: Piotr Dembiński
Date: Fri, 24 Aug 2007 21:46
Date: Fri, 24 Aug 2007 21:46
12 lines
1481 bytes
1481 bytes
DarekM <darekm@emadar.com> writes: > Filip Sielimowicz pisze: >> Interesuje mnie zagadnienie znalezienia dobrej analogii między >> konstrukcją systemu informatycznego a konstrukcją jakiegoś >> złożonego bytu, np. architektonicznego (wysokościowca ? wiaduktu >> w miejscu przecięcia się dwóch autostrad ?). > > Mnie się wydaje, że dobrą analogią jest budowa miasta, tzn. tu > budujemy dom, tam drogę, teraz most, a potem remontujemy kanalizację Czyli Debian to miasto, które można dostosować do własnych potrzeb?
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: DarekM
Date: Sun, 26 Aug 2007 20:23
Date: Sun, 26 Aug 2007 20:23
18 lines
1805 bytes
1805 bytes
Piotr Dembiński pisze: > DarekM <darekm@emadar.com> writes: > >> Filip Sielimowicz pisze: >>> Interesuje mnie zagadnienie znalezienia dobrej analogii między >>> konstrukcją systemu informatycznego a konstrukcją jakiegoś >>> złożonego bytu, np. architektonicznego (wysokościowca ? wiaduktu >>> w miejscu przecięcia się dwóch autostrad ?). >> Mnie się wydaje, że dobrą analogią jest budowa miasta, tzn. tu >> budujemy dom, tam drogę, teraz most, a potem remontujemy kanalizację > > Czyli Debian to miasto, które można dostosować do własnych potrzeb? Nie rozumiem pytania (o ile mam tak to traktować) Pytanie było o proces tworzenia a nie używania. A nawet jeżeli to należy porównywać używanie z zamieszkiwaniem. Też wiele analogii można znaleźć. Darek
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: Piotr Dembiński
Date: Mon, 27 Aug 2007 16:47
Date: Mon, 27 Aug 2007 16:47
22 lines
1883 bytes
1883 bytes
DarekM <darekm@emadar.com> writes: [...] >>> Mnie się wydaje, że dobrą analogią jest budowa miasta, tzn. tu >>> budujemy dom, tam drogę, teraz most, a potem remontujemy >>> kanalizację >> Czyli Debian to miasto, które można dostosować do własnych potrzeb? > Nie rozumiem pytania (o ile mam tak to traktować) > > Pytanie było o proces tworzenia a nie używania. A nawet jeżeli to > należy porównywać używanie z zamieszkiwaniem. Też wiele analogii > można znaleźć. OIDP dziedziną nauki traktującą o systemach w sposób niezależny natury i przeznaczenia tych systemów jest teoria systemów. Czyli zarówno systemy miejskie, jak i systemy komputerowe można rozpatrywać w kategoriach teorii systemów, a w konstrukcji oraz konserwacji tych systemów stosować zdobycze inżynierii systemów. -- http://www.piotr.dembiński.prv.pl
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: DarekM
Date: Mon, 27 Aug 2007 19:09
Date: Mon, 27 Aug 2007 19:09
22 lines
2278 bytes
2278 bytes
>> Pytanie było o proces tworzenia a nie używania. A nawet jeżeli to >> należy porównywać używanie z zamieszkiwaniem. Też wiele analogii >> można znaleźć. > > OIDP dziedziną nauki traktującą o systemach w sposób niezależny natury > i przeznaczenia tych systemów jest teoria systemów. Czyli zarówno > systemy miejskie, jak i systemy komputerowe można rozpatrywać > w kategoriach teorii systemów, a w konstrukcji oraz konserwacji > tych systemów stosować zdobycze inżynierii systemów. No i ... Tak, istnieje taka nauka. Tylko co z tego wynika dla pytacza. Same osiągnięcia są dosyć dyskusyjne. Przyjmując jednak że są całkowicie prawdziwe to pewnie są tak użyteczne jak prawo Ohma przy konstruowaniu telewizora a prawa Newtona do budowy dźwigu. Po drugie przypuszczam że większościowym beneficjentem byłaby sama teoria systemów a nie rozwiązanie problemu, tzn. na podstawie przeprowadzonych działań można by coś nieco wnieść do teorii, w drugą stronę transfer wiedzy jakoś wydaje mi się mało prawdopodobny. Może jedynie terminologia była by pomocna, o ile pytacz nie dysponuje własną systematyką. Darek
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: ethouris
Date: Mon, 27 Aug 2007 22:01
Date: Mon, 27 Aug 2007 22:01
52 lines
4128 bytes
4128 bytes
On 23 Sie, 16:19, A.L. <f...@2005.com> wrote: > On Thu, 23 Aug 2007 15:33:30 +0200, "Filip Sielimowicz" <sie...@wp.pl> > wrote: > > >Interesuje mnie zagadnienie znalezienia dobrej analogii między konstrukcją > >systemu informatycznego > >a konstrukcją jakiegoś złożonego bytu, np. architektonicznego (wysokościowca > >? wiaduktu w miejscu przecięcia > >się dwóch autostrad ?). > > Wizezowiec: a) trzeba miec plan architektoniczny, b) tzreba miec plan > konstrukcyjny. Plan konstrukcyjny musi byc wykonany przez inzynierow > posiadaajcych odpowiednei uprawnienia, c) plany musza byc zatwierdzone > pzrez odpowiednie uzredy miejskie, a to co do lokacji a to co do > wygladu, a to co do spraw ekologicznych, d) Budowa odbywa sie pod > nadzorem odpowiednich fachowcow z miaste, inspektorow budowlanych (czy > "kody" sa pzresztregane), inzynierow srodowiska, a sama firma jest > prowadzona przez inzynierow posiadajacych odpowiednei uprawnienia, e) > Po zakonczeniu budynek pzrechodzi szcagolowa inspekcja odpowiednich > uzredow miasta (owe "kody", sprawy ekologiczne, bezpieczenstwo, > zgodnosc z dokumentacja), a jezeli jest na przyklad blisko autostrady > i moga z tego wyniknac problemy, to i pzrez nadzor panstwowy > > Budowa systemu informatycznego: a) CHLOPAKI, LAC BETON! Co mi tam beda > p... o jakiejs dokumentacji! b) Jak cos spieprzymy to sie odkuje. To prawda, że większość projektów informatycznych tak wygląda, ale ten przykład pokazuje właśnie, że analogia jest totalnie chybiona, co nie po raz pierwszy powtarzam. System informatyczny to zupełnie inne charakterystyki zarówno materiału, jak i sposobu wykonania, weryfikacji, diagnostyki, przewidywalności, komplikacji logicznej - w skrócie, te dwie koncepcje różnią się niemal wszystkim. Jeśli coś one mają ze sobą wspólnego to to, że obie są projektami inżynierskimi i obie muszą spełniać określone kryteria. Ale na tym podobieństwa się kończą. Po pierwsze: oczywiście, że możemy poprawiać później, bo system informatyczny daje nam taką możliwość. Jeśli aplikacja wywala się na jakichś danych - poprawimy. Nie da się tego zrobić w przypadku budynków - jak jest kolumna nie w tym miejscu co trzeba, to żeby się człowiek zesrał, nie przestawi jej w inne miejsce. Zgadza się, to wielu rozleniwia i pozwala odłożyć na bok myśl o dokładnym dopracowaniu. Ale to nie jest jedyna przyczyna takiego podejścia. Po drugie: jakich wiadomości teoretycznych potrzebujemy, żeby postawić budynek? Wszystko to jest chemia, fizyka, no i oczywiście ekonomia. A co się dzieje w systemach informatycznych? Okazuje się, że charakterystyki funkcjonowania takiego systemu są za każdym razem inne. A na dodatek niestabilne. Już znacznie bardziej mi się podobała analogia do stoczni.
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: Filip Sielimowicz
Date: Tue, 28 Aug 2007 09:29
Date: Tue, 28 Aug 2007 09:29
93 lines
5937 bytes
5937 bytes
Użytkownik "ethouris" <ethouris@gmail.com> napisał w wiadomości news:1188252081.622766.220450@50g2000hsm.googlegroups.com... On 23 Sie, 16:19, A.L. <f...@2005.com> wrote: > On Thu, 23 Aug 2007 15:33:30 +0200, "Filip Sielimowicz" <sie...@wp.pl> > wrote: > > >Interesuje mnie zagadnienie znalezienia dobrej analogii między > >konstrukcją > >systemu informatycznego > >a konstrukcją jakiegoś złożonego bytu, np. architektonicznego > >(wysokościowca > >? wiaduktu w miejscu przecięcia > >się dwóch autostrad ?). > > Wizezowiec: a) trzeba miec plan architektoniczny, b) tzreba miec plan > konstrukcyjny. Plan konstrukcyjny musi byc wykonany przez inzynierow > posiadaajcych odpowiednei uprawnienia, c) plany musza byc zatwierdzone > pzrez odpowiednie uzredy miejskie, a to co do lokacji a to co do > wygladu, a to co do spraw ekologicznych, d) Budowa odbywa sie pod > nadzorem odpowiednich fachowcow z miaste, inspektorow budowlanych (czy > "kody" sa pzresztregane), inzynierow srodowiska, a sama firma jest > prowadzona przez inzynierow posiadajacych odpowiednei uprawnienia, e) > Po zakonczeniu budynek pzrechodzi szcagolowa inspekcja odpowiednich > uzredow miasta (owe "kody", sprawy ekologiczne, bezpieczenstwo, > zgodnosc z dokumentacja), a jezeli jest na przyklad blisko autostrady > i moga z tego wyniknac problemy, to i pzrez nadzor panstwowy > > Budowa systemu informatycznego: a) CHLOPAKI, LAC BETON! Co mi tam beda > p... o jakiejs dokumentacji! b) Jak cos spieprzymy to sie odkuje. To prawda, że większość projektów informatycznych tak wygląda, ale ten przykład pokazuje właśnie, że analogia jest totalnie chybiona, co nie po raz pierwszy powtarzam. System informatyczny to zupełnie inne charakterystyki zarówno materiału, jak i sposobu wykonania, weryfikacji, diagnostyki, przewidywalności, komplikacji logicznej - w skrócie, te dwie koncepcje różnią się niemal wszystkim. Jeśli coś one mają ze sobą wspólnego to to, że obie są projektami inżynierskimi i obie muszą spełniać określone kryteria. Ale na tym podobieństwa się kończą. Nie zgodzę się z takim sposobem argumentacji, gdzie pojawiają się np. pojęcia "zupełnie inne charakterystyki" ;). Analogii jeszcze tu nie skonstruowaliśmy, a już pada 'totalnie chybiona" ;). Ja rozumiem, że materiał jest inny, ale zwracam uwagę na to, że jednak ten "materiał" opisuje się tymi samymi przymiotnikami z języka naturalnego. I dlatego właśnie jest podstawa do szukania analogii. Im "wyżej", tym analogii jest wiecej. Najwyżej mamy "oczekiwania klienta", "koszty budowy", "koszty utrzymania". W sensie zarządczym, z punktu widzenia procesu wytwarzania systemu informatycznego, jest to po prostu przedsięwzięcie biznesowe którego celem jest wytworzenie i sprzedaż produktów o pożądanej jakości. Pytanie jest, jak teraz stopniowo schodzić z tym na dół: wyznaczać podprodukty, miary ich jakości, powiązania, koszty utrzymania, koszty naprawy/modernizacji, koszty wymiany. > Nie da się tego zrobić w przypadku budynków - jak jest kolumna nie w tym > miejscu co trzeba, to żeby się człowiek zesrał, nie przestawi jej w inne > miejsce. > Zgadza się, to wielu rozleniwia i pozwala odłożyć na bok myśl o dokładnym > dopracowaniu. Ale to nie jest jedyna przyczyna takiego podejścia. 1. A kto powiedział, że odpowiednikiem danych jest kolumna ? 2. Da się. Tylko problem jest źle postawiony. Nikt nie przenosi kolumny dla idei. Za tym stoi jakieś wymaganie funkcjonalne/niefunkcjonalne. Być może kolumna zasłania drzwi wejściowe. Rozwiązanie: zamieniamy kolumnę łukiem. Tak - to kosztuje. Trzeba zastosować tymczasowe podparcie i kilka innych technicznych tricków. Ale jest to do zrobienia. W górnictwie czy przy renowacji mostów zapewne nie takie rzeczy się robi. Nawet całe budynki się przesuwa razem z kawałkiem ziemi. >Po drugie: jakich wiadomości teoretycznych potrzebujemy, żeby postawić >budynek? Wszystko to jest chemia, fizyka, no i oczywiście ekonomia. A >co się dzieje w systemach informatycznych? Okazuje się, że >charakterystyki funkcjonowania takiego systemu są za każdym razem >inne. A na dodatek niestabilne. Mózg człowieka opisuje rzeczywistość w kategoriach przestrzeni i pojęć fizycznych gdzie mamy pojęcie góry, dołu, ciężaru, szybkości, ścieżki wąskiej/szerokiej, pozycji/adresu, 'zmieści się/nie zmieści', przyczepiony/luźny, itp. Informatycy nie są tu wyjątkiem - tylko sobie często sami robią pod górę nie w pełni zdając sobie z tego sprawę. > Już znacznie bardziej mi się podobała analogia do stoczni. Bardzo poproszę o więcej szczegółów tej analogii ;)
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: Filip Sielimowicz
Date: Tue, 28 Aug 2007 09:44
Date: Tue, 28 Aug 2007 09:44
80 lines
5420 bytes
5420 bytes
Użytkownik "ethouris" <ethouris@gmail.com> napisał w wiadomości news:1188252081.622766.220450@50g2000hsm.googlegroups.com... On 23 Sie, 16:19, A.L. <f...@2005.com> wrote: >To prawda, że większość projektów informatycznych tak wygląda, ale ten >przykład pokazuje właśnie, że analogia jest totalnie chybiona, co nie >po raz pierwszy powtarzam. >System informatyczny to zupełnie inne charakterystyki zarówno >materiału, jak i sposobu wykonania, weryfikacji, diagnostyki, >przewidywalności, komplikacji logicznej - w skrócie, te dwie koncepcje >różnią się niemal wszystkim. Jeśli coś one mają ze sobą wspólnego to >to, że obie są projektami inżynierskimi i obie muszą spełniać >określone kryteria. Ale na tym podobieństwa się kończą. Nie zgodzę się z takim sposobem argumentacji, gdzie pojawiają się np. pojęcia "zupełnie inne charakterystyki" ;). Analogii jeszcze tu nie skonstruowaliśmy, a już pada określenie 'totalnie chybiona" ;). Ja rozumiem, że materiał jest inny, ale zwracam uwagę na to, że jednak ten "materiał" opisuje się tymi samymi przymiotnikami z języka naturalnego. I dlatego właśnie jest podstawa do szukania analogii. Im "wyżej", tym analogii jest wiecej. Najwyżej mamy "oczekiwania klienta", "koszty budowy", "koszty utrzymania". W sensie zarządczym, z punktu widzenia procesu wytwarzania systemu informatycznego, jest to po prostu przedsięwzięcie biznesowe którego celem jest wytworzenie i sprzedaż produktów o pożądanej jakości. Pytanie jest, jak teraz stopniowo schodzić z tym na dół: wyznaczać podprodukty, miary ich jakości, powiązania, koszty utrzymania, koszty naprawy/modernizacji, koszty wymiany. > Nie da się tego zrobić w przypadku budynków - jak jest kolumna nie w tym > miejscu co trzeba, to żeby się człowiek zesrał, nie przestawi jej w inne > miejsce. > Zgadza się, to wielu rozleniwia i pozwala odłożyć na bok myśl o dokładnym > dopracowaniu. Ale to nie jest jedyna przyczyna takiego podejścia. 1. A kto powiedział, że odpowiednikiem danych jest kolumna ? 2. Da się. Tylko problem jest źle postawiony. Nikt nie przenosi kolumny dla idei. Za tym stoi jakieś wymaganie funkcjonalne/niefunkcjonalne. Być może kolumna zasłania drzwi wejściowe. Rozwiązanie: zamieniamy kolumnę łukiem. Tak - to kosztuje. Trzeba zastosować tymczasowe podparcie i kilka innych technicznych tricków. Ale jest to do zrobienia. W górnictwie czy przy renowacji mostów zapewne nie takie rzeczy się robi. Nawet całe budynki się przesuwa razem z kawałkiem ziemi. >Po drugie: jakich wiadomości teoretycznych potrzebujemy, żeby postawić >budynek? Wszystko to jest chemia, fizyka, no i oczywiście ekonomia. A >co się dzieje w systemach informatycznych? Okazuje się, że >charakterystyki funkcjonowania takiego systemu są za każdym razem >inne. A na dodatek niestabilne. Mózg człowieka opisuje rzeczywistość w kategoriach przestrzeni i pojęć fizycznych gdzie mamy pojęcie góry, dołu, ciężaru, szybkości, ścieżki wąskiej/szerokiej, pozycji/adresu, 'zmieści się/nie zmieści', przyczepiony/luźny, itp. Informatycy nie są tu wyjątkiem - tylko sobie często sami robią pod górę nie w pełni zdając sobie z tego sprawę. Do pojęć fizycznych działających głównie na zmysł wzroku, postrzegamy także bardzo silnie rzeczywistość w kategoriach bardziej abstrakcyjnych, np. związanych z granicami (pojęcie własności), relacjami(powiązaniami - np. rodzinnymi), które zaś są nośnikiem dla procesu komunikacji (np. wyrażania potrzeb, wymiany dóbr). To także mamy niejako "we krwi" aczkolwiek temat jest bardziej złożony, trudniej go związać z wyobraźnią przestrzenną. Problem właśnie w tym, że systemy informatyczne uderzają głównie w te pojęcia bardziej abstrakcyjne. Ale budowle architektoniczne typu skrzyżowanie autostrad są pewnego rodzaju wizualizacjami fizycznymi pojęć abstrakcyjnych z działki komunikacji - i tu być może właśnie jest pole do budowania analogii/jej fragmentów. > Już znacznie bardziej mi się podobała analogia do stoczni. Bardzo poproszę o więcej szczegółów tej analogii ;)
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: Seweryn Habdank-Wojewódzki
Date: Tue, 28 Aug 2007 10:32
Date: Tue, 28 Aug 2007 10:32
69 lines
4396 bytes
4396 bytes
Witam Filip Sielimowicz wrote: > Nie zgodzę się z takim sposobem argumentacji, gdzie pojawiają się > np. pojęcia "zupełnie inne charakterystyki" ;). Analogii jeszcze tu nie > skonstruowaliśmy, a już pada określenie 'totalnie chybiona" ;). [...] Bazrdzo dobre wyabstrachownie problemu. Może dodam tylko, taki wniosek racjonalizatorski. W informatyce jak i w architekturze dość dobrze są opracowane metody specyfikowanie, i projektowania. Natomiast IMHO miażdząca różnica polega na: 1. Time to market. W budownictwie nikt się tak nie śpieszy. To znaczy jak się ktoś pospieszy, to się to kończy jak z budową jednego mostu w Wawie, gdzie ktoś "przeoczył", że pod nim nie mogą przejeżdżać ciężarówki. To jest tak jakby ktoś w programie zapomniał czegoś ważnego i potem poprawka kończy się przepisaniem kodu w większości od zera. Ile jest takich błędów w informatyce a ile w budownictwie? A wszystko z powodu pośpiechu. 2. Częstotliwość i rozmiar wprowadzanych zmian do specyfikacji. Znajomi architekci czasami muszą coś zmienić w projekcie, bo klient coś zażądał innego, ale nie widziałem, aby to było tak częste jak w informatyce. 3. Cena przebudowy systemu, która odstrasza klienta od wydziwiania po zamknięciu projektu. Czyli projekt budynku jest zamknięty i że się tak wyrażę "Chłopaki wylały dekę.". Klient, który powie, że on chce dodatkową windę, 2 pokoje i oranżerię za zmianę zapłaci masę kasy -- więc generalnie po zaczęciu budowy nic się nie zmienia. W programowaniu tak nie jest, często pojawiają się nowe żądania już po tym jak ruszyła maszyna kodowania. Menedżerom wydaje się, że jak klient żąda dodatkowego ficzeru, to przecież trzeba mu to dać, to to czasem powoduje zmianę w projekcie na tyle dużą, że trzeba go robić w dużej mierze od zera a tego już manago nie mają ochoty słuchać, tylko każą łatać kod na siłę. Takie łatanie projektu architektonicznego nie ma szans nigdzie przejść, bo balkonów się nie doszywa niciami szewskimi, tylko potrzeba wszystko tak przeprojektować aby balkon można było dodać. 4. Marketingowe zamydlanie oczu, że w informatyce to wszystko staje się takie łatwe jak tylko stosuję się "technologię XYZ". Tego nie ma w budownictwie. A na to często nadziewają się menedżerowie. 5. Ostatnia sprawa częstotliwość (szybkość) zmian narzędziowych w informatyce vs. w budownictwie. Do tego należy dodać że tak jak w informatyce jest wiele języków każdy ma inne podejście i w większości przypadków można dany problem rozwiązać na bardzo wiele sposobów począwszy od doboru języka poprzez modułów/bibliotek/frameworków itd. Kombinacji dróg prowadzących do celu jest bardzo dużo. W budownictwie fizyka dość szybko redukuje liczbę ścieżek sukcesu. 6. Wiek dziedziny jako dziedziny naukowej: informatyka -- śmiech na sali, budownictwo -- szacowna persona. Tak więc nie ma się co dziwić, że w budownictwie jest bardziej wszystko ustabilizowane. Ale już na granicy budownictwa i informatyki, czyli np. w automatyce budynków pojawiają się kłopoty typowe dla informatyki. No i przykłady budownictwa z RPL mogą dobrze wskazywać, że budowę też można spartaczyć. Pozdrawiam. -- |\/\/| Seweryn Habdank-Wojewódzki \/\/
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: Piotr Dembiński
Date: Tue, 28 Aug 2007 13:51
Date: Tue, 28 Aug 2007 13:51
30 lines
2575 bytes
2575 bytes
DarekM <darekm@emadar.com> writes: >>> Pytanie było o proces tworzenia a nie używania. A nawet jeżeli to >>> należy porównywać używanie z zamieszkiwaniem. Też wiele analogii >>> można znaleźć. >> OIDP dziedziną nauki traktującą o systemach w sposób niezależny >> natury i przeznaczenia tych systemów jest teoria systemów. Czyli >> zarówno systemy miejskie, jak i systemy komputerowe można >> rozpatrywać w kategoriach teorii systemów, a w konstrukcji oraz >> konserwacji tych systemów stosować zdobycze inżynierii systemów. > > No i ... > Tak, istnieje taka nauka. Tylko co z tego wynika dla pytacza. Same > osiągnięcia są dosyć dyskusyjne. Przyjmując jednak że są całkowicie > prawdziwe to pewnie są tak użyteczne jak prawo Ohma przy > konstruowaniu telewizora a prawa Newtona do budowy dźwigu. Po drugie > przypuszczam że większościowym beneficjentem byłaby sama teoria > systemów a nie rozwiązanie problemu, tzn. na podstawie > przeprowadzonych działań można by coś nieco wnieść do teorii, > w drugą stronę transfer wiedzy jakoś wydaje mi się mało > prawdopodobny. Może jedynie terminologia była by pomocna, o ile > pytacz nie dysponuje własną systematyką. Jest jeszcze teoria analogii. ZTCW to teoria analogii zajmuje się m.in. możliwościami symulowania jednych zjawisk przy pomocy innych, posiadających właściwości na określonym poziomie abstrakcji analogiczne. -- http://www.piotr.dembiński.prv.pl
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: Marcin
Date: Tue, 28 Aug 2007 20:29
Date: Tue, 28 Aug 2007 20:29
4 lines
1174 bytes
1174 bytes
Tworzenie oprogramowania jest jak budowa katedry ..... budujesz, budujesz, budujesz,. ..... modlisz sie ;-) M
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: Filip Sielimowicz
Date: Mon, 17 Sep 2007 08:50
Date: Mon, 17 Sep 2007 08:50
29 lines
2917 bytes
2917 bytes
Tak sobie dłubię i szukam i coś takiego mi wyskoczyło (bardzo ogólnikowe, ale jakby w temacie): http://www.cxo.pl/artykuly/33442.html "...Inne założenia leżą u podstaw Architektury Zachmana, nazywanej tak od nazwiska twórcy. John Zachman uważał, że w procesie tworzenia skomplikowanych produktów, do których z pewnością należą systemy informatyczne, potrzebne są różnego rodzaju opisy i modele. Są one przeznaczone dla różnych uczestników tego procesu, z których każdy interesuje się czymś innym. Równocześnie każdy produkt opisać można z różnych punktów widzenia i dla różnych celów, co dodatkowo uzasadnia potrzebę różnorodnych opisów. (...) Zachman posługiwał się metaforami z sektora budowlanego, dlatego nazwy ról osób uczestniczących w procesie tworzenia systemu brzmią dość dziwnie w kontekście informatycznym..." "...Tworzenie architektury danych i systemów, względnie też architektury informacyjnej, porównywane jest z projektowaniem nowego budynku. Tworzenie architektury technologicznej porównywane jest natomiast z zestawianiem listy materiałów i narzędzi. Architektura technologiczna, zwana także często architekturą IT, określa niezbędną infrastrukturę dla danych i systemów użytkowych: platformy i sieci komputerowe potrzebne do przetwarzania danych i wspomagania realizowanych w firmie zadań. Pojęcie platformy jest w tym przypadku obszerne i obejmuje zarówno oprogramowanie techniczne stanowiące środowisko danych i systemów, jak i sprzęt komputerowy i inne urządzenia. Na poziomie projektowym architekturę technologiczną stanowią opisy lokalizacji systemów komputerowych firmy i ich połączeń. Na poziomie wykonawczym architekturę technologiczną stanowią opisy systemów komputerowych i sieci komunikacyjnych..."
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: A.L.
Date: Mon, 17 Sep 2007 12:22
Date: Mon, 17 Sep 2007 12:22
19 lines
1737 bytes
1737 bytes
On Mon, 17 Sep 2007 10:50:51 +0200, "Filip Sielimowicz" <sielim@wp.pl> wrote: >Tak sobie dłubię i szukam i coś takiego mi wyskoczyło (bardzo ogólnikowe, >ale jakby w temacie): > >http://www.cxo.pl/artykuly/33442.html > >"...Inne założenia leżą u podstaw Architektury Zachmana, nazywanej tak od >nazwiska twórcy. John Zachman uważał, że w procesie tworzenia >skomplikowanych produktów, do których z pewnością należą systemy >informatyczne, potrzebne są różnego rodzaju opisy i modele. Są one >przeznaczone dla różnych uczestników tego procesu, z których każdy >interesuje się czymś innym. RE-WE-LA-CJA!! Absolutna rewelacja! Proponuje wswadzic do FAQ aby nikomu nie umknelo! A.L.
Re: Do czego porównać konstrukcję dużego systemu informatycznego
Author: Piotr Dembiński
Date: Thu, 20 Sep 2007 19:52
Date: Thu, 20 Sep 2007 19:52
8 lines
1162 bytes
1162 bytes
"Filip Sielimowicz" <sielim@wp.pl> writes: [...] > Zachman posługiwał się metaforami z sektora budowlanego Pozostaje tylko czekać, aż specjaliści innych branż zaczną się posługiwać metaforami z sektora IT.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads