Keywords: info

# Projekt Dendrarium -- wizja

Dominika Pawlik, Karolina Sołtys, Piotr Achinger, Tomasz Badowski

## Spis rzeczy

- Wprowadzenie
  - Cel
  - Zakres
  - Definicje
- Osoby mające wpływ na wymagania i projekt
  - Demografia rynku
  - Lista osób mających wpływ na wymagania
  - Lista ról w Systemie
  - Środowisko użytkownika
- Charakterystyka osób mających wpływ na wymagania
  - Twórcy systemu
  - Klient
  - Opiekun
- Charakterystyka użytkowników
  - Administrator
  - Supergramatyk
  - Gramatyk -- obserwator
  - Dendrolog
  - Superdendrolog
- Kluczowe wymagania
- Omówienie produktu
  - Umiejscowienie produktu
  - Podsumowanie możliwości
  - Założenia i zależności
  - Koszta
  - Licencjonowanie i instalacja
  - Rozpoczęcie korzystania z Systemu
  - Ekran powitalny
  - Wybór zdania
  - Odpowiedzi na pytania Systemu
  - Rozstrzyganie kolizji
  - Reakcja na zmiany w gramatyce
  - Dodawanie użytkowników
- Założenia jakościowe
- Priorytety
- Załącznik 1 - Atrybuty
  - Ryzyko
- Literatura

# Wprowadzenie

Ważnym etapem tworzenia banku drzew składniowych dla języka polskiego jest podejmowanie decyzji, które spośród wielu wygenerowanych przez komputer drzew robioru danego zdania jest najbardziej odpowiednie. Wybór ten musi być dokonywany przez wykwalifikowanego pracownika. Proces ten ma na celu sporządzenie banku drzew rozbioru i na skutek sprzężenia zwrotnego - wprowadzanie poprawek do gramatyki. Nasz system -- Projekt Dendrarium -- będzie koordynował pracę grupy lingwistów, przydzielając im fragmenty całego zadania, sygnalizował przypadki braku zgodności i pozwalał na ich rozstrzyganie przez użytkownika o wyższych uprawnieniach. Jednocześnie będzie ułatwiał pracę nad pojedynczymi zdaniami, zadając ujednoznaczniające pytania odnośnie cech strukturalnych właściwego drzewa rozbioru i umożliwiając szybkie udzielanie odpowiedzi na nie za pomocą wygodnego interfejsu. Aby optymalnie wykorzystywać czas pracy lingwisty, Projekt Dendrarium stawia sobie za zadanie generowanie zestawów pytań najszybciej prowadzących do uzyskania jednoznacznego wyniku. Projekt Dendrarium powinien też dostosowywać się do zmian w gramatyce, minimalizując przy tym utratę uprzednio wykonanej pracy.

## Cel

Celem dokumentu jest analiza wymagań stawianych naszej aplikacji przez zleceniodawcę oraz scharakteryzowanie przyszłych użytkowników i zdefiniowanie ich potrzeb. Ponadto omówiono w nim własności produktu, wymagania dokumentacyjne oraz priorytety projektu i związane z nim ryzyko.

## Zakres

Dokument ten zawiera podstawowe informacje na temat funkcji i własności programu, bardziej szczegółowe informacje zostaną przedstawione w dalszym terminie.

## Definicje

1. Zdanie -- fragment tekstu w języku naturalnym, zwykle od wielkiej litery do kropki, stanowiący jednostkę dla automatycznej analizy składniowej.
2. Akapity -- spójne ciągi zdań pochodzące z większego tekstu. Są to najmniejsze porcje pracy przydzielane użytkownikom.
3. Gramatyka (formalna) -- sposób formalnego opisu języka naturalnego (polskiego). W naszym systemie stosowana będzie gramatyka wywodząca się od gramatyki formalnej Świdzińskiego (opisanej w pracy [GFJP]), używana w programie Świgra.
4. Parser (analizator składniowy) -- program generujący dla danego zdania opis wszystkich możliwych struktur składniowych dopuszczanych przez gramatykę.
5. Drzewo rozbioru/analizy -- reprezentacja jednej z możliwych struktur składniowych przypisanych zdaniu przez gramatykę. W drzewie rozbioru w liściach są wyrazy, zaś węzły wewnętrzne, etykietowane jednostkami składniowymi, symbolizują syntaktyczne związki między nimi.
6. Upakowany las (analiz) -- struktura grafowa reprezentująca zbiorczo wszystkie możliwe drzewa rozbioru dla danego zdania. Jest to postać wyników parsera, w jakiej będą one wprowadzane do systemu.
7. Zdanie sporne -- zdanie dla którego różni użytkownicy wybrali różne rozbiory
8. System -- docelowy, wdrożony projekt

