CS 411W Lab II Prototype Product Specification For

advertisement
CS 411W Lab II
Prototype Product Specification
For
CLASH
Professor Janet Brunelle
Professor Hill Price
Prepared by: Fredrick Murry
Date: 04/20/2015
Version 2
Table of Contents
TOC \o "1-2" \h \z
HYPERLINK \l "_Toc417288853"
1 Introduction
PAGEREF _Toc417288853 \h
1
HYPERLINK \l "_Toc417288854"
1.1
Purpose
PAGEREF
_Toc417288854 \h
1
HYPERLINK \l "_Toc417288855"
1.2
Scope
PAGEREF _Toc417288855 \h
1
HYPERLINK \l "_Toc417288856"
1.3
Definitions, Acronyms, and
Abbreviations
PAGEREF _Toc417288856 \h
1
HYPERLINK \l "_Toc417288857"
1.4
References
PAGEREF
_Toc417288857 \h
2
HYPERLINK \l "_Toc417288858"
1.5
Overview
PAGEREF
_Toc417288858 \h
2
HYPERLINK \l "_Toc417288859"
2 General Description
PAGEREF
_Toc417288859 \h
3
HYPERLINK \l "_Toc417288860"
2.1
Prototype Architecture
Description PAGEREF _Toc417288860 \h
3
HYPERLINK \l "_Toc417288861"
2.2
Prototype Functional Description
PAGEREF _Toc417288861 \h
4
HYPERLINK \l "_Toc417288862"
2.3
External Interfaces
PAGEREF
_Toc417288862 \h
5
TOC \h \z \c "Figure"
HYPERLINK \l "_Toc415048816"
Figure 1.
CLASH Major Functional Components
PAGEREF _Toc415048816 \h
3
TOC \h \z \c "Table"
Prototype Functions
HYPERLINK \l "_Toc415049072"
PAGEREF _Toc415049072 \h
4
Table 1 CLASH
Introduction
Purpose
The goal of CLASH is to help ESL students increase their reading speed
and comprehension at a rate higher than traditional methods. CLASH will
be a web-based application assessable through a standard web-browser.
CLASH will consist of a server that will handle the COLRS and Slash
modules. The COLRS module will identify POS using colors to highlight
different types. The Slash module separates sentences into lexical
bundles and displays the results in the web-browser at a speed controlled
by the student for reading. CLASH will allow the instructor to provide
reading assignments to the students. Student usage data can also be
monitored by the instructor.
Scope
The main hardware for the prototype will be a Virtual Machine (VM) hosted
at ODU. The user will be able to use their own internet-enabled device
for access. The software for the prototype will include a collection of
open source software and custom algorithm programs. The VM will run
Ubuntu 14.04 LTS. Nod.js will be used for the application and web
server, so that there will be interaction with the Natural Language
Toolkit. (NLTK), and the database server. The Node.js server will
provide the SPA that will allow user access to the CLASH prototype.
Definitions, Acronyms, and Abbreviations
CLASH- - Color Lexical Analysis algorithm and Slash Handler
COLRS- Colored Organized Lexical Recognition Software
ELC- English Learning Center
ESL- English as second language
IBT- International benchmark test
JSON- JavaScript Object Notation
Lexical Bundle- a group of words that occur repeatedly together, or
represent a single thought group.
MFCD- Major Functional Component Diagram
NLTK- a suite of libraries and programs for symbolic and statistical
natural language processing for the Python programming language.
Node.js- an open source, cross-platform run-time environment for serverside and networking applications.
POS- Parts of Speech
SPA- single page application, is a highly responsive web application that
fits on a single page and does not reload as the web page changes states.
TOEFL- Test of English as a Foreign Language
Ubuntu- a Debian-based Linux operating system
VM-Virtual Machine
References
Fredrick Murry (2015, February).
Clash Product Description CS411 Lab 1.
Overview
This product specification provides the hardware and software
configuration, capabilities and features of the CLASH prototype. The
information provided in the remaining sections of this document includes
the Prototype Architecture Description, the Prototype Functional
Description, detailed description of the hardware and software, the key
features of the CLASH prototype. The methods that will be used to
control, manage, or establish key features are also discussed later in
this document. The outputs, displays, and user interactions expected of
the CLASH product are specified.
General Description
The CLASH prototype will be a Single Page Application (SPA) that does not
reload when changes are made to the web page. The SPA will be built
using JavaScript and will utilize a JavaScript-built Graphical User
Interface, application and web server, and a database. Ideally a
database with JavaScript object Notation (JSON) would be used, such as
NoSQL. The prototype will use a relational database instead of NoSQL. The
SPA will combine the user the accessibility of a web application with the
look and feel of a desktop application. There will be no software to
download and install by the users.
The prototype will be a proof of concept for the real world product. The
POS tagging will use open source NLP tools and will very basic in its
operation. The accounts for the various users will manually set up
instead of the real world product’s integration with ODU’s enrollment
systems.
Prototype Architecture Description
CLASH will feature three major components software components. They will
include the COLRS module, SLASH module, and the text reader viewed
through the web browser. Being that CLASH is a web-based application,
the only hardware requirements are an active server on the back-end and
an Internet-enabled device for the user. The major hardware components
can be seen in Figure1.
The COLRS module will use Natural Language Processing (NLP) to tag the
POS in the input document. An open source tokenizer will be used for the
process. The Slash module will use the same tokenizer from the COLRS
module in its algorithm to identify lexical bundles. The text reader will
use the tokenized output from the server to be viewed by the user. It
will have a User Interface for control of user viewing speed and POS
identification using color-coded highlights.
Figure
SEQ Figure \* ARABIC
1 .
CLASH Major Functional Components
Prototype Functional Description
Table 1 contains a list of the main functions of the prototype and what
they do.
Table
SEQ Table \* ARABIC 1 CLASH Prototype Functions
Functions Parsing function to parse text copy and pasted-in text
block. Text Modifier to modify and store previously parsed
documents Text Colorizing function to color chosen parts of speech
using a JSON format and JavaScript functions. Slashing function to
identify Lexical Bundles through the inserting of slashes. Login
interface to authenticate User activities in a stand-alone
environment. Student Data Reporting function to generate reports on
basic student metrics. SLASH Reader to view documents and control
viewing of Lexical Bundles.
External Interfaces
Hardware Interfaces
The Clash product utilizes a Virtual Machine that acts as the server for
the Clash implementation. This VM actually holds the algorithms for the
CLRS and SLASH modules. These algorithms are executed on the VM.
Software Interfaces
The Clash product contains a MySQL database that is implemented on the
VM. This database is used to store reading documents, user login
information, and user statistical data. Node.js is the software running
on the VM used to provide the SPA that will allow user access to the
CLASH prototype. Node.js will connect the application, database, and
server.
User Interfaces
A standard javascript-complient web-browser and Internet connection
required to connect to the hardware containing the server.
PAGE
\* MERGEFORMAT
5
\* MERGEFORMAT
i
PAGE
PAGE
«
½
U
mH
:
?
A
o
p
¾
Ò
Ó
Ô
Õ
ñ
ò
ó
ô
üóíçíçíáíÛÕáíÕíóÊÃÊ°¢™¢ƒ°¢o¢dUd
nH u
• h:x mH nH u
' h7
‹
õ
•
“
˜
•
ö
j
• h:x
ž
§
-
h:x CJ OJ
0J U mH nH
0J mH nH u
QJ aJ mH nH u
u
h:x mH nH
$ j
hu<û h:x
* • j
u
hu<û
0J U mH
hu<û
h:x
nH u
h:x
h& ¶ 5 •\ •
j
h& ¶ 5 •U \ •
h«6 CJ$
hë'F CJ$
hM;ç CJ$
hA(d CJ$
h& ¶ CJ$
h& ¶ 5 •CJ$ \ •
h& ¶ 6
:
@
A
¨
ª
«
½
$
r
¾
~
ý
ø
ø
ø
ø
ø
ø
ø
ø
ø
ý
ø
ø
ø
ý
ê
ê
ê
ê
Æ
À ¶!
Æ
à ¶!
$ a$
!
"
#
$
D
E
H
I
P
Q
R
l
q
r
s
t
•
‘
’
“
íÞÓÞÀ¬Àž•žÀž¬žÓÞÓmÞÓÞÀ¬Àž•žWÀž¬žÓ*  jô
0J U mH nH u
# • jw
• h:x
U mH nH u * • jú
hu<û h:x 0J U mH
mH nH u
hu<û h:x 0J mH nH u ' h7
Z
o
p
Œ
ý
•
ž
ø
ø
ø
ø
ø
ø
%
m
–
nH
ñ
&
B
n
o
—
œ
hu<û h:x
u
h:x
C
p
•
h:x
0J U
U mH
CJ
mH
nH
º
ã
OJ QJ aJ mH nH u $ j
hu<û h:x
nH u
• h:x mH nH u
j
• h:x
u # • j}
• h:x U mH nH u
"•
»
¼
½
¾
¿
À
Ü
Ý
ž
Þ
¸
ß
¹
â
'
(
)
*
+
,
.
/
K
L
M
N
Q
R
ðåÓðåðÀ¬Àž•žÀž¬žåðåmðåðÀ¬Àž•žWÀž¬*  jè
0J U mH nH u
# • jk
• h:x
U mH nH u * • jî
hu<û h:x 0J U
mH nH u
hu<û h:x 0J mH nH u ' h7
hu<û
mH
nH
h:x
u
h:x
h:x CJ OJ QJ aJ mH nH u $ j
hu<û h:x
0J U mH nH u
# • jq
• h:x U mH nH u
• h:x
mH nH u
j
• h:x U mH nH u
"R
\
]
^
x
y
z
{
|
}
~
•
€
œ
•
ž
Ÿ
¢
£
«
¬
Ç
È
É
Ê
Ë
Ì
Í
Î
Ï
ë
ì
í
î
ñæ×æÅ×æײž²ñ•ñ²ñžñæ×æm×æײž²ñ•ñW²*  jÜ
hu<û h:x
0J U mH nH u
# • j_
• h:x
U mH nH u * • jâ
hu<û h:x 0J U mH nH u
h:x
mH nH u ' h7
h:x
0J U
U mH
Í
%
Ž
õ
O
CJ
mH
nH
OJ
nH
u
QJ
u
aJ mH nH u $ j
hu<û h:x
# • je
• h:x U mH nH u
• h:x mH nH u
hu<û h:x 0J mH
j
nH
u
• h:x
"~
Q
Ù
Û
W
Y
Z
[
\
]
^
l
m
u
A
ë
k
ø
ñ
Ö
Û
&
F
Æ
ø
å
Ý
Ö
Ò
$ a$ gd-*í
ø
Ö
É
ø
å
Û
Ö
Ò
„@ `„@ gdM;ç
Û
Ô
É
Ò
!
¶!
„Ð ^„Ð
à ¶!
Æ
Æ
À ¶!
î
ï
ð
!
"
#
$
%
&
'
C
D
E
F
I
J
l
m
n
ˆ
‰
Š
‹
Œ
•
Ž
•
•
¬
ñÝñÒÃÒ±ÃÒÞݞñ•ñžñÝñÒÃÒmÃÒÞݞñ•ñ
# • jS
• h:x U mH nH u * • jÖ
0J U mH nH u
h:x mH nH u $ j
hu<û h:x
0J U mH nH u
# • jY
• h:x U mH nH u
U mH nH u
• h:x mH nH u
' h7
hu<û
j
h:x
• h:x
h:x
®
¯
²
³
Ó
Ô
Õ
ï
ð
ñ
ò
ó
ô
õ
ö
÷
CJ
OJ
QJ
aJ
mH
nH
u
hu<û
h:x
0J
mH
nH
u
"-
-
.
/
I
J
K
L
M
N
O
ê×ɵɪ›ª‰›ª›×µ×É€Éj×ɵɪ›ªX›ª›×µ
# • jG
U mH nH u * • jÊ
hu<û h:x 0J U mH nH
mH nH u # • jM
• h:x U mH nH u
j
U mH nH u
• h:x mH nH u
' h7
• h:x
u
h:x
• h:x
h:x CJ OJ
0J mH nH u
0J U mH nH
QJ aJ mH nH u
hu<û h:x
$ j
hu<û h:x
u
* • jÐ
hu<û h:x 0J
U
mH
nH
u
O
P
Q
R
i
j
k
l
ˆ
‰
Š
‹
·
¸
¹
Ó
Ô
Õ
Ö
×
Ø
Ù
Ú
Û
Ü
ôíà×àĶ-¶—ĶŒ}Œk}Œ}ÄWàNA
¶ 5 •CJ$ \ • ' hë'F h-*í CJ OJ
• h-*í U mH nH u
j
H u
* • jÄ
h¹B# h-*í 0J U mH
0J mH nH u $ j
h¹B# h-*í
j
h-*í 5 •CJ$ U \ •
j
QJ
nH
0J
hô ü 5 •CJ$ U \ • h&
aJ mH nH u # • jA
• h-*í U mH nH u
• h-*í mH
u
U
mH
h-*í mH
nH u
nH
u
h¹B# h-*í
h-*í 5 •CJ$ \ •
n
h& ¶ 5 •\ •
j
h& ¶ 5 •U
\ •
Ü
ò
ó
ô
õ
5
6
7
Q
R
S
T
U
V
W
X
Y
]
^
u
Z
k
¯
æ
÷ê×ÉÀɪ×ÉŸŸ~Ÿ×jêa]W]SOSKS]
h«6
h7
hM;ç
h& ¶ CJ
h& ¶
h&
¶ 5 •CJ$ \ • ' hë'F hô ü CJ OJ QJ aJ mH nH u # • j;
• hô ü U mH nH u
j
• hô ü U mH nH u
• hô ü mH n
H u
* • j¾
h{ = hô ü 0J U mH nH u
hô ü mH nH u
h{ = hô ü 0J mH
nH u $ j
h{ = hô ü 0J U mH nH u
j
hô ü 5 •CJ$ U \ •
hô ü 5 •CJ$ \ •
A
k
q
r
s
¦
§
¬
Ü
Ý
à
ù
ú
ý
;
<
@
\
]
m
Â
Ã
Ç
ë
ì
ð
q
r
y
Û
Ü
ß
ð
ñ
ô
„
…
Š
±
²
¸
ß
à
â
ò
ó
!
A
H
I
S
T
š
›
•
¡
¶
üøóïóïèóïèóïèóïèóïèóïè
óïèóïèóïèóïáóïáóïáóïáóïáóïáÙÓÊÓÊ¿Ù´-©Ù¡Ù
hë'F B* ph
hô ü
hô ü hô ü
hô ü hô ü B* ph
¶ 5 •B* \ •ph
hžf“ hžf“ PJ
h«6 PJ
h& ¶ B* ph
h&
h© x
hó:/
hÒ
o
¶
hó:/
hó:/
hó:/ 5 • h&
hM;ç >k
§
Ý
ú
<
]
Ã
ì
r
Ü
ñ
ô
I
J
T
›
œ
•
ž
ú
ú
ú
ú
ú
ú
ú
ú
ú
ú
ú
ú
ñ
ï
ñ
ñ
á
Ø
Ö
Ö
„ ^„ gdô ü
„@ `„@ gdô ü
gdô ü
gdó:/
ž
Ÿ
¡
¶
1
2
V
W
Ó
¬
ø ù ú û
ý
ý
ý
û
ò
ä
â
Ù
Ù
Â
½
½
½
½
½
Ô
¸
…
²
ú
à
ó
ú
ú
ê
¤d ¤d [$ \$
® ô õ ö ÷é
Ô
Ê
½
gd7
gd+
1
$ a$ gdó:/
$ „h `„h gdó:/
gdó:/
„@ `„@ gdó:/
gdë'F
„Ð `„Ð gdë'F
¶
Ó
µ ¶ Ì Í Î Ï ô ú û
3
T
V
y
z
•
•
‘
’
ùõùõîæõâÑâÉâÉÀÉâ¼´æ©‘ˆ‘ˆ„}„yqyqhqy
nH u
j
h-*í U
h-*í
1
Z
gdô ü
2
V
W
l
m
q
„@ `„@
¬ -r
s
h-*í mH
h7
h7
h7
h‰+ö 5 •CJ
aJ
h‰+ö
h‰+ö 5 •CJ
aJ
h‰+ö
h7
5 •CJ
aJ
h7
h7
B* ph
h5 ¾
hó:/ 5 •
h+
1
hó:/ mH nH u
h@Qê hó:/ U mH
j
nH u
hó:/ U
hó:/
j¸
h& ¶ B* ph
hô ü
hô ü
hô ü
h÷
õ
hô ü $
m
n
ð
o
p
ê
ê
Ö
ðÿá
r
ñ
s
ð
-
Ú
E
”ô
q
ð
kd–²
·
¸
”
$
$ If
É
÷
ð
ð
Ú
–
Ú
ö n" ö
aö ÿÿytøKˆ
ö }
Ö
Ö
$ *$ 1$ 8$ 9D
Ö
If
Ö
gd+
2Ö
4Ö
4Ö
1
$ gd-*í
gd7
$
„@ `„@ gd‰+ö
-
¶
·
¸
È
É
è
õ
ö
÷
ø
!
! 6! 7! 8! P!
! ¡! ²! ³! ñ! ò! ó!
"
" "" ?" @"
A" B" X" a" b" y" •" •" •" ‘" •" ž" °" ×" Ø" Ù" Û" Ü"
íÖŵֵ¢µÖŵ֢ÖÅŽÖŵ֢ÖÅ¢Öµ¢µÖÅ¢µÖµ¢µÖÅŽÖ¢µÖņ~
h `ç B*
ph
h& ¶ B* ph
& høKˆ CJ KH PJ ^J _H9 aJ nH tH
$ h+
1
høKˆ CJ
KH
_H9 aJ
nH
tH
- høKˆ CJ
KH
_H9 aJ
nH
tH
h+
1
høKˆ CJ
OJ
PJ
QJ
aJ
, h+
1
høKˆ CJ KH PJ ^J _H9 aJ nH tH
$ høKˆ 5 •CJ
tH .÷
ø
! 7! 8! Q!
! ¦
–
=
–
–
X kdr³
$ $ If
–
”· Ö0 ðÿá ^" ñ
KH
\ •_H9 aJ
–
nH
}
4Ö
ö n" ö
4Ö
aö ÿÿytøKˆ
ö
Ö
$ *$ 1$ 8$ 9D
Ö
If
Ö
gd+
Ö
2Ö
1
X
”
kdý²
$
$ If
–
Ö0
ðÿá ^"
ñ
}
4Ö
ö n" ö
4Ö
aö ÿÿytøKˆ
ö
!
¡!
=
Ö
³!
Ö
ò!
–
ó!
X
”˜
Ö0
ðÿá ^"
ñ
Ö
"
kd\´
A"
–
$
Ö
¦
$ If
–
–
2Ö
–
}
4Ö
ö n" ö
4Ö
aö ÿÿytøKˆ
ö
Ö
$ *$ 1$ 8$ 9D
Ö
If
Ö
gd+
Ö
2Ö
1
X
”·
kdç³
$ $ If
Ö0 ðÿá ^" ñ
–
}
4Ö
ö n" ö
4Ö
aö ÿÿytøKˆ
ö
A"
B"
=
Ö
b"
ÿ
•"
–
ÿ Ö
‘"
X
”Î
Ö0
ðÿá ^"
ñ
ž"
kdFµ
Ö
Ø"
–
$
Ö
¦
$ If
–
–
2Ö
–
}
4Ö
ö n" ö
4Ö
aö ÿÿytøKˆ
ö
Ö
$ *$ 1$ 8$ 9D
Ö
If
Ö
gd+
Ö
2Ö
1
X
”
kdÑ´
$
$ If
–
Ö0
ðÿá ^"
ñ
}
4Ö
ö n" ö
4Ö
ö
Ö
Ö
Ö
Ö
aö ÿÿytøKˆ
Ø" Ù" Ú" Û" Ü" ð"
# ×# ë# N% ^% á%
¦
š
˜
˜
“
…
Ž
…
Ž
|
˜
˜
„Ð `„Ð gd
á
„Ð `„Ð gd
á
gd:x
gd:x
¤d ¤d [$ \$ gd-*í X kd»µ
$ $ If
–
”
Ö0 ðÿá ^" ñ
2Ö
ã%
ä%
Ž
æ%
˜
}
4Ö
ö n" ö
4Ö
aö ÿÿytøKˆ
ö
Ö
Ö
Ö
Ö
2Ö
Ü" ì" ï" ð"
# ¬# Ö# ×# ë# ›$ Í$ M% N%
% á% â% ä% å% ç% è% ê% ë% í% î% ï% ð%
&
‰%
&
¡%
&
«%
¶%
&
¹%
à
&
&
&
&
&
& ôìáÙÑìÊÙѾ³ÙìÂÙÑÙ¯§£§£§£§£Ÿ›“Ÿ“Š|Ÿ›rlrl
hÇ;~ 0Jj
hÇ;~ 0J- U
j
ha@C U mH nH u
u
j
ha@C U
h^ ö
ha@C
h^VÝ
j
h^VÝ U
á h `ç B* ph
h7
h‰+ö mH
h& ¶
nH
h
h7
B* ph
hÇ;~ h `ç
h
á B* ph
h `ç B* ph
B* ph
h `ç h `ç B* ph
&
h:x
h `ç B* ph
(æ% ç% é% ê%
ì%
h:x
í%
î%
ï%
&
&
&
ý
&
&
&
ý
&
¶
?
0
ö
ý
$ a$ gdë'F
4& 5& 6&
h^VÝ
ha@C
j
9&
:&
;&
û
í
ý
3&
8&
ý
ý
á
2&
7&
ý
û
ã
6&
<&
ý
ý
ý
ë
ö
ý
û
ý
ë
Ú
7&
8&
„üÿ „
9& :&
h&
h^ ö
hë'F
j
ha@C U
hÇ;~
„Ð `„Ð gd
&`#$
" $ a$
"
;& <& üôðôçÙðÕÑðÑÍÉ
ha@C U
mH
nH
u
&
h‰+ö mH
&
&
nH
u
0
0
P
1•h °Ð/ °à=!°
"°
#•
$•
%°
°Ð
°Ð
•Ð Dp
9
0
P
1•h °Ð/ °à=!°
"°
#•
$•
%°
°Ð
°Ð
•Ð Dp
Download