Você está na página 1de 5

Subject:

Session:

TCP2201 Object Oriented Analysis & Design


Trimester 2, Year 2014/2015

Project (30 marks)


Overall Comments
In the following, you will find your programming project for this subject. You are
strongly reminded about honesty. Any plagiarism is not tolerated.
You should start working on your project now. Be reminded that a project does
not consist of code only. We are not a company where it is important to hide the
techniques that lead to the solution! Your submission must consist of a suited
documentation and explanation of your code.
To give you a clear guideline: Your project is evaluated approximately to
10% of your code
10% of your report
10% of your presentation
In the presentation (interview in our course) your lecturer will ask you to
change/modify your code according to his requests in front of him. It is very
advisable to have done the programming on your own. It is even much better to
submit a halfway finished but self-written program and report than a copied one.
The interview will clearly detect this.
The projects are easy to understand and based on our classes. Prepare first a
clear overview and use the tools you like and learnt (Flowcharts, Structure
Charts, UML Diagrams, Design Patterns...). Start with easier versions of the
projects: Restrict the input variables, restrict the complexity of the input. Write
small input routines asking the necessary data from the user and formatting the
output as desired.
As such, divide the work between your members and start the coding. Each
group must consist of five members. Finally write a good, detailed report and
present your work.
The programming language for this project has to be Java. Console input and
output is sufficient.

Page 1 of 5

Project ooad 58.doc

This project will have two parts:

Part 1: Analysis and Design: UML diagram as per the details given below

Part 2: Implementation: Complete Java program the implementation of


your design

Evaluation:

Part 1: Your ability to communicate various aspects of your design and


ideas (requirements, analysis, and, design) to the readers using UML

Part 2: Evaluation based on correctness, working and live demo, graceful


error handling, successful testing, clarity and consistency in the source
program, consistency with design
PROJECT DETAIL

FIRST PART (5 marks)


1. Use Case Diagram: Describe your system in terms of its main functions and
the types/roles of users. Identify a few broad requirements of this system,
and the way different types of users interact with it, using a use-case diagram.
2. Class Diagram: Describe your system involving a collaboration of classes.
Use aggregation, generalization, association relationships and multiplicity
numbers to create a class diagram for your system.
3. Sequence Diagram: Describe a particular scenario (actions that take place
during a specific interval of time) in the working of a system, where the
objects interact to perform some task. Draw the sequence diagram showing
the time ordering of the object interactions. Draw a sequence diagram for
each important use case in the Use Case Diagram.
4. Collaboration Diagram:

Represent the above scenario in (3) as an

equivalent collaboration diagram.


5. State Diagram: Draw a State Diagram for each important object, where an
object can have changes in its state depending on certain events and guard
conditions.

Page 2 of 5

Project ooad 58.doc

SECOND PART (5 marks)


1. You should implement the concept of inheritance, polymorphism and other
OOAD concept that you learn in this subject as necessary. You will find
plenty of opportunities to apply OO concepts into your design and
implementation.
2. You should spend time to design a usable, intuitive, and live interface.
Marks are given for intuitive interface.
3. You should handle, if possible, all errors with meaningful error messages.
The point here is to terminate gracefully and properly you want to keep
the users informed and aware of the state of the system.
4. You are advised to use your own plain text database (if a database is
required). If you choose to use third party database management system
(like MySQL), you will have to learn how to wield these tools yourself
bearing in mind, the additional complexity that you have to cope with
especially during the demonstration. But, if you are confident, by all
means, do.
5. Dont copy any codes from other groups. Questions will be asked on
coding during the presentation. In addition, the instructor will use antiplagiarize internet-enabled software to automatically detect irregularities. If
you or your group is caught plagiarizing, every member in your
group will receive zero mark instantly.
6. You are strongly encouraged to participate in all aspects of the
development of this project not excluding problem solving, coding and
documentation.
REPORT FORMAT (Second Part)
You have to submit hardcopy and softcopy containing the following:
i)

Cover Page (a sample is provided at the end of this document)

ii)

Introduction of your system.

iii)

Assumption (if you have)

iv)

The UML diagrams and the accompanying explanation especially if


it helps the reader to understand your ideas

Page 3 of 5

Project ooad 58.doc

v)

Appendix:
i)

Source code

ii)

Sample interface screen

iii)

Sample input /output screens

The project specifications:


Multimedia Online Banking.
The Multimedia Bank is a commercial bank provides online banking to
Multimedia University students and staffs as customers. Every account holder will
be given a debit card, which can be swept in all the stores inside the MMU
campus. The transactions performed using the debit cards will be recorded and
stored by the online banking system database.
The online banking provided by the bank refers to a system that enables the
bank customers to access accounts and general information on bank products
and service through Internet.
The functions provided by the online banking included:
Different account types with various interest rates and service charges.
Keep tracks of transactions and balance for every account.
Calculate and update interest paid into every account.
Customers can view details of transactions for the past 3 months.
Customers can make fund transfer to another account, immediately if in the
same bank, approved by bank administrative if to other banks.
Customers can pay utility bills online.
Report of lost cards and cards deactivation.
Provide analysis on the transactions to customers, e.g., how much a
customer spends on phone, food or electricity in the last 3 months.
Provide analysis on the customer profile to the bank administrators, e.g.,
which type of account is the most popular, average balance per account,
spending patterns etc.
You are a team of programmers assigned to develop the online banking system
for the Multimedia Bank. Your final program should have as many features as
possible mentioned above.
And now: Have fun!

Page 4 of 5

Project ooad 58.doc

Evaluation Objectives:

Ability to identify primary use cases and record them in expanded, essential
form.
Ability to identify outstanding concepts, associations, and attributes and
record them in a conceptual model using the UML notation.
Ability to identify system events and record them in a system sequence
diagram using the UML notation.
Ability to assign responsibilities and design collaborations between software
components using the GRASP patterns, and illustrate the results in UML
collaboration diagrams.
Ability to summarize class definitions in a UML design class diagram.
Ability to map design artifacts into class definitions in an object-oriented
programming language.

Page 5 of 5

Project ooad 58.doc

Você também pode gostar