Handling Semantic Data for Software Projects Data Management CSE G674 – SW Engineering Project.

Slides:



Advertisements
Similar presentations
CH-4 Ontologies, Querying and Data Integration. Introduction to RDF(S) RDF stands for Resource Description Framework. RDF is a standard for describing.
Advertisements

ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.
COPYRIGHT © 2012 ALCATEL-LUCENT. ALL RIGHTS RESERVED. 1 Agile documentation development methodology Giby Panicker and Judith Benjamin 1-Dec-2012.
The CERIF-2000 Implementation. Andrei S. Lopatenko CERIF Implementation Guidelines Andrei Lopatenko Vienna University of Technology
Building and Analyzing Social Networks Web Data and Semantics in Social Network Applications Dr. Bhavani Thuraisingham February 15, 2013.
 The Rise of Computer Science ◦ Machine Language (1 st Gen) ◦ Assembly Language (2 nd Gen) ◦ Third Generation Languages (FORTRAN, BASIC, Java, C++, etc.)
The Sherlock Project Purdue University, Department of Computer Sciences Sponsored by Tellabs, Inc. Doug Clark - Group Leader Tobey Pasheilich Raj Talwar.
Reference and Instruction Automated Statistics Gathering and Reporting System Members: Patrick Chen (pyc7) Soo-Yung Cho (sc444) Gregg Herlacher (gah24)
1 A Web-Based Integral Evaluator: A Demonstration of the Successful Integration of WebEQ, Maple, and Java Wanda M. Kunkle Department of Mathematics & Computer.
Application architectures
ReQuest (Validating Semantic Searches) Norman Piedade de Noronha 16 th July, 2004.
 QUALITY ASSURANCE:  QA is defined as a procedure or set of procedures intended to ensure that a product or service under development (before work is.
Configuration Management
U-Mail System Design Specification Joseph Woo, Chris Hacking, Alex Benson, Elliott Conant, Alex Meng, Michael Ratanapintha April 28,
Software Documentation Written By: Ian Sommerville Presentation By: Stephen Lopez-Couto.
Application architectures
System Design/Implementation and Support for Build 2 PDS Management Council Face-to-Face Mountain View, CA Nov 30 - Dec 1, 2011 Sean Hardman.
Triple Stores.
Project Proposal: Academic Job Market and Application Tracker Website Project designed by: Cengiz Gunay Client: Cengiz Gunay Audience: PhD candidates and.
© 2006 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Publishing data on the Web (with.
February Semantion Privately owned, founded in 2000 First commercial implementation of OASIS ebXML Registry and Repository.
UML - Development Process 1 Software Development Process Using UML (2)
Virtual Mechanics Fall Semester 2009
1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness and Peter Fox CSCI Week 9, October 27, 2008.
The Collaborative Imaging Grid (CIG) Edward Marsh, Kurtis Heimerl, Andrew Urhausen, Paul Javid, Aneesa Awaludin, Austin Cargol.
Semantic Web. Course Content
CSE G674/2009 Project Project Management Section Presented by: Amir Aref Adib.
Tutorial 10 Adding Spry Elements and Database Functionality Dreamweaver CS3 Tutorial 101.
Identity Management Report By Jean Carreon and Marlon Gonzales.
Understand Application Lifecycle Management
Project Workflow. How do you do it? -Discussion-
Sri Lanka Institute of Information Technology Software Engineering Project – I Clone of Rally GROUP NO : WD-SEP-002 | PROJECT NO :25 PROJECT : CLONE OF.
The Semantic Web William M Baker
Module Info Web Application and Development Digital Media Department Unit Credit Value : 4 Essential Learning time : 120 hours
1 Foundations V: Infrastructure and Architecture, Middleware Deborah McGuinness TA Weijing Chen Semantic eScience Week 10, November 7, 2011.
Statistics Monitor of SPMSII Warrior Team Pu Su Heng Tan Kening Zhang.
PROJECT SECME1 Carthik A. Sharma Juan Carlos Vivanco Majid Ali Khan Santhosh Kumar Grandai Software Engineering Fall 2002.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
T Final demo I2 Iteration Agenda  Product presentation (20 min) ‏  Project close-up (20 min) ‏ Evaluation of the results  Questions.
Secure Systems Research Group - FAU SW Development methodology using patterns and model checking 8/13/2009 Maha B Abbey PhD Candidate.
Ashley Montebello – CprE Katie Githens – SE Wayne Rowcliffe – SE Advisor/Client: Akhilesh Tyagi.
.  A multi layer architecture powered by Spring Framework, ExtJS, Spring Security and Hibernate.  Taken advantage of Spring’s multi layer injection.
Presented by Scientific Annotation Middleware Software infrastructure to support rich scientific records and the processes that produce them Jens Schwidder.
A radiologist analyzes an X-ray image, and writes his observations on papers  Image Tagging improves the quality, consistency.  Usefulness of the data.
1.Registration block send request of registration to super peer via PRP. Process re-registration will be done at specific period to info availability of.
© 2006 Altova GmbH. All Rights Reserved. Altova ® Product Line Overview.
Triple Stores. What is a triple store? A specialized database for RDF triples Can ingest RDF in a variety of formats Supports a query language – SPARQL.
The Juggernaut Team Tyler Douthitt  Project Manager  Lead Website Developer Mike Harman  Lead Programmer Eric Rakers  Lead Documenter  Lead Analyst.
CSE300 EAIusing EJB & XML CSE Enterprise Application Integration Using EJB and XML by Prithwis Sett Mumtaz Lohawala Nayana Paranjape.
Web-based Front End for Kraken Jing Ai Jingfei Kong Yinghua Hu.
The Semantic Web. What is the Semantic Web? The Semantic Web is an extension of the current Web in which information is given well-defined meaning, enabling.
Steven Perry Dave Vieglais. W a s a b i Web Applications for the Semantic Architecture of Biodiversity Informatics Overview WASABI is a framework for.
ASSIGNMENT 2 Salim Malakouti. Ticketing Website  User submits tickets  Admins answer tickets or take appropriate actions.
Intelligence and Information Systems 1 3/17/2004 © 2004 Raytheon Company USC/CSE Executive Workshop on Agile Experiences March 17, 2004 A Raytheon Agile.
T Iteration Demo Tikkaajat [PP] Iteration
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
WonderWeb. Ontology Infrastructure for the Semantic Web. IST Project Review Meeting, 11 th March, WP2: Tools Raphael Volz Universität.
NSF Cyber Trust Annual Principal Investigator Meeting September 2005 Newport Beach, California UMBC an Honors University in Maryland Trust and Security.
Team members: Sen Yan Chiu (Team Lead) Frank Chou Chih Wei Lee Lulie Gaston Viet Nguyen Sumeet Chandra Ankur Singh April 13, 2009.
Extended Metadata Registries and Semantics (Part 2: Implementation) Karlo Berket Ecoterm IV Environmental Terminology Workshop April 18, 2007 Diplomatic.
Software Engineering Process
Project Workflow.
Online Laptop Shop through Semantic Web
Software Documentation
Object Oriented Analysis and Design
Triple Stores.
PREMIS Tools and Services
Software Design Lecture : 15.
RDF David R Newman 15 July 2009.
Presentation transcript:

Handling Semantic Data for Software Projects Data Management CSE G674 – SW Engineering Project

Agenda What we learned Major Requirements Legacy Code and Documentation New Features What’s Done Major Difficulties Advice to next group

What we learned Software Engineering RDF/XML Semantic Web Web Ontology Language (OWL) ‏ Jena

Software Engineering Scrum Process ▫Eclipse Process Framework (EPF) ‏ ▫Scrum Roles  Product owner, Scrum Master, Scrum Team ▫Work Products  Product Backlog, Sprint Backlog, Potentially Shippable Products ▫Scrum Activities  Initial Release Planning, Sprint Planning, Backlog Prioritization

Software Engineering Cont’d Development Tools ▫Subversion, Google Code, Wikis, Eclipse, RSM/RSA, dotProject Documentation ▫Component, Class, Activity, Sequence diagrams ▫Final Specs. Collaboration and Communication ▫Negotiating Requirements, Blackboard Testing ▫Specs and J-Unit Legacy Artifacts ▫Deciphering old code and documentation

RDF/XML Resource Description Framework (RDF) ‏ – Representation of metadata – a method of modeling data – Most of us were fairly unfamiliar with RDF which provides the basis for the 3 primary technologies exposed in this project: Semantic Web Web Ontology Language Jena

Semantic Web – A representation of data enabling computers to better handle information on the web – Relationships among data are represented by ontologies – Builds on XML and RDF's approach to representing data – Web Ontology Language (OWL) one of the foundations of the Semantic Web

OWL Web Ontology Language (OWL) ‏ – Explicitly represents relationships between data  This explicit representation is known as the ontology – Uses XML and RDF as its foundation – OWL Family (3 Semantics): OWL Full, OWL DL, OWL Lite – OWL DL and OWL Lite are the most commonly used because they are the easiest to understand and implements – OWL Full is a full representation of RDF Schema which is much more loosely defined and more difficult to fully implement

Jena – Java implementation of semantic web applications – Built-in inference model “infers” relationships between data based on the specified data provided and the relationships between that data provided by the ontology – Provides database support for persistent data and the ability to query the stored data

Adler Requirements The Adler shall receive requests via a Java interface. The Adler shall provide an interface for inserting new projects. The Adler shall provide an interface for replacing existing projects. The Adler shall provide an interface for removing projects. The Adler shall provide an interface for obtaining the list of existing projects. The Adler shall provide an interface for querying an existing project using the SPARQL query language. The Adler shall support a MySQL backend database. The Adler shall make available a local API. The Adler shall allow the user to configure the database name, username, password and location. The Adler shall support the following formats for data insertion: "RDF/XML", "N-TRIPLE", "N3".

Authentication Requirements Register an authorized user in the system (an authorized user is a student who knows the secret code)‏ Store the information about the user. Allow the user to access his/her user record Allow the user to access and control his/her projects Protect system against unauthorized access Allow user to reset the portal password

Legacy Code and Documentation Mainly implemented following features: Using Jena to interact between database and Adler. Using RMI as remote communication and expose two API on that. Realizing the functions as inserting single projects, submitting certain query and getting expected feedback. Supporting MySQL and MSSQL databases. Poor documentation management: Only instructions on how to setup Adler. Test not applied properly. Lacked the ability for extensions.

Adler New Features Improvement of Functions and features. A new interface for replacing existing projects. A new interface for removing projects. A new interface for obtaining the list of existing projects. Eliminated RMI and redesigned the whole project as a web-based project. Multi-project support. Improved Documentation Management. Well managed and organized Wiki. Detailed UML Diagrams Clear Instructions and user manual provided. Javadoc for documentation.

Authentication New Features Secret code: Match the secret code before create new user. Retrieve password: instead of JMS we implemented this function using PHP.

Adler – What’s Done Functions and Features: API for Inserting new projects. API for Querying an existing project using the SPARQL query language. Replacing existing projects. Removing projects. Obtaining the list of existing projects. Multiple Project support. MySQL backend database support. Database name, username, password and etc configurable. Multiple formats for data support. Improve error handling J-Unit test suite for Adler Improved documentation and project management.

Authentication – What’s Done Register: Save all the user information into DB. Login: Check the user record against on the DB. If DB has the record set the session and pass the username to Entry page. Logout: invalidate session and send redirection to Login page. Forgot password: Check the username and password based on the address. If has the record then send an with the username and the reset password to the user.

Adler - Major Difficulties Semantic Web Concepts and Technologies Unfamiliar Topic and Techniques. ▫ The majority of the team was quite unfamiliar with the Semantic Data. Heavily relying on Jena, an open source tool. ▫ We needed to verify that it would work for us early on. We did this and mitigated the risk early on. Component Integration and System Testing Integration. ▫ No high-level code reviews performed among the three teams which might have flushed out any misconceptions about the interfaces. Communication and collaboration. ▫ We spent too long working in our own development areas and in turn waited too long to integrate with each other’s code. Formal testing occurred late. ▫ Testing should have been addressed earlier in the project so a test plan and cases could be developed in parallel.

Authentication – Major Difficulties Session: Where to create the session and how to close it. Short deadlines/scheduling Fixing software errors (time consuming)‏ Software functionality issues vs. customer requirements (unable to meet the customer requirements due to functionality issues)

Advice to Next Group Set a clear direction early ▫If Prof. Kokar asks for proposals, give him some! Don’t spend too little/too much time on documentation Define specific responsibilities and grading policies Use 1 week sprints with very very specific deliverables defined in a planning tool Meet as a class every week ▫Use this as your planning meeting Use a common work area as early as possible Create a backlog, prioritize, and deliver each week Testing is not an afterthought Pay attention to deadlines Talk to the other teams!