Sei sulla pagina 1di 25

Chapter Six

6. Design of the new system

6.1. Introduction

In the analysis phase we describe the purpose of the system this result in the identification of

application objects that represent user concepts but in design phase the main concern is to

determine how we are going to build our system and obtain the information needed to drive the

actual implementation of our system. Design focuses on four major areas of concern: data,

architecture, interfaces and component.

The data and architectural level design focuses on patterns as they apply to the application to be

built. At the interface level human ergonomics is the main concern. At component level a

programming approach lead us to the effective data and procedural designs.

This chapter deals with design of credit and saving of AdSCI. The design includes identification and

description of class type architecture, class modeling, state chart modeling, collaboration modeling,

component modeling, deployment modeling, and persistence modeling and user interface design.

6.2. Class Type Architecture

Class type architecture defines the relationship between major classes in the system and gives us

the design pattern that can be used to model the requirements that have been defined for the

system and the constraints that affect the way in which architectural design can be applied.
Class type architecture provides a strategy for layering the classes of the system, to distribute the

functionality of our software among classes. Furthermore, class-type architectures provide guidance

as to what other types of classes a given type of class will interact with, and how that interaction

will occur. This increases the extensibility, maintainability, and portability of the systems we like to

create.

Layering is the concept of organizing our software design into layers/collections of

functionality that fulfill a common purpose, such as implementing our user interface or the

business logic of our system.

It is possible to categorize the layers based on class type. The following are classes

identified in the CSS system of AdSCI:

 User Interface classes

 Controller/Process classes

 Business/Domain Classes

 Persistence Classes

 System Classes

6.2.1. User Interface Layer

A user interface Class contains the major user interfaces found in the system we are going to

develop.
User interface classes are identified during UI prototyping as well as during sequence modeling.

The following are major user interfaces identified in the new system.

1. Login UI

2. MDI UI(main window)

3. Customers UI

4. Credit UI

5. Compulsory saving UI

6. Voluntary Saving UI

7. Generate Report UI

8. Manage User UI

9. Prompt UI

10. Confirm UI

6.2.2.The controller/ Process Layer

The purpose of a controller/process class is to implement business logic that involves collaborating

with several domain classes or even other process classes.

Controller classes destroy themselves at the end because they are no longer needed. They

complete their job and then remove themselves from memory when they finished.
Login controller collaborate with Login UI, MDI UI, confirmation UI and Prompt UI when user log in

to the system.

 Data: user id and password

 Process: enter, verify, prompt and confirm

Manage user controller collaborate with Mange user UI, confirmation UI, and prompt UI when

system administrator create, update, and delete user account.

 Data: User id, password, and user details.

 Process: Create, assign, uses, select, verify, prompt and confirm

Loan limit controller collaborate with Credit UI, Confirmation UI and prompt UI when cashier

checks, withdraw, update, delete, customer loan information

 Data: Customer id, withdraw amount

 Process: Open, enter, verify, search, update, prompt, confirm

Loan interest controller collaborate with Credit UI, Confirm UI and prompt UI when clerk checks,

calculate, update and display loan interest information

 Data: Customer id, amount, start date

 Process: open, enter, search, update, prompt, confirm

Saving interest controller collaborate with compulsory saving UI, voluntary saving UI, Prompt UI

and confirm UI when clerk checks, calculate, update and display saving interest information

 Data: Customer id, amount, start date


 Process: open, enter, search, update, prompt, confirm

Service interest controller collaborate with credit UI, confirm UI and prompt UI when clerk checks,

calculate, update, delete and display service interest information

 Data: Customer id, amount, start date

 Process: open, enter, search, update, prompt, confirm

Insurance interest controller collaborate with credit UI, confirm UI and prompt UI when clerk

checks, calculate, update, delete and display insurance interest information

 Data: Customer id, amount, start date

 Process: open, enter, search, update, prompt, confirm

