Table 4: Verbs in the dictionary.
Concept part of registered verbs
DFLOW, CFLOW pass, move, receive, input
ANDSUB,ORSUB subpart, part, construct
GEN generate, produce, make
RET retrieve
INS insert, add
UPDATE update
DEL delete
of which has just one verb for analysis with the Case
Frame. These simple sentences are transformed into
CRD. We adopted X-JRDL as a requirements lan-
guage in the course of Information Systems, gradu-
ate school of Information Sci., Kyoto University. Stu-
dents specified SRSs of 50-500 sentences with this
language. In this course we found 85 % of sentences
were interpretably accepted by the X-JRDL analyzer
and others needed to be pre-edited.
2.4 Analysis of X-JRDL Description
An X-JRDL description is analyzed through three
interpreters. Since X-JRDL allows compound sen-
tences and complex sentences, a surface interpreter
divides them into simple sentences. Another inter-
preter, word interpreter, fulfills a case structure con-
sulting with dictionaries. Since a noun is interpreted
with its type, the noun dictionary holds a name and
its type. A verb (or an adjective) is interpreted with
its corresponding concept. In the case of pronoun
and omission of nouns, its type will be guessed with
the Case Frame. A sentence interpreter transforms a
simple sentence transformed into CRD with checking
lacks of indispensable cases.
X-JRDL allows using pronouns and omission of
nouns. We frequently come across such features in
Japanese sentences. The X-JRDL analyzer automat-
ically assigns a concrete word into a pronoun or a
lacked case.
Conjunctions are used to write down compound
sentences and complex sentence. The analyzer di-
vides such a sentence into a set of simple sentences.
The X-JRDL analyzer has a dictionary of nouns,
verbs and adjectives. When a requirements definer
uses a word which is not appeared in the dictionary,
the analyzer guesses a type of new noun and a con-
cept of new verb and adjective with the Requirements
Frame. Table 4 shows registered verbs. Really these
verbs are Japanese verbs. The analyzer can treat in-
flection of these verbs.
A same requirement can be described differently.
For example, the previous requirement sentence “A
user enters a retrieval command with a terminal” can
Table 5: Keywords related to time-response requirements.
Keywords related to time-response requirements
response, respond, turnaround,
within(in) x (milliseconds/microseconds) seconds
be expressed as “A terminal receives a retrieval com-
mand from a user” or “A retrieval command can be
passed from a user to a terminal.” The CRDs of these
three sentences are exactly the same. In other words,
if the CRDs are the same, the meanings of require-
ment sentences are the same.
Since X-JRDL is focused to express functional re-
quirements, non-functionalrequirements (NFRs) can-
not be described.
3 VERIFICATION OF
TIME-RESPONSE
REQUIREMENTS
By extending the Requirements Frame, we can ana-
lyze sentences of NFRs and transformed into CRDs.
In this paper, we focus on time-response require-
ments. This means our approach is limited to veri-
fication of time-response requirements.
Saito et al. propose a machine learning approach
to evaluate the clarity of NFRs described in a Re-
quest For Proposal (RFP) written in a natural lan-
guage (Saito2013). In this method, keywords related
to NFRs are extracted from a RFP, and mapped to
each NFR category. Then, the clarity of NFRs is mod-
eled by the random forest with weight factors based
on appearance frequency and context vectors. As a
result of an experiment to evaluate the clarity (low,
mid or high) of many NFR categories in 70 RFPs,
the proposed method showed 69.8% match to the ex-
pert’s decision. They clarified 18 keywords related to
time-response requirements. We select 4 keywords as
shown in Table 5.
With these 4 keywords, we retrieve requirements
sentences in 20 RFPs. The results are shown in Fig.
2. In this figure, the same sentences are merged into
one.
The seventh sentence is not a time-response re-
quirement, because the agent (the presenter) is not a
system or a function that responds. We do not regard
a sentence whose responder is a human as a time-
response requirement. We manually checked whether
there are any other time-response requirements, but
we could not find. So, with these keywords it is
enough to retrieve time-response requirements.