Michał Jastrzębski

Michał Jastrzębski Django-fu, phpjutsu,
sql-do

Temat: Stworzenie programu - bazy danych - do wspomagania...

Pytanie dość kluczowe- ile osób będzie operowało na tej bazie? I z ilu komputerów? Jeśli jeden komputer, można robić aplikację desktopową z lokalną bazą danych, jeśli więcej zrobiłbym bazę danych na serwerze dostępnym przez tcp/ip bądź inny protokół sieciowy, który by aktualizował bazę albo właśnie codziennie albo ręcznie po podłączeniu klienta do sieci. Model MVC myślę że jest oczywistością. Co do .NET i MSSQL przyznam, że nie znam tych środowisk, ale wybór środowiska na tym etapie jest ciężki.

Przydała by się długa rozmowa przedstawiciela służb z analitykiem:) w celu zebrania scenariuszy, przygotowania UML. Myślę że dopiero wtedy można tak na prawdę rozmawiać o optymalnym środowisku. Inna sprawa, że nie wiadomo jakie środki będą przeznaczone na rozwój tego projektu.

Na początek przychodzi mi do głowy parę pytań:
1. Ile komputerów będzie korzystało z tej bazy danych?
2. W jaki sposób dany użytkownik będzie z tej bazy korzystał(kto jakie dane będzie potrzebował etc.)
3. Jak wygląda sprawa dostępności danych? Czy każdy powinien widzieć wszystko?
4. Jak ważna jest aktualność danych? Czy aktualizacje raz dziennie wystarczyłyby?

Najważniejsze moim zdaniem są 2 pierwsze pytania. Po odpowiedzi na nie można myśleć nad tym, czy tworzyć aplikację desktopową, czy desktopowy byłby tylko intefrejs, a jądra i główna baza danych byłby w sieci.
Jakub L.

Jakub L. Programista

Temat: Stworzenie programu - bazy danych - do wspomagania...

Łukasz P.:
Jakub L.:
Albo weźcie i pogadajcie z jakimś studentem żeby zrobił to

I chwilę po uruchomieniu się okaże, że dane wszystkich ratowników, wykaz użytego sprzętu oraz zanotowany przez koordynatora przebieg zdarzeń będziemy mogli znaleźć w jednym z (albo we wszystkich) tzw. "pism bulwarowych"...
Jakiś czas temu Wydział Cybernetyki WAT uczestniczył w przedsięwzięciu opracowania zintegrowanego systemu zarządzania kryzysowego dla m.st. Warszawy. Nie wiem, jak się ten projekt rozwinął, ale może warto skorzystać z ich doświadczeń...

Dlatego trzeba się studentowi patrzeć na ręce.
W sumie to trochę dziwne, że takich systemów jeszcze nie ma wdrożonych.

konto usunięte

Temat: Stworzenie programu - bazy danych - do wspomagania...

Mam takie małe pytanie. O co wszystkim chodzi z tymi studentami ? Sam jestem studentem, choć jako programista pracuję od 17 roku życia - jako freelancer i przez półtorej roku w jednej firmie i teraz znowu jako freelancer. Czuję się urażony, że tak generalizujecie sprawę studentów, bo przez to sugerujecie ludziom by mieli do mnie mniejsze zaufanie.

Powracając do temu.
Małe znaczenie w tym momencie ma wybór samej bazy danych bo jakie to ma znaczenie na tym poziomie czy to będzie mysql, postgres czy oracle ? Ważniejsze pytania to chyba jaką aplikację potrzebuje ta działalność ratownicza. Jeżeli jest to tylko centrala przyjmująca przypuśćmy zgłoszenia, która przy okazji jest połączona z samym punktem ratownica( ten sam budynek lub gorąca linia ). To będzie potrzebna desktopowa aplikacja podpięta pod telefon zgłoszeniowy. Ważna w tym wypadku będzie również komunikacja z ratownikami, system smsowy itd. W takim razie prosimy w końcu o napisanie "co i jak", zamiast "w czym".

