1 penndot atx project summer semester eosp team stalagmite: dan abramovich jeff ditillo oksana...
Post on 21-Jan-2016
213 Views
Preview:
TRANSCRIPT
1
PennDOT ATX Project Summer Semester
EOSP
Team Stalagmite:Dan Abramovich
Jeff Ditillo
Oksana Schubert
Alexey Stolpovskikh
Dehua Zhang
2
Agenda• Introduction• Planning• Execution
– Architecture-driven process– Project tracking– Risks mitigation
• Product– Product design– Demo– ATX business value
• Lessons Learned
3
Introduction• Problem description
– New solution for PennDOT’s on-line vehicle title and registration services
• Major stakeholders – PennDOT
– ATX (our clients)
– Participating companies
• Business drivers– Improve PennDOT’s business processes
– Allow ATX to become PennDOT’s Business Partner
4
Context Diagram
ATX
Internet
Reception
ATX Support Staff
Admin Client
AdminClient Admin Client
ATX Server
PennDOT
Gatekeeper
PCCS
Customer
PCCS Client
PCCS
Customer
PCCS Client
ATXAdministrator
Admin Client
PCCS
Customer
PCCS Client
5
Major Accomplishments
• Delivered software solution– Core product functionality– Designed for future extension– Designed to meet Gatekeeper certification– Client: “This is exactly what we wanted”
• Realized architecture in implementation– Highest priority quality attributes fulfilled
• Effectively planned and tracked project• Created effective software development process
6
Development Process
• Individual development of work items– Units correspond to architectural components– Quality through design/code reviews
• Nightly builds and regression testing• Architecture monitoring• Periodic integration tests
– Via Test UI and test cases
• Track progress against project plan closely
7
Planned Schedule
8
Actual Schedule
9
Time Estimation Accuracy
• Estimated task time– Actual: 158 %
• Adjusted estimates– Actual: 86 %
0
0.2
0.4
0.6
0.8
1
1.2
Normalized Time(hrs)
Actual
OriginalEst.RevisedEst.
10
Scheduled vs. Unscheduled Effort Summary
• Scheduled task time– Tasks from project
plan
• Unscheduled tasks– Role activities
– Meetings
– Defect correction
– Miscellaneous0
5
10
15
20
25
Avg Effort(hrs/wk)
Sched
Unsched
11
Time Expenditure Summary
12
Defect Tracking Summary
• Defects found using – regression testing– design/code reviews– Integration testing
• 53 Resolved• 3 Unresolved
– 1 Enhancement– 1 JBoss issue– 1 Not Repro.
0
5
10
15
20
25
30
35
40
45
Defects
Regr.TestsRvw/IntTests
13
Anticipated Risks
• Untimely access to information and resources schedule slips
• Schedule is based on “guesstimates” may be unrealistic
• Only suboptimal choices available with free software
14
Risk Management
• Risk 1: Unreliable information access– Developed Gatekeeper simulators
– Externalized critical data
• Risk 2: Estimated schedule– Develop transaction system kernel first
– Project tracking worked to schedule
• Risk 3: Open source quality– Used proven products: JBoss, Jasper, Castor, Ant, JUnit
15
Implemented Architecture
Database
ParticipatingCompany Client
1
ParticipatingCompanyClient 2
Gatekeeper Interface
ClusteringProxy
Transaction Server 1
SystemAdministrative
ClusteringProxy
Note:1. The symmetric connections betweenTransaction Server 2 and Database Server areomitted for reason of simplicity.2. Components with solid background are providedby the environment or by third party softwarevendors. ATX Transaction System Architecture V6 (2003-8-4)
Reporttemplates
Key:
Proxy Class
File
Business Logic
y x is allowed to use yx
File access
Externally exposedinterface
Transaction Records Account Ongoing
Transaction Record
IBM MQ Client
PennDOTIBM MQServers
Transaction Handling ReportingAccount
Management
Secure Interface Layer
Report UIAccount
Management UI
Transaction Server 2
RMI over SSL (SecureSockets Layer)JDBC (Java DatabaseConnectivity)CMP (Container ManagedPersistence)JMS (Java MessagingService)State Synchronization
MQ over T1 lease line
Component
Logical DeploymentGroup
TransactionDescrption
Fee Rules
16
Quality Attributes Achieved• Security
– J2EE JAAS (Java Authentication and Authorization Service )
• Availability– Application and database clustering
– Client-side dynamic proxy make fail-over transparency
• Modifiability– Decoupled business rules from the code using XML files
• Performance– Scalable load balancing
17
Security Features
• Username/Password authentication
• Role-based authorization
• Content-based authorization
• Security modules – Future extensions
• New security settings take effect instantly
18
Demo: AvailabilityTest Client
msepc28
WebSphere MQServer
Out
GatekeeperSimulator
In
msepc42
MQ Client
JBoss
OngoingTransaction
Record Update
SenderReceiver
JMS sendJMS receive
Create
Submit RequestPoll
Legend
computer
JMSIn Message queue
Entity BeanMQ client
MQ server
Method Call
Clustering
msepc36
JBoss
MQ Client
msepc35
JBoss
MQ Client
SessionBean
MessageBean
19
ATX Business Value• ATX transaction server
– Provides key component of PennDOT business partner solution
– Scalable solution– Easy to add additional transactions – Easy to add additional reports– Provides solution to update fees– Competitive advantage for Gatekeeper Certification
• Useful documentation– Developer’s Guide for future developers– System Administrator’s Guide
20
Lessons Learned• Realistic project scoping is critical • Selection as design• Project planning/tracking
– Identify and meet essential deliverables
• Use architecture driven approach• Development process
– Utilize automated tools– Need checks to ensure quality process
• Requirements/project management– Involve relevant stakeholders (PennDOT)
21
Q&A
22
Additional Slides
23
Scheduled Time Totals
24
Unscheduled Time Totals
25
Detailed Design: Transaction Management
• Transaction Manager– Transaction Record– Fee Management– Activity Log
• Transaction Descriptions
• Gatekeeper Interface
top related