31
CHAP 11 SYSTEM CONCEPTION

CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

Embed Size (px)

Citation preview

Page 1: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

CHAP 11SYSTEM CONCEPTION

Page 2: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

some ways to find new system concepts

NEW FUNCTIONALITY ;- add functionality to existing system

STREAMLINING :- remove restriction the way system work

SIMPLIFICATION:- let ordinary person perform task

AUTOMATION:- automate manual process INTEGRATION:- combine functionality from

different system GLOBALIZATION:-travel to other country &

observe their cultural & business practice

Page 3: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

ELABORATING A CONCEPT Who is the application for?

understand which person & organization are stakeholder (financial sponsors & end user) for new system

financial sponsors are imp. bcs they are paying for system & expect the project to be success & within budget

user will determine success of system

WHAT PROBLEM WILL IT SOLVE determine which feature will be in new system &

which will not

Page 4: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

WHERE IT WILL BE USED determine new system is complement of

existing system, it will be used locally or distributed via a network or it jus a new capability that you deploy without disrupting workflow

WHEN IS IT NEEDED? Feasible time;- the time in which system can be

developed within cost & resources required time:-when system needed to meet

business goals WHY IT IS NEEDED?

understand motivation for new system business case will give you insight what

stakeholders expect How it will work?

Page 5: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

CHAP 12DOMAIN ANALYSIS

Page 6: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

perform following steps to construct domain class model

find classes prepare data dictionary find association find attribute of objects & links Combine classes using inheritance verify that access paths exits iterate & refine model reconsider the level of abstraction group classes into packages

DOMAIN CLASS MODEL

Page 7: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

find classes find classes for objects from application domain All classes must make sense in application

sense; avoid computer aspects only consider physical entities.

begin by listing classes found in problem statement, write down every classes that comes to mind.

ATM ex-software

Banking Network cashier ATM Bank

Bank computer Account Transaction

Cashier Station Account Data

Transaction DataCentral

ComputerCash Card Use

rRecei

ptSystem Security Provision Access Customer

Cost

Page 8: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

Design a software to support a computerized banking network including both human cashiers & automatic teller machine(ATM) shared by consortium of banks. Each bank provides its own computer to maintain its own account & process transaction against them. Cashier stations are owned by individual banks & communicate directly with their own bank’s computer .Human cashier enter account & transaction data

ATM communicates with central computer. It accepts cash card, interacts with user, communicate with central system to carry out transaction, dispense cash & prints reciept.The system requires appropriate recordkeeping & security provisions. The system must handle concurrent access to same account correctly.

Bank provide their own s/w & you have to design s/w for ATM.the cost of shared system will apportioned to banks according to no. of customers with cash card

Page 9: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

REDUNDANT CLASSES :- if two classes express same concept keep the most descriptive name

Ex:- customer describe person taking an airline flight, passenger is more descriptive

here Customer & user are redundant We retain Customer

IRRELEVANT CLASSES:- If class has little or nothing to do with problem eliminate it

Here Cost is outside the scope of ATM s/w VAGUE CLASSES :- A class should be specific. Some tentative class may have ill defined

boundaries Record keeping provision is vague & handled by

transaction

KEEPING THE RIGHT CLASSES

Page 10: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

ATTRIBUTES :-Names that describes individual objects are attributes

Account data describes account. ATM dispenses cash & receipts that are peripheral to problem so treat it as attribute

OPERATION:- If a name describes operation applied to object then its not a class

Ex-telephone call is a sequence of action involving a caller & telephone network so call is a part of state model not a class

ROLES :- One physical entity corresponds to several classes.

Ex:- Person & employee for company database of employee are identical but for govt. tax database two are distinct. A person may hold more than one job

KEEPING THE RIGHT CLASSES

Page 11: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

IMPLEMENTATION CONSTRUCTS:- eliminate extra constructs that needed later

during design but not now subroutine, algorithm, process ,data structure

are implementation constructs Ex:-Transaction log is set of transaction its exact

representation is design issue DERIVED CLASS:- class that can be derived fro

other class is a derived class

Page 12: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

Banking Network

System

Security

Provision

vague

Customer

User

Redundant

Cost

Irrelevant

Account

Data

Transaction

Data

Cash Receipt

Attributes

software

Transaction Log

Access

Implementation

BAD

CLASSES

cashierATM

Bank

Bank computer

Account

Transaction

Cashier StationCentral Computer

Cash Card

GOOD

CLASSES

Page 13: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

PREPARING DATA DICTIONARY Prepare data dictionary for al modeling elements &

describe scope of class, restriction on its use, associations, attributes, operations.

FINDING ASSOCIATION Reference from one class to another Ex-class person & company relate them with

Works for Means verbs or phrases – physical phrase (next

to, part of, contained), directed action , communication (talksto ), ownerships (has, part of ),some condition (worksfor, manages)

Page 14: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

CRITERIA FOR KEEPING RIGHT ASSOCIATION

ASSOCIATION BETWEEN ELIMINATED CLASSES:- If you eliminate one class in association you must eliminate association

Ex:-eliminate Banking network includes cashier station & ATMs

IRRELEVANT / IMPLEMENTATION ASSOCIATION:-outside the problem domain or deals with implementation constructs

Ex :- System handles concurrent access is implementation concept

Page 15: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

ACTIONS:-association describe structural property not an event for object

Ex:-ATM accepts card describes part of interaction between ATM & customer not a permanent relationship between them

TERNARY ASSOCIATION:- decompose most assoc. among 3 or more classes into binary association

Ex:- bank computer processes transaction against account can be broken into Bank computer processes transaction Transaction concerns account

Page 16: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

