11.10.2013 Views

Slides Part 2 (OOA, pages 1-128, pdf, 4 slides per page)

Slides Part 2 (OOA, pages 1-128, pdf, 4 slides per page)

Slides Part 2 (OOA, pages 1-128, pdf, 4 slides per page)

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

SCHUFA QUERY<br />

REMARKS<br />

sd SchufaQuery<br />

alt<br />

[creditWorthinessOK]<br />

[else]<br />

: Bank<br />

schufa_query<br />

credit_worthiness_ok<br />

credit_worthiness_not_ok<br />

89<br />

Schufa<br />

• Associations are sets of tuples (in case of binary associations: sets of<br />

pairs).<br />

• When a new object is created, all associations of the corresponding class<br />

must be considered, and new tuples involving the new object have to be<br />

added if appropriate.<br />

• In the example, the new account is added to the Keeps association which<br />

holds between the bank and its accounts.<br />

• The scenario OpenAccountS1 guarantees that the precondition of the<br />

system o<strong>per</strong>ation credit worthiness ok is fulfilled.<br />

• It is not stated how the new account number is determined.<br />

• We abstract from details of the customer data.<br />

91<br />

O<strong>per</strong>ation = credit worthiness ok<br />

Description = Schufa confirms credit-worthiness of the new customer. The account<br />

can be opened.<br />

Reads = supplied cd : Customer data<br />

bank : Bank<br />

Changes = Keeps, new account : Account<br />

Sends = BankClerk: {account opened(accountnr)},<br />

Pre = exists no account : Account with account.customer data = cd<br />

Post = Keeps ′ = Keeps ∪{(bank, account)}<br />

UML NOTATION<br />

account.customer data ′ = cd, account.balance ′ =0<br />

account.number ′ = accountnr, where accountnr is a new account<br />

number<br />

is sent{account opened(accountnr)}<br />

90<br />

Sequence of tagged values, i. e., sequence of pairs consisting of keyword and<br />

value.<br />

sd o<strong>per</strong>ation<br />

Actor<br />

o<strong>per</strong>ation<br />

{Description = ...,<br />

Reads = ...,<br />

Changes = ...,<br />

Sends = ...,<br />

Pre = ...,<br />

Post = ... }<br />

92<br />

: System

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!