Presentation is loading. Please wait.

Presentation is loading. Please wait.

SOFTWARE ARCHITECTURE FOR CYBERMINER GLOBAL 14. Agenda Problem, Process and Solution Phase-wise Discussion o Requirements Analysis o Architecture o Quality.

Similar presentations


Presentation on theme: "SOFTWARE ARCHITECTURE FOR CYBERMINER GLOBAL 14. Agenda Problem, Process and Solution Phase-wise Discussion o Requirements Analysis o Architecture o Quality."— Presentation transcript:

1 SOFTWARE ARCHITECTURE FOR CYBERMINER GLOBAL 14

2 Agenda Problem, Process and Solution Phase-wise Discussion o Requirements Analysis o Architecture o Quality Assurance o Implementation Demonstration Traceability Why Choose Us? Conclusion

3 Problem Description (summary) To architect a web search engine, Cyberminer, using the simple KWIC software system which you implemented as part of Project I use an Object-Oriented architectural style build a Java applet

4 Problem Description (requirements) Functional Requirements...shall accept a list of keywords and return a list of URLs whose descriptions contain any of the given keywords...shall use...the KWIC system, as a component...shall allow for two modes of operation: i) for building an initial KWIC indices; and ii) for growing the indices with later additions

5 Feature Requests Case sensitive search, Hyperlink enforcement, OR/AND/NOT Search, Multiple search engines, Deletion of out-of-date URL, Listing of query result in ascending alphabetical order; Setting the number of results to show per page, navigation between pages; and also possibly Autofill.

6 NFRS (The usual suspects)...shall be easily understandable, portable, enhanceable reusable with good performance. user-friendly, responsive, adaptable. run with recent versions of popular web browsers

7 Development Process (Software)

8 Development Process (Team)

9 Requirements Analysis (FR Issue) OFR2 Issue 1: The mode of interaction btw KWIC & Cyberminer? Option 1: Cyberminer will access the database provided by KWIC. Option 2: Cyberminer will implement the complete functionality of the KWIC system as a subset of Cyberminer’s functionality. Option 3: Cyberminer will take input from the user and send this behind the scenes to the KWIC system. The KWIC system will use this to search it’s database and return the search results back to Cyberminer which will then display them to the user. Choice/Rationale: Option 3

10 Requirments Analysis (NFR Issues) ONR8 Issue 1: Popularity of web browsers? Option 1: month-by-month popularity rankings of the W3 Consortium found at http://www.w3schools.com/browsers/browsers_stats.asp Option 2: Wikipedia has a month-by-month rankings http://en.wikipedia.org/wiki/Usage_share_of_web_browsers Option 3: A poll by http://www.webdevelopersnotes.com/articles/popular-web- browsers.php seems to suggest that the numbers cited in Options 1 and 2 do not necessarily reflexive of users’ preferences. Choice/Rationale: Option 2

11 Requirement Analysis (Matching Feat.) easily understandable (Google style,clear labels, code comments) portable (internet, mac, windows,Linux fedora 12 OS) enhanceable (ability to add new URLs) reusable (OO style, architecture) user-friendly (user manual,tool-tips, help button,clean error msgs) responsive(3sec max on 2Ghz dual core,320GB HDD, 100Kbps) adaptable. ( run in non-Internet environments e.g. intranets, single PC) run with recent versions of popular web browsers (IE 8, FF 3.6.9, Chrome 10.0.648.205)

12 Architecture ( Candidate 1)

13 Architecture ( Candidate 2)

14 Architecture ( Candidate 3)

15 Architecture (Final Decision & Rationale) Selected Candidate 1 Candidate 3 too weak in enhanceability and reusability Candidate 1 slightly outperforms Candidate 2 with respect to enhanceability Candidate 1: 92% Candidate 2: 83% Candidate 3: 33%

16 Architecture (Rationale)

17 Quality Assurance (Test Plan & Test Cases) Generated with requirement specification Example : Traceability between test cases and requirement issues

18 Quality Assurance (User Scenarios) Add URL o Add multiple URLs (one at a time) o Add multiple Descriptors (one at a time) Remove URL o Remove multiple URLs (one at a time) Searching o Use keywords o Use AND/OR/NOT searching Browse Search Results o Visit available websites o Increase viewable results o View next/previous results pages

19 Implementation

20 Automated unit tests

21 Implementation Code coverage analysis: +70% of code covered by automated unit tests

22 Demonstration CyberMiner http://hypv3355.appliedi.net/G14Cyberminer

23 Traceability

24

25

26 Why Choose Us? Multiple candidate architectures considered for selection Automated unit testing and code coverage analysis Extensive work on traceability o project Phase I to Phase II o requirements to architecture o architecture to implementation o test plan to requirements and implementation KWIC architecture made Cyberminer development less difficult Team size, organization and expertise

27 Questions? Thank you


Download ppt "SOFTWARE ARCHITECTURE FOR CYBERMINER GLOBAL 14. Agenda Problem, Process and Solution Phase-wise Discussion o Requirements Analysis o Architecture o Quality."

Similar presentations


Ads by Google