created by dr. priti srinivas sajja software engineering dr. priti srinivas sajja associate...

31
Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and Technology Sardar Patel University, Vallabh Vidyanagar-388 120, Gujarat Lecture for the Sta te level seminar organized by Shri H. J. Do shi I n formation Technology Institute, Jamnagar

Upload: samira-stott

Post on 15-Jan-2016

229 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Software Engineering

Dr. Priti Srinivas SajjaAssociate Professor

G H Patel P G Department of Computer Science and TechnologySardar Patel University, Vallabh Vidyanagar-388 120, Gujarat

Lecture for the State level seminar organized

by Shri H. J. Doshi Information Technology

Institute, Jamnagar

Page 2: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Introduction and Contact Information Name: Dr Priti Srinivas Sajja Communication:

Email : [email protected] Mobile : 9824926020 URL: http://pritisajja.info

Academic qualifications : Ph. D in Computer Science Thesis title: Knowledge-Based Systems for Socio- Economic Development Subject area of specialization : Artificial Intelligence Publications : 84 in International/ National Conferences,

Journals & Books Academic position : Associate Professor Department of Computer Science Sardar Patel University Vallabh Vidyanagar 388120

Page 3: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Agent Oriented Software Engineering

Software Engineering Architectures

Waterfall Spiral Iterative and Prototype RAD Model for KBS development

Agents Introduction Typologies

Multi Agent Systems Framework Communication between Agents

Examples of System Designs using Agents E-Learning Agent Based Systems Multi layer KBS KGrid LOR –Layered Agents Approach

Lecture Plan

Page 4: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Software and Software Engineering

DataData

Data Structures

Data Structures

InstructionInstruction

CommentsComments

Software Development can be carried out in ad hoc manner or systematic way (bigger project).

Software Development can be carried out in ad hoc manner or systematic way (bigger project).

Software is a bundle of

data, data structure,

comm

ents and

instructions.

Software is a bundle of

data, data structure,

comm

ents and

instructions.

Software engineering is a modeling activity.

Software engineering activity is a problem solving activity.

Software engineering is a knowledge acquisition activity.

Software engineering is a rationale driven activity.

Page 5: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Example

Push A//pushes an integer A to stack S

Push A//pushes an integer A to stack S

A: Primitive Data Structure (Integer)

Stack : Say S -Data Structure

A: Primitive Data Structure (Integer)

Stack : Say S -Data Structure

//pushes…Comments//pushes…Comments

Push: Method on Stack S

Push: Method on Stack S

Value A Value A

Instruction

Data Structure

Comments

Data

Page 6: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

SE Architectures

A process consisting of all the necessary activities for developing a software system

that represents the highest level of abstraction.

Popular Architectures are: Waterfall Spiral Iterative and Prototype Rapid Application Development …..

Page 7: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Project proposal Portfolio management Requirement gathering

Anticipation (mixed blessings) Investigation (fact finding methods) and Specification (decision tree, table and structured English)

Feasibility Studies Economical Technical Operational

Logical Design (DFD/UML ) Physical Design

Design of output Design of input Design of databases, processes, data flows, control, run

time procedure, security, etc. Coding Testing and Certification Training, Implementation, Evaluation

Typical SE Activities

Typical SE Activities

Page 8: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

All requirements must be known. Deliverables created for each phase

are considered frozen – less flexibility. Can give a false impression of

progress. Not iterative. Integration at the end. Little opportunity for customer to

preview the system.

All requirements must be known. Deliverables created for each phase

are considered frozen – less flexibility. Can give a false impression of

progress. Not iterative. Integration at the end. Little opportunity for customer to

preview the system.

Wate

rfall

Model

When to use? Requirements are very well known. Product definition is stable. Technology is understood. New version of an existing product. Porting an existing product to a new

platform.

Requirement Acquisition

Requirement Acquisition

V & V

V & V

DesignDesignV & V

V & V

Implementation

Implementation

V & V

V & V

VerificationVerificationV & V

V & V

MaintenanceMaintenance

Requirements

Page 9: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

A variant of the waterfall that emphasizes the verification and validation of the product.

Testing of the product is planned in parallel with a corresponding phase of development.

A variant of the waterfall that emphasizes the verification and validation of the product.

Testing of the product is planned in parallel with a corresponding phase of development.

V shaped

Model

Emphasize planning for verification and validation of the product in early stages of product development.

