Procasor

Introduction

Brief overview

References

Download

Publications

Introduction

The goal of the Procasor project is to derive behavior specifications from textual use cases by applying state-of-the-art linguistic techniques and readily available tools. Textual use cases use a restricted and simplified form of English to specify the steps of a use case. We build on the uniform sentence structure used by textual use cases. We introduce simple rules to obtain the principal attributes of the action described by a step of a textual use case. These rules were originally implemented in the Procasor prototype tool. Subsequently, these rules have been integrated into an interactive use case writing tool in the Procasor Enviroment project. The Procasor Environment project, a student Software Project at the School of Computer Science, has now been submitted for defense; the interactive tool developed is now available for download.

The Procasor project is run by Vladimír Mencl, a former member of the Department of Distributed and Dependable Systems, Faculty of Mathematics and Physics, Charles University, Prague, Czech Republic.

Brief overview

In the Procasor project, we build on the uniform sentence structure used in describing the steps of a textual use case. Such a sentence structure is required by most use case approaches, such as [Cockburn], [Kulak] and [Larman].

We employ readily available linguistic tools to obtain a parse tree for each sentence specifying a step of a textual use case. From the parse tree, we acquire the principal attributes of the action described by the step:

  1. The type of the action – an action may be received by the System under Discussion (SuD) from an actor, sent by SuD to an actor, or internally processed by SuD.
  2. The actor involved (for received and sent events).
  3. We construct an event token to represent the action in the behavior specification we derive. This event token corresponds to the name of a future method.

To achieve this, we use a very simple domain model, consisting of names of entities involved (actors and SuD) and the names of conceptual objects.

Example

We illustrate our approach on the sentence "Seller submits item description" describing a single step of a hypothetical use case "Seller submits an offer".

With the linguistic tools, we obtain this parse tree:

Sample parse tree

The subject of the sentence (the leftmost noun-phrase subordinate to the main sentence node) is the name of an actor ("Seller"). Therefore, the sentence describes an action taken by Seller towards the SuD and it is a received action.

The verb of the sentence is "submits", the base form of the verb is "submit". The direct object of the sentence is the noun phrase "item description". Assuming the domain model contains the noun "item", we select "item" as the representative object of the sentence.

Finally, we construct a noun-phrase ([Larman], [Graham]) style event token "submitItem".

Hence, in the notation employed, we represent the action as ?SL.submitItem, where SL is the connection name for the actor Seller.

A more complex example will soon be made available on this web page. For reference, a case study is also available in the appendices of Vladimir Mencl's Ph.D. thesis.

Putting the tools together

The key step in implementing the Procasor tool was putting the linguistic tools together. I am indebted to the Center for Computational Linguistics, in particular to Prof. Jan Hajic and Dr. Jan Curin for the help with this task.

We illustrate the setup on the following figure. However, note that the tools had to be glued together by additional code adjusting the format of the output of each tool into a form suitable as input for the subsequent tool in the setup. For the sake of readability, we do not show the detailed scheme of the setup here.

Tools setup scheme

We start by tokenizing the sentences with the tokenizer developed as part of the EGYPT project at the John Hopkins University. Subsequently, we use the Maximum Entropy tagger developed by A. Ratnaparkhi at the University of Pennsylvania. We use the statistical parser developed by M. Collins to obtain the parse trees of each sentence. We use the Morphological tool-set developed by G. Minnen at the University of Sussex to obtain the lemma (base-form) of each word.

More information

The transformation implemented in the Procasor tool has been documented in the paper "Deriving Behavior Specifications from Textual Use Cases" and Tech. Report No. 2004/5 "Converting Textual Use Cases into Behavior Specifications". The technical report also describes in detail how the structure of a use case is transformed into a Pro-case. The setup of linguistic tools is in detail described in Vladimir Mencl's Ph.D. thesis (see the list of publications below).

References

