Water quality regulations have never been more stringent. Learn how you can effectively manage storm water runoff and earn LEED credits through the use of porous asphalt pavements on parking lots and other paved surfaces.
Ground Penetration Radar as a Tool for Pavement Condition DiagnosticsDesh Sonyok
Ground Penetration Radar (GPR) is a reliable and high performance nondestructive testing tool for pavement management in a network level, which requires pavement condition assessment and deterioration modeling. GPR can determine the layer thickness, detect voids, and estimate moisture content of the in-situ soil underlying the pavement. Therefore, it is considered to be a promising tool for the assessment of pavement conditions. Pavement condition information obtained by GPR is very useful to predict the pavement structural capacity and performance. This will further help improve pavement maintenance and rehabilitation strategies and also provide rationalities in allocating available funds. However, the application of GPR in pavement is limited due to incomplete understanding of dielectric properties of pavement materials. This paper presents the state-of-the-art GPR applications in pavement condition assessment and its future development.
INTRODUCTION ( DRM )
IVRS (INTERACTIVE VOICE RESPONCE SYSTEM)
SIGNALING
MICROWAVE COMMUNICATION
DATA LOGGER
INDIAN RAILWAY IS THE STATE OWNED RAILWAY COMPANY OF INDIA.
DRM CONTROL ALL DIVISION.
THE DIVISION IS HEADED BY DIVISIONAL RAILWAY MANAGER.
THE KOTA DIVISION COVERS TOTAL 870KM IN 3 STATES.
732 KM IN STATE OF RAJASTHAN.
120 KM IN STATE OF M.P.
18 KM IN STATE OF U.P.
Water quality regulations have never been more stringent. Learn how you can effectively manage storm water runoff and earn LEED credits through the use of porous asphalt pavements on parking lots and other paved surfaces.
Ground Penetration Radar as a Tool for Pavement Condition DiagnosticsDesh Sonyok
Ground Penetration Radar (GPR) is a reliable and high performance nondestructive testing tool for pavement management in a network level, which requires pavement condition assessment and deterioration modeling. GPR can determine the layer thickness, detect voids, and estimate moisture content of the in-situ soil underlying the pavement. Therefore, it is considered to be a promising tool for the assessment of pavement conditions. Pavement condition information obtained by GPR is very useful to predict the pavement structural capacity and performance. This will further help improve pavement maintenance and rehabilitation strategies and also provide rationalities in allocating available funds. However, the application of GPR in pavement is limited due to incomplete understanding of dielectric properties of pavement materials. This paper presents the state-of-the-art GPR applications in pavement condition assessment and its future development.
INTRODUCTION ( DRM )
IVRS (INTERACTIVE VOICE RESPONCE SYSTEM)
SIGNALING
MICROWAVE COMMUNICATION
DATA LOGGER
INDIAN RAILWAY IS THE STATE OWNED RAILWAY COMPANY OF INDIA.
DRM CONTROL ALL DIVISION.
THE DIVISION IS HEADED BY DIVISIONAL RAILWAY MANAGER.
THE KOTA DIVISION COVERS TOTAL 870KM IN 3 STATES.
732 KM IN STATE OF RAJASTHAN.
120 KM IN STATE OF M.P.
18 KM IN STATE OF U.P.
1. CSE333
UML DETAILS WITH EXAPLES
DOC/UML.1
Research and Work By:
SARFARAZ HUSAIN
MAULANA AZAD NATIONAL URDU UNIVERSITY
MCA 3rd SEMESTER
8184811318
8273090408
FOR FUTURE
3. CSE333
DOC/UML.3
SSyysstteemm UUssee CCaassee
DDeessccrriippttiioonn
HHaarrdd CCoonncceepptt ttoo GGrraasspp IInniittiiaallllyy
AAllmmoosstt SSeellff--EExxppllaannaattoorryy -- FFooccuuss oonn FFuunnccttiioonnaalliittyy
ooff SSyysstteemm WWiitthh IInntteerraaccttiioonn ooff AAccttoorrss
IIddeennttiiffiieedd FFoouurr MMaajjoorr AAccttoorrss
Major Functionality and Relations to Actors
Also Identified
Drew Clear Definitions of Operations for Each
Actor
Helped to Identify the Need for Some Sort of
Role Based Security (I.e., Customer Actor
Doesn’t Perform Audits)
Actors Directly Linked to Roles?
WWrroottee CCaassee SScceennaarriiooss ooff MMaajjoorr FFuunnccttiioonnss
4. CSE333
DOC/UML.4
BBeehhaavviioorraall MMooddeelliinngg
SSyysstteemm UUssee CCaassee
<<uses>>
Report Generation
Process Transactions
Distributed Communication
<<uses>>
Persistent Storage
Printing
Auditing
Clerk
BANKING SYSTEM
The Customer
Manager
<<uses>>
<<uses>> <<uses>>
THE CLERK
THE
CUSTOMER
THE
MANAGER
TheServer
THE SERVER
6. CSE333
ATM X
DOC/UML.6
AArrcchhiitteeccttuurraall MMooddeelliinngg
DDeeppllooyymmeenntt DDiiaaggrraamm
Branch
Server
Terminal
1
Terminal
2
Terminal
X
Branch
Server
Terminal
1
Terminal
2 Terminal
X
Central
Bank
ATM 1 ATM 2
Hub
7. CSE333
DOC/UML.7
SSttrruuccttuurraall MMooddeelliinngg
LLooggiiccaall aanndd CCoommppoonneenntt VViieewwss
ClientServerGui
U
TheServer
U
ClientServerGui
U
TheServer
U
CCLLAASSSS
DDIIAAGGRRAAMM
CCOOMMPPOONNEENNTT
DDIIAAGGRRAAMM
8. CSE333
DOC/UML.8
IInniittiiaall LLooggiiccaall VViieeww ooff CClliieenntt
This is Where The Applet GUI Goes.
To be Added To The Model Later.
<<Interface>>
RMI Here
<<Interface>>
Serializable
(from io)
CustomerProfileForm
(from TheServer)
CustomerAccountForm
(from TheServer)
Vector
(from util)
<<Interface>>
TransactionInterface
TellerInterface
1
+BankTransaction
BankConnection
1
+TellerTransaction
9. CSE333
IInniittiiaall LLooccaall SSeerrvveerr SSiimmuullaattoorr aanndd CClliieenntt
Serializ
able
Serializable
DOC/UML.9
CCoommpp MMooddeell
Funny
Money
Transactio
nInterface
Transaction
Interface
rmi
Bank
Connection
Remote
BankServer
server
util
Session
Interface
Session
Interface
Transacti
onByRole
Atm
Trans
Teller
Trans
Mgr
Trans
Teller
Interface
Teller
Interface
10. CSE333
IInniittiiaall LLooggiiccaall VViieeww ooff tthhee SSeerrvveerr
DOC/UML.10
SSiimmuullaattoorr
This is Where The Applet GUI Goes.
To be Added To The Model Later.
FunnyMoney
amount : int
<<Interface>>
SessionInterface
<<Interface>>
Serializable
(from io)
<<Interface>>
Remote
(from rmi)
<<Interface>> UnicastRemoteObject
TransactionInterface
RMI Here
(from server)
Hashtable
(from util)
SessionHandler
+TheAccount
Account
Account()
TransactionByRole
$ GOOD_CONN : int = 0
RemoteBankServer
accounts
1
1
+TheSessionHandler
+TheTransactionHandler
AtmTrans
<<Interface>>
TellerTrans
MgrTrans
TellerInterface
CustomerProfileForm
(from TheServer)
CustomerAccountForm
(from TheServer)
11. CSE333
Allocate Memory And Resources For Transactions
DOC/UML.11
BBeehhaavviioorraall MMooddeelliinngg
SSeeqquueennccee DDiiaaggrraamm ooff LLoogg IInn
Client 1 Server
Enter UName And Passwd
Send UName And Passwd
Verify UName And Passwd
Send Connection Status
Allocate Memory And Resources For Transactions
Prompt User For Transaction Info
12. CSE333
DOC/UML.12
BBeehhaavviioorraall MMooddeelliinngg
SSeeqquueennccee DDiiaaggrraamm ooff LLoogg OOuutt
Client Server
User Execute Logout
Send Logout Message
Release Memory And Resources
Successfully Logged Out Message
Release Memory And Resources
13. CSE333
FFiinnaall AApppplliiccaattiioonn MMooddeellss aanndd DDeeppllooyymmeenntt
EEaacchh ooff UUss ttoo EExxppllaaiinn hhiiss//hheerr OOwwnn PPiieeccee iinn DDeettaaiill
Hector - Client GUI and App
Oliver - Main Server Transaction and Interface
Hierarchy
Gowri - Main Server Banking Application
OOnnllyy aa PPrroottoottyyppee -- NNoott aa FFuullll--FFlleeddggeedd AApppplliiccaattiioonn
DDeemmoo iiss LLiimmiitteedd ttoo aa CCoouuppllee ooff TTrraannssaaccttiioonnss
GGooaall iiss ttoo PPrroovvee JJaavvaa RRMMII CCoonncceeppttss,, IInntteerrffaacceess,,
DOC/UML.13
UUMMLL SSuuppppoorrtt ooff TThheemm iinn aa RReeaall WWoorrlldd AApppp
AAfftteerr TThhiiss PPhhaassee,, RReeaaddyy ttoo JJuummpp ttoo tthhee AAnnaallyyssiiss
PPhhaassee
14. CSE333
DOC/UML.14
FFiinnaall DDeevveellooppmmeenntt
AApppplleett aanndd CCoonnnneeccttiioonn
BankConnection
$ GOOD_CONN : int = 0
$ UNK_CONN_ERR : int = 1
$ REMOT_ERR : int = 2
$ NOT_BOUND_ERR : int = 3
$ COMM_FAILED : int = 4
$ ATM_CONN : int = 11
$ TELLER_CONN : int = 12
$ MGR_CONN : int = 13
$ VERIF_FAILED : int = 14
$ TRANSACTION_PASSED : int = 20
$ TRANSACTION_FAILED : int = 21
Connect_To_Bank()
Run_Query()
Login()
Logout()
SendCustomerProfile()
SendCustomerAccount()
Connect_To_ServerBank()
LoginToServer()
LogoutFromServer()
ShowAllCustomers()
BankingApp
init()
JMenuItem2_actionPerformed()
JMenuItem2_actionPerformed_Interaction1()
JMenuItem18_actionPerformed()
JMenuItem18_actionPerformed_Interaction1()
JMenuItem2_actionPerformed_Interaction2()
myBankingAppCode_Logout()
JMenuItem4_actionPerformed()
JMenuItem4_actionPerformed_Interaction1()
JMenuItem4_actionPerformed_Interaction2()
createCustProfMenu_actionPerformed()
createCustProfMenu_actionPerformed_Interaction1()
+$MyBankConnection
closeMenu_actionPerformed()
closeMenu_actionPerformed_Interaction1()
createNewAccountMenu_actionPerformed()
createNewAccountMenu_actionPerformed_Interaction1()
myBankingAppCode_ShowAllCustomers()
JShowCustomersMItem_actionPerformed()
JShowCustomersMItem_actionPerformed_Interaction1()
APPLET AND
GUI
ITS CONNECTION TO THE
CLIENT BANK ENGINE
15. CSE333
<<Interface>>
DOC/UML.15
FFiinnaall DDeevveellooppmmeenntt
MMaaiinn CClliieenntt AApppplliiccaattiioonn
The Applet GUI IS To be Added To
The Model Later.
CustomerProfileForm
(from TheServer)
RMI ENTRY
HERE
<<Interface>>
Serializable
(from io)
CustomerAccountForm
(from TheServer)
<<Interface>>
BranchServerInterface
(from TheServer)
<<Interface>>
<<Interface>>
ServerTransactionInterface
(from TheServer)
<<Interface>>
MgrTransactionInterface
(from TheServer)
<<Interface>>
ATMTransactionInterface
(from TheServer)
<<Interface>>
SessionInterface
+BankServerSession
VerifyUserNameAndPassword()
PerformLogout()
<<Interface>>
ServerInterface
(from TheServer)
login()
logout()
RoleTransactionInterface
(from TheServer)
BankConnection
1+BankSession
+BankServerTransaction 1
TellerTransactionInterface
(from TheServer)
Vector
(from util)
FORM CLASSES FOR
DATA TRANSFER
CONNECTION
CLASS WITH
THE GUI
26. CSE333
DOC/UML.26
AApppplliiccaattiioonn FFuunnccttiioonnaalliittyy
AAddddiinngg aa NNeeww CCuussttoommeerr ttoo tthhee BBaannkk
Customer Profile Information Transferred
From Client to Server Transaction Object
Customer Information Extracted From the
Customer Profile Object
Server Function Invoked to Add Current
Customer to List of Customers
DDiissppllaayy IInnffoorrmmaattiioonn AAbboouutt EExxiissttiinngg BBaannkk
CCuussttoommeerrss
OOppeenniinngg OOnnee oorr MMoorree AAccccoouunnttss ffoorr CCuussttoommeerrss..
Two Types of Accounts - Savings, Checking
Customer Can Have Any Number of Accounts
Can Have More Than One Type of Account
With the Same Account Number
27. CSE333
+TheCheckingAccount
DOC/UML.27
SSeerrvveerr AApppplliiccaattiioonn HHiieerraarrcchhyy
User
Customer
UnicastRemoteObject
(from server)
UnicastRemoteObject()
readObject()
clone()
exportObject()
Acct
accno : int
balance : float = (float)0.0
CustomerProfileForm
CustomerAccountForm
Database
Server
-db
Vector
(from util)
-users
-customers
#customers
-transactions
#account
Customer
SavingsAccount
CheckingAccount
+TheSavingsAccount
TheCustomerAccount
AccountNumber : int
UTILITY CLASSES
AND FORMS
BANK ACCOUNT AND
CUSTOMER
INFORMATION
REMOTE
SERVER
28. CSE333
DOC/UML.28
SSaammppllee CCooddee
Add a Customer to the Bank
protected boolean addCustomer(Customer c) {
System.out.println("Server.addCustomer()");
Object obj = null;
for (int i = 0; i < customers.size(); i++) {
obj = (Customer)customers.elementAt(i);
if (obj.equals(c)) {
System.out.print("customer already
exists");
return false;
}
}
customers.addElement(c);
return true;
}
29. CSE333
DOC/UML.29
SSaammppllee CCooddee
Open an Account for Customer
public int createAccount(AccProfileForm apf)
throws RemoteException {
Acct account = null;
switch (apf.type) {
case AccProfileForm.SAVINGS: {
account = new SavingsAccount();
break;
}
case AccProfileForm.CHECKING: {
account = new CheckingAccount();
break;
}
default:
}
account.balance = apf.initialDeposit;
account.accno = server.accNoGen();
account.type = apf.type;
server.addAccount(customer, account);
return account.accno;
}
30. CSE333
DOC/UML.30
SSaammppllee CCooddee
protected boolean NewAddAccount(int customerNumber,
TheCustomerAccount a) {
// get a reference to current customer object
System.out.println("entering
NewAddAccount()");
Object obj = null;
Object accObj = null;
for (int i = 0; i < customers.size(); i++) {
obj = (Customer)customers.elementAt(i);
if ( ((Customer)obj).custNumber ==
customerNumber ) {
System.out.println("customer found");
31. CSE333
DOC/UML.31
SSaammppllee CCooddee
// Check for Duplicate account numbers
for (int j=0;j<((Customer)obj).accounts.size();j++)
{
accObj = (TheCustomerAccount)
((Customer)obj).accounts.elementAt(j);
if (((TheCustomerAccount)accObj).AccountNumber
== a.AccountNumber)
{
System.out.println("Account is duplicated");
return false;
}
} // end for int j
System.out.println("Account Number: " +
a.AccountNumber + " Successfully Added.");
32. CSE333
DOC/UML.32
SSaammppllee CCooddee
System.out.println("Account Number: " +
a.AccountNumber + " Successfully Added.");
Add the account to the customer
((Customer)obj).accounts.addElement(a);
return true;
} // end if == cust number
} // end for i
System.out.println("Customer Not Found");
return false;
}
33. CSE333
DDiissttrriibbuuttiioonn IIssssuueess RReellaattiinngg ttoo OOOOMM
DOC/UML.33
PPrroobblleemmss RReellaattiinngg ttoo DDiissttrriibbuuttiioonn..
How to Distribute the Different Parts of the
System
How to Find the Distribution Objects
How to Decide Clusters of Objects
How to Distinguish High and Low Read/write
Ratios Between Objects
How to Find the Operations Which Changes
the Object States
34. CSE333
DOC/UML.34
UUMMLL SSuuppppoorrtt FFoorr DDOOCC
CCoommppoonneenntt DDiiaaggrraammss
Shows the Structure of the Code
Graph of Components Connected by
Dependency Relationships
Shows Dependencies Among Software
Components
DDeeppllooyymmeenntt DDiiaaggrraammss
Shows the Structure of the Run-time System
Used to Depict Which Components May Run
on Which Nodes
Migration of Components From Node to Node
May Also Be Shown.
39. CSE333
CCoommppoonneenntt DDiiaaggrraamm - AAnn EExxtteennssiioonn ttoo tthhee
DOC/UML.39
UUMMLL NNoottaattiioonn
DDiiffffeerreenntt FFrroomm aa CCllaassss DDiiaaggrraamm iinn tthhee FFoolllloowwiinngg
Component Scope - Can Be a Components
Class or a Set of Classes and Interfaces
Components Interface - a Set of Methods and
Properties Which Allow Remote Access.
Component Framework- Java Beans ,
Enterprise Java Beans , COM
Components Distribution Method
-CORBA,RMI
40. CSE333
CCllaassss DDiiaaggrraamm - AAnn EEnnhhaanncceemmeenntt ttoo UUMMLL
DOC/UML.40
NewCustomer
id : int
name : string[rw]
Customer()
FFiieelldd
PPrrooppeerrttyy
MMeetthhoodd
SSooffttmmooddeelleerr DDiiffffeerreennttiiaatteess BBeettwweeeenn RReegguullaarr FFiieellddss
aanndd PPrrooppeerrttiieess ooff aa CCllaassss
PPrrooppeerrttyy iiss aa FFiieelldd WWiitthh AAcccceessss RRiigghhttss
SSeett//ggeett MMeetthhooddss ffoorr tthhee PPrrooppeerrttyy FFiieellddss GGeenneerraatteedd
AAuuttoommaattiiccaallllyy
44. CSE333
OObbjjeeccTTiimmee DDeevveellooppeerr™ - FFeeaattuurreess
DDiiffffeerreenntt LLeevveellss ooff VViieewwss ffoorr DDeevveellooppeerrss aanndd
DOC/UML.44
CCuussttoommeerrss
EExxeeccuuttaabbllee MMooddeelliinngg CCaappaabbiilliittyy ffoorr
UUnnddeerrssttaannddiinngg CCoommpplleexx,, RReeaall-TTiimmee SSyysstteemmss
Tracing Messages Visually and Debugging
Using Graphics
Supports Ability to
Build Model From Design
Load Model to Target Platform
Control & Animate Model From the Development
Platform
GGeenneerraatteess EEnnttiirree AApppplliiccaattiioonnss bbyy UUssiinngg FFoorrmmaall
MMeetthhooddss TThhaatt AAllllooww AAuuttoommaattiissaattiioonn
45. CSE333
OObbjjeeccTTiimmee DDeevveellooppeerr™ - FFeeaattuurreess
IInntteeggrraatteess SSmmooootthhllyy wwiitthh OOtthheerr DDeevveellooppeemmeenntt
DOC/UML.45
TToooollss aanndd OOppeerraattiinngg SSyysstteemmss
Especially Real-time Operating Systems
SSttaatteedd oonn TThheeiirr WWeebb PPaaggee::
ROOM Forms the Basis for UML-RT
Contains a Set of Real-time Extensions to
UML
Will Soon to Be an OMG Standard for General
Purpose Software Development
46. CSE333
DOC/UML.46
UUMMLL--RRTT ccoommppoonneennttss
CCaappssuulleess RReepprreesseenntt
CCoommpplleexx,,
PPootteennttiiaallllyy
CCoonnccuurrrreenntt aanndd
AAllssoo DDiissttrriibbuutteedd
AAccttiivvee CCoommppoonneennttss
PPoorrtt iiss PPhhyyssiiccaall PPaarrtt ooff IImmpplleemmeennttaattiioonn ooff
CCaappssuullee
Mediates Interaction of Capsule With
Outside World
Includes Interface and Protocol
[Signals]
47. CSE333
DOC/UML.47
UUMMLL--RRTT ccoommppoonneennttss
CCoonnnneeccttoorrss CCaappttuurree KKeeyy Communication
Relationships BBeettwweeeenn CCaappssuulleess
Relationships Have Architectural Significance
Relationships Identify Which Capsules Can
Affect One Another Other Through Direct
Communication
57. CSE333
DOC/UML.57
PPaarraaddiiggmm PPlluuss
EEnnhhaanncceemmeennttss TToo UUMMLL ffoorr DDoocc
UUssee CCaassee DDiiaaggrraamm
Communication Types
SSeeqquueennccee DDiiaaggrraamm
Timing Related Interactions
DDeeppllooyymmeenntt DDiiaaggrraamm
Additions to Physical Components
PPrroojjeecctt DDiiaaggrraamm
Not Directly Related To DOC
Useful in Project Management Activities For
Team Leaders and Middle Management
EECCMM
Not Directly Related To DOC. Could Be Used
in Software Systems Engineering.
58. CSE333
DOC/UML.58
TTooggeetthheerr®
PPrroodduucctt ooff OObbjjeecctt IInntteerrnnaattiioonnaall,, IInncc..
HHttttpp::////wwwwww..OOii..CCoomm//
TTooggeetthheerr//jj && TTooggeetthheerr//cc++++
CCoommbbiinneedd ttoo TTooggeetthheerr CCoonnttrrooll CCeenntteerr
PPrreessiiddeenntt aanndd FFoouunnddeerr PPeetteerr CCooaadd
Coad Conducts Workshops and Performs
Corporate Consultations
Publishes Books on Modeling
Provides Extensions to UML
Tries to Propagate His Own Model Called
“Coad Object Model” and Archetypes