28
BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

Embed Size (px)

Citation preview

Page 1: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

BANKING SYSTEMSoftware Requirements Document

CEN5011 - Advanced Software EngineeringFall Term - 2004

Page 2: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

TEAM MEMBERS

Jing Zhang

Wei Peng

Erliang Zeng

Ramakrishna Varadarajan

Xiaosi Zhou

Fernando Farfán

Page 3: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

BANKING SYSTEM

• Bank with services in South Florida.

• +200K Clients

• Next 5 years:– Statewide coverage.– More clients and transactions.– Easy to learn, easy to use.– Integration with peers.

Page 4: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

OBJECTIVES

• Robust and flexible system => high-volume operations.

• Expand the branch office number => cost-effective computer network.

• Versatile system for client management and savings accounts transactions.

• Flexible infrastructure, interconnection with other systems and peers.

• Open systems to OLAP solutions .

Page 5: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

FUNCTIONAL REQUIREMENTS

• Bank Officers:Maintenance to client records.Open and update clients’ accounts.

• Bank Tellers:Register monetary transactions.

Page 6: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

NONFUNCTIONAL REQUIREMENTS

• User-friendly, easy to learn and use.

• Application and network security will be priorities.

• Highly infallible, fault traceable and transaction-based.

• The system has to respond within 5 seconds after any taken action.

Page 7: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

USE CASE DIAGRAMSBanking System

CreateLogin

OpenAccount

Deposit

Withdraw

CheckBalance

UpdateAccount

CloseAccount

BankTeller

UpdateLogin

BankOfficer

Login

Page 8: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SCENARIO: Opening an Account

Scenario name: Opening an AccountParticipating Actors: John: Bank Officer.Flow of Events: 1. John has all the necessary information of a

customer to open an account.2. John then enters all the customer information

like the SSN, first, middle and last names, address and telephone number in the system.

3. The system then opens a new account and assigns a unique account number for the account for future references.

Page 9: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

USE CASE: Open Account

Use case name OpenAccount

Participating actors Initiated by BankOfficer

Entry condition The customer has given all the necessary information to the BankOfficer for opening an account and the required initial deposit.

The BankOfficer must have logged into the system.

Flow of events 1. The BankOfficer activates the “open account” function.2. The system presents an open account form.3. The BankOfficer enters all the details like SSN, first, middle and last

names, address and telephone number, and submits the form to the system.

4. The system responds by either an error message stating the error or a new unique account number with all the account details confirming success.

5. The BankOfficer activates the “print” option, if he is requested to print the account details for the customer.

6. The system responds by printing out the details.

Exit condition The customer has a new account opened in the Bank along with a printout of the account details, or the account is not opened due to some error.

Quality Requirements The Banking System responds with the form within 3 seconds.The Banking System responds with the acknowledgement or error within

5 seconds.

Page 10: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

: BankOfficer:FunctionSelect

Menu:OpenAccount

Control:OpenAccount

Form:Account :OpenAccountAc

knowledgement:OpenAccountRe

port

openAccount()

<<create>><<create>>

fillContents()

submit()

submitOpenAccount()

<<create>>

<<create>>displayResults()

reportResults()

<<destroy>>

dismiss()

print()

endOpenAccount()

<<destroy>>

<<create>>

<<destroy>>

SEQUENCE DIAGRAM: Open Account

Page 11: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SCENARIO: Update Account

Scenario name: Update an AccountParticipating Actors: John: Bank Officer.Flow of Events:

1. A customer enters the bank and wants to make some changes in her personal information.

2. John gives the customer an information changing form containing account number, address, date of birth, telephone number, and Email address, etc.

3. The customer fills out the form and hands it to John.

4. John makes those changes in the customer’s account and tells her whether it is done.

Page 12: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

USE CASE: Update Account

Use case name UpdateAccount

Participating actors Initiated by BankOfficer

Entry condition The BankOfficer has logged into the Banking SystemThe BankOfficer has all the information to update the account

Flow of events 1. The Bank Officer selects the “UpdateAccount” function.2. The Banking System feeds back a form to the Bank Officer.3. The Bank Officer fills out the form by entering the account

number, address, date of birth, telephone number, and E-mail address. Once the form is completed, the Bank Officer submits the form.

4. The Banking System receives the form and updates the customer’s account information in database and responds the updated results to the Bank Officer with acknowledgement or error.

5. The Bank Officer gets the result information and confirms it.

Exit condition The Banking System updated the information in database successfully and responds with acknowledgement or error.

Quality Requirements

The Banking System responds with the form within 3 seconds.The Banking System responds with the acknowledgement or error

within 5 seconds.

Page 13: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SEQUENCE DIAGRAM: Update Account

