Both sides previous revision
Poprzednia wersja
Nowa wersja
|
Poprzednia wersja
|
pl:dydaktyka:sbd:2012:projekty:lab:projekt_konceptualny [2012/11/30 15:05] sbd11 |
pl:dydaktyka:sbd:2012:projekty:lab:projekt_konceptualny [2019/06/27 15:50] (aktualna) |
| |
| |
Wirtualne zeszyty laboratoryjne są dość powszechnie stosowane w pracy naukowców, powstał nawet termin ELN (Electronic Lab notebook). Są one tworzone głównie po to, aby ułatwić wyszukiwanie danych i zaoszczędzić dzięki temu czas (za http://www.contur.com/tour/: „przy użyciu zeszytów tradycyjnych 20-40% czasu pracy laboranci spędzają na wyszukiwaniu danych”). W Internecie znaleźć można wiele dostępnych programów ELN, między innymi bezpłatne: Labarchives lub Sparlix czy komercyjne: Labtrack albo iLabber. Programy te działają w zasadzie w podobny sposób- po zalogowaniu się możemy utworzyć projekt, a w nim dodawać eksperymenty (wraz z grafiką, wyłącznie przeglądanie badań. | Wirtualne zeszyty laboratoryjne są dość powszechnie stosowane w pracy naukowców, powstał nawet termin ELN (Electronic Lab notebook). Są one tworzone głównie po to, aby ułatwić wyszukiwanie danych i zaoszczędzić dzięki temu czas (za http://www.contur.com/tour/: „przy użyciu zeszytów tradycyjnych 20-40% czasu pracy laboranci spędzają na wyszukiwaniu danych”). W Internecie znaleźć można wiele dostępnych programów ELN, między innymi bezpłatne: Labarchives lub Sparlix czy komercyjne: Labtrack albo iLabber. Programy te działają w zasadzie w podobny sposób- po zalogowaniu się możemy utworzyć projekt, a w nim dodawać eksperymenty. |
| |
====== 3. Analiza wymagań użytkownika ====== | ====== 3. Analiza wymagań użytkownika ====== |
| |
| |
Aplikacji używać będą 3 rodzaje użytkowników- administrator, laboranci i klienci. Administrator jest osobą odpowiedzialną za stronę techniczną dziennika. Ma najbardziej rozległe uprawnienia, może być to np. szef instytutu czy jednostki badawczej. Tylko on może dodawać nowych użytkowników i określać, do jakiej grupy należą (klient, laborant, czy kolejny administrator). Eksperymenty i późniejsze opracowywanie ich przebiegu (dodawanie próbek, opisów obserwacji, załączników itd.) dodawane są przez laborantów. Tylko osoba, który dodaje eksperyment, ma możliwość edycji stałych elementów eksperymentu, jak np. opis i nazwa, może też dodawać kolejnych laborantów jako współpracowników-mogących modyfikować lub przeglądać eksperyment oraz klientów, którzy mogą obserwować efekty pracy. Laboranci dodani jako współpracownicy również mogą modyfikować eksperyment (np. przez dodanie zasobów). Klient (np. osoba zlecająca badanie) nie ma możliwości edytowania żadnego eksperymentu, lecz może przeglądać zasoby dotyczące eksperymentu, do którego ma przyznany dostęp. | Aplikacji używać będą 3 rodzaje użytkowników- administrator, laboranci i klienci. Administrator jest osobą odpowiedzialną za stronę techniczną dziennika. Ma najbardziej rozległe uprawnienia, może być to np. szef instytutu czy jednostki badawczej. Tylko on może dodawać nowych użytkowników i określać, do jakiej grupy należą (klient, laborant, czy kolejny administrator). Eksperymenty i późniejsze opracowywanie ich przebiegu (dodawanie próbek, opisów obserwacji, załączników itd.) dodawane są przez laborantów. Tylko osoba, który dodaje eksperyment, ma możliwość edycji stałych elementów eksperymentu, jak np. opis i nazwa, może też dodawać klientów, którzy mogą obserwować efekty pracy. Inni laboranci również mogą modyfikować eksperyment (np. przez dodanie zasobów). Klient (np. osoba zlecająca badanie) nie ma możliwości edytowania żadnego eksperymentu, lecz może przeglądać zasoby dotyczące eksperymentu, do którego ma przyznany dostęp. |
Badanie jest to zbiór przeprowadzonych kolejno eksperymentów dotyczących jednego zagadnienia. Do każdego eksperymentu przyporządkowane są: | Badanie jest to zbiór przeprowadzonych kolejno eksperymentów dotyczących jednego zagadnienia. Do każdego eksperymentu przyporządkowane są: |
+ opcjonalne próbki/załączniki/ dane różnego rodzaju , | + opcjonalne próbki/załączniki/ dane różnego rodzaju , |
====== 4. Określenie scenariuszy użycia ====== | ====== 4. Określenie scenariuszy użycia ====== |
| |
**1. Tworzenie użytkowników (administrator):** | **1. Tworzenie użytkowników (administrator)** |
| |
**2. Tworzenie użytkowników typu laborant lub klient, nadanie im loginów oraz haseł,** | **2. Tworzenie użytkowników typu laborant lub klient, nadanie im loginów oraz haseł** |
| * Logowanie się (wszyscy)- wpisanie loginu i hasla |
| |
• Logowanie się (wszyscy)- wpisanie loginu i hasla | **3. Zmiana danych (wszyscy) – zmiana imienia, nazwiska i hasła, po wpisaniu poprzedniego hasła** |
| |
**3. Zmiana danych (wszyscy) – zmiana imienia, nazwiska i hasła, po wpisaniu poprzedniego hasła,** | |
| |
**4. Dodanie badania (laborant)** | **4. Dodanie badania (laborant)** |
| |
• Kliknięcie przycisku „dodaj badanie” tworzy folder w którym będą znajdować się eksperymenty danego typu, | * Kliknięcie przycisku „dodaj badanie” tworzy folder w którym będą znajdować się eksperymenty danego typu, |
| * Pojawią się pola do wypełnienia: nazwa, laboranci (jest możliwość dodania laborantów zaangażowanych w projekt), klienci. |
• Pojawią się pola do wypełnienia: nazwa, laboranci (jest możliwość dodania laborantów zaangażowanych w projekt), klienci. | |
| |
**5. Dodanie eksperymentu (laborant)** | **5. Dodanie eksperymentu (laborant)** |
| *Po wybraniu danego badania tworzenie w jego ramach eksperymentu (nadanie nazwy, opisu), |
| |
• Po wybraniu danego badania tworzenie w jego ramach eksperymentu (nadanie nazwy, opisu), | **6. Dodanie nowego schematu badania/ szablonu eksperymentu (administrator)** |
| |
**6. Dodanie nowego schematu badania/ szablonu eksperymentu (administrator).** | |
| |
**7. Edycja eksperymentu** | **7. Edycja eksperymentu** |
| *Dodanie, próbek, adnotacji, załączników. (laboranci), |
• Dodanie, próbek, adnotacji, załączników. (laboranci), | *Edycja wcześniej uzupełnionych danych, |
| *Edycja osób mogących przeglądać eksperyment. |
• Edycja wcześniej uzupełnionych danych, | |
| |
• Edycja osób zaangażowanych w eksperyment oraz mogących go przeglądać. | |
| |
**8. Usuwanie eksperymentu (laborant, który go utworzył).** | **8. Usuwanie eksperymentu (laborant, który go utworzył).** |
| |
**__Klient:__** | **__Klient:__** |
| *logowanie, |
- logowanie, | *edycja swoich danych, |
| *przeglądanie eksperymentów (do których ma przyznany dostęp), ich opisów i wyników, |
- edycja swoich danych, | *wylogowanie. |
| |
- przeglądanie eksperymentów (do których ma przyznany dostęp), ich opisów i wyników, | |
| |
- wylogowanie. | |
| |
**__Administrator__** | **__Administrator__** |
| *logowanie, |
| *edycja swoich danych, |
| *dodawanie nowych użytkowników (administratorów, laborantów i klientów), |
| *wszystkie funkcje dostępne dla laboranta, |
| *wylogowanie. |
| |
- logowanie, | **__Laborant:__** |
| *logowanie, |
| *edycja swoich danych, |
| *dodawanie nowych badań, |
| *dodawanie nowych eksperymentów, |
| *edycja danych swoich eksperymentów (tytuł, opis), |
| *dodanie klientów jako obserwatorów badań i eksperymentów i usuwanie ich, |
| *przeglądanie eksperymentów, |
| *dodawanie próbek, adnotacji, załączników, płytek laboratoryjnych do eksperymentów, |
| *wylogowanie. |
| |
- edycja swoich danych, | |
| |
- dodawanie nowych użytkowników (administratorów, laborantów i klientów), | ====== 6. Encje i ich atrybuty: ====== |
| |
- wszystkie funkcje dostępne dla laboranta, | **Admin**: |
| *admin_ID |
| *login |
| *name |
| *surname |
| *password |
| |
- wylogowanie. | |
| |
**__Laborant:__** | **Client**: |
| *client_ID |
| *login |
| *name |
| *surname |
| *password |
| |
- logowanie, | |
| |
- edycja swoich danych, | **LabGeek**: |
| *labgeek_ID |
| *login |
| *name |
| *surname |
| *password |
| |
| |
- dodawanie nowych badań, | **ResTemplate** [Szablon badania, zawierający sugerowane eksperymenty ] : |
| *restemplate_id |
| *description |
| |
- dodawanie nowych eksperymentów, | |
| |
- edycja danych swoich eksperymentów (tytuł, opis,) | **ResInstance** [Instancja badania, określająca faktyczny przebieg ciągu eksperymentów]: |
| *resinstance_id |
| *Restemplate_id (foreign key) |
| |
- dodanie innych laborantów do zespołów badawczych przy swoich badaniach i eksperymentach i usuwanie ich, | |
| |
- dodanie innych laborantów jako obserwatorów badań i eksperymentów i usuwanie ich, | **ExpScheme** [Schemat eksperymentu, używany przy sugerowaniu następnych eksperymentów]: |
| *expscheme_id |
| *name |
| *description |
| *next_expscheme (foreign key) (następny sugerowany eksperyment) |
| *restemplate_id |
| |
- dodanie klientów jako obserwatorów badań i eksperymentów i usuwanie ich, - przeglądanie eksperymentów swoich oraz tych, do których ma dostęp jako członek zespołu badawczego lub obserwator, | |
| |
- dodawanie próbek, adnotacji, załączników, płytek laboratoryjnych do eksperymentów swoich oraz tych, w których należy do zespołu badawczego, | **ResGroup** [Grupa wyników, związana z szablonem eksperymentu, zawierająca możliwe do uzyskania wyniki danego eksperymentu (typu: sukces, porażka, niejasny wynik), będące podstawą do zasugerowania następnego etapu]: |
| *resgroup_id |
| *expscheme_id (foreign key) |
| |
- usuwanie dodanych przez siebie elementów eksperymentu, | |
| |
- usuwanie swoich eksperymentów, | **Result_** [Konkretny wynik, zawierający opis i odpowiednik numeryczny] : |
| *result_id |
| *resNumber |
| *description |
| *resgroup_id (foreign key) |
| *next_expscheme_id (foreign key) |
| |
- wylogowanie. | |
| |
| **Experiment** [Eksperyment właściwy]: |
| *experiment_ID |
| *name |
| *description |
| *result |
| *labgeek_ID(foreign key) |
| *expscheme_id(foreign key) |
| *ResInstance_ID(foreign key) |
| *next_experiment_ID (foreign key) |
| |
====== 6. Encje i ich atrybuty: ====== | |
| |
**Admin**: -admin_ID –login - name- surname- password | **Sample**: |
| *sample_ID |
| *experiment_id(foreign key) |
| *description |
| *isOnBoard |
| |
**Client**: -client_ID –login - name- surname password | |
| |
**LabGeek**: -labgeek_ID – login - name - surname - password | **PlaceOnBoard**[Określenie zawartości konkretnego miejsca na płytce laboratoryjnej - zawiera współrzędne i próbkę, znajdującą się w tych współrzędnych]: |
| *place_ID |
| *placeX |
| *placeY |
| *sample_ID(foreign key) |
| *board_id(foreign key) |
| |
**Creator** – creator_id - | |
| |
**Contributor** – contributor_id - | **Lab_board**[Płytka laboratoryjna o konketnych wymiarach, na której umieszczane mogą być próbki]: |
| *board_ID |
| *sizeX |
| *sizeY |
| *experiment_ID (foreign key) |
| *state_ID (foreign key) |
| |
**Viewer** – viewer_id - | |
| |
**Cycle**[cykl eksperymentów]:cycle_ID - name – description - restemplate_id (foreign key) - resinstance_id (foreign key) | **Board_state** [Encja do stworzenia typu wyliczeniowego, reprezentującego stan płytki (może być np. "w trakcie kompletowania próbek", "podczas przetwarzania", "przetwarzanie zakończone", itp.)] |
| *state_ID |
| *board_state |
| |
**ResTemplate** [Szablon badania(riserczu) ] : restemplate_id, drzewiasta struktura schematów eksperymentów (do doczytania) z expscheme_id | |
| |
**ResInstance** [Instancja badania(riserczu)]: resinstance_id, experiment_id (foreign key) | **Adnotation**: |
| *adnotation_ID |
| *content |
| *experiment_ID(foreign key) |
| |
**ExpScheme** [Schemat eksperymentu]: expscheme_id , name, description, next_expscheme_id (foreign key) (następny sugerowany eksperyment), result (wynik eksperymentu) | |
| |
**Experiment**: experiment_ID –labgeek_ID(foreign key), name, description, result , client_ID(foreign key) | **Attachment**: |
| *attachment_ID |
| *name |
| *description |
| *experiment_ID(foreign key) |
| |
**Sample**: sample_ID, experiment_id(foreign key), labgeek_ID(foreign key)– description – dateAdded – isOnBoard | ====== 7. Analiza hierarchii funkcji projektowanej aplikacji: ====== |
| |
**PlaceOnBoard**: place_ID - placeX - placeY - sample_ID(foreign key) - board_id(foreign key) | {{:pl:dydaktyka:sbd:2012:projekty:lab:wirt_zeszyt.png|}} |
| |
**Lab_board**: -board_ID – sizeX - sizeY - description – state_ID (foreign key) | |
| |
**Board_state**: state_ID - name | ====== 8. Projektowanie powiązań (relacji) pomiędzy encjami. ====== |
| |
**Adnotation**: adnotation_ID - labgeek_ID(foreign key) – dateAdded – content - description - experiment_ID(foreign key) | {{:pl:dydaktyka:sbd:2012:projekty:lab:erd_konceptualny.png|}} |
| |
**Attachment**: -attachment_ID – labgeek_ID( foreign key) - experiment_ID(foreign key) –name - description - dateAdded | |
| |
====== 7. Analiza hierarchii funkcji projektowanej aplikacji: ====== | |
| |
{{:pl:dydaktyka:sbd:2012:projekty:lab:wirt_zeszyt_lab2.png|}} | |