system specification specify system goals develop scenarios define functionalities describe...

12
System Specification • Specify system goals • Develop scenarios • Define functionalities • Describe interface between the agent system and the environment

Upload: benjamin-cameron

Post on 16-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment

System Specification

• Specify system goals

• Develop scenarios

• Define functionalities

• Describe interface between the agent system and the environment

Page 2: System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment

Goal Specification• Identify Initial Goals

Start with system description, e.g., from:• We wish to develop a student enrollment system

that allows students to enrol in subjects, add and delete subjects in accordance to rules and view their enrolment. Enrolment rules should be editable by authorized staff

• We would like to develop a fully online system for world wide sale of books. This system will offer a broad range of books to customers, and a personalized, friendly user interface. The system must facilitate fast and reliable service at all stages, from locating a desired book, to deliver of the purchase. The store should have competitive prices.

Page 3: System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment

Goal Specification• Goal Refinement

• By asking “how”, e.g., for goal – fully online system:Sub-goals: find books online, pay online and order online– purchase books:Sub-goals: find books, place order, make payment, and arrange

delivery

• Analyze all sub-goals to:– eliminate duplicates,

» pay online and make payment– coalesce similar ones

» deliver internationally, arrange courier delivery, and arrange delivery into arrange delivery

– elaborate goals» Add to Profile Monitor the sub-goals register and update

the customer profile

Page 4: System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment

Goal Refinement (cont.)

– rearrange them» Goals with no sub-goals left will disappear, e.g.,

World-wide Sale of Books» Replace a sub-goal with a more detailed one, e.g.,

have books available in stock with reorder stock, with sub-goals to log outgoing and arriving books

» Some original goals may expand, e.g., Delivery of Books expands to Arranging Delivery and Delivery Problems

• Goal Overview Diagram (e.g., page 140)

Page 5: System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment

Functionalities

• Def: Chunk of behavior, which includes a grouping of related goals, as well as percepts, actions, and data relevant to the behavior– Use functionality descriptors (e.g., page 141)– Draw functionality diagram (e.g., page 42)

• Scenario DevelopmentComplementary to goals, in that they show the

sequence of steps that take place within the system

Page 6: System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment

Scenario Development– Core scenario steps: achieving goal, performing

action, receiving a percept, referring to another scenario, waiting for something to happen

– May lead to new goals/subgoals/percepts/actionsQuery Late Books Scenario leads to new goal Update

delivery problem. We had Log delivery problem, but discovered the need to update the information once the information from the tracking request had been received. Also, two percepts (original user query from the web interface and the response to the tracking initiated) and an action (request for tracking of the delivery) are recognized.

– Fully developed steps for Query Late Books Scenario (see page 45)

Page 7: System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment

Capturing Alternative Scenarios

• With each scenario (for a complete list see page 47) include a description of possible alternatives (e.g., other than normal, and exceptions) - see page 46

• Use a collection of scenarios that all relate to a single underlying process (e.g., order book: normal, and other where book may not be ordered)

• Issues:– When do we stop defining scenarios– What is the right level of detail for describing

scenarios and alternative/exceptional scenarios

Page 8: System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment

Interface Description

• To answer: how is the agent system going to interact with the environment? Specifically,– What input about the environment will be

available to the agent system while it is running (i.e., percepts)

– What will the agent system do to interact with and affect the environment (i.e., actions)

Page 9: System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment

Percepts

• Often require some processing in order to extract the information that is of value to agent

• Important to understand nature and use of precepts in design of agent

• Investigate and experiment with potential sources of percepts. Account for noise

• For list of percepts for E-Bookstore (see page 49)

Page 10: System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment

Actions

• If applicable study the physical effectors resulting from percepts, e.g.,: – A system may be designed to have an action

move, with parameters giving distance and speed. This action will require complex feedback loops within the effector system to enable this action to be carried out.

– If applicable, ensure correctness of interfaces used by identified actions

• For list of actions for E-Bookstore (see page 49-50)

Page 11: System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment

Data

• Produced and/or accessed e.g.,:– Stock management functionality produces

Stock database– Customer order data used in the first step of

the Query Late Books scenario by the Goal step “Determine delivery status”

• Identify any external sources of required data (see page 50-51)

Page 12: System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment

Checking for Completeness and Consistency

• Names should be consistent• All goals must be covered by scenarios, as a

– step or trigger– by mentioning all it’s sub-goals– By mentioning parent goal

• All percepts and actions must covered by scenarios

• This preferably automated check should also draw attention to developer to things that might have been overlooked