: BankOfficer:FunctionSelect

Menu:UpdateAccount

Control:UpdateAccount Form :Account :UpdateAccount

Acknowledgement

updateAccount()<<create>>

<<create>>

fillContents()

submit()

submitForm()

updateAccount()

reportResults()

<<create>>

endUpdateAccount()

dismiss()

<<destroy>>

<<destroy>>

Page 14: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SCENARIO: Close Account

Scenario name: Close an AccountParticipating Actors: John: Bank Officer.Flow of Events: • John has all the necessary information of a customer

to close an account.• John enters customer’s account number into the

system.• John returns the balance to customer if customer

has any in his account.• John confirms the account closing.• Customer leaves the bank with an acknowledgement

for closing the account.

Page 15: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

USE CASE: Close Account

Use case name CloseAccount

Participating actors Initiated by BankOfficer

Entry condition The customer has given all the necessary information to the BankOfficer for closing the account. The BankOfficer must have logged into the system

Flow of events 1. The BankOfficer selects the “close account” function.2. The system presents a close account form.3. The BankOfficer enters the customer’s account number into the system.4. The system displays the balance of the account and asks for confirmation.5. The BankOfficer confirms the operation and gives the balance to the customer.6.The system closes the account successfully and displays an acknowledgement for closing the account.

Exit condition The customer has either his account closed or not closed for some error.

Quality Requirements The Banking System responds with the form within 3 seconds.The Banking System responds with the acknowledgement or error within 5 seconds.

Page 16: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SEQUENCE DIAGRAM: Close Account

: BankOfficer:FunctionSelect

Menu:CloseAccount

Control:CloseAccount

Form:Account :CloseAcknowledgementCloseAccount

Report

closeAccount()<<create>>

<<create>>

fillContents()

submit()

submitCloseAccount()

getAccountInfo()

<<destroy>>

confirmCloseAccount()

reportResults()

<<destroy>>

endCloseAccount()

print()

dismiss()

<<destroy>>

closeAccount()

displayResults()

<<destroy>>

<<create>>

<<create>>

Page 17: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SCENARIO: Cash Deposit

Scenario name: Cash Deposit Participating Actors: Brenda: BankTeller.Flow of Events: 1. Brenda requests the deposit ballot and the money to

be deposited.2. Brenda verifies all the information in the ballot, and

verifies against the cash received. 3. Brenda records the transaction in the system, typing

the account number and the cash amount.4. Brenda prints the acknowledgement on the ballot.5. Brenda puts the cash in the drawer.6. Brenda keeps the original ballot for her file and gives

the copy of the ballot to the customer.

Page 18: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SCENARIO: Check Deposit

Scenario name: Check Deposit Participating Actors: Andrea: BankOfficer .Flow of Events: 1. Andrea requests the deposit ballot and the check to

be deposited. 2. Andrea verifies all the information in the ballot, and

verifies the check received. 3. Andrea records the transaction in the system, typing

the account number and the check amount.4. Andrea prints the acknowledgement on the ballot.5. Andrea puts the check in the drawer.6. Andrea keeps the original ballot for her file and gives

the copy of the ballot to the customer.

Page 19: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SCENARIO: Cash and Check Deposit Scenario name: Cash and Check Deposit Participating Actors: Lucy: BankOfficer.Flow of Events: 1. Lucy requests the deposit ballot and the check to be

deposited. 2. Lucy verifies all the information in the ballot, and verifies the

check received. 3. Lucy records the transaction in the system, typing the

account number, the cash amount and the check amount.4. Lucy prints the acknowledgement on the ballot.5. Lucy puts the check in the drawer.6. Lucy keeps the original ballot for her file and gives the copy of

the ballot to the customer.

Page 20: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

USE CASE: Deposit

Use case name Deposit

Participating actors Initiated by Bank Employee

Entry condition The Bank Employee has logged into the system. The Bank Employee has received the deposit ballot and money from the customer.

Flow of events 1. The Bank Employee selects the “deposit” option in the system.2. The system presents the Deposit screen.3. The Bank Employee checks the ballot against the check or cash given, and then inputs the information on the screen.4. The system processes the operation, and certifies the ballot.5. The Bank Teller gives the certified ballot copy to the customer.

Exit condition The Bank Teller has received an acknowledgement of the operation and the customer has gotten his copy of the ballot, OR The BankTeller has received an error message and the deposit has not been processed.

Quality Requirements

The Banking System responds with the form within 3 seconds.The Banking System responds with the acknowledgement within 5 seconds.

Page 21: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SEQUENCE DIAGRAM: Deposit

: BankEmployee:FunctionSelect

Menu:DepositControl :DepositForm :Account :DepositAcknowledgement:Transaction