# Osoby mające wpływ na wymagania i projekt

## Demografia rynku

Projekt Dendrarium jest skierowany do wąskiej grupy osób zatrudnionych w projekcie tworzenia banku drzew składniowych dla języka polskiego. Będzie umożliwiał zastosowanie innej gramatyki, więc po niewielkich modyfikacjach będzie mógł zostać przystosowany do pracy nad innymi językami fleksyjnymi i być może zaciekawi lingwistów i filologów z różnych krajów. Może również służyć jako narzędzie pomocne w kształceniu studentów polonistyki i innych filologii.

## Lista osób mających wpływ na wymagania

1. Naszym klientem jest projekt badawczy Ministerstwa Nauki nr N N104 224735 ,,Budowa banku drzew składniowych dla języka polskiego z wykorzystaniem automatycznej analizy składniowej'' realizowany w IPI PAN, reprezentowany przez dr. Marcina Wolińskiego, członka Zespołu Inżynierii Lingwistycznej Zakładu Sztucznej Inteligencji IPI PAN.

2. Opiekunem naszego zespołu jest dr Robert Dąbrowski, prowadzący grupę laboratoryjną z przedmiotu Zespołowy Projekt Programistyczny.

## Lista ról w Systemie

1. Administrator -- nadzoruje poprawność działania Systemu, przy ewentualnej awarii przywraca System do pełnej funkcjonalności, może ustawiać uprawnienia użytkowników.
2. Gramatycy -- mogą przeglądać wszystkie powstałe drzewa rozbioru wraz z komentarzami dendrologów
3. Supergramatyk -- wprowadza do Systemu poprawne w aktualnej gramatyce charty dla obecnych w bazie zdań, udoskonala gramatykę

4. Dendrolodzy -- wybierają zdania nad którymi pracują, odpowiadają na pytania o rozbiór stawiane przez system. Mogą sygnalizować błędy w zdaniu lub w gramatyce, oglądać powstałe drzewo rozbioru, jak również wszystkie zatwierdzone drzewa w systemie, oraz dodawać komentarze do wykonanej przez siebie pracy nad rozbiorem.
5. Superdendrolodzy -- użytkownicy rozstrzygający konflikt między dendrologami. Decydują, który rozbiór jest prawidłowy, w przypadku, gdy nie ma zgodności między dendrologami.

## Środowisko użytkownika

System będzie używany w przeglądarce Firefox.

# Charakterystyka osób mających wpływ na wymagania

## Twórcy systemu

1. opis: realizują projekt
2. odpowiedzialność: tworzą szczegółową i pełną dokumentację oraz realizują projekt
3. kryteria sukcesu: stworzenie w określonym czasie Systemu zgodnego z wymaganiami określonymi przez klienta
4. zaangażowanie:
   1. tworzenie dokumentacji
   2. tworzenie Systemu
   3. testowanie Systemu

## Klient

1. opis: specyfikuje pożądany projekt
2. odpowiedzialność: zdefiniowanie funkcjonalności Systemu, dostarczenie niezbędnych narzędzi
3. kryteria sukcesu: otrzymanie w terminie produktu spełniającego wymagania
4. zaangażowanie:
   1. odpowiedzi na pytania dotyczące wizji i celu Systemu
   2. nadzorowanie prac nad Systemem
   3. testowanie Systemu

## Opiekun

1. opis: sprawuje nadzór nad wykonaniem projektu
2. odpowiedzialność: nadzoruje projekt, testuje oraz ocenia jego realizację
3. kryteria sukcesu:
4. zaangażowanie:
   1. służy radą i sugestią
   2. testuje System
   3. ocenia stopień realizacji projektu

# Charakterystyka użytkowników

## Administrator

1. opis: administruje Systemem
2. odpowiedzialność: funkcjonalność i bezpieczeństwo Systemu
3. kryteria sukcesu: utrzymanie funkcjonalnego i bezpiecznego Systemu
4. zaangażowanie:
   1. wstawianie pakietów zdań do bazy danych przy starcie systemu
   2. korygowanie skutków ewentualnych awarii
   3. nadawanie uprawnień użytkownikom

## Supergramatyk

