Chapter 6: Design of Expert Systems

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Advertisements

Lecture # 2 : Process Models
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 المحاضرة الثانية.
The software process A software process is a set of activities and associated results which lead to the production of a software product. This may involve.
Software Processes Coherent sets of activities for specifying, designing, implementing and testing software systems.
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
© 2002 Franz J. Kurfess Expert System Design 1 CPE/CSC 481: Knowledge-Based Systems Dr. Franz J. Kurfess Computer Science Department Cal Poly.
Chapter 6: Design of Expert Systems
COMP 4200: Expert Systems Dr. Christel Kemke
Fundamentals of Information Systems, Second Edition
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Chapter 3 Software Processes.
CSI315 Web Applications and Technology Overview of Systems Development (342)
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
CS CS 5150 Software Engineering Lecture 3 Software Processes 2.
1 Expert System Design. 2 ES Development Methods commercial quality systems require a systematic development approach –ad hoc approaches may be suitable.
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
Chapter 7 Software Engineering Introduction to CS 1 st Semester, 2015 Sanghyun Park.
Review of Software Process Models Review Class 1 Software Process Models CEN 4021 Class 2 – 01/12.
Expert System Design 1 Expert Systems Dr. Samy Abu Nasser.
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
11 ADM2372 Management Information Systems (MIS) Chapter 10 – Part I Systems Development Chapter 10 – Part I Systems Development.
Software Design and Development Development Methodoligies Computing Science.
MANAGEMENT INFORMATION SYSTEM
REQUIREMENTS ENGINEERING PROCESSES Chapter 6. Activities in Requirements Engineering processes  Requirements elicitation;  Requirements analysis; 
Software Development Life Cycle Waterfall Model
Software Configuration Management
Software Project Configuration Management
Design of Expert Systems
Software Engineering Management
Chapter 1 The Systems Development Environment
Chapter 11: Software Configuration Management
Object-Oriented Software Engineering Using UML, Patterns, and Java,
Chapter 18 Maintaining Information Systems
Software Life Cycle “What happens in the ‘life’ of software”
Topic for Presentaion-2
The Software Development Cycle
Software Processes (a)
CS 425/625 Software Engineering Software Processes
Chapter 1 The Systems Development Environment
Building Information Systems
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
HCI in the software process
The design process Software engineering and the design process for interactive systems Standards and guidelines as design rules Usability engineering.
The design process Software engineering and the design process for interactive systems Standards and guidelines as design rules Usability engineering.
Methodologies For Systems Analysis.
Methodologies For Systems Analysis.
Software life cycle models
An Overview of Software Processes
Introduction to Software Process Models
Usability Techniques Lecture 13.
Gathering Systems Requirements
HCI in the software process
Chapter 11: Software Configuration Management
CHAPTER 10 METHODOLOGIES FOR CUSTOM SOFTWARE DEVELOPMENT
Baisc Of Software Testing
CS310 Software Engineering Lecturer Dr.Doaa Sami
MANAGING THE DEVELOPMENT AND PURCHASE OF INFORMATION SYSTEMS
HCI in the software process
Human Computer Interaction Lecture 14 HCI in Software Process
Gathering Systems Requirements
Chapter 1 The Systems Development Environment
The Software Development Cycle
Presentation transcript:

Chapter 6: Design of Expert Systems Expert Systems: Principles and Programming, Fourth Edition

Considerations when Building an Expert system We will describe the necessary prerequisites when building an expert system. The system should be a quality product. The development should be cost effective and timely. Designing of expert systems of part of a general field known as Knowledge Management (KM). Expert Systems: Principles and Programming, Fourth Edition

Selecting the Appropriate Problem We need to answer the questions, “Why are we building this expert system?”. Intellectual Property Agreement must be considered Clearly identify the problem Clearly identify the expert Clearly identify the users We need to know the payoff – money, efficiency, etc. Expert Systems: Principles and Programming, Fourth Edition

Selecting the Appropriate Problem What tools will be available to build the expert system? Check the Web for applications in existence Know the language necessary to create a semantic net of relationships on which the system will be based How much will the expert system cost? A function of people, resources, time, etc. How available is the knowledge? Expert Systems: Principles and Programming, Fourth Edition

Figure 6.1 Project Management Tasks Expert Systems: Principles and Programming, Fourth Edition

Figure 6.1 Project Management Tasks Expert Systems: Principles and Programming, Fourth Edition

Figure 6.1 Project Management Tasks Expert Systems: Principles and Programming, Fourth Edition

Figure 6.1 Project Management Tasks Expert Systems: Principles and Programming, Fourth Edition

Stages in the Development How will the system be developed? This will depend on the resources provided Stages: Feasibility Study – see if the project is feasible Rapid Prototype – demonstrate ideas / impress Refined System – verification by knowledge engineers Field Testable – system tested by selected users Expert Systems: Principles and Programming, Fourth Edition