Each deliverable must be

testable. Project management can track

progress. Easy to use. Does not easily handle dynamic

changes in requirements. Does not contain risk analysis

activities.

Emphasize planning for verification and validation of the product in early stages of product development.

Each deliverable must be

testable. Project management can track

progress. Easy to use. Does not easily handle dynamic

changes in requirements. Does not contain risk analysis

activities.

Excellent choice for systems requiring high reliability – hospital patient control applications.

All requirements are known. Solution and technology are known.

Excellent choice for systems requiring high reliability – hospital patient control applications.

All requirements are known. Solution and technology are known.

Page 10: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Incremental Model

Construct a partial implementation of a total system.

Then slowly add increased functionality.

The incremental model prioritizes requirements of the system and then implements them in groups.

Each subsequent release of the system adds function to the previous release, until all designed functionality has been implemented.

Construct a partial implementation of a total system.

Then slowly add increased functionality.

The incremental model prioritizes requirements of the system and then implements them in groups.

Each subsequent release of the system adds function to the previous release, until all designed functionality has been implemented.

Page 11: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Spiral Model

Provides early indication of insurmountable risks, without much cost.

Users see the system early because of rapid prototyping tools.

Critical high-risk functions are developed first.

Users can be closely tied to all lifecycle steps.

Early and frequent feedback from users.

Provides early indication of insurmountable risks, without much cost.

Users see the system early because of rapid prototyping tools.

Critical high-risk functions are developed first.

Users can be closely tied to all lifecycle steps.

Early and frequent feedback from users.

Require

d Tim

e

Require

d Tim

e

Comple

x

Comple

x

Stoppin

g

Criter

ia?

Stoppin

g

Criter

ia?

Non

Devel

opmen

t

Activ

ities

Non

Devel

opmen

t

Activ

ities

Page 12: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Itera

tive

Devel

opmen

t

Model

Use and Maintainthe Accepted

System

Use and Maintainthe Accepted

System

Identify an EndUser's Information

Requirements

Identify an EndUser's Information

Requirements

DevelopInformation System

Prototypes

DevelopInformation System

Prototypes

Revise the Prototypesto Better Meet EndUser Requirements

Revise the Prototypesto Better Meet EndUser Requirements

PrototypingCycle

MaintenanceCycle

Rapid

Applic

atio

n

Devel

opmen

t Model

Page 13: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Intelligent System Development Model

Development Round 1(resulting in the first in house prototype)

Development Round 2

Knowledge Acquisition

Feasible Requirements Elicitation

Testing, Implementation and Training

Strategy Selection and Overall Design of KBS

Ontology Selection and Knowledge Representation

System Development and Implementation

Knowledge Engineer

ANALYSIS DESIGN

DETAIL DESIGNIMPLEMENTATION

Knowledge Sources andUsers Requirements

Middleware Services and Tools

Ontology, Reusable Component Library and

Standards

Development Methodology for Knowledge Based System

Reference taken from:

Priti Srinivas Sajja and

Rajendra Akerkar:

“Knowledge-based systems”,

Jones & Bartlett Publishers,

Sudbury, MA, USA (2009)

Page 14: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Agents

Agents act on behalf of users Co-operation Autonomous Learning

Agents are used where Expertise and resources are

distributed High complexity

Agents provide Modular approach Increased reusability

Page 15: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Collaborative Agent

Pilgrim Hosting System

‘Darshan’

Donation &

‘Prasad’

Ticket Reservation

Site Seeing

Accommodation Reservation

Pilgrim Information

Temple Mgt.

System

Temple Mgt.

System

Legacy system managed by temple

authority

Bus Reser-vation

System

Bus Reser-vation

System

Accommodation booking, billing and administration system managed by temple authority

Accommodation Booking and

Administration System

Accommodation Booking and

Administration System

Ticket booking, cancelling and site seeing administration system managed by third party

An Example of Collaborative Agent

Page 16: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

User

Optional link

Application

User’s Agent

Other Agent

An Example of Interface Agent

User

Mobile

Agent

Application Process

Location

Location

Operating Environment

Location

Network

Working of a Mobile Agent

Interface and Mobile Agents

Page 17: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Information Agent

Network

Working of an Information Agent

Databases User

Receives necessary

information in desired format

ControllerController

Executable Tasks List

Executable Tasks List Goal and

