CYBERMINER WEB SEARCH ENGINE - PowerPoint PPT Presentation

1 / 31
About This Presentation
Title:

CYBERMINER WEB SEARCH ENGINE

Description:

Algorithms and data representation can be changed in one module without affecting other modules ... setAlphabeticShifts() uses the Collections.sort() to sort ... – PowerPoint PPT presentation

Number of Views:33
Avg rating:3.0/5.0
Slides: 32
Provided by: muazja
Category:

less

Transcript and Presenter's Notes

Title: CYBERMINER WEB SEARCH ENGINE


1
CYBERMINER WEB SEARCH ENGINE
  • Muaz Jamshed
  • Russell Elliott
  • Joseph Martinez

2
Outline
  • Introduction
  • Requirement Specification
  • CYBERMINER Architecture Specification
  • Java Applet Specification

3
Introduction
  • What is CYBERMINER
  • Requirements of CYBERMINER
  • Functional Requirements
  • Non-Functional Requirements

4
What is CYBERMINER
  • A Web Search Engine
  • Search the websites for the users
  • KWIC system will be integrated with CYBERMINER
    web search engine to perform the search on the
    keywords enter by the user

5
KWIC System
  • The KWIC Software System is an index system
  • accepts an ordered set of lines
  • Any line shall be circularly shifted by
    repeatedly removing the first word and appending
    it to the end of the line

6
Outline
  • Introduction
  • Requirement Specification
  • CYBERMINER Architecture Specification
  • Java Applet Specification

7
Requirements of CYBERMINER
  • Functional Requirements
  • Non-Functional Requirements

8
Functional Requirements
  • CYBERMINER shall accept a list of keywords
  • CYBERMINER shall return a list of URLs whose
    descriptions contain any of the given keywords
  • CYBERMINER shall use another software system,
    KWIC index system, to maintain a database of URLs
    and descriptions

9
Functional Requirements Cont.
  • KWIC shall accept an order set of lines
  • Each line consist of two parts
  • URL part
  • Descriptor part

10
Functional Requirements Cont.
  • The URL part syntax is
  • URL http// identifier . identifier .
    identifier . edu com org net
  • identifier letterdigit
  • letter a b c .Y Z
  • digit 1 2 3 4 .9 0
  • The descriptor part, whose syntax is
  • identifier identifier.

11
Functional Requirements Cont.
  • The descriptor part of any line will be
    circularly shifted by repeatedly removing the
    first word and appending it at the end of the
    line.
  • The KWIC index system will output a list of all
    circular shifts of the descriptor parts of all
    the lines in alphabetically ascending order,
    together with their corresponding URLs

12
Non-Functional Requirements
  • CYBERMINER system shall be
  • Easily understandable
  • Portable
  • Reusable
  • Enhanceable
  • User-friendly
  • Adaptable

13
Outline
  • Introduction
  • Requirement Specification
  • CYBERMINER Architecture Specification
  • Java Applet Specification

14
CYBERMINER System Architecture
  • The CYBERMINER system is an extension of the KWIC
    System
  • The KWIC System uses the abstract data type
    architecture
  • Therefore the CYBERMINER system also uses the
    abstract data type architecture

15
CYBERMINER Design Diagram
16
CYBERMINER System Architecture
  • Style Abstract Data Type (ADT)
  • Components Objects and Data
  • Constraints Different components access data
    with each other by invoking the interface
    provided with each module.

17
Miner Module
  • Miner Module
  • void setKeywords(String keywords)
  • Divides the search string into a list of words
    and stores this list in an array
  • String getSummary()
  • Compares the words in the array created by the
    setKeywords operation to the original lines
  • Returns any matching lines and their associated
    URLs.

18
Advantages of ADT Architecture
  • Every module is independent
  • Modifiability
  • Algorithms and data representation can be
    changed in one module without affecting other
    modules
  • Enhanceability
  • Enhancements can be added to a module without
    affecting other modules

19
Disadvantages of ADT Architecture
  • Space Requirements since every module needs a
    copy of the data it works with
  • Response Time each module reconstructs the whole
    architecture for itself to operate

20
Alternatives to the CYBERMINER Software System
  • Data Share Architecture
  • Advantages Space requirements are minimal
  • Disadvantages Modifiability and Reusability are
    poor

21
Alternatives to the CYBERMINER Software System
  • Implicit Invocation Architecture
  • Advantages Algorithms are easily modified and
    do not affect other modules
  • Disadvantages Response time due to triggering
    and larger space requirements

22
Alternatives to the CYBERMINER Software System
  • Pipe and Filter Architecture
  • Advantages Process and data representation
    independence between modules
  • Disadvantages Inefficient use of space and
    difficult to enhance features or support an
    interactive system

23
Outline
  • Introduction
  • Requirement Specification
  • CYBERMINER Architecture Specification
  • Java Applet Specification

24
Cyberminer System
  • LineStorage
  • CircularShift
  • AlphabeticShift
  • Miner

25
Cyberminer UML
  • Declare GUI objects
  • Declare KWIC system
  • LineStorage
  • CircularShift
  • AlphabeticShift
  • Declare Miner
  • Search class
  • init() method from the applet class is used to
    initialize the variables and the system
  • actionPerformed() uses the actionListeners from
    within init() to perform the individual tasks of
    submitting URL/Descriptors, clearing the
    inputArea, and searching for the given keywords

26
LineStorage UML
  • Declare Arraylist to hold lines and descriptions
  • Declare StringTokenizers for lines and words
  • getLines() returns the ArrayList of lines
  • setWords() uses stWords to separate the l-th line
  • getWords() returns the list of descriptions
  • getWordCount() returns number of words in the
    line

27
CircularShift UML
  • Declare ArrayList of lines, words, tempWords,
    shiftedWords, csLines
  • Declare StringTokenizer for words
  • getCircularShifts() returns the ArrayList of
    circularly shifted lines
  • getCSWords() returns the ArrayList of words for
    each circularly shifted lines
  • getWordCount() returns the number of words for
    each circularly shifted lines

28
AlphabeticShift UML
  • Declare ArrayList of lines, csLines, asLines
  • setAlphabeticShifts() uses the Collections.sort()
    to sort the circularshifted lines
  • getAlphabeticShifts() returns the circularly
    shifted lines in alphabetical order

29
Miner
  • Declare ArrayList of indices, wordsToFind,
    originalLines, URL
  • Declare StringTokenizer for words and lines
  • setKeywords() uses stWords to separate the passed
    in keywords String
  • getSummary() returns the originalLines associated
    with the keywords

30
Screen Shot
  • inputArea
  • submitButton
  • clearButton
  • outputArea
  • inputField
  • searchButton
  • summaryArea

31
Conclusion
Write a Comment
User Comments (0)
About PowerShow.com