created by dr. priti srinivas sajja software engineering dr. priti srinivas sajja associate...
Post on 15-Jan-2016
226 Views
Preview:
TRANSCRIPT
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
Cre
ate
d B
y D
r. P
riti
Sri
niv
as
Sajja
Introduction and Contact Information Name: Dr Priti Srinivas Sajja Communication:
Email : priti_sajja@yahoo.com 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
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
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.
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
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 …..
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
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
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.
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.
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
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
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)
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
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
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
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
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
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.
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)
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.
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
Documents
Knowledge Discovery
Knowledge Utilization
Knowledge Management
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
Cre
ate
d B
y D
r. P
riti
Sri
niv
as
Sajja
Some results form the System
Cre
ate
d B
y D
r. P
riti
Sri
niv
as
Sajja
Screen Designs of the System
Cre
ate
d B
y D
r. P
riti
Sri
niv
as
Sajja
Some of the results from System
Cre
ate
d B
y D
r. P
riti
Sri
niv
as
Sajja
Some of the results from System
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
Documents
Knowledge Discovery
Knowledge UtilizationKnowledge Management
Cre
ate
d B
y D
r. P
riti
Sri
niv
as
Sajja
Towards reusable component library logic
Learning Object Repository (LOR)
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)
Cre
ate
d B
y D
r. P
riti
Sri
niv
as
Sajja
top related