Presentation on theme: "Dr. Priti Srinivas Sajja"— Presentation transcript:
1 Dr. Priti Srinivas Sajja Lecture for the State level seminar organized by Shri H. J. Doshi Information Technology Institute, JamnagarSoftware EngineeringDr. Priti Srinivas SajjaAssociate ProfessorG H Patel P G Department of Computer Science and TechnologySardar Patel University, Vallabh Vidyanagar , GujaratCreated By Dr. Priti Srinivas Sajja
2 Introduction and Contact InformationName: Dr Priti Srinivas SajjaCommunication:Mobile :URL:Academic qualifications : Ph. D in Computer ScienceThesis title: Knowledge-Based Systems for Socio-Economic DevelopmentSubject area of specialization : Artificial IntelligencePublications : 84 in International/ National Conferences,Journals & BooksAcademic position : Associate ProfessorDepartment of Computer ScienceSardar Patel UniversityVallabh Vidyanagar
3 Agent Oriented Software Engineering Lecture PlanSoftware EngineeringArchitecturesWaterfallSpiralIterative and PrototypeRADModel for KBS developmentAgentsIntroductionTypologiesMulti Agent SystemsFrameworkCommunication between AgentsExamples of System Designs using AgentsE-Learning Agent Based SystemsMulti layer KBSKGridLOR –Layered Agents Approach
4 Software and Software Engineering 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.Software is a bundle of data, data structure, comments and instructions.DataData StructuresInstructionCommentsSoftware Development can be carried out in ad hoc manner or systematic way (bigger project).
5 Example Instruction Data Structure Data Comments Push A Push: Method on Stack SData StructureDataA: Primitive Data Structure (Integer)Stack : Say S -Data StructurePush A//pushes an integer A to stack SValue A//pushes…CommentsComments
6 that represents the highest level of abstraction. SE ArchitecturesA process consisting of all the necessary activities for developing a software systemthat represents the highest level of abstraction.Popular Architectures are:WaterfallSpiralIterative and PrototypeRapid Application Development…..
7 Typical SE Activities Project proposal Portfolio management Requirement gatheringAnticipation (mixed blessings)Investigation (fact finding methods) andSpecification (decision tree, table and structured English)Feasibility StudiesEconomicalTechnicalOperationalLogical Design (DFD/UML )Physical DesignDesign of outputDesign of inputDesign of databases, processes, data flows, control, run time procedure, security, etc.CodingTesting and CertificationTraining, Implementation, EvaluationTypical SE Activities
8 Requirement Acquisition 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.Waterfall ModelRequirement AcquisitionV & VDesignImplementationVerificationMaintenanceRequirementsWhen 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.
9 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 ModelEmphasize 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.
10 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.Incremental Model
11 Non Development Activities Spiral ModelProvides 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.Required TimeStopping Criteria?Non Development ActivitiesComplex
12 Iterative Development Model Rapid Application Development ModelUse and Maintainthe AcceptedSystemIdentify an EndUser's InformationRequirementsDevelopInformation SystemPrototypesRevise the Prototypesto Better Meet EndUser RequirementsPrototypingCycleMaintenance
13 Intelligent System Development Model Development Round 1(resulting in the first in house prototype)Development Round 2Knowledge AcquisitionFeasible Requirements ElicitationTesting, Implementation and TrainingStrategy Selection and Overall Design of KBSOntology Selection and Knowledge RepresentationSystem Development and ImplementationKnowledge EngineerANALYSISDESIGNDETAIL DESIGNIMPLEMENTATIONKnowledge Sources andUsersRequirementsMiddleware Servicesand ToolsOntology, Reusable Component Library and StandardsDevelopment Methodology for Knowledge Based SystemReference taken from:Priti Srinivas Sajja and Rajendra Akerkar: “Knowledge-based systems”, Jones & Bartlett Publishers, Sudbury, MA, USA (2009)
14 Agents Agents act on behalf of users Agents are used where Co-operationAutonomousLearningAgents are used whereExpertise and resources are distributedHigh complexityAgents provideModular approachIncreased reusability
15 Collaborative Agent An Example of Collaborative Agent Pilgrim Hosting System‘Darshan’Donation &‘Prasad’Ticket ReservationSite SeeingAccommodation ReservationPilgrim InformationTemple Mgt. SystemLegacy system managed by temple authorityBus Reser-vationSystemAccommodation booking, billing and administration system managed by temple authorityAccommodation Booking and Administration SystemTicket booking, cancelling and site seeing administration system managed by third partyAn Example of Collaborative Agent
16 Working of a Mobile Agent UserOptional linkApplicationUser’s AgentOther AgentAn Example of Interface AgentInterfaceand Mobile AgentsMobileAgentApplication ProcessLocationOperating EnvironmentNetworkWorking of a Mobile Agent
17 Working of an Information Agent Structure of an Intelligent Agent NetworkWorking of an Information AgentDatabasesUserReceives necessary information in desired formatInformationand Intelligent AgentsControllerExecutable Tasks ListGoal and ObjectivesInterfaceKnowledge-BaseInferenceI/O QueueStructure of an Intelligent Agent
18 Multi Agent System Architecture Repository of data and knowledgeKnowledge-BaseOptional Distributed DatabasesMidle Agent Services and Agent Meeting PlaceControl and Presentation ServicesMaster AgentInterface AgentInformation AgentDomain ServicesDomain Agent 1Domain Agent 2Domain Agent N…Layered Architecture of Generic Multi Agent SystemOptional link
19 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.
20 Reference taken fromSajja Priti Srinivas, “Parichay: An agent for adult literacy”,Prajna, vol.14, pp (2006)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.
21 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.
22 Multi Agent System for Learning UsersExpertsUser Interface AgentAgentsLearning Mgt.Drills and QuizzesExplanationSemantic Search& ChatResource ManagementQuestion/AnswerTutorial PathDocumentationDistributed DatabasesLocal Data-BasesResourcesKnowledge Mgt.Meta knowledgeConceptual systemContent knowledgeLearner’s ontologyMailDocumentsKnowledge DiscoveryKnowledge UtilizationKnowledge Management
23 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 messageAgents name sharing messageContext-specific information describing the specifics of this messageOntology of both the agentsLanguage of both agents
29 Towards reusable component library logic Learning Object Repository (LOR)
30 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)