DAME: A Distributed Diagnostics Environment for Maintenance Duncan Russell University of Leeds

advertisement
DAME: A Distributed Diagnostics
Environment for Maintenance
Duncan Russell
University of Leeds
Project Partners
• EPSRC Funded, 3 years, £3.2 million. Ends Dec ‘04
• 4 Universities:
– University of Leeds, School of Computing and School of
Mechanical Engineering
– University of Oxford, Dept of Engineering Science
– University of Sheffield, Dept of Automatic Control and
Systems Engineering
– University of York, Dept of Computer Science
• Industrial Partners:
– Rolls-Royce
– Data Systems and Solutions
– Cybula Ltd
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
Operational Scenario
Engine flight data
London Airport
Airline
office
New York Airport
Grid
Diagnostics Centre
Maintenance Centre
American data center
European data center
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
DAME Grid Challenges
• Building a demonstration system to demonstrate proof of concept
for Grid technology in the aerospace diagnostic domain
• Two primary Grid challenges:
– Management of large, distributed and heterogeneous data
repositories
– Remote, secure access to diagnostics tools, flight data and
other operational data
• Other key issues:
– Rapid data mining and analysis of fault data
• York AURA technology is critical component for data
mining activity
– Management of distributed users and resources
– 24/7 operation – QoS issues
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
DAME Architectural Overview
DAME Diagnostics
Portal
Modelling/
Simulation
Grid Services Management
Case Based
Reasoning
...
Decision
Support
QUOTE
Novel
Data
The Grid
100111011011
Vibration
Shaft Speed
Fuel Flow
Software
AURA
Hardware
AURA
Cluster
AURA
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
Parts
Data
Operational
Data
AURA
Service
Data
Aura-G
Raw
Engine
Data
Matches
WRG Distribution
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
Complex Virtual Organisation
Engine
Manufacturer
(RR)
Airline / Maintenance Contractor
(at Airport)
Information / request for advice
Domain Expert (DE)
- engine expert
Dowload
Engine
Data
Investigate using tools
Provide
Diagnosis
/ Prognosis
/ Advice
Remote / Distributed
Tools and Services
Perform
Minor Repair
Local
Diagnosis
Upload
Engine
Data
Ground
Support
System
DAME
Diagnosis
Engine Data Center (EDC) - DS&S
Service Data Manager (SDM) - RR
Request advice
from MA
Maintenance
Engineer (ME)
Update Engine Records
Distributed Aircraft
Maintenance Environment (DAME)
- Miscellaneous Providers.
Investigate using
tools
Update Engine
Record
Remove engine and
dispatch for major overhaul
Request advice
from DE
Return overhauled
engine to service
Information / request
for advice
Provide
Diagnosis
/ Prognosis
/ Advice
Update Engine
Record
Update Engine
Records
Maintenance Analyst (MA)
- maintenance expert
Data Center
(DS&S)
Engine Maintenance
Repair and Overhaul
(MRO) Facility
(RR / Contractor)
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
Specifying Workflow
Workflow instances are specified through UML
sequence diagrams.
AURA-G and CBR-G Grid Services
can be directly accessed by the
Maintenance Analyst as necesary
- without using the
RunDetailedDiagnosisPrognoisis
workflow
Parmeters may be provided
by the Maintenance Analyst
to tune the operation.
The WorkflowManager-G
The CBRWorkflowAdvisorG
The AURA-G
The Maintenance Analyst
RunDetailedDiagnosisPrognosisWorkflow()
AdviseOnWorkFlow()
Search()
SearchForMatchingCaseAndRankResults()
Detailed Diagnosis / Prognosis Result
This is an interchangeable
sub workflow.
Also the Maintenance Analyst
will be able to select the
parameters used in these calls
from the Workflow Manager.
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
The CBRAnalyser-G
Specifying Workflow
Business workflows as Activity Diagrams
Airport
DS&S
Maintenance
Engineer
Rolls Royce
Maintenance
Analyst (Fleet
Manager)
Domain
Expert
Aircraft Lands
Visual
Inspection
Quote
Diagnosis
DAME Brief
Diagnosis
Check
Diagnoses
[ unknown ]
[ diagnosis ]
Analysis
[ fault unresolved ]
[ Clear ]
[ known ]
Provide
Information
Request
Information
[ information required ]
[ unknown ]
Detailed
Analysis
[ diagnosis ]
Maintenance
Procedure
[ information required ]
Provide Further
Details
Release Engine
[ fault resolved ]
Sign-off
Diagnosis
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
Request Further
Details
Workflow Requirements
• Diagnostic Workflows
– Automatic; initiated by novel event being detected
– Manual; launched by engineer through diagnosis
workbench
• Manage provenance data for diagnosis ‘cases’
• Management of secure services
– Role management
– Certificate handling
• Business Workflows
– Job Assignment and Tracking
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
Workflow System
• Components for the workflow system have
been identified:
– Workflow Manager; runs workflow instantiations
– Workflow Generator; creates and manages
workflows
– Workflow Advisor; advisory system providing domain
knowledge on how to deploy workflows
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
DAME Services & Workflow
Architecture
EngineDataStore-G
QUOTE / GSS
+constructor()
+Initialise()
+StoreDataRecord()
+RetrieveDataRecord()
+Copy()
XTO-G
WorkflowManager-G
Maintenance Engineer
Decision
Support Portal
CollaborativeWorkingEnvironment
+View()
+Control()
+constructor()
+Initialise()
+RunBriefDiagnosisPrognosisWorkflow()
+RunDetailedDiagnosisPrognosisWorkflow()
+RunDetailedAnalysisWorkflow()
+InstallNewWorkflow()
+DeleteExistingWorkflow()
+RunAndDebugWorkflow()
+RenameWorkflow()
+ReplaceExistingWorkflow()
+Copy()
+RunPerformClusterSearch()
+constructor()
+Initialise()
+XTO()
+JChart()
+Copy()
+InstallNewAlgorithm()
+RunAndDebugAlgorithm()
AURA-G
+constructor()
+Initialise()
+Store()
+Remove()
+Search()
Workflow
Subsystem
SDM-G
+SDMSource()
+getEventData()
+getEventItem()
+getEventAircraft()
+getEventEngine()
+getEventFromSerialDate()
DataBaseMiner-G
WorkflowGenerator-G
Maintenance Analyst
+constructor()
+Initialise()
+CreateNewWorkflow()
+EditExistingWorkflow()
+AddWorkflowElement()
+EditWorkflowElement()
+SaveWorkflow()
+GetWorkflow()
+Copy()
XTOOutputDataVisualiser-G
+constructor()
+Initialise()
+Visualise()
+Copy()
CBRWorkflowAdvisor-G
Domain Expert
+constructor()
+Initialise()
+AdviseOnWorkFlow()
+StoreNewCaseInCBRCasebase()
+UpdateExistingCaseInCBRCasebase()
+Copy()
CBRAnalysis-G
EngineModel-G
+constructor()
+Initialise()
+ModelEnginePerformance()
+Copy()
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
+constructor()
+Initialise()
+SearchForMatchingCaseAndRankResults()
+StoreNewCaseInCBRCasebase()
+UpdateExistingCaseInCBRCasebase()
+Copy()
Current Progress
• Workflow Manager has been implemented
– Workflows captured as Java classes
– Workflow enactment via apache server hosted at
the DAME portal
– Workflow Manager handles secure authorisation
through management of X509 certificates
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
Workflow Implementation
Browser
Portal
Role
Database
MyProxy
Server
Event
Generator
Engine
Data Store
Workflow
Credential
Workflow
Manager
SDM to
XTO
XTO
Aura-G
CBR
Broker
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
Engine
Model
Workflow Implementation
StoreEngineData( )
: Ground Support
System
: EngineDataStore
: Portal
NewEngineData(params)
GetEngineData( )
: Maintenance
Engineer
: EventAgent
getResults(workflowId)
runWorkflow(existingConnection, workflowName, params)
getStatus(workflowId)
: Maintenance
Analyst
notifyChange(WorkflowId, params)
runWorkflow(workflowName, role, params)
notify(workflowId)
: PortalConnection
getStatus(workflowId)
getResults(workflowId)
: Worklist
: WorkflowManager
getResults(workflowId)
getStatus(workflowId)
runWorkflow(workflowName, role, params)
: Domain Expert
propertyChange(propertyChangeEvent)
getStatus( )
getResults( )
XTOJob :
Xto
createWorkflow(workflowName, role, cred, params)
attachWork(newWork)
Resource
Broker
: WorkflowBriefDiagnosis
: WorkflowFactory
setId(workflowId)
setRole(role)
execute( )
execute( )
Workflow System
Boundary
: RunCBR
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
Future Work
• Workflow Generator
–
–
–
–
Dynamic Workflow Generation
Means to edit/adapt workflows
Means to visualise workflows
Would like to adopt existing e-Science technology
• Development of Workflow Advisor
– Case Based Reasoning system
– Uses workflow provenance to build diagnosis case histories
and capture domain knowledge
• Richer Security models
– Authorisation across computing domains
– Finer grain definition of role and access rights.
– Dynamic control of virtual organisations
Duncan Russell, Informatics Research Institute, School of Computing, University of Leeds
Download