Title: Automatic generation of analysis class diagrams from use case specifications,
Abstract: In object oriented software development, the analysis modeling is concerned
with the task of identifying problem level objects along with the relationships
between them from software requirements. The software requirements are usually
written in some natural language, and the analysis modeling is normally
performed by experienced human analysts. The huge gap between the software
requirements which are unstructured texts and analysis models which are usually
structured UML diagrams, along with human slip-ups inevitably makes the
transformation process error prone. The automation of this process can help in
reducing the errors in the transformation. In this paper we propose a tool
supported approach for automated transformation of use case specifications
documented in English language into analysis class diagrams. The approach works
in four steps. It first takes the textual specification of a use case as input,
and then using a natural language parser generates type dependencies and parts
of speech tags for each sentence in the specification. Then, it identifies the
sentence structure of each sentence using a set of comprehensive sentence
structure rules. Next, it applies a set of transformation rules on the type
dependencies and parts of speech tags of the sentences to discover the problem
level objects and the relationships between them. Finally, it generates and
visualizes the analysis class diagram. We conducted a controlled experiment to
compare the correctness, completeness and redundancy of the analysis class
diagrams generated by our approach with those generated by the existing
automated approaches. The results showed that the analysis class diagrams
generated by our approach were more correct, more complete, and less redundant
than those generated by the other approaches.