Chętnie dołączę się do projektu jeżeli znajdzie się ktoś, kto będzie nadzorował cały projekt.Grzegorz Gąsiecki edytował(a) ten post dnia 03.03.10 o godzinie 21:01
Łukasz P.

Łukasz P. PMP, Specjalista IT

Temat: Stworzenie programu - bazy danych - do wspomagania...

Grzegorz Gąsiecki:
Mam takie małe pytanie. O co wszystkim chodzi z tymi studentami ? Sam jestem studentem, choć jako programista pracuję od 17 roku życia - jako freelancer i przez półtorej roku w jednej firmie i teraz znowu jako freelancer. Czuję się urażony, że tak generalizujecie sprawę studentów, bo przez to sugerujecie ludziom by mieli do mnie mniejsze zaufanie.
Robi się offtopicznie, ale jeszcze sobie pozwolę. To nie jest niechęć do studentów. To jest niechęć do tego, co zostało przez kilka osób poruszone - brak supportu, brak odpowiedzialności. Jeśli zrobi to firma krzak, to pewnie na jedno wyjdzie, ale jeśli zrobi to firma/instytucja, która ma w tym obszarze doświadczenie, to faktycznie jest szansa na wsparcie i rozwój... Z wstępnego opisu wynika, że nie może to być aplikacja, która w krytycznym momencie wywali fatal errora, a zatem musi przejść odpowiednie testy, których sam autor (choćby najwybitniejszy) nie przeprowadzi poprawnie (bo będzie testował na poprawność, prawie zawsze).
Wracając do tematu - moim zdaniem nie wystarczy student, bo charakter systemu wymaga integracji elementów z różnych obszarów (łączność, programowanie, bazy danych, itd.). Może udałoby się to jakiemuś zespołowi studentów, ale ktoś musiałby nimi dobrze pokierować (promotor? śmiem wątpić... nigdy nie znajdzie dość czasu). Ktoś musiałby później to supportować...
Z mojej strony EOT jeśli chodzi o studentów w tym projekcie...

Temat: Stworzenie programu - bazy danych - do wspomagania...

Opis aplikacji sprawia przyjemne wrażenie... choć jak to bywa bez ściślejszej specyfikacji - może to być zaledwie ułamek faktycznych potrzeb... Nie szkodzi - chętnie wejdę w przedsięwzięcie. Oczywiście nie zakładam ogarnięcia wszystkiego samodzielnie...

Na potrzeby sensowniejszych dyskusji tworzę osobne forum, mam nadzieję że p. Grzegorz, autor wątku, nie ma nic przeciwko. Zainteresowanych dołączeniem do tego forum-grupy proszę o kontakt (zakładam że będziemy uprawiać wolontariat, ale nie w formie open-source (przynajmniej nie na tym etapie) więc grupa nie będzie publiczna...)

Paweł
Szymon P.

Szymon P. Databricks, Azure
Data Factory, MS SQL
SERVER

Temat: Stworzenie programu - bazy danych - do wspomagania...

5. Pytanie czy MS Access, czy SQL Server, czy php, inne - oparty www raczej odpada - nie wszędzie będzie Internet :)

To, że aplikacja bazodanowa jest obsługiwana przez przeglądarkę nie jest równoznaczne z tym, że trzeba mieć internet prawda?! Wystarczy mieć przeglądarkę zainstalowaną

Poza tym, ja topic zrozumiałem tak, że jesteście zainteresowani bardziej komunikacją między własnymi komputerami należącymi do brygady niż ze światem zewnętrznym, a do tego internetu nie trzeba tylko jakieś tam własne rozwiązania wifiSzymon P. edytował(a) ten post dnia 07.03.10 o godzinie 12:26
Szymon P.

Szymon P. Databricks, Azure
Data Factory, MS SQL
SERVER

Temat: Stworzenie programu - bazy danych - do wspomagania...