1. opis: zarządza reakcją Systemu na zmiany gramatyki
2. odpowiedzialność: wprowadzanie do Systemu poprawnych w aktualnej gramatyce chartów dla obecnych w bazie zdań
3. kryteria sukcesu: udoskonalanie gramatyki
4. zaangażowanie:
   1. wprowadzanie do Systemu poprawnych w aktualnej gramatyce chartów dla obecnych w bazie zdań
   2. inicjacja procesu reakcji Systemu na zmianę gramatyki

## Gramatyk -- obserwator

1. opis: użytkownik ten jest obserwatorem, mającym możliwość oglądania rozbiorów zdań i komentarzy użytkowników o błędach
2. kryteria sukcesu: udoskonalanie gramatyki
3. zaangażowanie:
4. możliwość oglądania rozbiorów zdań i komentarzy użytkowników o błędach

## Dendrolog

1. opis: wybieranie poprawnego drzewa rozbioru dla wybranego zdania
2. odpowiedzialność: wybranie poprawnego rozbioru
3. kryteria sukcesu: stworzenie banku rozbiorów zdań
4. zaangażowanie:
   1. wybór zdania do rozbioru
   2. odpowiedzi na pytania zadawane przez System
   3. przeglądanie powstałego rozbioru
   4. zatwierdzanie bądź odrzucanie rozbioru
   5. ponowna obróbka wybranego wcześniej zdania
   6. zgłoszenie błędnych lub niewłaściwych zdań, oraz dodanie komentarza

## Superdendrolog

1. opis: wybieranie poprawnego rozbioru zdania spornego, które zostało niejednomyślnie rozłożone przez dendrologów, weryfikacja zdań oznaczonych przez dendrologów jako niewłaściwe
2. odpowiedzialność: wybranie poprawnego robioru, zgłaszanie błędów w przyjętej gramatyce
3. kryteria sukcesu: wybranie poprawnego rozbioru
4. zaangażowanie:
   1. wybór spornego zdania do sprawdzenia
   2. wybór rozbioru (bądź z wybranych przez dendrologów bądź przez odpowiedzi na pytania zadawane przez System)
   3. zgłaszanie ewentualnych błędów w gramatyce i działaniu Systemu

# Kluczowe wymagania

1. przechowywanie zdań (wraz z lasem nieaktywnym łuków w chart-parserze) bez wybranego rozbioru, zdań z wybranym rozbiorem, zdań (wraz z lasem nieaktywnym łuków w chart-parserze) w czasie obróbki, spornych zdań ze sprzecznie wybranymi rozbiorami - wysoki priorytet
2. automatyczne przydzielanie fragmentów pracy do pracowników, sygnalizacja niezgodności pomiędzy wybranymi przez nich drzewami rozbioru - wysoki priorytet
3. generowanie kolejnych zapytań o rozbiór dla konkretnego zdania - wysoki priorytet
4. wizualizacja powstałego drzewa rozbioru - średni priorytet
5. możliwość wprowadzania zmian po modyfikacji gramatyki - średni priorytet

# Omówienie produktu

## Umiejscowienie produktu

System jest niezależnie działającą aplikacją wraz z bazą danych.

## Podsumowanie możliwości

1. dodawanie zdań -- umożliwia gramatykom dodawanie zdań do bazy danych zdań
2. modyfikowanie gramatyki -- dla gramatyków. Następuje wtedy ponowne uruchomienie programów generujących drzewa rozbioru, następnie Projekt Dendrarium uwzględnia odpowiedzi, których udzielili już dedrologowie, pozostawia niezmienione zdania, dla których rozbiór nadal jest znany, w przeciwnym razie sygnalizuje potrzebę wznowienia pracy nad nimi
3. wybor zdań -- umożliwia dendrologom wybranie zdania, którego rozbioru będą poszukiwać
4. panel do odpowiedzi na pytania o wybrane zdanie -- umożliwia komunikację Projekt Dendrarium z dendrologiem (lub superdendrologiem). System generuje kolejne pytania w formie wizualnej, zaś na podstawie odpowiedzi udzielanych przez dendrologa oraz informacji umieszczonych w bazie danych (nieaktywnych łuków w chart-parserze) wybiera rozbiór
5. zapisywanie i wznawianie pracy
6. wybór rozbioru dla spornych zdań -- umożliwia superdendrologom wybranie drzewa rozbioru zdania spośród drzew zaproponowanych przez dendrologów, bądź przejście do panelu odpowiedzi na pytania dla danego zdania
7. zgłaszanie błędów w gramatyce
8. dodawanie i przeglądanie komentarzy do zdań -- umożliwia dendrologom zgłoszenie swoich uwag związanych z przetwarzanym zdaniem
9. wizualizacja drzewa rozbioru -- pozwala zobaczyć wybrany rozbiór
10. panel administracyjny -- umożliwia kompleksowe zarządzanie Systemem

