|
 |
| Slide 1:
Centrelink ISIS Application Architecture and development techniques
|
|
 |
| Slide 2:
ISIS - Income Security Integrated System What is an Application
Architecture? B
|
|
 |
| Slide 3:
Application Architecture
|
|
 |
| Slide 4:
Main components of the Architecture: Business clusters Circumstance
recording,
|
|
 |
| Slide 5:
Data Architecture Stands between clusters and raw access to M204 data
Data base
|
|
 |
| Slide 6:
High transaction rates Large volumes of data Complex interactions
between clust
|
|
 |
| Slide 7:
Standard screen headers Customer based header Nxt: Lock Sys: FAO
|
|
 |
| Slide 8:
Provides a common technique for writing screens Consistent user
interface Handl
|
|
 |
| Slide 9:
Standard Shell (cont'd)
|
|
 |
| Slide 10:
Standard Shell (cont'd)
|
|
 |
| Slide 11:
Standard Shell (cont'd)
|
|
 |
| Slide 12:
Standard Shell (cont'd)
|
|
 |
| Slide 13:
Historically most data is customer based Each record has primary keys
usually:
|
|
 |
| Slide 14:
Large Records (cont'd)
|
|
 |
| Slide 15:
Sirius have recently made performance enhancements (PERFOPT3) when
reading fiel
|
|
 |
| Slide 16:
Used to update all data on records Particularly important for
repeating groups
|
|
 |
| Slide 17:
Code is generated from our Data Dictionary Data Dictionary records all
fields i
|
|
 |
| Slide 18:
Activity records hold control and audit information: who (user), what
(data bas
|
|
 |
| Slide 19:
Each repeating group has a special composite field called Activity
Management R
|
|
 |
| Slide 20:
Activity Management - AMR's (cont'd)
|
|
 |
| Slide 21:
Trigger Processing
|
|
 |
| Slide 22:
Thread 1
|
|
 |
| Slide 23:
Advantages Transactional approach Better utilises available CPU and
I/O Single
|
|
 |
| Slide 24:
Each trigger record holds: Action - type of process Status -
typlically set to
|
|
 |
| Slide 25:
A 'controller' program selects the next trigger to process Uses FDWOL
to select
|
|
 |
| Slide 26:
Many controllers can be run simultaneously Normally run 5 per online
During maj
|
|
 |
| Slide 27:
Trigger Processing - how it works
|
|
 |
| Slide 28:
If a trigger crashes the status is set to #ABT (abort) Trigger is
automatically
|
|
 |
| Slide 29:
Nxt: Sys: ISM Env: S NSW1 US1 1_ C11 28 MAY 2001
|
|
 |
| Slide 30:
Used to check that any pre-conditions for a process are satisfied
before contin
|
|
 |
| Slide 31:
STD.ABORT (cont'd) Other predefined types of Message codes, eg E010AM
X - Abort
|
|
 |
| Slide 32:
X017RK - Cannot refresh from a shadow record.
|
|
 |
| Slide 33:
Predefined assertion compile globals Set by login program XAD - Set to
null for
|
|
 |
| Slide 34:
ASSERT statement Sirius enhancement Often now used instead of CALLing
STD.ABORT
|
|
 |
| Slide 35:
Monitor numbers and type Top10 by cluster are reported to management
seen a sig
|
|
 |
| Slide 36:
Turn on SIRFACT dump based on abort code both online and batch
(triggers) Extre
|
|
 |
| Slide 37:
Soft aborts Enhancement introduced 2 years ago Usually an abort means
a system
|
|
 |
| Slide 38:
Application level lock rather than a data base lock Typically lock on
CRN First
|
|
 |
| Slide 39:
Sirius $BIND and $UNBIND have similar functionality except for 'clear
all' whic
|
|
 |
| Slide 40:
In-memory tables holding reference data All tables defined within Data
Dictiona
|
|
 |
| Slide 41:
In-core Tables
|
|
 |
| Slide 42:
Questions?
|
|