Michał Jastrzębski:
Z tego co widzę, dużym problemem będzie komunikacja między aplikacjami klienckimi, np. umieszczonymi w każdym z wozów. Co byście powiedzieli na pomysł odrobiny redundacji danych? Tzn. jedna centralna baza danych umieszczona na serwerze i kopie tej samej bazy na laptopach podczas pracy w terenie. Pracuje się na nich offline, a w momencie połączenia z internetem następuje aktualizacja danych na serwerze o te dane umieszczone w terenie. W momencie pojawienia się nowych danych, serwer poinformuje o nich pozostałe klienty, kiedy i one pojawią się online, i zaktualizuje te bazy. To załatwi też sprawę kopii zapasowych. Rozwiązania pokroju ms access mogą się wysypać i spowodować utratę cennych danych, szczególnie podczas pracy w terenie laptopy mogą być narażone na dodatkowe uszkodzenia.

Pozdrawiam!
Michał Jastrzębski


Pan tutaj zaproponował najlepsze rozwiązanie wg mnie. Zakładam że masz na myśli replikację typu merge (moze działać właśnie offline), a w momencie podłączenia się baz klienckich do głównej te wymieniają się danymi. To chyba najsensowniejsza możliwość wg. mnie. Wic polega na tym, że ja nie pamiętam, który silnik bazodanowy oferuje za friko taką replikację bo SQL Server express jej chyba nie obłsuguje, a jak wiadomo autorowi wątku zależy na niskich kosztach

konto usunięte

Temat: Stworzenie programu - bazy danych - do wspomagania...

Szymon P.:
Wic polega na tym, że ja nie pamiętam, który silnik bazodanowy oferuje za friko taką replikację bo SQL Server express jej chyba nie obłsuguje, a jak wiadomo autorowi wątku zależy na niskich kosztach

Access ma jakąś tam replikację, ale to chyba nie o to chodzi ;)
Szymon P.

Szymon P. Databricks, Azure
Data Factory, MS SQL
SERVER

Temat: Stworzenie programu - bazy danych - do wspomagania...

Przemysław R.:
Szymon P.:
Wic polega na tym, że ja nie pamiętam, który silnik bazodanowy oferuje za friko taką replikację bo SQL Server express jej chyba nie obłsuguje, a jak wiadomo autorowi wątku zależy na niskich kosztach

Access ma jakąś tam replikację, ale to chyba nie o to chodzi ;)


Przemek zgadza się ale w przyszłości, ta aplikacja bazodanowa jak wspomniałes dobrze by było, gdyby obsługiwała telefony (iphone, smartphone etc.) a Access ma chyba tylko transakcyjną replikację? Więc chyba lepiej by było darmowy SQL Express, zainstalować poniewaz ich baza na pewno nie przekroczy 4GB - a express jest za friko, a access jest płatny :-)

Tylko jak pisałem, nie wiem czy SQL Server express obsługuje taką replikację.Szymon P. edytował(a) ten post dnia 07.03.10 o godzinie 12:36

konto usunięte

Temat: Stworzenie programu - bazy danych - do wspomagania...

Szymon P.:

Przemek zgadza się ale w przyszłości, ta aplikacja bazodanowa jak wspomniałes dobrze by było, gdyby obsługiwała telefony (iphone, smartphone etc.) a Access ma chyba tylko transakcyjną replikację? Więc chyba lepiej by było darmowy SQL Express, zainstalować poniewaz ich baza na pewno nie przekroczy 4GB - a express jest za friko, a access jest płatny :-)


silnik bazodanowy JET - on obsługuje pliki MDB - jest za darmo w każdym Windows, trzeba tylko do niego dopisać jakieś GUI

co do obsługi telefonów - jak jest jakiś soft z obiektami które obsłuży VBA - no problem

SQL Express może być tylko klientem replikacjiPrzemysław R. edytował(a) ten post dnia 07.03.10 o godzinie 12:38
Michał Jastrzębski

Michał Jastrzębski Django-fu, phpjutsu,
sql-do

Temat: Stworzenie programu - bazy danych - do wspomagania...