Penalty interest controller collaborate with credit UI, confirm UI and prompt UI when clerk checks,

calculate, update, delete and display penalty interest information

 Data: Customer id, amount, start date

 Process: open, enter, search, update, prompt, confirm

Generate report controller collaborate with report UI when manager views report

 Data: not applicable

 Process: create, uses, and view

6.2.3.The Business/Domain Layer


A business or domain class also called entity class that is usually identified during analysis phase.

It enables us to encapsulate the basic business functionality without having to concern about user

interface, data management or system management issues.

The new system of AdSCI has 9 business classes

User: this is a general class that includes first name, last name, user id, password, privilege are

some of the attributes of this class. Where as verify user() and search user() are functions of the

class

Customer: is a general class that includes all customer information like customer id, customer

name soon and has create (), delete (), update () functions. It has an association with account

class.

Account: has a general attributes for all account classes and has functions like create (), delete (),

update ()

Credit: inherits the attributes of account class and has createAccount (), deleteAccount (),

updateAccount () functions.

Deposit: inherits all the attributes of an account class

Voluntary saving: inherits all the attributes of a deposit class

Compulsory saving: inherits all the attributes of a deposit class

Pass book saving: inherits all the attributes of a voluntary class

Time specific saving: inherits all the attributes of a voluntary class


6.2.4. The persistence Layer

The persistence layer provides the infrastructure for the storage and retrieval of objects. This helps

to isolate our application from changes to permanent storage approach. Regardless of how are

persistence strategy changes our applications should not be affected. By encapsulating data

management functionality; the persistence layer increases the maintainability extensibility and

portability of our application.

Another essential concept here is that the persistence layer only provides access to permanent

storage; it is not a permanent storage mechanism itself. The goal of the persistence layer is to

reduce the maintenance effort that is required whenever changes are made in our system.

6.2.5. System layer

Every operating system offer functionality that we want to be able to access in our applications, file

handling, multi taking. It provides access to the operating system.


6.3. Class modeling

Class modeling is to model the static structure of how our software will be built. The purpose of

design is to model how the software will be built; the only difference with the techniques we used in

the analysis class modeling is that here in design class modeling we focus on the solution domain

rather than on the problem domain. In fact our analysis class model evolves in to our design class

By just making changes based on implementation technologies.


Class Diagram
Class documentation

Class Name User


Description Is a class used to store user profile
Attributes:
Name Data type
Username String
password String
firstName String
lastName String
Position String
userId String
Methods
Method Name Create
Description It creates a new user
Parameter No
Precondition Every attribute should be entered
Post condition Creation of new user
Return type No
Pseudo code If every attribute are entered
then
Do create
Method Name Delete
Description It delete the selected user
Parameter No
Precondition At least one user should be selected
Post condition Deletion of user permanently
Return type No
Pseudo code If every attribute are selected
then
Do deletion
Method Name Update
Description It updates user profile
Parameter No
Precondition Every attribute should be displayed
Post condition Update user profile
Return type No
Pseudo code If all attributes are filled
then
Do update user profile
Method Name Search
Description It searches user profile
Parameter No
Precondition Searching criteria should be entered
Post condition Display user profile
Return type No
Pseudo code If searching criteria entered
then
Do searching
Class Name Customer
Description Is a class used to store customer information
Attributes:
Name Data type
firstName String
middleName String
lastName String
Age Integer
Sex String
id String
Address String
Subcity String
Kebele String
houseNo String
mobPhone String
fixPhone String
workplace String
Profession String
offPhone String
Methods
Method Name Create
Description It creates a new customer
Parameter No
Precondition Every attribute should be entered
Post condition Creation of new customer
Return type No
Pseudo code If every attribute are entered
then
Do create
Method Name Delete

Description It delete the selected customer


Parameter No
Precondition At least one customer should be selected
Post condition Deletion of customer permanently
Return type No
Pseudo code If every attribute are selected
then
Do deletion
Method Name Update
Description It updates customer information
Parameter No
Precondition Every attribute should be displayed
Post condition Update customer information
Return type No
Pseudo code If all attributes are filled
then
Do update

