Natural Language Processing of Textual Use Cases
Natural Language Processing of Textual Use Cases
diplomová práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/3372Identifikátory
SIS: 41095
Kolekce
- Kvalifikační práce [11218]
Autor
Vedoucí práce
Oponent práce
Plátek, Martin
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Softwarové systémy
Katedra / ústav / klinika
Katedra softwarového inženýrství
Datum obhajoby
6. 2. 2006
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Čeština
Známka
Výborně
Požadavky na funkčnost navrhovanému systému jsou obvykle zachycovány pomocí use case psaných v přirozeném jazyce. Formát use case není standardizován, nicméně věty use case mají tradični jednoduchou strukturu a popisují buď komunikaci mezi aktéry a navrhovaným systémem, nebo interní akce. Přirozený jazyk se používá, nebo je srozumitelný pro zainteresované strany a je dostatečný k zachycení většiny požadavků, bohužel ale díky jeho volnosti není možné snadno automatizovat jeho analyzování. Vladimír Mencl použil současné lingvistické nástroje, aby získal popis chování navrhovaného systému z use case napsaných v přirozeném jazyce. Specifikaci chování zachycuje ve formi pro-case. Z jeho práce vyplývá, že je to možné, ale také se objevilo několik problémů, které daná práce neřeší. A právě některé z těchto problémů řešíme v této diplomové práci. Popisujeme v ní algoritmus odvozený od původního Menclova algoritmu, který umožní zpracovat více typů use case než ten původní, a navrhujeme metriku, která měří kvalitu parse stromů. Tato metrika umožňuje výběr nejlepšího parse stromu use case věty z několika parse stromů vytvořených pomocí různých lingvistických parserů. To pomáhá eliminovat problémy s tím, že jeden parser vrátí chybný výstup.
Use cases written in a natural language are usually employed for specifying of functional requirements. The format of a use case is not standardized but use case sentences traditionally adhere to a simple structure and describe actions which are either communication actions (among actors and a designed system), or internal actions. The natural language is used because it is comprehensible for stakeholders and is universal enough to capture most of the requirements but it is difficult to analyze it in an automated way. Vladimír Mencl employed state-of-the-art linguistic tools to extract a behavior of a system under design from textual use cases. The behavior specification is described in form of pro-cases. His work shows that this is possible but he met several issues. In this thesis, we solve some of the issues. We propose an algorithm based on the Mencl's algorithm which allows to process more use cases than the Mencl's one and we describe a metric which evaluate a quality of parse tree. The metric helps to select the best parse tree of a use case step from parse trees generated by different linguistic parsers. It addresses the issue of eliminating an incorrect parse tree returned by a single parser.