1 / 16

Software Architecture Modeling and Analysis

Thrust 4 – Complex Systems Modeling, Analysis, and Realization PI: Xudong He, Co-PIs: Shu-Ching Chen, Peter Clarke, Jason Liu, Masoud Sadjadi. Software Architecture Modeling and Analysis Atomicity Violation Prediction in Multi-thread Programs Robotics Control System Modeling and Analysis.

deon
Télécharger la présentation

Software Architecture Modeling and Analysis

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Thrust 4 – Complex Systems Modeling, Analysis, and RealizationPI: Xudong He, Co-PIs: Shu-Ching Chen, Peter Clarke, Jason Liu, Masoud Sadjadi • Software Architecture Modeling and Analysis • Atomicity Violation Prediction in Multi-thread Programs • Robotics Control System Modeling and Analysis

  2. Software Architecture Modeling and Analysis • Su Liu, Reng Zeng, Zhuo Sun, Xudong He • A software architecture specification plays a critical role in software development process. • SAM is a general framework for developing and analyzing software architecture specifications. • We developed a Software Architecture Modeling and Analysis Tool (SAMAT) to support the SAM framework.

  3. Features of SAMAT • Supporting software architecture modeling through hierarchical decomposition; • Modeling software component and connector behaviors using high-level Petri nets; • Specifying model constraints (system properties) using first-order linear time temporal logic; • Analyzing the SAM’s behavior model through model translation and model checking using SPIN.

  4. SAMAT-The Functional View SAMAT is comprised of: • A modeling component: creates hierarchical compositions, specifies behavior model and defines property specification. • A SAM model: a hierarchical structure for the model. • An analysis component: translates SAM model suitable for model checking.

  5. SAMAT-The Design View SAMAT is a platform independent (implemented in Java) and visual software tool designed using the Model-View-Control pattern.

  6. SAMAT- An Example

  7. Related Works

  8. Atomicity Violation Prediction Reng Zeng, Zhuo Sun, Su Liu, Xudong He • Atomicity violation occurs when proper synchronization is missing in a multi-thread program. • Atomicity violation is the most common (70%) concurrency bugs, and can causes huge damages (e.g. power blackout 2003 & facebook outage 2011) • Multi-core hardware is a growing industry trend, for both high performance servers and low power mobile devices. In the real world, most servers and high-end critical software are multi-thread.

  9. Atomicity Violation – An Example Problem: Thread 2 reads an intermediate value, causing an atomicity violation bug that HandleEvent of Thread 2 returns with an event missing. Solution: The accesses to the shared variable should be in an atomic region.

  10. McPatom Framework

  11. McPatom Framework • Bug Predictability • Predicted known bugs in Apache, MySQL, and Mozilla-extract. • Accuracy • We have chosen four programs without atomicity violations in SPLASH-2 parallel benchmark suite • McPatom passed this test without reporting any violations • Performance • Very efficient. For example, it took 15.68 seconds to check 3360 properties with regard to 151 shared variables in a trace of 9.4 MB in Apache.

  12. Contributions • A method to extract a thread model from an instrumented interleaved trace that only records events related to atomicity violations. • A complete set of the patterns of unserializable interleavings involving two threads containing any number of accesses to a shared variable. • A unique prediction tool - McPatom, for detecting atomicity violation bugs through model checking

  13. Modeling and Analyzing Robotics Control System Su Liu, Xudong He Collaborating with

  14. Seabed Rig AS (Norwegian) has developed an innovative autonomous robotic drilling rig for unmanned drilling operations. • The unmanned system utilizes autonomous robotic working operations that can be remotely controlled from an interactive 3D interface. • Energid, Inc. is developing robotics grasping and moving software for Seabed Rig.

  15. Tetris Programming

  16. Using Rwnet to analyze Tetris Programs

More Related