Pytanie, czy trzeba pisać to na telefony... Z tego co rozumiem problem to liczą się małe koszta, a nikt nie używa tam smartphonów. Nie lepiej poszukać jakegoś klasycznego silnika? MySQL o ile wiem obsługuje MERGE. MySQL byłby dodatkowo znaczne bardziej przenośne, bo można będzie z tego zrobić zarówno aplikację desktopową jak i webową. A i koszta będą niższe, bo zrobienie gui etc do MySQL jest o wiele prostsze od GUI do JET. Ponad to mamy gotowe biblioteki do obsługi tych baz do np. Pythona. Poza tym MySQL znają wszyscy:) co też jest cenne...

Sugerowałbym pozostanie przy MySQL, PgSQL itp "standardowych" silnikach.

konto usunięte

Temat: Stworzenie programu - bazy danych - do wspomagania...

Przemysław R.:
Szymon P.:

Przemek zgadza się ale w przyszłości, ta aplikacja bazodanowa jak wspomniałes dobrze by było, gdyby obsługiwała telefony (iphone, smartphone etc.) a Access ma chyba tylko transakcyjną replikację? Więc chyba lepiej by było darmowy SQL Express, zainstalować poniewaz ich baza na pewno nie przekroczy 4GB - a express jest za friko, a access jest płatny :-)


silnik bazodanowy JET - on obsługuje pliki MDB - jest za darmo w każdym Windows, trzeba tylko do niego dopisać jakieś GUI
SQLite - jest za darmo - wszędzie. Pod Windows to jest jeden dll - jakieś 300-400 kB. Nie trzeba żadnych dodatków, ba można sobie w plik wykonywalny wkompilować. To jest zrobione w C, więc kompiluje się na większości platform sprzętowych. Dla przykładu: na Androidzie jest w standardzie, pod Windows Firefox używa tego używa. Tak z innej beczki: ja bym się zastanowił nad czymś nie-SQLowym, ale to zależy od specyfikacji systemu.
co do obsługi telefonów - jak jest jakiś soft z obiektami które obsłuży VBA - no problem
Java ME - chyba w tym przypadku będzie najlepszym rozwiązaniem - jeżeli chodzi o klienta. No chyba, że można oczekiwać od osób współpracujących, że będą używać telefonów z systemem jednej firmy. ;-) Skoro jednak nie mogą się dogadać, żeby był jeden standard łączności - przypuszczam, że... nie sądzę.
SQL Express może być tylko klientem replikacji
>
Zgadzam się, że główny program powinien działać na PC. Wydaje mi się jednak, że takie rozwiązanie powinno być możliwie przenośne. System bootowalny ze sticka? Jeżeli jeden komputer padnie - wkładam do drugiego i też ma działać. GUI ma udostępniać podstawową funkcjonalność - maksymalnie czytelne, proste. Podejrzewam, że równie dobrze może być to tryb tekstowy co graficzny. Tego oczywiście bym nie forsował, bo np. mapy ciężko się pokazuje w trybie tekstowym...

Ja tam widzę w tym projekcie całą masę problemów. Co prawda jest jeden plus - że system musi działać kilka godzin. Z drugiej strony - działanie systemu jest krytyczne dla powodzenia operacji polegającej na ratowaniu ludzi. System jest rozproszony, potencjalnie musi radzić sobie z wieloma sytuacjami wyjątkowymi. Całość musi być przenośna, niezawodna, mała, lekka i stabilna. Prawdopodobnie trzeba się będzie interfejsować z paroma zewnętrznymi źródłami danych... coś mi mówi, że zrobienie @webservice przy klasie nie rozwiązuje problemu ;) Do wymagań funkcjonalnych nawet nie doszedłem.

Chyba, że to ma być coś na poziomie projektu na zaliczenie. Albo rozwiązanie klasy banana-software - oprogramowanie dojrzewające u klienta. No to wtedy jest zupełnie inna rozmowa.

Następna dyskusja:

stworzenie proste bazy danych




Wyślij zaproszenie do