Your SlideShare is downloading. ×
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply


Published on

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. An IIT Bombay Research Project Spin-off
  • 2. <ul><li>A SaaS (Software as Service) Delivery Platform ( www. iKenStudio .com ) </li></ul><ul><li>An online development environment to develop web-based enterprise applications, decision support systems, knowledge-based websites and portals backed by expert system, case-based reasoning and Hybrid AI technologies. </li></ul><ul><li>It is a research spin-off of IIT Bombay </li></ul>iKen Studio Live
  • 3. Contents <ul><li>iKen Studio Features </li></ul><ul><li>Generic Applications of iKen Studio </li></ul><ul><li>System Development Interfaces </li></ul><ul><ul><li>Core Engines </li></ul></ul><ul><ul><li>Presentation Interfaces </li></ul></ul><ul><ul><li>Database Management Interfaces </li></ul></ul><ul><ul><li>System Parameters and configuration </li></ul></ul><ul><ul><li>System Controls </li></ul></ul><ul><li>Comparing iKen Studio with other Expert System/CBR Tools/Shells </li></ul><ul><li>Related Research Papers </li></ul><ul><li>Business Case Studies </li></ul><ul><li>Case Study demos </li></ul><ul><li>Demos </li></ul>
  • 4. <ul><li>Completely Web-based </li></ul><ul><ul><ul><li>Access, management and configuration through Web </li></ul></ul></ul><ul><ul><ul><li>No desktop installation and management </li></ul></ul></ul><ul><li>Minimal coding </li></ul><ul><ul><ul><li>Generate automatic DHTML scripts and HTML web pages </li></ul></ul></ul><ul><ul><ul><li>No explicit database programming required </li></ul></ul></ul><ul><ul><ul><li>Various development interfaces </li></ul></ul></ul><ul><ul><ul><li>Use of simple language for writing rules </li></ul></ul></ul><ul><ul><ul><li>Support large number of operators, functions and data types </li></ul></ul></ul><ul><ul><ul><li>Existing C/C++ APIs can be reused </li></ul></ul></ul><ul><li>Database integration </li></ul><ul><ul><ul><li>Support popular databases: MS-SQL Server, MYSQL, MS-Access, Excel, Text, etc. </li></ul></ul></ul><ul><ul><ul><li>Simultaneously connects and accesses data from multiple databases </li></ul></ul></ul><ul><ul><ul><li>In-built extraction, mapping and transformation engine </li></ul></ul></ul><ul><ul><ul><li>Data access and manipulation through flexible external dynamic queries </li></ul></ul></ul>iKen Studio Features
  • 5. iKen Studio Features <ul><li>XML and Web services </li></ul><ul><ul><ul><li>All components and interfaces use XML </li></ul></ul></ul><ul><ul><ul><li>SQL-XML and XML-SQL transformation </li></ul></ul></ul><ul><ul><ul><li>Access to APIs and intelligent systems through web services </li></ul></ul></ul><ul><li>AI Techniques </li></ul><ul><ul><ul><li>Powerful expert system engine supporting large number of data types including matrix, trend, XML etc. and various SQL, matrix, list, chart, session management, report etc. functions </li></ul></ul></ul><ul><ul><ul><li>Use of scripting language for implementing procedural logic </li></ul></ul></ul><ul><ul><ul><li>Powerful CBR engine supporting structured and conversational CBR applications </li></ul></ul></ul><ul><ul><ul><li>Applications can be developed using hybrids of expert system and CBR </li></ul></ul></ul><ul><li>Security features </li></ul><ul><ul><ul><li>Role-based access to various development interfaces </li></ul></ul></ul><ul><ul><ul><li>Role and user based access to applications, databases and data </li></ul></ul></ul><ul><ul><ul><li>Encryption to prevent unauthorised changes </li></ul></ul></ul><ul><ul><ul><li>System tracks changes made by the users and save change history for later investigation </li></ul></ul></ul>
  • 6. Generic Applications using iKen Studio
  • 7. <ul><li>Manage dynamic business rule </li></ul><ul><li>Retain and reuse in-house expertise </li></ul><ul><li>Maintain and assure regulatory compliance </li></ul><ul><li>Enforce decision rules: make them consistent and objective </li></ul><ul><li>Make transaction and reporting systems intelligent by incorporating knowledge </li></ul>Knowledge Automation
  • 8. <ul><li>Move from information delivery to knowledge delivery </li></ul><ul><li>Automate and deliver expertise on-line: virtual consultant </li></ul><ul><li>Save experts’ time and serve large user/customer base 24x7 days </li></ul><ul><li>Understand user, customers and employees well. Recommend them the right products, deliver customized advice and information </li></ul><ul><li>Lightweight, less crowded user interfaces </li></ul><ul><li>Intelligent product advisory and selection </li></ul><ul><li>Smart Intranets </li></ul>Knowledge-based Websites and Intranets
  • 9. <ul><li>Advanced decision support system using rule-based, case-based systems and analytical methods </li></ul><ul><li>Data Analysis, detect Inconsistencies </li></ul><ul><li>Reuse experience: like dealing with customers </li></ul><ul><li>Analyse, match profiles and predict behaviour </li></ul><ul><li>Identify up-selling and cross-selling opportunities </li></ul>Decision Support
  • 10. Automated Help-desks and Support <ul><li>Reuse maintenance, support etc. experience </li></ul><ul><li>Self-service Interfaces </li></ul><ul><li>Intelligent help and troubleshooting </li></ul>
  • 11. Monitoring and Reporting <ul><li>Monitor and report fraudulent, suspicious and abnormal activities </li></ul><ul><li>Generate alerts and early warning signals </li></ul>
  • 12. Information Search and Retrieval <ul><li>Flexible and guided quick information retrieval from databases </li></ul><ul><li>Set individual’s retrieval criteria and requirements </li></ul><ul><li>Retrieval based on context and conceptual similarity </li></ul>
  • 13. System Development Interfaces Data Services XML<-> SQL Transformation System controls Domain Vocabulary Processing Logic (Core Engines) Presentation Services (Input/Output)
  • 14. Core Engines Data Services XML<-> SQL Transformation Domain Vocabulary Presentation Services (Input/Output) System controls Processing Logic (Core Engines)
  • 15. Expert System Engine <ul><li>Rule-based Reasoning </li></ul><ul><li>Web-based, XML-based Expert Systems can easily be developed and deployed. </li></ul><ul><li>Easy to use and understand IF...THEN...ELSE rule format </li></ul><ul><li>Write rules in simple english like sentences </li></ul><ul><li>Supports rules for multiple expert systems, which are logically separated into application groups. </li></ul><ul><li>Rules are stored in intermediate format at run time rather than interpreted each time. Rules are checked for various syntax and semantic errors. Rule Manager facilitates interactive environment to manage the rules. </li></ul><ul><li>Supports </li></ul><ul><ul><li>Backward as well as forward reasoning </li></ul></ul><ul><ul><li>Various data types: number, real, text, date, list, dynamic list, trend, matrix, boolean, document, URL, etc </li></ul></ul><ul><ul><li>Various mathematical, string, list, date, matrix, trend, graph, database, session management and report functions </li></ul></ul><ul><ul><li>Special operators and functions like INCLUDE, IS BETTER THAN, SCORE_OF, PROFILE_OF etc. to reduce number of explicit rules eg : expressions like : </li></ul></ul><ul><ul><ul><ul><li>Customer.Education IS BETTER THAN Diploma , </li></ul></ul></ul></ul><ul><ul><ul><ul><li>STATUS_OF Customer.Age IS Young </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Customer.Income Documents INCLUDE [PAN,Form16] etc . </li></ul></ul></ul></ul>
  • 16. Expert System Engine <ul><li>Supports many databases simultaneously, no explicit database programming is required: like opening database connections, executing SQL command, opening record-sets, populating data etc. The database interfaces manage extraction, mapping and transformation of data. The data from SQL queries is populated into session data and vise-a-versa at run time. </li></ul><ul><li>Use of JavaScript for WHEN NEEDED and WHEN ADDED methods. Expert system variables can directly be accessed directly in JavaScript for client-side as well as server-side functionality. This helps to implement procedural component to be implemented using scripting languages that are relatively easier and widely used. </li></ul><ul><li>System can run in Debug mode to dump the data and know process status at run-time. </li></ul><ul><li>An expert system can be invoked through URL and Web services </li></ul><ul><li>System Interfaces like Form Designer and Report Designers are used to create HTML input templates and sessions reports to enter, validate data and get formatted output in HTML format. </li></ul><ul><li>Existing C/C++ APIs can be used by wrapping them in DLL files </li></ul><ul><li>Expert system engine can work as host system for accessing and controlling case-based reasoning systems or to develop hybrid systems </li></ul>
  • 17. Case based reasoning engine <ul><li>Domain independent Web-based CBR systems can be developed. The engine is tightly connected to expert system engine. Expert system engine can act as host. Expert system can be used to enter query or problem case (through Q&A or Forms). Run-time format of case format is XML, cases are stored in the database/s. </li></ul><ul><li>No restructuring of database contents, existing contents can easily used and converted to cases on the fly (by mapping SQL-XML) </li></ul><ul><li>Support for all phases (Retrieve, Reuse, Revise and Retain) of CBR </li></ul><ul><li>Uses combination of rule-base, SQL and nearest neighbour method for retrieval. </li></ul><ul><li>Powerful rule-based engine for adaptation of cases. </li></ul><ul><li>It can address structural as well as conversational CBR thereby supporting wide-range of applications from intelligent help desk to complex decision support. </li></ul><ul><li>The engine supports taxonomy, hierarchy of CBRs and logical grouping of features. </li></ul><ul><li>It supports large number of similarity functions and custom functions can be added. </li></ul><ul><li>It can be configured to set similarities from databases based on criteria or procedural logic (query results), also to learn and adjust similarities automatically from the past downloads or examples. </li></ul>
  • 18. Presentation Interfaces Data Services XML<-> SQL Transformation Domain Vocabulary Processing Logic (Core Engines) System controls Presentation Services (Input/Output)
  • 19. Form and Report Designer <ul><li>Create DHTML web pages for Input and Output </li></ul><ul><li>Support all major HTML controls, tags, fonts, colors etc </li></ul><ul><li>JavaScript code is automatically inserted into forms and reports for validation, formatting etc. </li></ul><ul><li>Form designer interface: used for designing and building inputs forms </li></ul><ul><li>Report designer interface: used for designing and building report templates. The system populates and calculates appropriate values at run-time when invoked or displayed. </li></ul><ul><li>Studio supports default report templates with lot of client side functionality and navigation aids </li></ul><ul><li>Support two basic types of reports: </li></ul><ul><ul><li>Session Report : to display session data at run-time </li></ul></ul><ul><ul><li>Query Report : to display dataset in multiple rows e.g. result of SQL query </li></ul></ul>
  • 20. Example: Form Preview
  • 21. Example: Runtime Form
  • 22. Example: Session Report Preview
  • 23. Example: Runtime Session Report
  • 24. Example: SQL Report Preview
  • 25. Example: Runtime SQL Report
  • 26. Example: Default Reports
  • 27. Data Management Interfaces Presentation Services (Input/Output) Processing Logic (Core Engines) Domain Vocabulary System controls Data Services XML<-> SQL Transformation
  • 28. Database Connection <ul><li>This interface is used for setting up database connections. It can also be used to add, remove, and update database connections. </li></ul><ul><li>The system maintains the list of database connections as an application object. Each connection has a logical ID </li></ul><ul><li>Supports databases: SQL Server, Oracle, MS-Access, MS-Excel, MySQL, Text Files etc. </li></ul><ul><li>System supports OLEDB or ODBC connection type </li></ul><ul><li>One database (core db) in the system is treated as core database. The core database is used by the system to store the user list, session tracking, database access queries etc. </li></ul>
  • 29. Dynamic Queries <ul><li>Dynamic query facilitates retrieval of data at run-time by just using their IDs and filters (by populating filter values at run-time) </li></ul><ul><li>Queries can be predefined to bring datasets for lists, dynamic lists, collaborative filtering, content filtering, clustering etc. </li></ul><ul><li>These queries save lot of explicit coding inside Rule-base. </li></ul>
  • 30. Database Variable Linking <ul><li>Mapping between variables and database fields can be set to exchange the data between database and system. </li></ul><ul><li>Data can be transformed on the fly after retrieval and before updates to database/s. </li></ul><ul><li>Mapping can be set for read or update access. </li></ul><ul><li>Variable linking can be done for fields from different databases. </li></ul><ul><li>Mapping and transformation is applied to all queries sent to database/s. </li></ul><ul><li>It helps to populate data into variables automatically and vice-a-versa without explicit data population in rule etc. </li></ul><ul><li>Because of mapping, cursors can be simulated and used in expert system coding </li></ul>
  • 31. Database Access Configuration <ul><li>Query objects hold the information about database links to various components of the systems. Database access can not be done unless query objects are defined. </li></ul><ul><li>Query object can have multiple queries with respect to role, goal, intelligent system, etc. </li></ul><ul><li>Access to data can be controlled based role, application, read or write, etc. </li></ul>
  • 32. Domain Vocabulary Presentation Services (Input/Output) Processing Logic (Core Engines) Data Services XML<-> SQL Transformation System controls Domain Vocabulary
  • 33. Global Variables, Menus, Range Conversions and Lookup Table <ul><li>It facilitates to maintain global dictionary of domain terms (parameters/variables and their descriptions) </li></ul><ul><li>These variables are used in various intelligent systems like in expert system, forms, reports, etc. </li></ul><ul><li>Supports various variable type based on usage in the system </li></ul><ul><li>Interface facilitates to enter detailed variable description like HTML formatting, validation criteria, WHEN NEEDED and WHEN ADDED scripts, linked intelligent systems and so on. Web pages are automatically for input type variables based on HTML formatting parameters selected. </li></ul><ul><li>Various data types are supported </li></ul><ul><li>Menu objects hold the information about various possible options (list of values) a variable can take. </li></ul><ul><li>Symbolic values and numeric values (including) can be converted into numeric and qualitative respectively using range-list objects. These can be used to transform values. It helps to reduce the writing of explicit rules to convert values at run-time in expert system. </li></ul><ul><li>Lookup table interface is used store table of values in memory at run-time instead of fetching them from database each time. Especially if taxonomy or abstract features for generalization is to be stored in memory instead fetching them each time from databases. e.g. to fetch Education Level, Education Discipline, etc. from Degree. </li></ul>
  • 34. SQL-XML Mapping and Transformation Engine <ul><li>Responses from SQL calls are converted into XML and XML data is converted to SQL requests </li></ul><ul><li>Fields are mapped to variables and data is transformed at the time of retrieval from database/s and vice-a-versa. </li></ul><ul><li>Engine can fetch data from multiple databases or update to many databases simultaneously. </li></ul><ul><li>Various access rights can be set to access data based on user, role as well as type of intelligent system accessing data. </li></ul>
  • 35. System Controls Data Services XML<-> SQL Transformation Domain Vocabulary Processing Logic (Core Engines) Presentation Services (Input/Output) System controls
  • 36. Load Application and File Upload <ul><li>Interface to load required applications in the project </li></ul><ul><li>Backup and restoration of selected applications at client location </li></ul><ul><li>Shows application load status and errors while loading and building applications </li></ul><ul><li>Files can be uploaded to server from client location </li></ul>
  • 37. Access Rights and Roles <ul><li>Access rights to roles, users can be defined. </li></ul><ul><li>It allows to set different options to roles. Each role includes access to system interfaces, applications, databases and variable groups. </li></ul><ul><li>An user can have multiple roles </li></ul>
  • 38. System Parameters & Configuration <ul><li>Various project level parameters can be set which are applicable to all applications in that project </li></ul><ul><li>Applications and linked variable groups can be defined with some applications can be loaded as default applications when iKen Studio starts </li></ul><ul><li>These include: parameters for connecting to SMTP server, use navigation button names, virtual directory path, script files path, default formats, max number of rules, max number of tokens in expression etc. </li></ul>
  • 39. iKen Studio: Layered Architecture iKen Studio SQL-XML Mapping and Transformation Engine Variable Database Mapping Interface SQL Builder Dynamic Query Interface Access Rights Management Data Access layer Rule-based Expert System Engine Case-Based Reasoning Engine Rule Manager CBR Configuration Interface Intelligent Systems Layer Session Management Domain Vocabulary Interfaces Common Session Data (XML) Session layer Report Designer Form Designer XML-HTML Transformation Engine Presentation Transformation Layer File Upload Database Database Database Client Browser Client Browser Client Browser
  • 40. Comparing with other Expert System Tools/Shells <ul><li>Completely web-based development framework facilitating centralised system development and deployment. </li></ul><ul><li>First expert system software to be offered in SaaS model . So the cost is much less (almost 10 times) and can subscribed yearly subscription. </li></ul><ul><li>It is complete high productive development environment which includes form generators, report designers, SQL builder etc. </li></ul><ul><li>Lot of extensions and customizations done to address specific kind of applications like personalization, recommendation, intelligent exams, surveys etc. </li></ul><ul><li>Most of the tools have desktop development and web-based deployment. Which makes development environment distributed. </li></ul><ul><li>These tools are not offered in SaaS mode. Client has to pay upfront heavy licensing cost. </li></ul><ul><li>Concentrate on expert system development interfaces rather than components to generate reports, forms, XML support etc. </li></ul><ul><li>These provides standard expert system functionality. For other extensions, client has to customize explicitly or pay for additional add-ons to the software vendor </li></ul>
  • 41. <ul><li>Saves lot of explicit database coding: has built-in SQL-XML mapping and transformation engine. </li></ul><ul><li>Interfacing with JavaScript helps to have procedural logic implemented using popularly used scripting languages like JavaScript </li></ul><ul><li>CBR is tightly integrated with expert system engine. Hybrid systems can be developed easily having advantages of explicit knowledge system + case-based (data driven) systems </li></ul><ul><li>Support for data types like matrix, trend, XML etc. </li></ul><ul><li>Developers need to do lot of explicit database coding: opening database connections, populating data sets into variables, updating variable values to databases etc. Code may vary from database to databse. </li></ul><ul><li>These tools have their own language for writing procedural logic which user needs to learn </li></ul><ul><li>Do not include CBR systems. So address limited applications of expert systems. Need to integrate with other CBR tools and can be tedious. </li></ul><ul><li>May be limited to standard data types </li></ul>Comparing with other Expert System Tools/Shells
  • 42. Comparing with other CBR Tools/Shells <ul><li>CBR engine is integrated with expert system engine, thereby facilitating development of hybrid CBR systems supported by expert system </li></ul><ul><li>Applications requiring all R-4 (Retrieve, Reuse, Revise, Retain) cycles can be developed. </li></ul><ul><li>Because of SQL-XML mapping and transforming engine, existing database contents are treated as cases without explicit case presentations etc. </li></ul><ul><li>Has built-in mechanism for learning similarities from the downloads etc. </li></ul><ul><li>Coupled with databases, it relies on database indexing mechanism (for retrieval) which is powerful instead of having explicitly implemented in CBR tool. </li></ul><ul><li>Only CBR engine (expert system is not part of it) which sometimes limits type of applications that can be developed and addressed </li></ul><ul><li>Most of the CBR shells are limited to retrieval (and reuse) phase only. </li></ul><ul><li>May have to define case structure and cases explicitly. </li></ul><ul><li>Similarities has to be defined explicitly. </li></ul><ul><li>Case management and indexing mechanism is explicitly part of CBR shell. </li></ul>
  • 43. Related Research Papers <ul><li>An Integration Framework to develop Modular Hybrid Systems </li></ul><ul><li>A Web-based Hybrid Expert System Framework </li></ul><ul><li>An Enterprise Intelligent System and Solution Development Framework </li></ul><ul><li>An Application Development Framework using Expert System Approach </li></ul><ul><li>On Applications of Web-based Intelligent Systems: Focus: Banking Applications </li></ul><ul><li>Business Intelligence through Hybrid Expert System Approach: Application to Retail Banking </li></ul>
  • 44. Case Studies <ul><ul><li>Retail Bank Automation </li></ul></ul><ul><ul><li>Online Fire and Safety Examination </li></ul></ul><ul><ul><li>Business Intelligence for iVAS (Intelligent Value-Added Services) WAP portal </li></ul></ul><ul><ul><li>Integrating expert system for user interfaces for C applications </li></ul></ul><ul><ul><li>Well Work Reengineering </li></ul></ul>
  • 45. Demos:Business Applications <ul><li>Please click on the following link to see demo*. </li></ul><ul><ul><li>Retail Bank Automation </li></ul></ul><ul><ul><li>Online Fire and Safety Examination </li></ul></ul><ul><ul><li>Business Intelligence for iVAS (Intelligent Value-Added Services) WAP portal </li></ul></ul><ul><ul><li>Integrating expert system for User Interfaces for C applications </li></ul></ul><ul><ul><li>Well Work Reengineering </li></ul></ul><ul><li>* Advisable to use Windows Media Player for better view. </li></ul>
  • 46. Demo Applications <ul><li>Please click on the following link to see demo*. </li></ul><ul><ul><li>Mango Plant </li></ul></ul><ul><ul><li>Laptop Advisor </li></ul></ul><ul><ul><li>Hand Analysis </li></ul></ul><ul><ul><li>Tax Advisor </li></ul></ul><ul><ul><li>Candidate Selection </li></ul></ul><ul><ul><li>Mobile Search </li></ul></ul><ul><ul><li>Online Examination </li></ul></ul><ul><li>* Advisable to use Windows Media Player for better view. </li></ul>
  • 47. <ul><li>Thanks </li></ul>