Stages in the Development Commercial quality system – validation / testing Maintenance and evolution – repair bugs, enhance capabilities Expert Systems: Principles and Programming, Fourth Edition

Other Considerations How will the system be delivered? Should be considered in earliest stages of development Integration with existing programs How will the system be maintained and evolve? Performance is dependent on knowledge / expertise Performance must be maintained New knowledge will be acquired Old knowledge will be modified Expert Systems: Principles and Programming, Fourth Edition

Figure 6.2 General Stages in the Development of an Expert System Expert Systems: Principles and Programming, Fourth Edition

Errors in Development Stages Expert’s knowledge may be erroneous, propagating errors throughout the entire development process. Formal procedures may be necessary to certify expert Technique panels can scrutinize expert’s knowledge Focus groups can also be used Expert Systems: Principles and Programming, Fourth Edition

Errors in the Development Stages Knowledge may not be properly communicated to knowledge engineer, or knowledge may be misinterpreted. Knowledge base may be corrupted by entering incorrect form of a rule or fact. Expert Systems: Principles and Programming, Fourth Edition

Errors in the Development Stages Inference engine errors may result from errors in pattern matching, conflict resolution, and execution of actions. Inference chain errors may be caused by erroneous knowledge, semantic errors, inference engine bugs, incorrect specifications of rule priorities, and strange interaction among rules. Limits of ignorance – a problem common to all previous stages Expert Systems: Principles and Programming, Fourth Edition

Software Engineering and Expert Systems Expert systems are products like any other software product and require good standards for development. Expert systems may have serious responsibilities – life and death. High standards are a necessity and can be measured by “mean time between failures”. Expert Systems: Principles and Programming, Fourth Edition

Figure 6.4 Software Engineering Methodology Expert Systems: Principles and Programming, Fourth Edition

Expert System Life Cycle Begins with the initial concept of the software and ends with its retirement from use. Expert systems require more maintenance because they are based on knowledge that is: Heuristic Experiential A number of life cycle models have been developed. Expert Systems: Principles and Programming, Fourth Edition

Waterfall Model Each stage ends with a verification and validation activity to minimize any problems in that stage. Arrows go back and forth only one stage at a time. It is assumed that all information necessary for a stage is known. Expert Systems: Principles and Programming, Fourth Edition

Figure 6.5 Waterfall Model of the Software Life Cycle Expert Systems: Principles and Programming, Fourth Edition

Code-and-Fix Model Some code is written and then fixed when it does not work correctly. Usually the method of choice for new programming students in conventional and expert systems This eventually led to the do-it-twice concept where a prototype then a final system was built. Expert Systems: Principles and Programming, Fourth Edition

Incremental Model This is a refinement of the waterfall and top-down-approach. The idea is to develop software in increments of functional capability. Major increment – assistant  colleague  expert Minor increment – expertise within each level Micro increment – add/refining individual rules Expert Systems: Principles and Programming, Fourth Edition

Spiral Model Each circuit of the spiral adds some functional capability to the system. Expert Systems: Principles and Programming, Fourth Edition

Detailed Life Cycle Model Linear Model Planning Stage The purpose of this stage is to produce a formal work plan for the expert system development – documents to guide and evaluate the development. Expert Systems: Principles and Programming, Fourth Edition

Linear Model Knowledge Definition The objective of this stage is to define the knowledge requirements of the expert system, which consists of two main tasks: Knowledge source identification and selection Knowledge acquisition, analysis, and extraction Expert Systems: Principles and Programming, Fourth Edition

Linear Model Knowledge Design The objective is to produce the detailed design for an expert system and involves: Knowledge definition Detailed design Expert Systems: Principles and Programming, Fourth Edition

Linear Model Code and Checkout This begins the actual code implementation Expert Systems: Principles and Programming, Fourth Edition

Linear Model Knowledge Verification The objective here is to determine the correctness, completeness, and consistency of the system. Formal tests Test Analysis Expert Systems: Principles and Programming, Fourth Edition

Linear Model System Evaluation This stage is for summarizing what has been learned with recommendations for improvements and corrections. Expert Systems: Principles and Programming, Fourth Edition

Figure 6.7 Linear Model of Expert System Development Life Cycle Expert Systems: Principles and Programming, Fourth Edition

Summary In this chapter, we have discussed a software engineering approach to the construction of an expert system. Principles about good interviewing techniques were mentioned. Now that expert systems are widely used, they must be quality products due to the sensitive nature of their applications. Expert Systems: Principles and Programming, Fourth Edition

Summary Factors to be considered in the design of expert systems include problem selection, cost, and payoff. Both managerial and technical aspects must be considered. By consistently following the outlined “life cycle” it should be possible to construct quality software. Expert Systems: Principles and Programming, Fourth Edition