[Cockburn]
Cockburn A.: Writing Effective Use Cases, Addison-Wesley Pub Co, ISBN: 0201702258, 1st edition, Jan 2000
[Collins]
Collins M.: A New Statistical Parser Based on Bigram Lexical Dependencies. ACL 1996: 184-191. 34th Annual Meeting of the Association for Computational Linguistics, 24-27 June 1996, University of California, Santa Cruz, California, USA, Proceedings. Morgan Kaufmann Publishers
[Graham]
Graham I.: Object-Oriented Methods: Principles and Practice, Addison-Wesley Pub Co, 3rd edition, December 2000
[Kulak]
Kulak D., Guiney E.: Use cases: requirements in context, Addison-Wesley, Pub Co, ISBN: 0-201-65767-8, May 2000
[Larman]
Larman C.: Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process, Prentice Hall PTR, ISBN: 0130925691, 2nd ed, 2001
[Minnen]
Minnen G., Carroll J., Pearce D.: Applied morphological processing of English, Natural Language Engineering, 7(3), pp. 207-223, (2001)
[Ratnaparkhi]
Ratnaparkhi A.: A Maximum Entropy Part-Of-Speech Tagger. In Proceedings of the Empirical Methods in Natural Language Processing Conference, May 17-18, 1996. University of Pennsylvania

Please see our list of related work on Requirement specifications and use cases.

Download

The Procasor prototype tool has been superseded by the interactive Procasor Environment, which is now available for download. If you are specifically interested in the Procasor prototype tool, please contact Vladimir Mencl.

Publications

2007 (1)

Refereed (journals/proceedings)

PDF, Link Drazan J., Mencl V.: Improved Processing of Textual Use Cases: Deriving Behavior Specifications,
in Proceedings of SOFSEM 2007, January 20 - 26, 2007, Harrachov, Czech Republic, LNCS 4362, pp.856-868, DOI: 10.1007/978-3-540-69507-3_74, Springer, January 2007

2006 (1)

Master Theses

PDF, ZIP, WWW Drazan J.: Natural Language Processing of Textual Use Cases,
Master thesis, advisor: Vladimir Mencl, February 2006

2004 (3)

Refereed (journals/proceedings)

PDF Mencl V.: Deriving Behavior Specifications from Textual Use Cases,
in Proceedings of Workshop on Intelligent Technologies for Software Engineering (WITSE04, Sep 21, 2004, part of ASE 2004), Linz, Austria, ISBN 3-85403-180-7, pp. 331-341, Oesterreichische Computer Gesellschaft, September 2004

Ph.D. Theses

PDF, PDF Mencl V.: Use Cases: Behavior Assembly, Behavior Composition and Reasoning,
Ph.D. Thesis, advisor: Frantisek Plasil, June 2004

Technical Reports

PDF Mencl V.: Converting Textual Use Cases into Behavior Specifications,
Tech. Report No. 2004/5, Dept. of SW Engineering, Charles University, Prague, August 2004

2003 (2)

Refereed (journals/proceedings)

PDF Plášil F., Mencl V.: Getting "Whole Picture" Behavior in a Use Case Model,
in Proceedings of IDPT 2003, Austin, Texas, U.S.A., ISSN 1090-9389, abstract pp. 23, full paper on CD in session-4/p-4-4.pdf, published by Society for Design and Process Science, Grandview, Texas, awarded with Rudolf Christian Karl Diesel Best Paper Award, also published in Transactions of the SDPS: Journal of Integrated Design and Process Science, vol. 7, no. 4, pp. 63-79, December 2003
PDF Plášil F., Mencl V.: Getting "Whole Picture" Behavior in a Use Case Model,
in Transactions of the SDPS: Journal of Integrated Design and Process Science, vol. 7, no. 4, pp. 63-79, Dec 2003, ISSN-1092-0617, publisher: Society for Design and Process Science, Grandview, Texas, slightly modified version of paper published in Proceedings of IDPT 2003, December 2003

2002 (1)

Technical Reports

PDF Plášil F., Mencl V.: Use Cases: Assembling "Whole Picture" Behavior,
Technical Report 02/11, Department of Computer Science, University of New Hampshire, NH, U.S.A., November 2002
Modified on 2010-11-02