Formal Concept Analysis of Procedure Call Relations Christopher Taylor.

Slides:



Advertisements
Similar presentations
EECE 310: Software Engineering Modular Decomposition, Abstraction and Specifications.
Advertisements

Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
Testing and Quality Assurance
LIFE CYCLE MODELS FORMAL TRANSFORMATION
Reverse Engineering When is it the most cost effective? Raymond Utz.
Reverse Engineering: Legacy Systems Alexander Endert.
Swami NatarajanJune 17, 2015 RIT Software Engineering Reliability Engineering.
From Discrete Mathematics to AI applications: A progression path for an undergraduate program in math Abdul Huq Middle East College of Information Technology,
Replacing Hardware With Software Analysis and simulation of existing hardware using Discrete Event System Specification. By:Philip Felber Aman Gupta Imaduddin.
Introduction to Communication Research
Reginald Wesley CSC 432.  What is CASE?  Background  Why is CASE important?  Drawbacks  Tools.
An Introduction to Software Engineering
Jason Hallstrom (Clemson), Joan Krone (Denison), Joseph E. Hollingsworth (IU Southeast), and Murali Sitaraman(Clemson) This workshop is funded in part.
NYC Technology Forum Introduction to Test Automation 11/2/07 All rights reserved Not to be reproduced without permission Bill Rinko-Gay Solutions Director,
What Exactly are the Techniques of Software Verification and Validation A Storehouse of Vast Knowledge on Software Testing.
Chapter : Software Process
Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad Bansko, August 28, 2013.
Formal Methods 1. Software Engineering and Formal Methods  Every software engineering methodology is based on a recommended development process  proceeding.
SE-02 CONFIGURATION MANAGEMENT Today we talk about Software Configuration Management (SCM for short): - What? - Why? - How?
An Approach to Unit Delivery and Assessment
A GRADUATE CAPABILITY-FOCUSED TOP DOWN APPROACH FOR DEVELOPING THIRD LEVEL PROGRAMMES Professor Saleem Hashmi School of Mechanical and Manufacturing Engineering,
Bioinformatics Sean Langford, Larry Hale. What is it?  Bioinformatics is a scientific field involving many disciplines that focuses on the development.
Assurance techniques for code generators Ewen Denney USRA/RIACS, NASA Ames Bernd Fischer ECS, U Southampton.
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
Nama : Jehan binti Jamian No.matrik : UK Discrete Mathematics Area of mathematics that deals with the study of discrete objects. Discusses languages.
Relevance of Maths for CS John Barnden School of Computer Science University of Birmingham Intro to Maths for CS 2013/14.
©2010 John Wiley and Sons Chapter 11 Research Methods in Human-Computer Interaction Chapter 11- Analyzing Qualitative.
VTT-STUK assessment method for safety evaluation of safety-critical computer based systems - application in BE-SECBS project.
Management Theory and the Management of School Library Programs
Dr. Tom WayCSC Code Reviews & Inspections CSC 4700 Software Engineering.
Mathematical Modeling and Formal Specification Languages CIS 376 Bruce R. Maxim UM-Dearborn.
Sadegh Aliakbary Sharif University of Technology Spring 2012.
Software Project Management Lecture # 7. Outline Project Scheduling.
Department of Mechanical Engineering The University of Strathclyde, Glasgow Hybrid Systems: Modelling, Analysis and Control Yan Pang Department of Mechanical.
Engineering Design GE121 The Design Process (continued – Part III)
Software Testing and Quality Assurance Software Quality Assurance 1.
An Introduction to Software Engineering. Communication Systems.
UHD::3320::CH121 DESIGN PHASE Chapter 12. UHD::3320::CH122 Design Phase Two Aspects –Actions which operate on data –Data on which actions operate Two.
Formal Methods in Software Engineering
CMPT 880/890 The Scientific Method. MOTD The scientific method is a valuable tool The SM is not the only way of doing science The SM fits into a larger.
There are lots of 4’s that show up in the study of Art.
Architecture Analysis Techniques
Bioinformatics lectures at Rice University Li Zhang Lecture 11: Networks and integrative genomic analysis-3 Genomic data
- 1 -  P. Marwedel, Univ. Dortmund, Informatik 12, 05/06 Universität Dortmund Validation - Formal verification -
Scientific Debugging. Errors in Software Errors are unexpected behaviors or outputs in programs As long as software is developed by humans, it will contain.
HNDIT23082 Lecture 06:Software Maintenance. Reasons for changes Errors in the existing system Changes in requirements Technological advances Legislation.
Software Design: The Next Step A presentation by Sean Matthews.
Ch7: Software Production Process. 1 Waterfall models  Invented in the late 1950s for large air defense systems, popularized in the 1970s  Main characteristics:
Finite State Machines (FSM) OR Finite State Automation (FSA) - are models of the behaviors of a system or a complex object, with a limited number of defined.
Chapter 1 Software Engineering Principles. Problem analysis Requirements elicitation Software specification High- and low-level design Implementation.
Static Techniques for V&V. Hierarchy of V&V techniques Static Analysis V&V Dynamic Techniques Model Checking Simulation Symbolic Execution Testing Informal.
SBAC Claims > Targets > CCSSm Standards Understanding the assessment scheme Module 3, 22 October 2015.
UNIT: MANAGING PEOPLE & ACTIVITIES  Royal Agricultural College Modular Scheme Cirencester College Foundation Degree in Business 2006/2007 Management of.
Waqas Haider Khan Bangyal. Organization of the Lecture Research and Methodology: Research defined and described Some classifications of research Define.
Software Design and Development Development Methodoligies Computing Science.
서울대한양대 ( 안 산 ) 충남대 1년1년 컴퓨터기초 (C) 컴퓨터프로그래밍 (C, Java) 컴퓨터프로그래밍 (C) 2. 봄 프로그래밍 원리 (Scheme, ML) Structure & Interpretation of Computer Programs 프로그래밍 방법론.
Types for Programs and Proofs
Logic and Computer Design Fundamentals
Foundations of Computer Science
Software Clustering.
Software Verification and Validation
Software Verification and Validation
Department of Computer Science Abdul Wali Khan University Mardan
Software Verification and Validation
Lecture One: Automata Theory Amjad Ali
Teori Bahasa dan Automata Lecture 6: Regular Expression
Introduction Software maintenance:
Year 11 Theme 2 - Foundation Name __________________
Software Engineering.
Year 11 Theme 3 - Foundation Name __________________
Presentation transcript:

Formal Concept Analysis of Procedure Call Relations Christopher Taylor

Formal Concept Analysis Foundations –notion of “concept” in logic(19th Century) –Lattice Theory (~1940’s) Introduced by Rudolf Wille (1979) A discrete technique for data analysis and knowledge processing –more suited to problems in our discipline (until law of large numbers takes over)?

Example

Quantum Scheme Interpreter

Finite Automaton Simulator

Future Work Analyze larger systems (tool limitation) Compare more systems with similar structure Automate the concept lattice generation Analyze some of the deeper lattice properties –what do they tell us about the system structure Compare concept analysis to other methods Can knowledge extraction be automated?

Related Work Assessing Modular Structure of Legacy Code (Christian Lindig and Gregor Snelting) –tried to find module in old systems Software Reengineering (Gregor Snelting) –further work on modularizing legacy code All anaylsis is done by manual inspection of generated lattice (if you can’t see it...)

References Formal Concept Analysis: Mathematical Foundations. Bernhard Ganter and Rudolf Wille. Springer-Verlag 1999 Software Reengineering Based on Concept Lattices. Gregor Snelting. ICSE 2000 Assessing Modular Structure of Legacy Code Based on Mathematical Concept Analysis. Christian Linding and Gregor Snelting. ICSE 1997