deposit()<<create>>

<<create>>

FillContents()

submit()

submitDeposit()

deposit()

<<destroy>>

reportResults()

<<create>>

<<create>>

dismiss()

endDeposit()

print()

<<destroy>>

<<destroy>>

Page 22: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SCENARIO: Withdraw

Scenario name: Withdraw Participating Actors: John: BankOfficer.Flow of Events: 1. A custom enters the bank and wants to withdrawn some

money from account.2. She meets John and tells him that she needs to withdrawn

some amount from her account.3. John asks for her account number and identifications.4. The custom gives her account number and identifications.5. The custom specifies the amount she wants to withdraw to

John.6. John checks if she has sufficient balance to withdraw the

amount.7. If she has sufficient balance John

Page 23: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

USE CASE: Withdraw

Use case name Withdraw

Participating actors Initiated by BankEmployee

Entry condition The BankEmployee has logged into the bank system The BankEmployee has the customer’s account number to trace his information.

Flow of events 1. The BankEmployee activates the “Withdraw” function.2. The Banking System responds with a withdrawing form.3. The BankEmployee fills out the form with the customer’s account number and withdrawal amount, and then submits the form.4. The Banking System responds with displaying the customer’s withdrawal receipt.5. If the Banking System responds with displaying the customer’s withdrawal receipt, the BankEmployee activates “print” function to print the customer’s withdrawal receipt.

Exit condition The BankEmployee gives the amount to the customer. or the BankEmployee has received an error message and the withdraw has not been processed.

Quality Requirements

The Banking System responds with the form within 3 seconds.The Banking System responds with the acknowledgement or error within 5 seconds.

Page 24: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SEQUENCE DIAGRAM: Withdraw

: BankEmployee:FunctionSelect

Menu:WithdrawControl :WithdrawForm :Account :Withdraw

Acknowledgment:Transaction

withdraw()

submit ()

submitWithdraw ()

<<destroy>>

<<create>><<create>>

fillContents()

withdrawAccount()

print()

<<destroy>>

reportResults()

<<create>>

endWithdraw()

dismiss()

<<create>>

<<destroy>>

Page 25: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SCENARIO: CheckBalance

Scenario name: CheckBalance Participating Actors: John: BankEmployee.Flow of Events: 1. A custom enters the bank and meets john. She asks

John to check her account balance.2. John asks for the customer’s account number3. The customer gives John her account number.4. John enters the customer’s account number into the

banking system, checks her account balance and prints it.

5. The customer gets her balance information and leaves the bank.

Page 26: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

USE CASE: CheckBalance

Use case name CheckBalance

Participating actors Initiated by BankEmployee

Entry condition BankEmployee has logged into the bank system BankEmployee has customer’s account number to trace his information.

Flow of events 1. The BankEmployee activates the “balance” function of the bank system.2. The Bank system responds with a check balance form.3. The BankEmployee fills out the form with the customer’s account number and submits it.4. The Bank system responds with displaying the customer’s balance information.5. The BankEmployee activates “print” function to print the customer’s balance.

Exit condition The BankEmployee prints the customer’s balance report.The BankEmployee has received an error message and the checkBalance has not been processed

Quality Requirements

The system responds with the form within 3 seconds.The system responds with the acknowledgement or error within 5 seconds.

Page 27: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

SEQUENCE DIAGRAM: Check Balance

: BankEmployee:FunctionSelect

Menu:CheckBalance

Control:CheckBalance

Form:Account :CheckBalance

Report

checkBalance()

submit ()

submitCheckBalance()

<<destroy>>

<<create>><<create>>

fillContents()

getBalance()

print()

<<destroy>>

reportResults()

<<create>>

Page 28: BANKING SYSTEM Software Requirements Document CEN5011 - Advanced Software Engineering Fall Term - 2004

CLASS DIAGRAMBankEmployee

ID : StringFirstName : StringMiddleName : StringLastName : StringSSN : LongUserName : StringPassword : String

Login()UpdateLogin()LoginLookup()MakeDeposit()Withdraw()ViewStatement()

*

1

Account

FirstName : StringMiddleName : StringLastName : StringDOB : DateSSN : LongAccountNo : LongAddress : StringTelephone : LongEmail : StringBalance : Double

Deposit()Withdraw()PrintStatement()UpdateAccount()GetBalance()

Transaction

ID : LongType : StringDate : DateTime : TimeAccountNo : LongAmount : DoubleCurrentBalance : DoubleEmployeeID : Long

Deposit()Withdrawal()Statement()

BankOfficer

CreateLogin()CreateAccount()UpdateAccount()CloseAccount()

1

*

1

*

BankTeller