A Requirement-Driven Development Methodology - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

A Requirement-Driven Development Methodology

Description:

Title: Developing Agent Systems for E-Business A Requirements-Driven Approach Author: Kolp Last modified by: Manuel Kolp Created Date: 10/10/2000 2:31:58 PM – PowerPoint PPT presentation

Number of Views:90
Avg rating:3.0/5.0
Slides: 22
Provided by: Kolp6
Category:

less

Transcript and Presenter's Notes

Title: A Requirement-Driven Development Methodology


1
A Requirement-Driven Development Methodology
  • Jaelson Castro Manuel Kolp John
    Mylopoulos

Department of Computer Science University of
Toronto Toronto M5S 3G4, Canada
Centro de Informática Universidade Federal
de Pernambuco Recife 50732-970, Brazil
CAiSE01 - June 6 2001, Interlaken, Switzerland
2
Requirements-Driven Development
  • Information Systems should be designed to match
    their Social Operational Environment.
  • Operational environment stakeholders,
    qualities, responsibilities, objectives, and
    resources, roles, needs...
  • Versus information systems a collection of
    (software) modules, data structures and
    interfaces.
  • Impedance Mismatch ? Poor quality, Failure
  • Why not requirements-driven to avoid that
    mismatch?
  • Social and Intentional concepts not only for
    Early Requirements but the Entire Development
    Life Cycle
  • ? ? TROPOS (http//www.cs.toronto.edu/km/tropos)

3
Where Do We Want to Go?
Agent-oriented programming
i
TROPOS
GAIA
KAOS
Z
AUML
UML, Catalysis Co.
!! The GAP !!
Detailed design
Early requirements
Architectural design
Late requirements
Implementation
4
1. Early Requirements Analysis with TROPOS
  • Understanding the problem by studying an
    organizational setting
  • Organizational model with relevant actors and
    respective goals.
  • i Yu95
  • Running Example A Business to Consumer System

Goals are relative, fulfillment is collaborative
!!
5
Rationale Analysis
6
2. Late Requirements (Strategic Relationships)
Organizational Map
  • Functions and qualities for the system within
    its environment

7
A Formal Framework ? Precise Semantics
  • Entity Order
  • Has orderId Number, cust Customer, date
    Date,
  • tems SetOf MediaItem
  • Entity MediaItem
  • Has itemId Number, itemTitle String,
    description Text, editor String
  • Actor Customer
  • Has customerId Number, name Name, address
    Address, tel PhoneNumber,
  • Capable of MakeOrder, Pay, Browse,
  • Goal "orderOrder buyBuyMediaItemsorder
    (order.custself Ù?Fulfil(buy))
  • Actor MediaShop
  • Has name MediaLive, address 735 Yonge
    Street, phone 0461-762-883
  • Capable of Sell, Ship, SendInvoice,
  • Goal msIncreaseMarketShare(Fulfil(ms))
  • GoalDependency BuyMediaItems
  • Mode Fulfil
  • Has order Order
  • Defined ItemsReceivedOK(order)
  • Depender Customer
  • Dependee MediaShop
  • Necessary Fulfil( PlaceOrder(order))
  • SoftGoalDependency IncreaseMarketShare
  • Mode Maintain
  • Depender MediaShop
  • Dependee Customer
  • Necessary "custCustomer placePlaceOrderorder
    (order.custcust ) Ù ?Fulfil(place))
  • Action MakeOrder
  • Performed By Customer
  • Refines PlaceOrder
  • Input cust Customer, date Date, items
    SetOf MediaItem
  • Output order Order
  • Post order.cust cust Ù order.date date Ù
    order.items ? items

8
Late Requirements - System Rationale Model
Rationale Map
Medi_at_
9
Goal Analysis


-

-

-
-

Collect orders

Select Item
By person
By system
Manually
Automatically
By phone
By Fax
With Shopping Cart
Have updated invoices
10
Leaving Goals Dependencies is a Novelty
  • Goals and Softgoals generally operationalized/metr
    icized during Late Requirements (e.g. KAOS van
    Lamsweerde 93)
  • Ex. Security operationalized by interfaces
    which minimize input/output or access restriction
    to sensitive information.
  • Steps through which goals are to be fulfilled are
    frozen in the requirements
  • Systems fragile and less reusable.
  • Whenever there is a need for flexibility,
    reusability, modularity

11
3. Architectural Design
  • Architecture in terms of interconnected social
    components.
  • 3 levels
  • 1 Macro level Organizational Styles
    (Organization Theory)
  • Vertical Integration, Pyramid, Joint Venture,
    Structure in 5, Bidding, Hierarchical
    Contracting, Co-optation, Takeover
  • 2 Micro level Patterns (Agent, COOPIS
    Community)
  • Broker, Matchmaker, Contract-Net, Mediator,
    Monitor, Embassy, Wrapper, Master-Slave, ...
  • 3 Atomic Social and intentional concepts i

12
Organizational Styles and Social Patterns
Joint Venture
Matchmaker
13
Software Quality Attributes
  • Predictability, Security, Adaptability,
    Cooperativity, Competitivity, Availability,
    Failability, Modularity, Aggregability,

14
Selecting System Architecture
Chung00
15
A Joint-Venture E-commerce Architecture
E-Business Organizational Map
16
Assigning Agent Roles to Actors
17
4. Detailed Design
  • Architectural Agent components defined in details
    in terms of inputs, outputs, control, and other
    relevant information.

Check Out Plan
18
Agent Interaction Protocol with AUML
  • The Checkout Dialogue

Customer
Shopping Cart
19
From i to Agent Concepts
20
Partial JACK Implementation for checking out
21
Conclusion
  • Software Engineering in 2025 Requirements
    Engineering Software Geriatry ? van
    Lamsweerde ICSE00 Keynote
  • Narrowing the gap between requirements and
    architectures
  • ...we dont want to freeze any more solutions to
    a given requirement in the software designs we
    produce!!
  • IS (ERP, KM, e-business, e-marketplace,
    groupware, CRM, ... ) in terms of the same social
    and intentional modeling concepts
  • i from early requirements to detailed design.
  • formal Tropos language (inspired by KAOS)
  • formal analysis techniques temporal (model
    checking), goal, and social structures, ...
Write a Comment
User Comments (0)
About PowerShow.com