# Effort Estimation Approach through Extracting Use Cases via Informal Requirement Specifications
## 2 Materials and Methods
### Methods for Adapting Requirement Engineering with Textual Approach
#### 2.2.3 Our Use Case Extraction Process with Informal Requirement Specification  
We propose to extract use-cases and a use-case diagram from natural language-oriented informal requirement specification with semantic analysis of [PERSON]'s approach. We can also estimate software effort with the extracted use-cases based on the original use-case point (UCP). Our proposed approach has these advantages as follows. (1) Making it possible to analyze the requirements to meet the goals of the developing system. (2) Adapting [PERSON]'s semantic approach of textual analysis for requirement engineering. As a result, this method expects to identify use-cases from informal requirement specifications easily. (3) Estimating software effort estimation based on the use-cases & use-case diagram extraction in requirement specifications. Figure 5 shows the use-case extraction process.  
Figure 4: Visual modeling example.  
Figure 3: Visual modeling as the transformed model of refined case structure for use-case extraction.  
We describe the whole Use Case Extraction Process as follows:  
Step 1: Requirement Analysis  
This step analyzes natural language-oriented requirement specifications  
Step 2: Sentence Analysis  
This step analyzes a sentence structure of the requirement using a parser. Here, the parser extracts the textual relationships between sentences through analyzing their dependency characteristics.  
Step 3: Token List  
This step lists verbs and nouns from the data analyzed in step 1 and 2. That is, we make a multiple list with VB*s and NP on terminal nodes from abstract symbol tree extracted by Stanford parser. The main verb will be distinguished from verbs with [PERSON]'s method [19].  
Step 4: Visual Modeling as Transformation model  
This step identifies the relevant arguments according to the characteristics of the distinguished verbs and analyzes the arguments associated with each identified one. Then the transformed model based on improved grammar structure is used to identify the relationship between predicates (verbs) and arguments (nouns). If the relationship between the extracted verbs and nouns are performed repeatedly, a large chunk can be recognized as a unit of use-case like loosely connected in Graph theory. In other words, a use-case can be extracted & related semantically by having the relationships between verbs and arguments in some paragraph units of informal requirement specifications. In the extracted use-case, we extract the inclusion and extension relationships between use-cases. Inclusion identifies the functions that are commonly found in several use-cases. Extension is the ability to add or extend one use-case under certain conditions. Inclusion and Extension can be identified in analyzing sentences.  
Figure 5: Use case extraction process.  
Step 5: Software Effort Estimation based on use-case point  
This step is software effort estimation, which calculates the total man-hours of the developing software using the use-case point (UCP) [22].