Class Name Account


Description Is a class used to store customer account
information
Attributes:
Name Data type
accountName String
accountNo String
Class Name Credit
Description Is a class used to store customer credit
information
Attributes:
Name Data type
Amount Double
paymentMode String
creditNo String
endDate Date
returnAmount Double
outbalance Double
Interest Double
serviceCharge Double
Insurance Double
Penalty Double
Arrear Double
calPayment Double
Methods
Method Name Create

Description It creates a credit account


Parameter No
Precondition Every attribute should be entered
Post condition Creation of credit account
Return type No
Pseudo code If every attribute are entered
then
Do create
Method Name Delete
Description It delete the credit account
Parameter No
Precondition At least one credit information should be
selected
Post condition Deletion of credit account permanently
Return type No
Pseudo code If every attribute are selected
then
Do deletion
Method Name Update
Description It updates credit account information
Parameter No
Precondition Every attribute should be displayed
Post condition Update credit information of customer
Return type No
Pseudo code If all attributes are filled
then
Do update

Class Name Deposit


Description Is a class used to store customer saving
information
Attributes:
Name Data type
idNo String
Date Date
Type String

Class Name compulsory


Description Is a class used to store compulsory saving
information
Attributes:
Name Data type
Amount Double
Interest Double
Date Date
Balance double
Methods
Method Name Create
Description It creates a compulsory saving account
Parameter No
Precondition Every attribute should be entered
Post condition Creation of compulsory saving
Return type No
Pseudo code If every attribute are entered
then
Do create
Method Name Delete

Description It delete compulsory saving account


Parameter No
Precondition At least one saving information should be
selected
Post condition Deletion of saving account permanently
Return type No
Pseudo code If every attribute are selected
then
Do deletion
Method Name Update

Description It updates saving account information


Parameter No
Precondition Every attribute should be displayed
Post condition Update saving information of customer
Return type No
Pseudo code If all attributes are filled
then
Do update

Class Name Voluntary


Description Is a class used to store customer saving
information
Attributes:
Name Data type
amount double
Date Date
Type String
Class Name TimeSpecificSaving
Description Is a class used to store time specific saving
information
Attributes:
Name Data type
Id String
Amount Double
withdrawAmt Double
updateAmt Double
Interest Double
Balance Double
Date date
Methods
Method Name Create

Description It creates a time specific saving account


Parameter No
Precondition Every attribute should be entered
Post condition Creation of time specific saving
Return type No
Pseudo code If every attribute are entered
then
Do create
Method Name Delete

Description It delete time specific saving account


Parameter No
Precondition At least one saving information should be
selected
Post condition Deletion of saving account permanently
Return type No
Pseudo code If every attribute are selected
then
Do deletion
Method Name Update

Description It updates saving account information


Parameter No
Precondition Every attribute should be displayed
Post condition Update saving information of customer
Return type No
Pseudo code If all attributes are filled
then
Do update
Class Name PassBookSaving
Description Is a class used to store passbook saving
information
Attributes:
Name Data type
Amount Double
withdraw Double
updateAmt Double
Balance Double
Date date
Methods
Method Name Create
Description It creates a time passbook saving account
Parameter No
Precondition Every attribute should be entered
Post condition Creation of passbook saving
Return type No
Pseudo code If every attribute are entered
then
Do create
Method Name Delete

Description It delete passbook saving account


Parameter No
Precondition At least one saving information should be
selected
Post condition Deletion of saving account permanently
Return type No
Pseudo code If every attribute are selected
then
Do deletion
Method Name Update
Description It updates saving account information
Parameter No
Precondition Every attribute should be displayed
Post condition Update saving information of customer
Return type No
Pseudo code If all attributes are filled
then
Do update

Potrebbero piacerti anche