Matthew J Mattia CSC 8570.  Cumbersome Code  Consistent/Predictable design (GUEPs #5, CD’s #10)  Display “proper” amount of information  Including.

Slides:



Advertisements
Similar presentations
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Advertisements

Jacob Adams Topic Paper Department of Computer Science Southern Illinois University Edwardsville.
Software Reuse SEII-Lecture 28
Alternate Software Development Methodologies
Feature requests for Case Manager By Spar Nord Bank A/S IBM Insight 2014 Spar Nord Bank A/S1.
Programming Language Paradigms: summary. Object-oriented programming Objects are the fundamental building blocks of a program. Interaction is structured.
CS 290C: Formal Models for Web Software Lecture 10: Language Based Modeling and Analysis of Navigation Errors Instructor: Tevfik Bultan.
Visual Web Information Extraction With Lixto Robert Baumgartner Sergio Flesca Georg Gottlob.
Development of a Web Based B&B Reservation System Elizabeth Gates 22July04.
Requirements Analysis 5. 1 CASE b505.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis CASE Computer.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen-Bolzano Lesson 1 – Component-Based.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
Object-oriented design CS 345 September 20,2002. Unavoidable Complexity Many software systems are very complex: –Many developers –Ongoing lifespan –Large.
1 An Introduction to Visual Basic Objectives Explain the history of programming languages Define the terminology used in object-oriented programming.
Copyrighted material John Tullis 8/13/2015 page 1 Blaze Software John Tullis DePaul Instructor
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
Introduction to Databases Transparencies 1. ©Pearson Education 2009 Objectives Common uses of database systems. Meaning of the term database. Meaning.
Overview of JSP Technology. The need of JSP With servlets, it is easy to – Read form data – Read HTTP request headers – Set HTTP status codes and response.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
Dependency Injection and Model-View-Controller. Overview Inversion of Control Model-View-Controller.
Microsoft Visual Basic 2012 CHAPTER ONE Introduction to Visual Basic 2012 Programming.
Microsoft Visual Basic 2005 CHAPTER 1 Introduction to Visual Basic 2005 Programming.
CS102 Introduction to Computer Programming
Hands-on Introduction to Visual Basic.NET Programming Right from the Start with Visual Basic.NET 1/e 6.
DHTML. What is DHTML?  DHTML is the combination of several built-in browser features in fourth generation browsers that enable a web page to be more.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
MVC pattern and implementation in java
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
Aurora: A Conceptual Model for Web-content Adaptation to Support the Universal Accessibility of Web-based Services Anita W. Huang, Neel Sundaresan Presented.
XForms: A case study Rajiv Shivane & Pavitar Singh.
Microsoft Visual Basic 2005: Reloaded Second Edition
Avalanche Internet Data Management System. Presentation plan 1. The problem to be solved 2. Description of the software needed 3. The solution 4. Avalanche.
“Enhancing Reuse with Information Hiding” ITT Proceedings of the Workshop on Reusability in Programming, 1983 Reprinted in Software Reusability, Volume.
CHAPTER ONE Problem Solving and the Object- Oriented Paradigm.
Database System Concepts and Architecture
DAT602 Database Application Development Lecture 12 C/S Model Database Application.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 7: Focusing on Users and Their Tasks.
JSF Introduction Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Computer Concepts 2014 Chapter 12 Computer Programming.
CHAPTER TEN AUTHORING.
1 Introduction to Software Engineering Lecture 1.
Chapter 12 Computer Programming. Chapter Contents Chapter 12: Computer Programming 2  Section A: Programming Basics  Section B: Procedural Programming.
GRASP: Designing Objects with Responsibilities
Frameworks CompSci 230 S Software Construction.
ES component and structure Dr. Ahmed Elfaig The production system or rule-based system has three main component and subcomponents shown in Figure 1. 1.Knowledge.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
3 Copyright © 2004, Oracle. All rights reserved. Working in the Forms Developer Environment.
CS 3050 Object-Oriented Analysis and Design. Objectives What is “Object-Oriented?” Object-Oriented Approach Vs. Structured Approach How Has the Object-Oriented.
Intelligent Agent Framework1 From Chapter 7 of Constructing Intelligent Agents with Java.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
UI's for inputting and presenting the metadata of hypermedia documents Kai Kuikkaniemi HUT T
Formal Specification: a Roadmap Axel van Lamsweerde published on ICSE (International Conference on Software Engineering) Jing Ai 10/28/2003.
Chapter 3 JSP Overview. The Problem with Servlets processing the request and generating the response are both handled by a single servlet class Java programming.
CS451 Software Maintenance Yugi Lee STB #555 (816) Note: This lecture was designed based on Stephen Schach’s.
Oman College of Management and Technology Course – MM Topic 7 Production and Distribution of Multimedia Titles CS/MIS Department.
SEESCOASEESCOA SEESCOA Meeting Activities of LUC 9 May 2003.
Chapter – 8 Software Tools.
Presentation on Database management Submitted To: Prof: Rutvi Sarang Submitted By: Dharmishtha A. Baria Roll:No:1(sem-3)
Architectural Mismatch: Why reuse is so hard? Garlan, Allen, Ockerbloom; 1994.
Microsoft Visual Basic 2015 CHAPTER ONE Introduction to Visual Basic 2015 Programming.
Chapter 1 Assuming the Role of the Systems Analyst.
Presented by Alexey Vedishchev Developing Web-applications with Grails framework American University of Nigeria, 2016 Intro To MVC Architecture.
Intro to Expert Systems Paula Matuszek CSC 8750, Fall, 2004
Presentation transcript:

Matthew J Mattia CSC 8570

 Cumbersome Code  Consistent/Predictable design (GUEPs #5, CD’s #10)  Display “proper” amount of information  Including IUI Aspects  Trace user behavior to determine expertise  Maintaining user knowledge base  Handling dynamic GUI changes  Use CLIPS AI system rules

 Knowledge Representation -- Tool for handling 3 programming paradigms: rule- based, object-oriented and procedural  Rule-based programming allows knowledge to be represented as heuristics, or "rules of thumb," which specify a set of actions to be performed for a given situation

Should expose a lot of intelligence & dynamic behavior because :  Complex (financial, health, industrial) interfaces need dynamic control to mitigate testing overhead  Users do not read documentation – interface should be intuitive  Users have different skill sets

 Presentation layer must be separated from remaining application Why?  Run-time adaptation depends on the ability to collect information about user activities  Deduce user competency, preferences, goals  Automatically reshape GUI to better communicate w/user  Solve common user issues (e.g. - extend acceptance area of button)

 Tasks – performed in two-layered sets of rules, represented as facts, which are loaded into clips engine  Semi-Automatic Approach for GUI generation; facts invoke rules, which modify the GUI  Adaptation of UI Based on Collected Info About User Activities

 Maximum Flexibility  Maximum Simplicity  Flawless Integration (into business layer code) of rule-based mechanism

 Rule–Based Language (clausal logic)  Declarative Language  Binds logic with rules  Form: H  B where H is rule head and B is rule body  GUI exists in specially designed table set in DB  Converts descriptions into hierarchical structure of objects, which define graphical element appearance  Objects consist of Forms, Groups, Controls  Rules modify GUI definition facts, leading to new GUI

 Web Server Application in Java  Financial Application  Hierarchical Object Structure defines GUI layout

Modified facts converted back to the internal Java class objects and are delivered to the renderer for building the GUI 3 INPUTS:  Interface Specification  Device Model  User Model (user traces)  User determined during login process

 Place frequently desired widgets in convenient locations for users to access them  Rarely used features should be removed from the common workspace  The term trail refers to “coherent” sequences of elements manipulated by the user (set)  A trail ends when the user switches to another frame or selects another instrument  When application accumulates enough trace info, it can be used in adaption rules

 RBUI requires greater up front time investment for long term dividends and flexibility.  Rule-based approach is an easily extendable framework – just add new rules.  Component reuse w/single add – changes reflect in all hierarchies.  Testing is easier and less time consuming  IUI features – handles user responses  Must work with empty Knowledge Base

 Automatically Generating UI (Gajos, Weld) - Interface design assumptions about user’s environment. “In contrast to these approaches, we argue that interfaces should instead be personalized to better suit the particular contexts of individual users. We argue that automatic personalized interface generation is a feasible and scalable solution to this challenge. We present our Supple system, which can automatically generate interfaces adapted to a person's devices, tasks, preferences, and abilities.”

 Poorly written sections (bad grammar)  Bounces from topic to topic  CLIPS not defined CLIPS Definition CLIPS Definition  Did not define “standard-approach version of application” – too vague.  Advantages of proposed technique are “classified”