## Założenia i zależności

System będzie działał na platformie wyposażonej w przeglądarkę Firefox.

## Koszta

Brak.

## Licencjonowanie i instalacja

Planujemy udostępnić system na licencji GPL. Instalacji systemu na serwerze WWW dokonują twórcy systemu.

## Rozpoczęcie korzystania z Systemu

Konto zakłada administrator Systemu.

## Ekran powitalny

Użytkownik po zalogowaniu się widzi listę możliwości. Różne grupy użytkowników mają różne ekrany powitalne w zależności od uprawnień.

## Wybór zdania

Użytkownik może wybrać jedną z paczek zdań, nad którym już wcześniej pracował, bądź dostać od Systemu nowe.

## Odpowiedzi na pytania Systemu

System generuje kolejne pytania dotyczące rozbioru wybranego zdania. Użytkownik na nie odpowiada. Na koncu widzi powstałe drzewo rozbioru, które może zatwierdzić bądź odrzucić. Może też dodawać komentarze do przetwarzanych zdań lub też odrzucić zdanie jako takie podając powód odrzucenia W dowolnym miejscu użytkownik może zapisać swoją pracę, by powrócić do niej później.

## Rozstrzyganie kolizji

Superdendrolog może dostać od Systemu zdanie sporne. Wybiera dla niego odpowiedni rozbiór z zaproponowanych przez dendrologów bądź poprzez odpowiedzi na pytania Systemu. Jeśli nie znalazł właściwego drzewa rozbioru zaznacza ten fakt, co może sygnalizować potrzebę zmiany reguł gramatycznych.

## Reakcja na zmiany w gramatyce

Supergramatyk może wprowadzać do systemu nowe charty dla obecnych tam zdań i uruchamiać proces reakcji Systemu na zmiany, polegający na wyszukaniu zdań do powtórnego przetworzenia.

## Dodawanie użytkowników

Administrator może dodać nowych użytkowników i nadać im uprawnienia.

# Założenia jakościowe

1. bezpieczeństwo danych -- wyniki dotychczasowej pracy powinny być dobrze zabezpieczone przed przypadkowymi błędami użytkownika.
2. modularność -- program ma być złożony z części (modułów) o określonych funkcjach i interfejsie, umożliwiających ich podmianę na równoważne. Ułatwi to dokonywanie zmian w programie, np. modyfikacje polegające na podmianie gramatyki na inną, ułatwi nam też podział pracy.

# Priorytety

1. funkcjonalność -- program powinien mieć łatwy w obsłudze interfejs, umożliwiający użytkownikom szybkie i wygodne wybieranie właściwych drzew składniowych
2. oszczędność pracy -- dokonywanie punktowych zmian, na przykład usuwanie blędów powinno się odbywać bez utraty większej ilości wyników pracy
3. reużywalność -- program powinien posiadać szczegółową dokumentację i przejrzysty kod, umożliwiające jego dalszy rozwój i pielęgnację

# Załącznik 1 - Atrybuty

## Ryzyko

Ryzyko spowodowane brakiem specjalistycznej wiedzy naszego zespołu z zakresu inżynierii lingwistycznej uważamy za małe, ponieważ -- choć projekt będzie wymagał znajomości kilku zaawansowanych pojęć z tej dyscypliny -- większość z nich zdążyliśmy już opanować. Zagrożenie przekroczenia terminów oceniamy na średnie, ponieważ projekt pomimo dużego rozmiaru jest skalowalny i jego pracochłonność można dostosować do dostępnego czasu.

## Literatura

GFJP
  Marek Świdziński. Gramatyka formalna języka polskiego, Wydawnictwa Uniwersytetu Warszawskiego, 1992.

MW
  Marcin Woliński, Komputerowa weryfikacja gramatyki Świdzińskiego, Rozprawa doktorska, Instytut Podstaw Informatyki PAN, Warszawa, grudzień 2004,

# About this document ...

Projekt Dendrarium -- wizja

This document was generated using the LaTeX2`HTML` translator Version 2002-2-1 (1.71)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html `-split 0 info.tex`

The translation was initiated by Piotr Achinger on 2009-04-18