290 likes | 380 Views
S chools I nteroperability F ramework : Implementing a SIF Schema with .NET Web Services. TCSS 558 Project Report By Robert Bunge. Project Purpose. Demonstrate how a SQL database can communicate with clients and servers via XML messaging
E N D
Schools Interoperability Framework: Implementing a SIF Schema with .NET Web Services TCSS 558 Project Report By Robert Bunge
Project Purpose • Demonstrate how a SQL database can communicate with clients and servers via XML messaging • Prototype a distributed data services concept under the Schools Interoperability Framework (SIF) Robert Bunge, TCSS 558 Fall 2005
Project Motivation • Continue ongoing research program into school data systems • Extend .NET, web services, and XML discussions held with various software vendors in the past • Learn deployment and development skills related to these technologies Robert Bunge, TCSS 558 Fall 2005
Research Issue • The central research problem at this time is to find a way for SQL database systems to provide XML messages according the SIF format. Such messages are to occur in response to events. Robert Bunge, TCSS 558 Fall 2005
Project Goals • Develop proof-of-concept • Learn current SIF specification • Work toward valuable products and services for the education market Robert Bunge, TCSS 558 Fall 2005
Related Work:Data Problems in Education • Applications and their data are isolated from one another • Redundant data entry is common • Disconnected applications increase support costs • Data reporting is costly and inefficient • Data is inaccessible to decision makers Source: http://www.sifinfo.org/about_sif/general_overview.asp Robert Bunge, TCSS 558 Fall 2005
Related Work:Deployment of SIF Certified Products • 49 certified products • from 42 companies • Source: The Open Group http://www.opengroup.org/sif/cert/cert_prodlist.tpl Robert Bunge, TCSS 558 Fall 2005
Related Work:SIF Goals • Define standard formats for shared data (e.g., student demographics information) • Define standard naming conventions for this shared data • Define the rules of interaction among software application • Ensure that data is entered only once in one application, and automatically propagates to other applications • Allow applications to exchange data more effectively • Enable schools to create powerful reports by accessing data from different applications • Allow educators to deliver reports securely via the Internet to various organizations Source: http://www.sifinfo.org/about_sif/general_overview.asp Robert Bunge, TCSS 558 Fall 2005
Use Case for SIFFood Services Example Robert Bunge, TCSS 558 Fall 2005
Related Work:Sample SIF Schema Source: SIF Specification. http://www.sifinfo.org/specification.asp Example 5.3.2–1: FoodserviceItem <FoodserviceItem RefId="EF521958AB474559B2AE7BD82647C66B"> <LocalId>2391</LocalId> <Description>Green Burrito</Description> <ElectronicId Type="Barcode">123456</ElectronicId> <ItemCategory>Vegetables</ItemCategory> </FoodserviceItem> Robert Bunge, TCSS 558 Fall 2005
Project Method • Obtain SIF format specification for a simple data set • Build a SQL database to house the data • Design interaction between SIF compliant database and web services • Test queries on Windows, Web, and Mobile clients Robert Bunge, TCSS 558 Fall 2005
Expected Result • Select, insert, and update operations between clients and SQL database will be successful • XSD web services schema will reflect SIF specification • Client-server interaction will occur through XML-based data exchange Robert Bunge, TCSS 558 Fall 2005
Expected Contribution • Test system will be useful for training and prototyping • Will help technicians serving the education market understand how to implement SIF • Will suggest possible future data services developments for education Robert Bunge, TCSS 558 Fall 2005
Project Design Robert Bunge, TCSS 558 Fall 2005
Project DesignAccess Prototype Robert Bunge, TCSS 558 Fall 2005
Project DesignUML Data Model Robert Bunge, TCSS 558 Fall 2005
Project DesignBranding LunchBuddy Food Services Application for • Inventory management • Menu planning • Mobile access to lunch menus Robert Bunge, TCSS 558 Fall 2005
Project DesignWindows Form Robert Bunge, TCSS 558 Fall 2005
Project DesignWindows Form Robert Bunge, TCSS 558 Fall 2005
Project DesignWeb Form Robert Bunge, TCSS 558 Fall 2005
Project DesignMobile Device Robert Bunge, TCSS 558 Fall 2005
Project DesignMobile Device Robert Bunge, TCSS 558 Fall 2005
Project DesignUse Case #1: Inventory • Success Cases: Robert Bunge, TCSS 558 Fall 2005
Project DesignUse Case #1: Inventory • Failure Cases: • No load if records have Null fields • New fields don’t load without update to XSD file • No failure found on Web Service call (GenerateGUID). • Takes no parameters • Only possible failures on the network level • Namespace must be configured to work at all Robert Bunge, TCSS 558 Fall 2005
Project DesignUse Case #2: Web Access • Success Cases: * each control works * web services calls work (Meal Full Price, Discount Price) • Built test menus for various dates - verified correct price and discount calculations Supports Use Case: “Cooks Design Lunch Menus” Robert Bunge, TCSS 558 Fall 2005
Project DesignUse Case #2: Web Access • Failure Cases: * Round dollar pricing displayed wrong: $2, not $2.00, $1.5, not $1.50 Resolution: modified output methods with Regex *Bad data values Dropdowns eliminate most of this Non existent data item entry inserts into DB – but does no harm * Attempted to get “Show Menu” method to work on page load – never did Robert Bunge, TCSS 558 Fall 2005
Project DesignUse Case #3:Mobile Device • Success Cases: * month selection list * date selection list * grade selection list * all textbox displays All worked with test data in DB Web service calls all worked Robert Bunge, TCSS 558 Fall 2005
Project DesignUse Case #3:Mobile Device • Failure Cases: * attempt to enter date via textbox failed completely * bad date selection returns no data * pricing display required Regex to fix lack of trailing zeros (e.g. $1.5 -> $1.50) Robert Bunge, TCSS 558 Fall 2005
Conclusion • Expected Results achieved • .NET Web Services can support XML schema similar to SIF • Server-to-server XML messaging support via .NET requires further research and/or future project Robert Bunge, TCSS 558 Fall 2005