0% found this document useful (0 votes)
69 views

Assignment 1: Description of A Web Banking System

This document contains an assignment for an introduction to software engineering course. It provides a description of a web banking system being developed by the Bank of Convenience and includes 3 questions. Question 1 asks students to resolve issues with overloaded terminology in the system description by adding entries to a glossary. Question 2 involves analyzing a partial use case diagram, describing functional requirements, and completing use case descriptions. Question 3 involves classifying non-functional requirements as verifiable or non-verifiable and providing examples of each. The assignment is focused on specifying the bill payment functionality being added to the existing web banking system.

Uploaded by

Joud Jarad
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
69 views

Assignment 1: Description of A Web Banking System

This document contains an assignment for an introduction to software engineering course. It provides a description of a web banking system being developed by the Bank of Convenience and includes 3 questions. Question 1 asks students to resolve issues with overloaded terminology in the system description by adding entries to a glossary. Question 2 involves analyzing a partial use case diagram, describing functional requirements, and completing use case descriptions. Question 3 involves classifying non-functional requirements as verifiable or non-verifiable and providing examples of each. The assignment is focused on specifying the bill payment functionality being added to the existing web banking system.

Uploaded by

Joud Jarad
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Carleton University

Department of Systems and Computer Engineering


SYSC-3020 Introduction to Software Engineering Fall 2021

Assignment 1
Submit one document on Brightspace with your answers to the THREE questions below.

Total: [40 marks]

Description of a Web Banking System


The Bank of Convenience wishes to extend its existing array of banking services already
offered to customers at the branch or ATMs (basic branch banking, inter-bank transfers,
automatically scheduled deductions, etc.) to support web-banking whereby its customers
may pay bills from their bank accounts over the Internet. A customer is able to set up (and
remove) connections between their existing accounts and the utilities for which they must
pay bills (cable, phone, property taxes). Once established, the customer is able to make
payments to the utility. Payments may either be done immediately, or can be scheduled for
automatic payment at some future date. If scheduled, the customer may cancel it at any
time before the payment date.

Bill payments to utilities are only possible if the utilities themselves provide some support.
A utility must be registered with the bank and provide a portal server that will provide
information about account numbers as well as the banking information for that utility.

Security is of course necessary. When a customer opens an account at a bank branch, a


username and password will be setup for the customer’s web account. The customer will
login in each time, before any access to their accounts. Security also requires the tracking
of transactions, with customers provided confirmation numbers for all bill payments.

The purpose of this assignment—its use cases, use case descriptions, and use case
diagram—is to only specify the added functionalities related to the bill payments.

Question 1 [8 marks] Glossary


The system description is deliberately imprecise and casual in its nature. In particular, the
word “account” is overused and overloaded. Explain the problem with this word and then
resolve the problem by adding suitable entry(ies) to the glossary below.
Glossary Entries
▪ Bank: Represents the existing banking system for the financial institution with which
the web-banking system will interact to access its suite of existing financial services
(monthly reports, bank transfers, automatic deductions) via the Internet.
▪ Customer: Is a person who has money in the bank and requires services to access that
money. Each customer is uniquely identified by a customer (eg.card) number.

... Add your own glossary entries.

1/4
Carleton University
Department of Systems and Computer Engineering
SYSC-3020 Introduction to Software Engineering Fall 2021

Question 2 [26 marks] Functional Requirements


A partial and possibly incorrect use-case diagram is presented below along with a set of
related questions. Descriptions for two of the use-cases are provided and used in Question
4 below, but may also help you in this question.

Web Banking System


Login

ViewBankAccount
Activity
<<initiate>>

<<initiate>> Utility
AddBill
<<include>>

AddRemoveBills
<<initiate>>

Web Customer <<initiate>> Bank

PayBills
<<initiate>>

<<include>>

ViewUpcomingPayments
Account
Overdraft

UtilityBank

<<include>>
CancelUpcomingPayment

<<initiate>>
PayPostdatedBills

Timer

a) [3 marks] The relationship between View Upcoming Payments and Cancel Upcoming
Payments is left unspecified : no label and no direction. Using heuristics discussed in
class for extend and include relationships, make arguments both for using <<extends>>
and <<include>>. Then make a decision for one or the other.
b) [2 marks] ViewBankAccountActivity is a use-case that allows the Web Customer to
view the past activity on his/her bank accounts. The Web Customer can either browse

2/4
Carleton University
Department of Systems and Computer Engineering
SYSC-3020 Introduction to Software Engineering Fall 2021

recent transactions, starting from the most recent and moving backwards, or can
generate and view the monthly reports, in which case the Web Customer must request
the desired month to view.
Is this use-case within the proper scope of the Web Banking System? What does it have
to do with paying bills over the Internet? Provide a reasonable justification to include
this use-case within this system’s scope, or exclude it from the system’s scope.
c) [5 marks] Complete and fix any errors on the use-case diagram to match the system
description and correctly use the UML use case diagram notation.
d) [8 marks] Complete the use-case descriptions given below. In your document, you shall
(re)write the whole table, following the template (and constraints on the use of natural
language) discussed in class.

Use Case Name AddRemoveBills


Participating Initiated by _____________
Actor(s) Communicates with _______________
Entry Condition The Web Customer is logged on and selects the “Add/Remove”
option.
Flow of Events 1. The system displays the Add/Remove Page containing the list
of all registered bills and the two options: Add or remove.
... To be completed.
n. The Web Customer terminates (leaves) the add/remove page.
Exit Condition The system displays the Account Summary Page
Exceptions

Use Case Name AddBill


Participating Initiated by __________________
Actor(s) Communicates with _____________
Entry Condition The Web Customer wants to add a bill.
Flow of Events 1. The system requests the name of the utility for which the Web
Customer wishes to pay bills.
...
Exit Condition The Bank contains the new bill.
Exceptions

e) [8 marks] Using the use-case description template (and constraints on the use of natural
language) discussed in class, provide a use-case description for use cases
ViewUpcomingPayments and CancelUpcomingPayments.

3/4
Carleton University
Department of Systems and Computer Engineering
SYSC-3020 Introduction to Software Engineering Fall 2021

Question 3 [6 marks] Nonfunctional Requirements


a) [2 marks] Below are examples of nonfunctional requirements. Specify which of those
requirements are verifiable and which are not (justify your answers):
• The system must be usable.
• The system must provide visual feeack to the user within one second of issuing a
command
• The availability of the system must be above 95 percent.
• The user interface of the new system should be similar enough to the old system
that users familiar with the old system can be easily trained to use the new system.

b) [4 marks] For the Web Banking system, provide two verifiable non-functional
requirements, each one from a different category of your choice.

4/4

You might also like