Design - LordSeeks

Download Report

Transcript Design - LordSeeks

Team Project: Index Writer
Bharat Vallarapu
Hiren Pandya
Junshan Li
Fall, 2001
Index Writer Project Overview
• Problem Statement – Bharat
• Identify Nouns and Verbs – Hiren
• Classes, attributes, operations, and constraints – Junshan
• Operation Model (Schemata) – Junshan
• Class diagrams – Hiren
• Questions ? – Junshan
AN INDEX WRITER PROBLEM STATEMENT
An index writer will produce an alphabetized list (an index) of
important words (word list) and phrases found in a document of
any length. Associated with each word and phrase in the index
will be a listing of all of the page numbers (in ascending order) where
that word or phrase may be found in the document.
The index writer will exclude lists of common words (e.g., articles
and prepositions) that will not appear in the index created. The index
writer will ignore the textual separators (such as spaces, line
endings, punctuation marks). The index writer will determine the
maximum number of lines for a page and the maximum number of
words for a line in a page.
(Problem Statement – continued )
The index writer will provide a user interface which will allow the
user to put a certain word either on common word list, word list, or
ignored word list.
For fine tuning, the index writer will form valid phrases from the
word list. The user interface should also provide the user the ability
to build phrases from the word list, then add the phrase into the
word list.
The final product will be an index list with two columns and a
common word list. The common word list is for the user to modify
if one wants to add or delete a word from the common word list.
The words or phrases of the final index list will be on the left
column, the page number on the right, such as an instance
commonly seen in the textbooks.
Identify Nouns and Verbs – Hiren
Nouns (Qualified Nouns)
Verbs (Verb Phrases)
Index Writer
Produces an index
Document
Consists of pages
Page
Contains lines
Line
Contains words or phrases
Word, Phrase
Belong to word lists
Word List
Contains important words
Common Word List
Contains common words
Common Word
Is articles or prepositions, or user defined
Important Word
Belongs to a Word List
Page Number
Belongs to a page
Index
Contains alphabetized list & page numbers
List of Page Numbers
Is page numbers for a certain word or phrase
File
Contains words
Article & Preposition
Belongs to the common words
User
Uses Index Writer
User Interface
Provides functionalities to users
Separator, Space, Punctuation mark
Ignored by the Index Writer
Selected Classes, Attributes, Operations,
and Constraints – Junshan
Classes
Comment
IndexWriter
Produces an index & excludes common
words
WordList
A super class of lists of words.
Document
Contains pages
Page
Contains words and phrases
User
Selects text document
Index List
Contains an alphabetized list and page
numbers in ascending orders
ComWordList
A list with articles & prepositions, etc
UserWordList
Contains common words in a file
IgnoreWordList
Contains the common word user defined
Word
A basic class
Candidates for Inheritance:
WordList
• ComWordList
• Index
• UserWordList
Verbs & Verb phrases for associations:
• User selects text documents
• IndexWriter processes document
• IndexWriter produces word lists
System Object Model:
The IndexWriter Class will play a central role in this model. It will take a
text document as an input and produces an index from the word list of
the document.
System Operations:
• readDocumnet
• addToIndex
• addToNewComWList
• deleteFromWordList
• displayWordList
Class Diagrams -- Hiren
User
Uses
IndexList
IndexWriter
produces
*
WordList
Process
UserWList
Text
Document
*
Page
IgnoreWList
*
Phrase
Word
2
*
Operation Model Schemata
System Operation Schema For readDocument
• Description: Document is read to the IndexWriter
• Reads: Document, size of a page
• Changes: WordList (initially empty)
• Assumes:
• Result: The initial wordList is built.
System Operation Schema For addToNewComWList
• Description: add the chosen common word to
the newComWList
• Reads:
• Changes: wordList, newComWList
• Assumes:
• Result: wordList, newComWList are updated.
Operation Model Schemata (Continued) :
System Operation Schema For deleteFromWordList
• Description: delete the chosen common word from wordList
• Reads:
• Changes: wordList
• Assumes:
• Result: wordList is updated.
System Operation Schema For displayWordList
• Description: display the selected wordList
• Reads:
• Changes: nothing
• Assumes:
• Result: The chosen wordList is printed out to the screen.
Questions ?