View
217
Download
0
Embed Size (px)
Citation preview
1
Modelling and Validation of Distributed Systems: Research Area and Thesis Opportunities
Jens Bæk Jørgensen
Department of Computer Science
University of Aarhus
Master’s Thesis Preparation, September 11 2006
2
Research areas and research group
Research Areas Modelling (in particular Coloured Petri Nets) Software Engineering Communication Protocols
Research Group Kurt Jensen, Søren Christensen Lars M. Kristensen, Jens Bæk Jørgensen Lisa Wells Michael Westergaard, Kristian Bisgaard Lassen, Simon
Tjell, Mikkel Baun Kjærgård, Doina Bucur, Paul Fleischer Student programmers
3
Coloured Petri Nets
Formal modelling language [Jensen, 1980]
Theory- models- basic concepts- analysis methods
Tools- editing- simulation- verification
Practical Use- specification- validation- verification
4
Software engineering:Requirements engineering for a new bank system, the Adviser Portal (AP)
Joint project with BankdataScope of AP
15 Danish banks 15 software developers in three years
Main goals Increased efficiency Increased quality
AP must be aligned well with bank work processes
5
Alignment approach: Executable Use Cases (EUCs)
- Resembles usual prototyping- Used for specification, validation, and elicitation of requirements
An EUC describes a work process that must be supportedby a new computer system
- Example of work process: blanc loan advise
6
Blanc loan advise EUC: informal tier
”The customer comes into the banks and says to his adviser that he wants to take a trip to Paris …”
Main advantage: Easily understandable
Drawback: Not executable
7
Blanc loan advise EUC: formal tier
A Coloured Petri Nets (CPN) model
Main advantage: Executable Drawback: Not easily
understandable
8
Blanc loan advise EUC: animation tier
Consistent with the formal tier: Shows the CPN model’s states and state transitions, but in another ”language”
Combines the main advantages of the informal tier and the formal tier Executable Understandable
9
Examples of thesis topics
Validation of the EUC approach Interplay between informal and formal descriptionsFrom business goals via user requirements to
software requirements From EUCs to implementations: CPNs -> BPEL4WS
(workflow language of IBM WebSphere)
10
Software engineering: Estimation of worst-case memory usage of mobile phones software
Joint project with Nokia Research CenterCurrent situation at Nokia
Necessary to estimate worst-case memory usage early Software architecture descriptions include estimates of
expected memory usage of relevant classes, components, and messages
Necessary to consider interaction scenariosProposed solution
Combined use of the Unified Modeling Language (UML) and Coloured Petri Nets (CPN)
Development of tool support
11
Memory estimation tool
12
Examples of possible thesis topics
Validation of the memory estimation toolExtensions of the tool, e.g., modify to use live
sequence charts as inputConsider other quality attributes of mobile phones
software (or, more generally, embedded systems), e.g., performance
Study possible interplay between CPN Tools and high-end UML tools, e.g. Rhapsody, RealTime Rose
13
Communication protocols: Mobile ad hoc networking
Joint project with Ericsson TelebitExplore the use of the Internet Protocol version 6
(IPv6) protocol suite in the context of ad-hoc networking
Application of Coloured Petri Nets (CPN) and supporting computer tools in the development of communication protocols
14
Mobile ad-hoc networks
15
Hybrid network architecture
16
Examples of thesis topics
17
Examples of theses
Modelling and analysis of the communication protocol TTCAN Modelling and analysis of routing in mobile ad hoc networks Creating a light-weight requirements engineering process for
Grundfos Modelling and analysis of multicast communication in
windmills for Vestas Routing and TCP performance in mobile ad hoc networks Evaluation of broadcast based protocols for data
dissemination in traffic warning networks The rise and institutionalization of Computer Science at
University of Aarhus ...
18
Summary
We will be happy to talk to you about supervising your thesis, if your interests include one or more of these issues Modelling (e.g., CPN, UML) Software engineering (e.g, requirements engineering,
workflow systems, model-driven development) Communication protocols and distributed systems