DERIVED ASSOCIATION:- omit association that can be defined in terms of other association because they are redundant

Ex:- grandparent of can be defined in terms of pair of Parents of Classes, attributes & associations in class

model represents independent information. Multiple paths between classes indicates derived association

Although derived association do not add information ,they are useful in real world & in design

Page 17: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

ATM

Central Computer

Consortium

1

1

1

*

Communicates with

Bank

1 0..1

Bank Computer

1 *

Communicates with

1

1

Account Customer

1 * * 1

Cashier

1

*

Employs

Cashier Station

1

*

Cashier Transaction

1 *

Entered On

1*

Entered By

Remote Transaction

1 *

EnteredOn

*

1

CashCard

* 1

AuthorizedBy

1

*

*

1

Page 18: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

FINDING ATTRIBUTES Attributes are data properties of individual

objects. Attribute values should not be an class Only consider attributes directly relevant to

application. Be sure to give each attr. A meaningful name.

Omit derived attribute

0bjects:- if independent existence of element is important than is value consider it as object.

Ex:- Boss refers to a class & salary is an attribute

KEEPING RIGHT ATTRIBUTES

Page 19: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

QUALIFIER:- if value of attribute depends on particular context consider it as qualifier

Ex:- employee no is qualifier NAMES:- name is an attribute when it does not

depend on context & it is not unique. Ex:- dept. name, person name IDENTIFIERS:- do not include attribute whose

only purpose is to identify an object Ex:- transactionID is not attribute INTERNAL VALUES:- if attribute describe internal

state of object then eliminate it Omit minor attribute that are unlikely to affect

most operation

Page 20: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

REFINING WITH INHERITANCE Organize classes by using inheritance to share common

structure Inheritance can be added in two directions

By generalizing classes into super class By specializing existing classes into multiple

subclasses

BOTTOM-UP GENERALIZATION:-discover inheritance from bottom-up searching for classes with similar attributes, association & operation

Define a super class to share a common feature. Ex :- remote Transaction & CashierTransaction are

similar except initiation so they can be generalized by Transaction

Page 21: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

TOP-DOWN SPECIALIZATION:- Look for noun phrases composed of various

adjectives on class name Ex:-fixed menu, pop-up menu, sliding menu MULTIPLE INHERITANCE:- Use it to increase sharing but only if necessary

because it increases both conceptual & implementation complexity

SIMILAR ASSOCIATION:- When same association name appears more than

once with same meaning generalize it

Page 22: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

DOMAIN STATE MODEL [04] Objects passes through distinct states during

their lifetime. Describes various states of objects,

Properties & constrains of object in various state

Events that take object from one state to another

Steps for constructing a domain state model

IDENTIFY CLASS WITH STATE FIND STATE FIND EVENT BUILD STATE DIAGRAM VALUATE STATE DIAGRAM

Page 23: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

IDENTIFY DOMAIN CLASS WITH STATE

Check list of domain classes for those that have distinct life cycle.

Identify significant states in life cycle of object Ex:- scientific paper for journal goes from

Being written Under consideration Accepted or rejected

ATM EX:-Account class has lifecycle & ATM depends on state of an account

Page 24: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

FIND STATE List states for each class Give each state a meaningful name State should be based on qualitative difference

in behavior, attributes & association ATM Ex:- state for Account

Normal (ready for normal access) Closed (closed by customer but still on file in

bank records) Overdrawn (customer withdrawals exceed the

balance in account) Suspended (access to account is blocked for

some reason)

Page 25: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

FINDING EVENTS Find event that causes transition among states. Consider those events that occurs within state

but do not cause transition You can regard event as do-activity Ex:- scientific paper for journal

ATM Ex:- close account, repeated incorrect PIN,

Administrative action

Under

consideration

Accepted or

rejected

Decision on paper reached

Page 26: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

BUILDING STATE DIAGRAM Note state to which event applies. Add transitions to show change in state caused

by event. If a event has different effect in different state

add a transition for each state

Page 27: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

Closed

Normal

Suspended

Overdrawn

Close account

Suspected

fraudRelease

holdRepeated

Incorrect

PIN

Withdraw excess fund

Deposit sufficient fund

Page 28: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

ITERATING THE ANALYSIS

requires more than one pass to complete Problem statement often contain

circularities & can not approached in linear way because different parts of problem interacts

Prepare first model & then iterate it as your understanding increases

Verify final analysis with requestor & application domain expert

Page 29: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

Refine the analysis model Overall analysis model shows inconsistencies &

imbalance. Try to refine classes to increase sharing &

improve structure. some constructs won’t fit in model; You

probably missed or miscast a general concept; reexamine them & change model

Include exception, special case Remove classes or association that seemed to

be useful at first but now appears extra; you can combine two classes in analysis can be combined

A good model have few small areas & don’t have extra details

Page 30: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

RESTATING THE REQUIREMENTS Most of real requirements will be part of model

Other requirements specify method of solution & should be separated if possible.

During analysis some requirements may appear to be incorrect & impractical; confirm correction to requirements

Business expert verify it to make sure that it correctly models the real world

Final model serves as basis for system architecture, design & implementation.

Page 31: CHAP 11 SYSTEM CONCEPTION - Welcome To Computer …svbitce2010.weebly.com/uploads/8/4/4/5/8445046/ch... · CHAP 11 SYSTEM CONCEPTION. ... CHAP 12 DOMAIN ANALYSIS ... Most of real

ANALYSIS & DESIGN Goal of analysis is to specify the problem without

implementation details but it is impossible to avoid all taints of implementation

There is no absolute line between various development stage nor there is any such thing as a perfect analysis