Objectives

Goal and Objectives

InterfaceInterface

Knowledge-Base

Inference

I/O QueueI/O Queue

Structure of an Intelligent Agent

Inform

ation

and Inte

lligent

Agents

Page 18: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Repository of data and knowledge

Knowledge-Base

Optional Distributed Databases

Midle Agent Services and Agent Meeting Place

Control and Presentation Services

Master Agent Interface Agent Information Agent

Domain Services

Domain Agent 1 Domain Agent 2 Domain Agent N…

Layered Architecture of Generic Multi Agent System

Optional link

Multi Agent System Architecture

Page 19: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Single Agent Example - ‘Parichay’

• The system gives training to adult users in multi media to speak and write Gujarati alphabets, words, sentences and numbers.

• The package of ‘parichay’ is accommodated in CD with auto-run facility.

• The touch screen facility helps even an illiterate person to identify icons and choose appropriate actions.

Page 20: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

• The frequent continuous development of a letter helps users to see the exact motion to write the letter.

• At the end of the full letter generation, the picture representing use of the letter and pronunciation is represented to the user.

Reference taken fromSajja Priti Srinivas, “Parichay: An agent for adult literacy”, Prajna, vol.14, pp.17-24 (2006)

Reference taken fromSajja Priti Srinivas, “Parichay: An agent for adult literacy”, Prajna, vol.14, pp.17-24 (2006)

Page 21: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

• With a notepad facility given, user may practice any letter.

• That letter written by the user is matched with the correct letter by measuring shapes and angles in terms of percentages.

• If the degree of matching is low then user may ask to redraw/rewrite the letter.

Page 22: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Multi Agent System for Learning

Users

Experts

Us

er In

terfa

ce

Ag

en

t

Agents

Learning Mgt.

Drills and Quizzes

Explanation

Semantic Search

E-mail & Chat

Resource Management

Question/Answer

Tutorial Path

Documentation

Distrib

uted

D

atabases

Local Data-Bases

Resources

Knowledge Mgt.

Meta knowledge

Conceptual system

Content knowledge

Learner’s ontology

Mail

Documents

Knowledge Discovery

Knowledge Utilization

Knowledge Management

Page 23: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Communication between Agents

Agents developed here are communicating with a tool named KQML.

Knowledge based Query Management Language.

(register

    : sender  agent_Learning_Mgt

    : receiver agent_Tutorial-Path

    : reply-with   message

    : language     common_language

    : ontology     common_ontology

    : content      “content.data”

)

Action intended for the message

Agents name sharing message

Action intended for the message

Context-specific information describing the specifics of this message

Ontology of both the agents

Language of both agents

Page 24: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Some results form the System

Page 25: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Screen Designs of the System

Page 26: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Some of the results from System

Page 27: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Some of the results from System

Page 28: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

New architecture on Grid Environment –

Future extension

Users

Experts

User In

terface Ag

ent

Agents

Learning Mgt.

Drills and Quizzes

Explanation

Semantic Search

E-mail & Chat

Resource Management

Question/Answer

Tutorial Path

Documentation

Inte

rne

t

Grid

Mid

dlew

are Services

Resource Management (Grid

Resource Allocation

Protocol-GRAM)

and

Grid FTP Replica-LocationServices

Information Discovery Services

Security Services

Distributed databases

Middleware Services and

Protocols

Local Data-Bases

Resources

Knowledge Mgt.

Meta knowledge

Conceptual system

Content knowledge

Learner’s ontology

Mail

Documents

Knowledge Discovery

Knowledge UtilizationKnowledge Management

Page 29: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Towards reusable component library logic

Learning Object Repository (LOR)

Page 30: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja

Multi-tier KBS Accessing LOR through Fuzzy XML

Reference taken from:Sajja Priti Srinivas, “Multi-tier knowledge-based system accessing learning object repository using fuzzy XML”, in Harrison Yang & Steve Yuen (Eds.), Handbook of Research on Practices and Outcomes in E-Learning: Issues and Trends, Chapter 28, IGI Global Book Publishing, Hershey, PA, USA (2009)

Page 31: Created By Dr. Priti Srinivas Sajja Software Engineering Dr. Priti Srinivas Sajja Associate Professor G H Patel P G Department of Computer Science and

Cre

ate

d B

y D

r. P

riti

Sri

niv

as

Sajja