Presentation is loading. Please wait.

Presentation is loading. Please wait.

Team members: Sen Yan Chiu (Team Lead) Frank Chou Chih Wei Lee Lulie Gaston Viet Nguyen Sumeet Chandra Ankur Singh April 13, 2009.

Similar presentations


Presentation on theme: "Team members: Sen Yan Chiu (Team Lead) Frank Chou Chih Wei Lee Lulie Gaston Viet Nguyen Sumeet Chandra Ankur Singh April 13, 2009."— Presentation transcript:

1 Team members: Sen Yan Chiu (Team Lead) Frank Chou Chih Wei Lee Lulie Gaston Viet Nguyen Sumeet Chandra Ankur Singh April 13, 2009

2 Presentation Outline Legacy code and documentation from last year’s project Major requirements for DQ Accomplishments of DQ Application demo Future improvements for the application What we have learned in Software Engineering About Semantic Web Technology Conclusion Created by Sen Yan Chiu

3 Legacy code and documentation form last year’s project 2 web applications were developed SPARQL editor: (incomplete implementation)  generates incorrect SPARQL queries  no integration with any database  no views were generated Semantic Website: (registration)  registration form that allows users to login  view other registered users  no connection with the SPARQL editor. Very few documentation No requirements or specification write up Few UML diagrams No formal final deliverables found Created by Sen Yan Chiu

4 Major requirements for DQ Receive a list of stored projects from DM Construct SPARQL queries Derive triples from the system ontology (.owl file) Populate subjects, predicates and objects according to user’s selection with the following selection order Subject  Predicate  Object Object  Predicate  Subject. Predicate  Subject  Object. Predicate  Object  Subject. Display the results of the SPARQL query Allow query of data by: - Class name - Field name - Return type- Access modifier - Method name - Date type- Inheritance between classes Populate a list of subject and object RDF data based on current triplet selections Receive results of a SPARQL query from DM Created by Sen Yan Chiu

5 Accomplishments of DQ Documentation Software Specification  User Requirements  UML diagrams  Class diagram  Component diagram  Use Case diagram  Activity diagram  Sequence diagram Test Specification  Test Plan  Test Cases Web UI description Created by Sen Yan Chiu

6 Accomplishments of DQ Code Design a user-friendly UI  Guide user to form a query  Allow user to form a query with specific info  Allow user to view the query string before submitting it Integration with DE and DM  Support more data in RDF file  Make connection with Adler  Retrieve the list of all existing projects  Retrieve results for formed SPARQL queries Created by Sen Yan Chiu

7 Accomplishments of DQ Application features Able to allow user to select any existing projects from DM Able to form simple SPARQL queries  Basic triple selection Able to form complex SPARQL queries  Inferred queries  Multiple independent queries at once  Limit the results number  Sort the results by category Able to display friendly results for formed queries  Display results in a table format  Show user the selected options from Subject, Predicate and Object  Display results in separate tables for multiple queries Able to reset the triple selection any time before forming the query Able to clear the formed query before submitting Able to run the application in IE, Mozilla and Safari web browsers Created by Sen Yan Chiu

8 Application Demo Basic query function Class – method, member variable Method – class, modifier, return type, calls method MemberVariable – class, data type, modifier Class Inheritance (Inference Query) Limit Result (Complex Query) Sorted Result (Complex Query) Created by Sen Yan Chiu

9 Application Demo Java Code Sample – Car Created by Sen Yan Chiu public class Vehicle extends Object { protected int door; protected int wheel; public void setDoor(int door){ this.door = door; } public void setWheel(int wheel){ this.wheel = wheel; } public int getDoor(){ return door; } public int getWheel(){ return wheel; } public class Car extends Vehicle { protected int carSpeed; protected String carModel; public void setCarModel(String carModel) { this.carModel = carModel; } public void setCarSpeed(int carSpeed) { this.carSpeed = carSpeed; } public String getCarModel() { return carModel; } public int getCarSpeed() { return carSpeed; } public class RacingCar extends Car { private int turboSpeed; public void RunTurbo(){ setTurboSpeed(); } private void setTurboSpeed(){ turboSpeed = super.carSpeed + 100; }

10 Application Demo Scenario description DQ Insurance company makes insurance software Health Insurance company that uses this software has found a bug Whenever software is used to set an infant as dependent on parent; his age is set as 0 Debugger at DQ Insurance is made aware of this specific error and is tasked to locate the bug in order to fix it Debugger uses “SPARQL based Java Code Querier” to ask questions that will help him/her to locate the bug Created by Sen Yan Chiu

11 Application Demo Java Code Sample – Insurance Created by Sen Yan Chiu public class Person { protected int age; private void setAge(int value) { if(value > 0){ age = value; } public class Customer extends Person { } import java.util.*; public class Child extends Customer { private Date DoB; public Child(Date DoB) { this.DoB = DoB; } private int dateDiff() { int days = 0; //Implementation code here //Sets days as equal to difference of //Today's date & DoB return days ; } private void setDependent() { age = dateDiff() / 365; }

12 Application Demo Debugger’s questions 1. Find the class that contains the setAge() method. 2. Find the member variable(s) and method(s) in class Person. 3. Find the access modifier of setAge() and age. 4. Find the subclass(es) of class Person. 5. Find which method modifies age. 6. Find which subclass contains method setDependent(). Created by Sen Yan Chiu

13 Future improvements Able to support different and combined owl files Search across multiple projects Able to form complex SPARQL queries Multiple correlated queries at once Created by Sen Yan Chiu

14 What we have learned in Software Engineering Team work Communication among team members  Weekly meetings to discuss what tasks should accomplished  Go over what each member accomplished in previous week  Assign tasks according to member’s strengths and interests Communication between other teams and PM  Weekly meetings to discuss about each team’s update  Weekly reports to PM about each team’s progress Learn the process of extending an existing project Analyze the previous project Research on unfamiliar topics Define possible extensions Created by Sen Yan Chiu

15 About Semantic Web Technology World Wide Web vs. Semantic Web Created by Sen Yan Chiu World Wide WebSemantic Web Focus on human language Web pages are designed for human readers Database structure: relation base Querying language: SQL No inference engine is used Focus on machine language Web pages are organized to be machine readable Database structure: RDF base Querying language: SPARQL Inference engine is used to interpret information

16 About Semantic Web Technology Advantages of the Semantic Web Technology Enable the Web to be processed automatically by machines and also manually by humans. Semantic Web Language provides 2 basic utilities for  Representation of knowledge: neutral language to enable the construction of a portable knowledge organization. (RDF)  Organization of knowledge: annotation system to denote the relation of an expression if Web content to a pre-specified knowledge organization to enrich the semantic capacity of the expression. (Ontology) RDF database structure contains metadata that makes information machine readable Inference engine is used to reason information that enhances Web searches with more accurate results Created by Sen Yan Chiu

17 Conclusion Major difficulties that we overcame Lack of documentation from last year’s team Learn all technologies required for this project as quick as possible Time constraint ( only one semester) Integration with other teams Advice to the next year group Start with researching the Semantic Web Analyze our final documentation Learn the unfamiliar technologies Good Luck!!! Created by Sen Yan Chiu

18 The End Questions? Created by Sen Yan Chiu


Download ppt "Team members: Sen Yan Chiu (Team Lead) Frank Chou Chih Wei Lee Lulie Gaston Viet Nguyen Sumeet Chandra Ankur Singh April 13, 2009."

Similar presentations


Ads by Google