University of Illinois at Chicago Dept. of Computer Science - - PDF document

university of illinois at chicago dept of computer science
SMART_READER_LITE
LIVE PREVIEW

University of Illinois at Chicago Dept. of Computer Science - - PDF document

University of Illinois at Chicago Dept. of Computer Science Traditional strength in software engineering Many, diverse research projects Ties with research in computer security, mobile computing, distributed systems, human-computer


slide-1
SLIDE 1

1

University of Illinois at Chicago

  • Dept. of Computer Science
  • Traditional strength in software engineering
  • Many, diverse research projects
  • Ties with research in computer security, mobile

computing, distributed systems, human-computer interaction

  • Software engineering faculty:

– Ugo Buy – Tadao Murata – Sol Shatz – Prasad Sistla – Jeffrey Tsai – Lenore Zuck

Control software for manufacturing plants

Investigator: Ugo Buy---Support: NIST Problem Statement and Motivation Technical Approach Key Achievements and Future Goals

  • Control programs are hard to write and

maintain

  • Flexible manufacturing demands rapid

reconfiguration

  • Possibility of deadlock, mutex violations,

deadline violations

  • Avoid verification complexity with supervisory

control

  • Petri nets vs. finite state automata
  • Synthesis of deadline-enforcing supervisors

using net unfolding

  • Compositional methods (e.g., hierarchical

control)

GUI Translator Supervisor generator SFCs Plant spec Constraints TPNs Refined TPNs Code generator Control code

  • System for enforcing deadlines on transition

firing in time Petri nets

  • Framework for compositional control
  • Integration of methods for enforcing mutual

exclusion and freedom from deadlock

  • Generation of target code
slide-2
SLIDE 2

2

Performance Modeling and Analysis of Distributed Systems Using Petri Nets and Fuzzy Logic

Investigator: Tadao Murata---Sponsor: NSF Problem Statement and Motivation Technical Approach Key Achievements and Future Goals

  • The size and complexity of real-time distributed

systems makes it extremely difficult to predict the performance of these applications and their underlying networks

  • Fuzzy-timing models associate possibility

distributions of delays with events taking place in the system being modeled, well mimicking complex behaviors of the system, making the formal model very beneficial in performance modeling and analysis

  • f complicated distributed systems
  • Monitor the system to obtain parameters such as

bandwidth and latency to characterize the possibility distributions of the Fuzzy-Timing Petri Net (FTHN) model

  • Build the FTHN model of the architecture to be

analyzed based on the collected data

  • Use fuzzy logic and simulation to analyze and verify

the modeled system. Network features that are needed in order to implement currently unattainable interactions can be obtained

  • Applied FTHN model to assist us in the design of a

high-speed transport protocol for Long Fat Networks.

  • Developed techniques and tools for performance

analysis of network protocols and QoS requirement analysis of the networks: Proposed a topology- approximation to enable the formal model to have capability in modeling unpredictable dynamic topology, thus enlarging its application domains

  • Future work includes: apply FTHN model in other

areas such as developing the intelligent optimization of concerted heterogeneous data transmissions in distributed wide-area cluster computing environments

t1a

Pa

d1a(τ)

(0,0,0,0)

(4,5,7,9) (4,5,7,9)

(4,5,7,9)

(4,5,7,9)

Pb Pfree P1a P1b

d2a(τ) d2a(τ) d2b(τ) d2b(τ) d1b(τ)

Pout-a Pout-b

APPLYING FORMAL MODELING TO UML DIAGRAMS

Investigator: Sol M. Shatz---Support: ARO, NSF Problem Statement and Motivation Technical Approach Key Achievements and Future Goals

  • Complex software systems difficult to design

and analyze

  • Software engineering dilemma: Semi-formal

languages (e.g., UML) easy to use but do not support formal analysis; Formal languages (e.g., Petri nets) support formal analysis but difficult to understand

  • Develop techniques to profit from both types of

languages.

  • Transformation based approach
  • Algorithmic translation of UML diagrams into

formal notation (colored Petri nets)

  • Formal analysis based on simulation
  • Develop various techniques to help users, who

are not familiar with the formal notation, reason about the behavior of a system design

  • Develop techniques for checking qualitative

properties of the system

  • Defined formal semantics of UML statecharts

(via translation into colored Petri nets)

  • Developed software for transforming UML

statecharts into colored Petri nets

  • Developed software for specifying and

answering queries about system behavior

  • Future plans: Other types of UML diagrams;

experimental evaluation; timed models and analysis MSC Simulation Trace UML-CPN Conversion Simulation (XMI) Query Tool CPN Model (XML) UML model Rose Rational Design/CPN

slide-3
SLIDE 3

3

Automatic Analysis and Verification of Concurrent Hardware/Software Systems

Investigators: A. Prasad Sistla---Support: NSF Problem Statement and Motivation Technical Approach Key Achievements and Future Goals

  • The project develops tools for debugging and

verification hardware/software systems.

  • Errors in hardware/software analysis occur

frequently

  • Can have enormous economic and social impact
  • Can cause serious security breaches
  • Errors must be detected and corrected
  • Model Checking based approach
  • Correctness specified in a suitable logical

frame work

  • Employs State Space Exploration
  • Different techniques for containing state

space explosion are used

  • Developed SMC (Symmetry-based Model

Checker )

  • Employed to find bugs in Fire Wire Protocol
  • Also employed in analysis of security protocols
  • Need to extend to embedded systems and

general software systems

  • Need to combine static analysis methods with

model checking Counter example Yes/No Concurrent System Spec Correctness Spec

Model Checker

AID: Adaptive Intrusion Detection System

Investigator: Jeffrey J.P. Tsai, Department of Computer Science Problem Statement and Motivation Key Achievements and Future Goals

  • Computer virus attacks cost global business

an estimated $55 billion in 2003, a sum that is expected to increase this year. (ZDNet Security News)

  • The research goal is to develop an adaptive

intrusion detection system (IDS) to reduce the cost of intrusion detection for network systems

  • Develop a new learning algorithm to produce

high performance detection models.

  • Use neural network to improve the decision

making procedure from multiple models.

  • Design a new predication algorithm to tune

the detection model dynamically.

  • An intrusion detection system based on

learning algorithm has been implemented.

  • The IDS gets better performance than the

winner of the KDDCUP’99 contest using the DARPA database.

  • The IDS will be extended to detect the

security problem of wireless sensor network systems.

Technical Approach

slide-4
SLIDE 4

4

APPLICATIONS OF FORMAL METHODS

Lenore Zuck---Sponsors: NSF, ONR, and SRC Problem Statement and Motivation Technical Approach Key Achievements and Future Goals

  • Translation Validation

─ Backward Compatibility of successive generations of software ─ Formal proofs that optimizing compilers maintain semantics of programs

  • Termination proofs of Pointer programs
  • Property Verification of parameterized systems

(bus protocols, cache coherence, etc.)

  • Translation validation verifies each go of the
  • system. Verification conditions that are

automatically created are send to theorem provers

  • Combination of model checking and

deductive methods allows to push the envelope of automatic verification of infinite- state systems (for both pointer programs and protocols)

  • Based on methodology developed, Intel is using

MicroFormal to verify backward compatibility of microprograms (between RISC & CISC)

  • (Need to develop better methodologies to

prove theories that have bit vectors)

  • IIV is a new tool that allows automatic

verification of safety properties of parameterized systems

  • Researchers at MSR have expressed interest to

integrate pointer analysis in their verification tool