Escolar Documentos
Profissional Documentos
Cultura Documentos
INFSCI 2511 INFORMATION SYSTEM ANALYSIS & DESIGN AND EVALUATION SPRING 2005
Group Members: Mr. Derek Pawlikowsky Miss Jaruwan Laptrakool Mr. Kittipong Techapanichgul Mr. Warat Chesdavanijkul
CLASS DIAGRAM..........................................................................................................................................................5 USE CASE 1: OPEN ACCOUNT...................................................................................................................................6 FULL USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS ...........................................................................................6 SYSTEM SEQUENCE DIAGRAM..............................................................................................................................................7 OPERATION CONTRACT.......................................................................................................................................................8 SEQUENCE DIAGRAM FOR BASE SCENARIO.............................................................................................................................9 USE CASE 2: CLOSE ACCOUNT...............................................................................................................................10 FULL USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS.........................................................................................10 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................11 OPERATION CONTRACT.....................................................................................................................................................12 SEQUENCE DIAGRAM FOR BASE SCENARIO...........................................................................................................................13 USE CASE 3: DEPOSIT FUND....................................................................................................................................14 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................14 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................15 OPERATION CONTRACT.....................................................................................................................................................16 SEQUENCE DIAGRAM FOR BASE SCENARIO ..........................................................................................................................17 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................18 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................19 OPERATION CONTRACT.....................................................................................................................................................20 SEQUENCE DIAGRAM FOR BASE SCENARIO ..........................................................................................................................21 USE CASE 5: TRANSFER FUND................................................................................................................................22 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................22 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................23 OPERATION CONTRACT.....................................................................................................................................................24 USE CASE 6: VIEW ACCOUNT HISTORY..............................................................................................................26 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................26 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................27 OPERATION CONTRACT.....................................................................................................................................................28 SEQUENCE DIAGRAM FOR BASE SCENARIO...........................................................................................................................29 USE CASE 7: APPLY FOR LOAN..............................................................................................................................30 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................30 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................31 OPERATION CONTRACT.....................................................................................................................................................32 SEQUENCE DIAGRAM FOR BASE SCENARIO ..........................................................................................................................33 USE CASE 8: EVALUATE LOAN...............................................................................................................................34 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................34 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................35 OPERATION CONTRACT.....................................................................................................................................................36 SEQUENCE DIAGRAM FOR BASE SCENARIO...........................................................................................................................37 USE CASE 9: FINALIZE LOAN..................................................................................................................................38 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................38 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................39 OPERATION CONTRACT.....................................................................................................................................................40 SEQUENCE DIAGRAM FOR BASE SCENARIO...........................................................................................................................41 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................42 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................43
3
OPERATION CONTRACT.....................................................................................................................................................44 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................46 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................47 OPERATION CONTRACT.....................................................................................................................................................48 USE CASE 12: MANAGE CUSTOMER (CREATE, MODIFY, DEACTIVATE A CUSTOMER) CUSTOMER, TELLER AND SERVICE REP............................................................................................................50 CREATE NEW CUSTOMER.......................................................................................................................................50 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................50 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................51 OPERATION CONTRACT.....................................................................................................................................................52 SEQUENCE DIAGRAM FOR BASE SCENARIO...........................................................................................................................53 MODIFY CUSTOMER INFORMATION...................................................................................................................54 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................54 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................55 OPERATION CONTRACT.....................................................................................................................................................56 SEQUENCE DIAGRAM FOR BASE SCENARIO...........................................................................................................................57 DEACTIVATE CUSTOMER........................................................................................................................................57 USE CASE 13: MANAGE ACCOUNT INFORMATION MANAGE ACCOUNT INFORMATION (CREATE, MODIFY DEACTIVATE ACCOUNT INFO) CUSTOMER, TELLER, SERVICE REP..................................58 CREATE NEW ACCOUNT..........................................................................................................................................58 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................58 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................59 OPERATION CONTRACT.....................................................................................................................................................60 SEQUENCE DIAGRAM FOR BASE SCENARIO...........................................................................................................................61 MODIFY ACCOUNT INFORMATION......................................................................................................................62 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................62 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................63 OPERATION CONTRACT.....................................................................................................................................................64 SEQUENCE DIAGRAM FOR BASE SCENARIO...........................................................................................................................65 DEACTIVATE ACCOUNT..........................................................................................................................................65 USE CASE 14: VIEW ACCOUNT PORTFOLIO......................................................................................................66 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................66 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................67 OPERATION CONTRACT.....................................................................................................................................................68 SEQUENCE DIAGRAM FOR BASE SCENARIO..........................................................................................................................69 USE CASE 15: PROCESS ACCOUNT STATEMENT .............................................................................................70 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................70 SYSTEM SEQUENCE DIAGRAM............................................................................................................................................71 OPERATION CONTRACT.....................................................................................................................................................72 SEQUENCE DIAGRAM FOR BASE SCENARIO...........................................................................................................................73 USE CASE 16: MANAGE ACCOUNT PRODUCT (MANAGE NEW OR EXISTING BANK PRODUCTS, E.G., SENIOR CITIZENS CHECKING ACCOUNT. SAMPLE CHARACTERISTICS OF A PRODUCT INCLUDE A NAME, MONTHLY FEE, PER CHECK CHARGE, PERIODIC INTEREST RATE, ETC)........74 CREATE NEW ACCOUNT PRODUCT.....................................................................................................................74 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................74 SYSTEM SEQUENCE DIAGRAM ...........................................................................................................................................75
4
OPERATION CONTRACT.....................................................................................................................................................76 SEQUENCE DIAGRAM FOR BASE SCENARIO...........................................................................................................................77 MODIFY ACCOUNT PRODUCT................................................................................................................................78 USE CASE DESCRIPTION WITH MAJOR ALTERNATIVE FLOWS..................................................................................................78 SYSTEM SEQUENCE DIAGRAM ...........................................................................................................................................79 OPERATION CONTRACT.....................................................................................................................................................80 SEQUENCE DIAGRAM FOR BASE SCENARIO...........................................................................................................................81 DEACTIVATE ACCOUNT PRODUCT......................................................................................................................81
Class Diagram
OpenAccountOption()
None
Lead Responsibility by Kittipong Techapanichgul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Warat Chesdavanijkul
Lead Responsibility by Kittipong Techapanichgul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Warat Chesdavanijkul
Operation Contract
Contract C01: OpenAccount
Operation Name
OpenAccountOption()
Instances Created
-
Associations Formed
-
Attributes Modified
-
Lead Responsibility by Kittipong Techapanichgul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Warat Chesdavanijkul
Lead Responsibility by Kittipong Techapanichgul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Warat Chesdavanijkul
10
CloseAccountOption() IsValidCustomer(customerID)
Lead Responsibility by Kittipong Techapanichgul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Warat Chesdavanijkul
11
Lead Responsibility by Kittipong Techapanichgul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Warat Chesdavanijkul
12
Operation Contract
Contract C02: CloseAccount
Operation Name
CloseAccountOption() IsValidCustomerID(customerID)
Instances Created
-
Associations Formed
-
Attributes Modified
-
Lead Responsibility by Kittipong Techapanichgul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Warat Chesdavanijkul
13
14
Invalid means the account is not found in the system or it is not in active status
15
Deposit Fund
System
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
16
Operation Contract
Contract C03: Deposit Fund
Operation Name
depositOption() isValidAccountNumber(AccountNumber) deposit(amount)
Instances Created
- Transaction
Associations Formed
Associates Transaction with Account
Attributes Modified
- Transaction.Amount = amount - Acct.Balance = Acct.Balance + amount
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
17
Accounts: ArrayList<Account>
:Account
deposit(amount)
addTransaction(t)
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
18
19
Withdraw Fund
System
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
20
Operation Contract
Contract C04: Withdraw Fund
Operation Name
withdrawOption() isValidAccountNumber(AccountNumber) withdraw(amount)
Instances Created
- Transaction
Associations Formed
Associates Transaction with Account
Attributes Modified
- Transaction.Amount = amount - Acct.Balance = Acct.Balance amount
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
21
:Account
isValidAccountNumber(AccountNumber) isValidAccountNumber(AccountNumber)
withdraw(amount)
IsAvailableBalance ()
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
22
23
System
transferOption() isValidAccountNumber(srcAccountNumber)
isValidAccountNumber(destAccountNumber)
transfer(amount)
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
24
Operation Contract
Contract C05: Transfer Fund
Operation Name
transferOption() isValidAccountNumber(srcAccount Number) isValidAccountNumber(destAccount Number) transfer(amount)
Instances Created
- Transaction1 - Transaction2
Associations Formed
- Associates Transaction1 with Account - Associates Transaction2 with Account
Attributes Modified
- Transaction1.Amount = amount - sourceAcct.Balance = sourceAcct.Balance amount - Transaction2.Amount = amount - destAcctBalance = destAcct.Balance + amount
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
25
srcAccount: Account
destAccount: Account
isValidAccountNumber(srcAccountNumber) isValidAccountNumber(srcAccountNumber) srcAccount = getAccount(srcAccountNumber) isValidAccountNumber(destAccountNumber) isValidAccountNumber(destAccountNumber) destAccount = getAccount(destAccountNumber) transfer(amount) withdraw(amount)
IsAvailableBalance ()
updateBalance()
deposit(amount)
updateBalance()
addTransaction(t2)
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
26
27
Lead Responsibility by Kittipong Techapanichgul Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Jaruwan Laptrakool
28
Operation Contract
Contract C06: ViewAccountHistory
Operation Name
ViewAccountHistoryOption() isValidAccountNumber(AccountNumber) isValidTimePeriod(StartDate, EndDate)
Instances Created
-
Associations Formed
-
Attributes Modified
-
Lead Responsibility by Kittipong Techapanichgul Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Jaruwan Laptrakool
29
Lead Responsibility by Kittipong Techapanichgul Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Jaruwan Laptrakool
30
31
System
User
ApplyNewLoanOption()
IsValidCustomerID(CustomerID)
Lead Responsibility by Derek Pawlikowsky Substantive assistance by Kittipong Techapanichgul,, Jaruwan Laptrakool and Warat Chesdavanijkul
32
Operation Contract
Contract C07: ApplyForLoan
Operation Name
ApplyNewLoanOption() IsValidCustomerID(customerID) IsValidLoanDescriptionID(LoanTypeID) CreateLoanApplication(Duration, Amount, employment Income, InterestRate)
Instances Created
Associations Formed
Attributes Modified
- LoanApplication
- LoanApplication. Duration = Duration - LoanApplication. Amount = amount LoanApplication.Empl oymentIncome = EmploymentIncome LoanApplication.Intere stRate = InterestRate LoanApplication.Appr oved = false
Lead Responsibility by Derek Pawlikowsky Substantive assistance by Kittipong Techapanichgul,, Jaruwan Laptrakool and Warat Chesdavanijkul
33
:Bank
User
ApplyNewLoanOption() IsValidCustomerID(CustomerID)
currentCust :Customer
IsValidCustomerID(CustomerID) Cust = GetCustomer(CustomerID) IsValidLoanDescriptionID(LoanTypeID) IsValidLoanDescriptionID(LoanTypeID) LoanType = GetLoanDescription(LoanTypeID) CreateLoanApplication (Duration, Amount, EmploymentIncome, InterestRate) CreateLoanApplication(LoanTypeID, Duration, Amount, EmploymentIncome, InterestRate) LoanApp = Create(LoanTypeID, Duration, Amount, EmploymentIncome, InterestRate) AddLoanApplication(LoanApp)
:Loan Application
Lead Responsibility by Derek Pawlikowsky Substantive assistance by Kittipong Techapanichgul,, Jaruwan Laptrakool and Warat Chesdavanijkul
34
35
Lead Responsibility by Derek Pawlikowsky Substantive assistance by Kittipong Techapanichgul,, Jaruwan Laptrakool and Warat Chesdavanijkul
36
Operation Contract
Contract C08: Evaluate Loan
Operation Name
evaluateLoanOption() IsValidCustomerID(CustomerID) isValidLoanAppID(loanAppID) updateApprovalStatus(status)
Instances Created
-
Associations Formed
-
Attributes Modified
LoanApplication.Approved = status
Lead Responsibility by Derek Pawlikowsky Substantive assistance by Kittipong Techapanichgul,, Jaruwan Laptrakool and Warat Chesdavanijkul
37
Lead Responsibility by Derek Pawlikowsky Substantive assistance by Kittipong Techapanichgul,, Jaruwan Laptrakool and Warat Chesdavanijkul
38
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Kittipong Techapanichgul,, Jaruwan Laptrakool and Derek Pawlikowsky
39
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Kittipong Techapanichgul,, Jaruwan Laptrakool and Derek Pawlikowsky
40
Operation Contract
Contract C09: Finalize Loan
Operation Name
finalizeLoanOption() IsValidCustomerID(CustomerID) IsValidLoanAppID(LoanAppID) createLoanAgreement()
Instances Created
- LoanAgreement
Associations Formed
LoanAgreement with Loan Application
Attributes Modified
-
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Kittipong Techapanichgul,, Jaruwan Laptrakool and Derek Pawlikowsky
41
:Bank
User
finalizeLoanOption () IsValidCustomerID(customerID)
currentCust :Customer
:Account Description
IsValidCustomerID(customerID) Cust = GetCustomer(customerID) isValidLoanAppID (ApplicationID ) isValidLoanAppID (AppID) isValidLoanAppID (ApplicationID ) loanApp = getLoadApp(ApplicationID) createLoanAgreement() createLoanAgreement() lnAgmt = createLoanAgreement() Create(Duration, Amount, InterestRate) ActDesc = getAccountDescription (Loan) ActIntStgy = getInterestStrategy(Loan) Act = Create(ActDesc, ActIntStgy, LoanName, StartDate) AddNewAccount(Act) AddNewAccount(Act)
:Loan Agreement
:Account
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Kittipong Techapanichgul,, Jaruwan Laptrakool and Derek Pawlikowsky
42
43
System
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
44
Operation Contract
Contract C10: Pay Loan Installment
Operation Name
payLoanOption() isValidAccountNumber(AccountNumber) enterPayment(amount)
Instances Created
- Transaction
Associations Formed
Associates Transaction with LoanAccount
Attributes Modified
- Transaction.Amount = amount - loanAcct.Balance = loanAcct.Balance amount
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
45
User payLoanOption()
:BANK
:Account
acct = getAccount(AccountID )
enterPayment(amount)
deposit(amount)
IsValidPayment()
updateBalance()
addTransaction(t)
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
46
47
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
48
Operation Contract
Contract C11: Extinguish loan
Operation Name
extinguishLoanOption() IsValidCustomerID(CustomerID) IsValidAccountNumber(AccountNumber)
Instances Created
-
Associations Formed
-
Attributes Modified
-
Lead Responsibility by Jaruwan Laptrakool Substantive assistance by Warat Chesdavanijkul, Derek Pawlikowsky and Kittipong Techapanichgul
49
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Kittipong Techapanichgul,, Jaruwan Laptrakool and Derek Pawlikowsky
50
51
IsNewCustomerID (customerID)
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
52
Operation Contract
Contract C121: CreateNewCustomer
Operation Name
NewCustomerOption() IsNewCustomerID(CustomerID) CreateNewCustomer(Name, Address, Email)
Instances Created
- Customer
Associations Formed
- Customer with Bank
Attributes Modified
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
53
:Bank
User
NewCustomerOption()
CustList :ArrayList<Customer>
IsNewCustomerID (customerID) IsNewCustomerID (customerID) CreateNewCustomer (Name, Address, Email) C = Create(Name, Address,Email) AddNewCustomer(C)
:Customer
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
54
55
IsValidCustomerID(customerID)
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
56
Operation Contract
Contract C122: ModifyCustomerInformation
Operation Name
ModifyCustomerOption() IsValidCustomerID(CustomerI D) ModifyCustomer(Name, Address, Email, ActiveStatus)
Instances Created
Associations Formed
Attributes Modified
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
57
User
ModifyCustomerOption()
:Bank
Cust:Customer
IsValidCustomerID(customerID) IsValidCustomerID(customerID)
cust = getCustomer(customerID)
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
Deactivate customer
This is already implemented on modify customer use case.
58
59
Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
System User NewAccountOption() IsValidCustomerID(customerID) IsValidAccountProductID (AccountProductID) IsValidInterestStrategyID(InterestStrategyID) CreateNewAccount (Name, StartDate)
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
60
Operation Contract
Contract C131: CreateNewAccount
Operation Name
NewAccountOption() IsValidCustomerID(CustomerID) IsValidAccountProductID(AccountPr oductID) IsValidInterestStrategyID(InterestStr ategyID) CreateNewAccount(Name, StartDate)
Instances Created
Associations Formed
Attributes Modified
- Account
- AccountDescription.Type = Type
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
61
:Bank
User
NewAccountOption() IsValidCustomerID(customerID)
IsValidInterestStrategyID(InterestStrategyID)
IsValidInterestStrategyID(InterestStrategyID) IntStgy = GetInterestStrategy(InterestStrategyID) CreateNewAccount (Name, StartDate) Act = Create(ActProd, IntStgy, Name, StartDate) AddNewAccount(Act) AddNewAccount(Act)
:Account
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
62
63
ModifyAccount(Name, ActiveStatus)
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
64
Operation Contract
Contract C132: ModifyAccountInformation
Operation Name
ModifyAccountOption() IsValidAccountNumber(Accou ntNumber) IsValidAccountProductID(Acco untProductID) IsValidInterestStrategyID(Inter estStrategyID) ModifyAccount(Name, ActiveStatus)
Instances Created
Associations Formed
Attributes Modified
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
65
:Bank
User
ModifyAccountOption ()
ActListOnBank :ArrayList<Account>
Act :Account
IsValidAccountNumber(AccountNumber) IsValidAccountNumber(AccountNumber)
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
Deactivate account
This is already implemented on modify account information use case.
66
67
Lead Responsibility by Kittipong Techapanichgul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Warat Chesdavanijkul
68
Operation Contract
Contract C14: ViewAccountPortfolio
Operation Name
ViewAccountPortfolioOption() isValidAccountProductID(AccountPro ductID)
Instances Created
-
Associations Formed
-
Attributes Modified
-
Lead Responsibility by Kittipong Techapanichgul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Warat Chesdavanijkul
69
70
71
System User
ProcessACStatementOption(Month, Year)
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
72
Operation Contract
Contract C15: Process Account Statement
Operation Name
ProcessACStatementOption(Mo nth, Year )
Instances Created
- Transaction for every account.
Associations Formed
- Each transaction with each Account
Attributes Modified
- Account.balance = CalculateNewBalance
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
73
:Bank
User
ProcessACStatementOption(Month, Year)
currentCust :Customer
currentAccount :Account
custList = getActiveCustomerList()
Loop
i = custList.size()
j = actList.size()
fee = CalculateMonthlyMaintenance(Month,Year) ActProd = GetAccountProduct() Fee = GetFee() ActIntStgy = GetAccountIntStrategy() Balance = GetBalance() Interest = CalculateInterest(Balance) trFee = create(fee) AddTransaction(trFee) trInt = create(int) AddTransaction(trInt)
:Transaction
:Transaction
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
74
Use Case 16: Manage Account Product (Manage new or existing bank
products, e.g., Senior Citizens Checking Account. Sample characteristics of a product include a name, monthly fee, per check charge, periodic interest rate, etc)
75
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
76
Operation Contract
Contract C161: Create New Account Product
Operation Name
NewAccountProductOption() IsNewAccountProductID(Acco untTypeName) IsNewInterestStrategyID(Intere stStrategyID) CreateAccountProduct(Name, MonthlyFee, PerCheckCharge, InterestRate)
Instances Created
Associations Formed
Attributes Modified
- AccountDescription.Name = Name AccountDescription.MonthlyF ee = MonthlyFee AccountDescription.PerCheck Charge = PerCheckCharge AccountDescription.active=tru e InterestDescription.InterestRat e = InterestRate
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
77
:Bank
User
NewAccountProductOption()
IsNewAccountProductID(accountProductID) IsNewAccountProductID(accountProductID) isNewInterestStrategyID(InterestStrategyID) IsNewInterestStrategyID(InterestStrategyID) CreateAccountProduct(Name, MonthlyFee, PCC, IntRate) actProd = Create(Name, MonthlyFee, PCC) AddAccountProduct (actProd) intStgy = Create(InterestRate) addInterestStrategy(intStgy)
:AccountDescription
:InterestStrategyDescr iption
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
78
79
System User ModifyAccountProductOption() IsValidAccountProductID(accountProductID) isValidInterestStrategyID(InterestStrategyID) ModifyAccountProduct(Name, MonthlyFee, PCC, IntRate, ActiveStatus)
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
80
Operation Contract
Contract C162: Modify Account Product
Operation Name
ModifyAccountProduct() IsValidAccountProductID(AccountPro ductID) IsValidInterestStrategyID(InterestStrat egyID) ModifyAccountProduct(Name, MonthlyFee, PerCheckCharge, InterestRate, ActiveStatus)
Instances Created
Associations Formed
Attributes Modified
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul
81
:Bank
User
ModifyAccountProductOption() IsValidAccountProductID(accountProductID)
ActProd :AccountDescription
:InterestStrategyDescr iption
IsValidAccountProductID(accountProductID) actProd = getAccountProduct(accountProductID) isValidInterestStrategyID(InterestStrategyID) IsValidInterestStrategyID(InterestStrategyID) ModifyAccountProduct (Name, MonthlyFee, PCC, IntRate, ActiveStatus)
Lead Responsibility by Warat Chesdavanijkul Substantive assistance by Jaruwan Laptrakool, Derek Pawlikowsky and Kittipong Techapanichgul