Static Code Analysis in ATLAS. Andrew Washbrook University of Edinburgh Common discussion about software quality analysis 23rd November 2016

Size: px
Start display at page:

Download "Static Code Analysis in ATLAS. Andrew Washbrook University of Edinburgh Common discussion about software quality analysis 23rd November 2016"

Transcription

1 Static Code Analysis in ATLAS Andrew Washbrook University of Edinburgh Common discussion about software quality analysis 23rd November 2016

2 Coverity Commercial static code analysis (and security testing) tool CERN-wide license available Any member of the ATLAS collaboration can view detected code defects though a hosted Coverity Connect platform Split software into several domains Universal case ID (CID) for references across software updates Triaging within platform Coverity defined impact levels Source code navigation

3 Coverity Defect Handling in ATLAS Our coverity static analysis runs twice a week and takes longer than 24 hours to fully complete We do not run in delta mode: each report reflects the entirety of the defect base Coverity weekly processing schedule Coverity defects timeline SOAP interface to extract XML results Also possible to get the results with a one line curl command Combine results with the developer database to allocate the defects Command line tool issues queries web page and lists issues for a specified file

4 Cppcheck Open source tool that performs static analysis of C++ code Focus on bugs instead of stylistic issues Does not detect syntax errors More lightweight than Coverity but may be prone to more false positives. List of checks Error and warning statistics per domain High, Medium, Low Runs twice per week on the ATLAS nightly development release More verbose but picks up on defects not seen by Coverity Can be run by developers across individual packages Selected warnings can be suppressed on request

5 Lizard Recently explored the use of the Lizard code complexity analyzer tool Provides a generic quality indicator to avoid focusing on just fixing Coverity defects Calculates how complex the code 'looks' rather than how complex the code really 'is' Requires syntactically correct code Word cloud generation Provides threshold reporting on the following key code quality metrics: The nloc (lines of code without comments) CCN (the Cyclomatic Complexity Number) Token count of functions Parameter count of functions Cyclomatic Complexity counts the number of paths program flow can take through a given section of code Complexity Number >40 Meaning Structured and well written code High Testability Complex Code Medium Testability Very complex Code Low Testability Not at all testable Very high Cost and Effort Cyclomatic Complexity

6 Lizard Results for ATLAS software Defect summary per domain based on thresholds for CC and NLOC values Number of lines of code without comments per function for each project Cyclomatic Complexity for each Project

7 Code Beautifying: Uncrustify /afs/cern.ch/atlas/offline/external/uncrustify/atlas.cfg Very customisable Aim for consistency, not uniformity Commit fixes/features and code cosmetics separately

8 Other Evaluated Tools IWYU Analysis of #include statements in C and C++ source files Aim to remove superfluous #includes by determining only what is needed and replacing #includes with forward-declares where possible Used to generate IWYU reports for each project in web frontend TCtoolkit Provides: Code Duplication Detector Token Tag Cloud Class Cooccurance matrix (CCOM) Treemap Visualization for Source Monitor Metrics data Noisy: 1 hr to scan ATLAS software release and produces >50Mb of html IWYU web frontend Sanitizer Tools LLVM based tools: AddressSanitizer, LeakSanitizer, ThreadSanitizer, MemorySantizer Need to modify our build process to take full advantage of the tools

9 Future Effort Software Quality Tool Evaluation Look at usefulness of other tools such as clang-tidy, clang-format, gcc checker plugins, OCLint (and many others) Evaluate security-oriented static analysis tools available through CERN (see CERN Computer Security page) CppLint, FlawFinder, RATS, VCG Code Coverage All our important code should have excellent test coverage Can use --coverage compiler option and the gcov tool to quantitatively identify coverage Prioritise coverage by tagging domains, packages and code sections as critical Software Infrastructure Evolution Identify any possible software quality plugins and services in the Git/Jenkins ecosystem e.g. build errors and warnings, tracking package activity, code ownership and provenance Analytics Generate an overwhelming set of data to assess software quality Look at analytics tools to provide visualisation and data mining capabilities Static code analysis results drill down Git statistics monitoring Test coverage indicators

10 Econometric and Ecology Analysis Methods How are econometric values calculated? Are there universal bounds of acceptability for metric output (e.g CBO value)? How easily could this be applied to ATLAS software? Would the application of these methods to ATLAS software be a direct extension of your CHEP studies? Are there any calculation scaling issues with increasing lines of code (and class dependencies)? Are there other laws/tests more suitable than others for our case? How repeatable are the tests? How are metric values interpreted and translated into meaningful actions for software package maintainers?

C/C++ toolchain. Static and dynamic code analysis. Karel Kubíček. Masaryk University. Brno, Czech Republic

C/C++ toolchain. Static and dynamic code analysis. Karel Kubíček. Masaryk University. Brno, Czech Republic C/C++ toolchain Static and dynamic code analysis Karel Kubíček Masaryk University Brno, Czech Republic April 20, 2018 Questions Who uses C/C++? Karel Kubíček C/C++ toolchain April 20, 2018 2 / 12 Questions

More information

Optimizing for Bugs Fixed

Optimizing for Bugs Fixed Optimizing for Bugs Fixed The Design Principles behind the Clang Static Analyzer Anna Zaks, Manager of Program Analysis Team @ Apple What is This Talk About? LLVM/clang project Overview of the Clang Static

More information

Firefox quality. Mozilla Paris FOSDEM Feb 3rd 2018

Firefox quality. Mozilla Paris FOSDEM Feb 3rd 2018 Firefox quality Mozilla Paris FOSDEM Feb 3rd 2018 Bonjour! Je suis Sylvestre Ledru Je parle de Firefox Quality Twitter @SylvestreLedru 2 Bonjour! 3 Bonjour! 4 Bonjour! 5 The Firefox scale About:Firefox

More information

Software Quality Understanding by Analysis of Abundant Data (SQUAAD)

Software Quality Understanding by Analysis of Abundant Data (SQUAAD) Software Quality Understanding by Analysis of Abundant Data (SQUAAD) By Pooyan Behnamghader Advisor: Barry Boehm ARR 2018 March 13, 2018 1 Outline Motivation Software Quality Evolution Challenges SQUAAD

More information

Improving Linux Development with better tools. Andi Kleen. Oct 2013 Intel Corporation

Improving Linux Development with better tools. Andi Kleen. Oct 2013 Intel Corporation Improving Linux Development with better tools Andi Kleen Oct 2013 Intel Corporation ak@linux.intel.com Linux complexity growing Source lines in Linux kernel All source code 16.5 16 15.5 M-LOC 15 14.5 14

More information

Improving Linux development with better tools

Improving Linux development with better tools Improving Linux development with better tools Andi Kleen Oct 2013 Intel Corporation ak@linux.intel.com Linux complexity growing Source lines in Linux kernel All source code 16.5 16 15.5 M-LOC 15 14.5 14

More information

Is code in your project sane enough?

Is code in your project sane enough? Is code in your project sane enough? Red Hat Kamil Dudka February 6th, 2015 Abstract This demo session will show how we can easily check the sanity of code in our project. There is a tool named csmock,

More information

Dynamic code analysis tools

Dynamic code analysis tools Dynamic code analysis tools Stewart Martin-Haugh (STFC RAL) Berkeley Software Technical Interchange meeting Stewart Martin-Haugh (STFC RAL) Dynamic code analysis tools 1 / 16 Overview Introduction Sanitizer

More information

Spazio IT IXV OBSW. Source Code STATIC ANALYSIS IXV OBSW. Source Code Static Analysis. October 2017

Spazio IT IXV OBSW. Source Code STATIC ANALYSIS IXV OBSW. Source Code Static Analysis. October 2017 IXV OBSW Source Code Static Analysis Spazio IT IXV OBSW Source Code STATIC ANALYSIS Maurizio Martignano Spazio IT Soluzioni Informatiche s.a.s Via Manzoni 40 46030 San Giorgio di Mantova, Mantova http://www.spazioit.com

More information

Towards Better Understanding of Software Quality Evolution Through Commit Impact Analysis

Towards Better Understanding of Software Quality Evolution Through Commit Impact Analysis Towards Better Understanding of Software Quality Evolution Through Commit Impact Analysis Sponsor: DASD(SE) By Mr. Pooyan Behnamghader 5 th Annual SERC Doctoral Students Forum November 7, 2017 FHI 360

More information

Data for LibreOffice developerss

Data for LibreOffice developerss s Markus Mohrhard 2016-04-29 1 Topic Huge project A lot of data to make life of a developer easier Where do I find these information? How do I use them? Limitations Ideas 2 Current data 3 Devcentral Devcentral.libreoffice.org

More information

Comparing Software Abstractions Baby Steps. Michael Hansen Lab Lunch Talk 2011

Comparing Software Abstractions Baby Steps. Michael Hansen Lab Lunch Talk 2011 Comparing Software Abstractions Baby Steps Michael Hansen Lab Lunch Talk 2011 Comparing Abstractions Need objective comparison method Libraries (OpenGL vs. Direct3D) Language constructs ( -expressions,

More information

AppScan Deployment APPLICATION SECURITY SERVICES. Colin Bell. Applications Security Senior Practice Manager

AppScan Deployment APPLICATION SECURITY SERVICES. Colin Bell. Applications Security Senior Practice Manager APPLICATION SECURITY SERVICES AppScan Deployment Colin Bell Applications Security Senior Practice Manager Copyright 2017 HCL Products & Platforms www.hcltech.com The Evolution of Devops 2001 - Continuous

More information

Continuous Integration INRIA

Continuous Integration INRIA Vincent Rouvreau - https://sed.saclay.inria.fr February 28, 2017 Contents 1 Preamble In this exercise, we will focus on the configuration of Jenkins for: 1. A simple aspect of C++ unit testing 2. An aspect

More information

Introduction to code quality

Introduction to code quality Introduction to code quality Maarten Vandersteegen De Nayer, KU Leuven October 25, 2017 0 What? 2 0 Demo project 3 0 Demo project - hardware 4 0 Demo project - software 5 https://github.com/maartenvds/rpi-ci-lamp

More information

Simulink Verification and Validation

Simulink Verification and Validation Simulink Verification and Validation Mark Walker MathWorks 7 th October 2014 2014 The MathWorks, Inc. 1 V Diagrams 3 When to Stop? A perfectly tested design would never be released Time spent on V&V is

More information

Software Tools for Source Code Analysis

Software Tools for Source Code Analysis Software Tools for Source Code Analysis Alexandru GROSU IT&C Security Master Department of Economic Informatics and Cybernetics The Bucharest University of Economic Studies ROMANIA alex.grosu@gmail.com

More information

QPack Release Notes. SP Reviewing the changes between SP to November 2012

QPack Release Notes. SP Reviewing the changes between SP to November 2012 QPack Release Notes SP 6.2.0.35 Reviewing the changes between SP 6.2.0.29 to 6.2.0.35 November 2012 1 QPack Web: 2.0.0.164 Client Setup: 1.3.1.2 Upgrade Setup: 4.0.0.8 QPack Alert Service: 1.0.0.30 Word

More information

Management. Software Quality. Dr. Stefan Wagner Technische Universität München. Garching 28 May 2010

Management. Software Quality. Dr. Stefan Wagner Technische Universität München. Garching 28 May 2010 Technische Universität München Software Quality Management Dr. Stefan Wagner Technische Universität München Garching 28 May 2010 Some of these slides were adapted from the tutorial "Clone Detection in

More information

Copyright 2015 MathEmbedded Ltd.r. Finding security vulnerabilities by fuzzing and dynamic code analysis

Copyright 2015 MathEmbedded Ltd.r. Finding security vulnerabilities by fuzzing and dynamic code analysis Finding security vulnerabilities by fuzzing and dynamic code analysis Security Vulnerabilities Top code security vulnerabilities don t change much: Security Vulnerabilities Top code security vulnerabilities

More information

Automation and Testing for Simplified Software Deployment

Automation and Testing for Simplified Software Deployment CLICdp-Conf-2018-013 03 December 2018 Automation and Testing for Simplified Software Deployment A. Sailer, M. Petric CERN, Geneva, Switzerland Abstract Creating software releases is one of the more tedious

More information

The TDAQ Analytics Dashboard: a real-time web application for the ATLAS TDAQ control infrastructure

The TDAQ Analytics Dashboard: a real-time web application for the ATLAS TDAQ control infrastructure The TDAQ Analytics Dashboard: a real-time web application for the ATLAS TDAQ control infrastructure Giovanna Lehmann Miotto, Luca Magnoni, John Erik Sloper European Laboratory for Particle Physics (CERN),

More information

Laboratorio di Tecnologie dell'informazione

Laboratorio di Tecnologie dell'informazione Laboratorio di Tecnologie dell'informazione Ing. Marco Bertini marco.bertini@unifi.it http://www.micc.unifi.it/bertini/ Code testing: techniques and tools Testing can show the presence of errors, but not

More information

for Q-CHECKER Text version 15-Feb-16 4:49 PM

for Q-CHECKER Text version 15-Feb-16 4:49 PM Q-MONITOR 5.4.X FOR V5 for Q-CHECKER USERS GUIDE Text version 15-Feb-16 4:49 PM Orientation Symbols used in the manual For better orientation in the manual the following symbols are used: Warning symbol

More information

Darshan Institute of Engineering & Technology for Diploma Studies

Darshan Institute of Engineering & Technology for Diploma Studies CODING Good software development organizations normally require their programmers to follow some welldefined and standard style of coding called coding standards. Most software development organizations

More information

PSICon Daniel G. A. Smith The Molecular Sciences Software molssi.org

PSICon Daniel G. A. Smith The Molecular Sciences Software molssi.org PSICon 2018 Daniel G. A. Smith The Molecular Sciences Software Institute @dga_smith molssi.org MolSSI Education Initiatives How do we change the software practices of an entire field? Primary objectives:

More information

HPE Security Fortify Plugins for Eclipse Software Version: Installation and Usage Guide

HPE Security Fortify Plugins for Eclipse Software Version: Installation and Usage Guide HPE Security Fortify Plugins for Eclipse Software Version: 16.10 Installation and Usage Guide Document Release Date: April 2016 Software Release Date: April 2016 Legal Notices Warranty The only warranties

More information

Security DevOps. Automation von Security-Checks in der Build-Kette. Christian

Security DevOps. Automation von Security-Checks in der Build-Kette. Christian Security DevOps Automation von Security-Checks in der Build-Kette Christian Schneider @cschneider4711 `whoami` www. mail@} Christian-Schneider.net» Software Developer, Whitehat Hacker & Trainer» Freelancer

More information

Scientific Software Development with Eclipse

Scientific Software Development with Eclipse Scientific Software Development with Eclipse A Best Practices for HPC Developers Webinar Gregory R. Watson ORNL is managed by UT-Battelle for the US Department of Energy Contents Downloading and Installing

More information

Introduction to Software Engineering

Introduction to Software Engineering Introduction to Software Engineering (CS350) Lecture 17 Jongmoon Baik Testing Conventional Applications 2 Testability Operability it operates cleanly Observability the results of each test case are readily

More information

HPE Security Fortify Plugins for Eclipse

HPE Security Fortify Plugins for Eclipse HPE Security Fortify Plugins for Eclipse Software Version: 17.20 Installation and Usage Guide Document Release Date: November 2017 Software Release Date: November 2017 Legal Notices Warranty The only warranties

More information

Improved Web Development using HTML-Kit

Improved Web Development using HTML-Kit Improved Web Development using HTML-Kit by Peter Lavin April 21, 2004 Overview HTML-Kit is a free text editor that will allow you to have complete control over the code you create and will also help speed

More information

Advanced Software Development with MATLAB

Advanced Software Development with MATLAB Advanced Software Development with MATLAB From research and prototype to production 2017 The MathWorks, Inc. 1 What Are Your Software Development Concerns? Accuracy Compatibility Cost Developer Expertise

More information

DEBUGGING: DYNAMIC PROGRAM ANALYSIS

DEBUGGING: DYNAMIC PROGRAM ANALYSIS DEBUGGING: DYNAMIC PROGRAM ANALYSIS WS 2017/2018 Martina Seidl Institute for Formal Models and Verification System Invariants properties of a program must hold over the entire run: integrity of data no

More information

Software Security IV: Fuzzing

Software Security IV: Fuzzing 1 Software Security IV: Fuzzing Chengyu Song Slides modified from Dawn Song 2 Administrivia Homework1 Due: Friday Oct 27 11:59pm Questions regarding reading materials Talk Security R&D in a Security Company:

More information

Belle II Software and Computing

Belle II Software and Computing Belle II Software and Computing LMU Munich Journée Belle II @ LAL 2017-03-22 Computing Model >10 PB of raw data per year Distributed computing model Share per fraction of PhDs More than 10 PB of raw data

More information

Steven Davies Marc Roper Department of Computer and Information Sciences University of Strathclyde. International Workshop on Program Debugging, 2013

Steven Davies Marc Roper Department of Computer and Information Sciences University of Strathclyde. International Workshop on Program Debugging, 2013 1/22 Bug localisation through diverse sources of information Steven Davies Marc Roper Department of Computer and Information Sciences University of Strathclyde International Workshop on Program Debugging,

More information

CSC 405 Introduction to Computer Security Fuzzing

CSC 405 Introduction to Computer Security Fuzzing CSC 405 Introduction to Computer Security Fuzzing Alexandros Kapravelos akaprav@ncsu.edu Let s find some bugs (again) We have a potentially vulnerable program The program has some inputs which can be controlled

More information

PyROOT: Seamless Melting of C++ and Python. Pere MATO, Danilo PIPARO on behalf of the ROOT Team

PyROOT: Seamless Melting of C++ and Python. Pere MATO, Danilo PIPARO on behalf of the ROOT Team PyROOT: Seamless Melting of C++ and Python Pere MATO, Danilo PIPARO on behalf of the ROOT Team ROOT At the root of the experiments, project started in 1995 Open Source project (LGPL2) mainly written in

More information

Cppcheck Cppcheck 1.66

Cppcheck Cppcheck 1.66 Cppcheck 1.66 i Cppcheck 1.66 Cppcheck 1.66 ii COLLABORATORS TITLE : Cppcheck 1.66 ACTION NAME DATE SIGNATURE WRITTEN BY 2013-12-23 REVISION HISTORY NUMBER DATE DESCRIPTION NAME Cppcheck 1.66 iii Contents

More information

Language Translation. Compilation vs. interpretation. Compilation diagram. Step 1: compile. Step 2: run. compiler. Compiled program. program.

Language Translation. Compilation vs. interpretation. Compilation diagram. Step 1: compile. Step 2: run. compiler. Compiled program. program. Language Translation Compilation vs. interpretation Compilation diagram Step 1: compile program compiler Compiled program Step 2: run input Compiled program output Language Translation compilation is translation

More information

Metrics and OO. SE 3S03 - Tutorial 12. Alicia Marinache. Week of Apr 04, Department of Computer Science McMaster University

Metrics and OO. SE 3S03 - Tutorial 12. Alicia Marinache. Week of Apr 04, Department of Computer Science McMaster University and OO OO and OO SE 3S03 - Tutorial 12 Department of Computer Science McMaster University Complexity Lorenz CK Week of Apr 04, 2016 Acknowledgments: The material of these slides is based on [1] (chapter

More information

Hardening the C++ Standard Template Library

Hardening the C++ Standard Template Library Hardening the C++ Standard Template Library Marshall Clow Qualcomm Euro LLVM, April 17, 2018 Marshall Clow (Qualcomm) Hardening the C++ Standard Template Library Euro LLVM, April 17, 2018 1 / 16 About

More information

Compiling Techniques

Compiling Techniques Lecture 1: Introduction 20 September 2016 Table of contents 1 2 3 Essential Facts Lecturer: (christophe.dubach@ed.ac.uk) Office hours: Thursdays 11am-12pm Textbook (not strictly required): Keith Cooper

More information

CSE 333 Lecture 1 - Systems programming

CSE 333 Lecture 1 - Systems programming CSE 333 Lecture 1 - Systems programming Hal Perkins Department of Computer Science & Engineering University of Washington Welcome! Today s goals: - introductions - big picture - course syllabus - setting

More information

Advanced Software Testing Testing Code with Static Analysis

Advanced Software Testing Testing Code with Static Analysis Advanced Software Testing Testing Code with Static Analysis Advanced Software Testing A series of webinars, this one excerpted from Advanced Software Testing: V3, a book for technical test analysts, programmers,

More information

Introduction to Programming in C Department of Computer Science and Engineering. Lecture No. #13. Loops: Do - While

Introduction to Programming in C Department of Computer Science and Engineering. Lecture No. #13. Loops: Do - While Introduction to Programming in C Department of Computer Science and Engineering Lecture No. #13 Loops: Do - While So far we have been using while loops in C, now C programming language also provides you

More information

Moving From Studio to Atelier. Wouter Dupré Sales Engineer

Moving From Studio to Atelier. Wouter Dupré Sales Engineer Moving From Studio to Atelier Wouter Dupré Sales Engineer Before we start the journey Introduction Atelier: What is it? Atelier is a modern IDE for applications developers Implemented as a plug-in to Eclipse

More information

Creating a Corporate Taxonomy. Internet Librarian November 2001 Betsy Farr Cogliano

Creating a Corporate Taxonomy. Internet Librarian November 2001 Betsy Farr Cogliano Creating a Corporate Taxonomy Internet Librarian 2001 7 November 2001 Betsy Farr Cogliano 2001 The MITRE Corporation Revised October 2001 2 Background MITRE is a not-for-profit corporation operating three

More information

manifold Documentation

manifold Documentation manifold Documentation Release 0.0.1 Open Source Robotics Foundation Mar 04, 2017 Contents 1 What is Manifold? 3 2 Installation 5 2.1 Ubuntu Linux............................................... 5 2.2

More information

Bug Hunting and Static Analysis

Bug Hunting and Static Analysis Bug Hunting and Red Hat Ondřej Vašík and Petr Müller 2011-02-11 Abstract Basic overview of common error patterns in C/C++, few words about defensive programming

More information

Fast dynamic program analysis Race detection. Konstantin Serebryany May

Fast dynamic program analysis Race detection. Konstantin Serebryany May Fast dynamic program analysis Race detection Konstantin Serebryany May 20 2011 Agenda Dynamic program analysis Race detection: theory ThreadSanitizer: race detector Making ThreadSanitizer

More information

Grigore Rosu Founder, President and CEO Professor of Computer Science, University of Illinois

Grigore Rosu Founder, President and CEO Professor of Computer Science, University of Illinois https://runtimeverification.com Grigore Rosu Founder, President and CEO Professor of Computer Science, University of Illinois Runtime Verification Company Licensed by University of Illinois at Urbana-Champaign

More information

Index. Wouter de Kort 2016 W. de Kort, DevOps on the Microsoft Stack, DOI /

Index. Wouter de Kort 2016 W. de Kort, DevOps on the Microsoft Stack, DOI / Index A Agile Manifesto methodologies, 6 phrases, 5 Scrum, 4 software development, 4 Sprints, 4 testers and developers, 4 Agile project management. See also Kanban and Lean techniques basics checklist,

More information

gedit developer plugins Configuring and extending gedit for development

gedit developer plugins Configuring and extending gedit for development gedit developer plugins Configuring and extending gedit for development What is gedit? gedit is a simple text editor with support for syntax highlighting that can be extended for new uses See https://live.gnome.org/gedit

More information

Text version 15-Aug-12. for Q-CHECKER V4, V5 and V6

Text version 15-Aug-12. for Q-CHECKER V4, V5 and V6 Text version 15-Aug-12 Q-MONITOR V4 for Q-CHECKER V4, V5 and V6 USERS GUIDE Orientation Symbols used in the manual For better orientation in the manual the following symbols are used: Warning symbol Tip

More information

What s New in the LLVM Compiler. Chris Lattner LLVM Chief Architect

What s New in the LLVM Compiler. Chris Lattner LLVM Chief Architect What s New in the LLVM Compiler Chris Lattner LLVM Chief Architect 2 Apple Compiler Evolution Renovating the Apple compiler landscape Phasing out GCC-based tools Driving innovation in LLVM-based technologies

More information

Manuel Oriol, CHCRC-C, Software Testing ABB

Manuel Oriol, CHCRC-C, Software Testing ABB Manuel Oriol, CHCRC-C, 08.11.2017 Software Testing Slide 1 About me 1998 2004 2005 2008 2011 Slide 2 Introduction Why do we test? Did you have to deal with testing in the past? Slide 3 Ariane 5 http://www.youtube.com/watch?v=kyurqduyepi

More information

Static Analysis of a Linux Distribution

Static Analysis of a Linux Distribution Kamil Dudka Red Hat, Inc. November 8th 2016 How to find programming mistakes efficiently? 0 users (preferably volunteers) 1 Automatic Bug Reporting Tool 2 code review, automated tests

More information

Fuzzing AOSP. AOSP for the Masses. Attack Android Right Out of the Box Dan Austin, Google. Dan Austin Google Android SDL Research Team

Fuzzing AOSP. AOSP for the Masses. Attack Android Right Out of the Box Dan Austin, Google. Dan Austin Google Android SDL Research Team Fuzzing AOSP For the Masses AOSP for the Masses Attack Android Right Out of the Box Dan Austin, Google Dan Austin Google Android SDL Research Team Exploitation: Find the Needle Needles are Interesting

More information

Construction IC User Guide

Construction IC User Guide Construction IC User Guide The complete source of project, company, market and theme information for the global construction industry clientservices.construction@globaldata.com https://construction.globaldata.com

More information

Simplifier la mise en production d applications MATLAB. Marc Wolff Application Engineer MathWorks 1

Simplifier la mise en production d applications MATLAB. Marc Wolff Application Engineer MathWorks 1 Simplifier la mise en production d applications MATLAB Marc Wolff Application Engineer MathWorks marc.wolff@mathworks.fr 1 What if you could turn a MATLAB application into an interactive standalone application?

More information

Static Analysis in C/C++ code with Polyspace

Static Analysis in C/C++ code with Polyspace 1 Static Analysis in C/C++ code with Polyspace Yongchool Ryu Application Engineer gary.ryu@mathworks.com 2016 The MathWorks, Inc. 2 Agenda Efficient way to find problems in Software Category of Static

More information

Struggling to Integrate Selenium into Your Ice Age Test Management Tools?

Struggling to Integrate Selenium into Your Ice Age Test Management Tools? WWW.PLUTORA.COM SOLUTION BRIEF Struggling to Integrate Selenium into Your Ice Age Test Management Tools? You want Selenium. Your team wants Selenium. But your outdated testing tools don t work with it.

More information

THE GREAT CONSOLIDATION: ENTERTAINMENT WEEKLY MIGRATION CASE STUDY JON PECK, MATT GRILL, PRESTON SO

THE GREAT CONSOLIDATION: ENTERTAINMENT WEEKLY MIGRATION CASE STUDY JON PECK, MATT GRILL, PRESTON SO THE GREAT CONSOLIDATION: ENTERTAINMENT WEEKLY MIGRATION CASE STUDY JON PECK, MATT GRILL, PRESTON SO Slides: http://goo.gl/qji8kl WHO ARE WE? Jon Peck - drupal.org/u/fluxsauce Matt Grill - drupal.org/u/drpal

More information

The Now Platform Reference Guide

The Now Platform Reference Guide The Now Platform Reference Guide A tour of key features and functionality START Introducing the Now Platform Digitize your business with intelligent apps The Now Platform is an application Platform-as-a-Service

More information

LLVM An Introduction. Linux Collaboration Summit, April 7, 2011 David Kipping, Qualcomm Incorporated

LLVM An Introduction. Linux Collaboration Summit, April 7, 2011 David Kipping, Qualcomm Incorporated LLVM An Introduction Linux Collaboration Summit, April 7, 2011 David Kipping, Qualcomm Incorporated 2 LLVM An Introduction LLVM Vision and Approach Primary mission: build a set of modular compiler components:

More information

Sample Exam. Advanced Test Automation - Engineer

Sample Exam. Advanced Test Automation - Engineer Sample Exam Advanced Test Automation - Engineer Questions ASTQB Created - 2018 American Software Testing Qualifications Board Copyright Notice This document may be copied in its entirety, or extracts made,

More information

Getting Started with the ArcGIS API for JavaScript. Julie Powell, Paul Hann

Getting Started with the ArcGIS API for JavaScript. Julie Powell, Paul Hann Getting Started with the ArcGIS API for JavaScript Julie Powell, Paul Hann Esri Developer Summit Berlin November 19 2012 Getting Started with the ArcGIS API for JavaScript ArcGIS for Server Is a Platform

More information

Software Design & Evolution. Lecture 04. You cannot control what you cannot measure. Metrics & Problem Detection. Michele Lanza

Software Design & Evolution. Lecture 04. You cannot control what you cannot measure. Metrics & Problem Detection. Michele Lanza Software Design & Evolution Lecture 04 Michele Lanza Metrics & Problem Detection Metrics? Don t trust them Michele Lanza & Radu Marinescu Object-Oriented Metrics in Practice Using Software Metrics to Characterize,

More information

IBM Software Group. Code Coverage

IBM Software Group. Code Coverage IBM Software Group Code Coverage Jon Sayles/IBM jsayles@us.ibm.com October 1 st, 2018 Code Coverage Overview Extension to Debugging: Tracks lines of code that have been executed during test Improves application

More information

New features in AddressSanitizer. LLVM developer meeting Nov 7, 2013 Alexey Samsonov, Kostya Serebryany

New features in AddressSanitizer. LLVM developer meeting Nov 7, 2013 Alexey Samsonov, Kostya Serebryany New features in AddressSanitizer LLVM developer meeting Nov 7, 2013 Alexey Samsonov, Kostya Serebryany Agenda AddressSanitizer (ASan): a quick reminder New features: Initialization-order-fiasco Stack-use-after-scope

More information

Roster Central v2.0. User Guide

Roster Central v2.0. User Guide Roster Central v2.0 User Guide Version 0.4 Status Final Issue Date 04/02/2009 1. Log into Roster Central 2. Click on the Change Password link displayed in the left of the title bar The change password

More information

Baseline Testing Services. Whitepaper Vx.x

Baseline Testing Services. Whitepaper Vx.x Whitepaper Vx.x 2018-04 Table of Contents 1 Introduction... 3 2 What is Baseline Testing?... 3 3 Customer Challenge... 3 4 Project Details... 3 4.1 First Steps... 3 4.2 Project Management... 3 4.3 Software

More information

What is JIRA? software development tool. planning and tracking the projects progress and supporting the team collaboration

What is JIRA? software development tool. planning and tracking the projects progress and supporting the team collaboration Jakub Sykora What is JIRA? software development tool planning and tracking the projects progress and supporting the team collaboration supports both Agile (Scrum & Kanban) and waterfall methodologies What

More information

XML APIs Testing Using Advance Data Driven Techniques (ADDT) Shakil Ahmad August 15, 2003

XML APIs Testing Using Advance Data Driven Techniques (ADDT) Shakil Ahmad August 15, 2003 XML APIs Testing Using Advance Data Driven Techniques (ADDT) Shakil Ahmad August 15, 2003 Table of Contents 1. INTRODUCTION... 1 2. TEST AUTOMATION... 2 2.1. Automation Methodology... 2 2.2. Automated

More information

RELIABLE SOFTWARE SYSTEMS

RELIABLE SOFTWARE SYSTEMS gh@jpl.nasa.gov RELIABLE SOFTWARE SYSTEMS +50 1969 2019 LM: less than 10K lines of code (C-equiv) (36K ROM, 2K RAM, 43Khz cycle) Altair: est. 10M lines of code (est. 1GB RAM, est. 1Ghz cycle) 3 orders

More information

Scaling Xtext. Lieven Lemiengre

Scaling Xtext. Lieven Lemiengre Scaling Xtext Lieven Lemiengre Sigasi IDE for Hardware Description Languages VHDL, (System)Verilog Using Xtext for 4 years Large user base (commercial, free, students) Our company goal Assist hardware

More information

Continuous Integration / Continuous Testing

Continuous Integration / Continuous Testing Bitte decken Sie die schraffierte Fläche mit einem Bild ab. Please cover the shaded area with a picture. (24,4 x 7,6 cm) Continuous Integration / Continuous Testing IIC What s SW Integration? Integration

More information

Coding Tools. (Lectures on High-performance Computing for Economists VI) Jesús Fernández-Villaverde 1 and Pablo Guerrón 2 March 25, 2018

Coding Tools. (Lectures on High-performance Computing for Economists VI) Jesús Fernández-Villaverde 1 and Pablo Guerrón 2 March 25, 2018 Coding Tools (Lectures on High-performance Computing for Economists VI) Jesús Fernández-Villaverde 1 and Pablo Guerrón 2 March 25, 2018 1 University of Pennsylvania 2 Boston College Compilers Compilers

More information

Data Analytics and Dynamic Languages. Lee E. Edlefsen, Ph.D. VP of Engineering

Data Analytics and Dynamic Languages. Lee E. Edlefsen, Ph.D. VP of Engineering Data Analytics and Dynamic Languages Lee E. Edlefsen, Ph.D. VP of Engineering 1 Overview This is my perspective on the use of dynamic languages (interpreters) for data analytics (statistics) I am a long-time

More information

[Sample] Quality Report: <<project>>

[Sample] Quality Report: <<project>> Client: Document no: Author: XYZ-001-D01-A Byran Wills-Heath [Sample] Overall Score Habitability Scalability Reliability BLUEFRUIT is a Registered Trade Mark of Absolute Software Ltd Registered

More information

Bionic. Christoph. Code analysis, quality and security overview. July 26 th 2017

Bionic. Christoph. Code analysis, quality and security overview. July 26 th 2017 Bionic Code analysis, quality and security overview Christoph July 26 th 2017 stat /proc/self PhD on reflective OS architectures FOSS enthusiast (Linux fan since kernel 0.95) Tech support @ FraLUG (including

More information

JUnit and Coverage Assessment DTP Connectivity Codign Software

JUnit and Coverage Assessment DTP Connectivity Codign Software JUnit and erage Assessment DTP Connectivity Codign Software By: Joe Ponczak www.codign.com Objectives Assess current JUnit test cases Build additional JUnit tests cases using CoView Educate committers

More information

Verification and Test with Model-Based Design

Verification and Test with Model-Based Design Verification and Test with Model-Based Design Flight Software Workshop 2015 Jay Abraham 2015 The MathWorks, Inc. 1 The software development process Develop, iterate and specify requirements Create high

More information

Laboratorio di Tecnologie dell'informazione

Laboratorio di Tecnologie dell'informazione Laboratorio di Tecnologie dell'informazione Ing. Marco Bertini marco.bertini@unifi.it http://www.micc.unifi.it/bertini/ Code testing: techniques and tools Testing can show the presence of errors, but not

More information

LLVM and Clang on the Most Powerful Supercomputer in the World

LLVM and Clang on the Most Powerful Supercomputer in the World LLVM and Clang on the Most Powerful Supercomputer in the World Hal Finkel November 7, 2012 The 2012 LLVM Developers Meeting Hal Finkel (Argonne National Laboratory) LLVM and Clang on the BG/Q November

More information

A Systematic Review of Bad Smells Metrics. Luiz Paulo Coelho Ferreira

A Systematic Review of Bad Smells Metrics. Luiz Paulo Coelho Ferreira A Systematic Review of Bad Smells Metrics Luiz Paulo Coelho Ferreira Motivation One of the main goals in Software Engineering is to transform software development in a process predictable and controlled.

More information

FanChain Contract Audit

FanChain Contract Audit FanChain Contract Audit by Hosho, May 2018 Executive Summary This document outlines the overall security of FanChain s smart contract as evaluated by Hosho s Smart Contract auditing team. The scope of

More information

The main website for Henrico County, henrico.us, received a complete visual and structural

The main website for Henrico County, henrico.us, received a complete visual and structural Page 1 1. Program Overview The main website for Henrico County, henrico.us, received a complete visual and structural overhaul, which was completed in May of 2016. The goal of the project was to update

More information

Oracle Profitability and Cost Management Cloud. November 2017 Update (17.11) What s New

Oracle Profitability and Cost Management Cloud. November 2017 Update (17.11) What s New Oracle Profitability and Cost Management Cloud November 2017 Update (17.11) What s New TABLE OF CONTENTS REVISION HISTORY... 3 ORACLE PROFITABILITY AND COST MANAGEMENT CLOUD, NOVEMBER UPDATE... 3 ANNOUNCEMENTS

More information

Bazaar VCS. Concepts and Workflows

Bazaar VCS. Concepts and Workflows Bazaar VCS Concepts and Workflows Paint rollers and brushes If you want to paint, you have a choice of tools, including paint rollers and brushes. If you re painting a portrait, you would use a small brush.

More information

McAfee Security Management Center

McAfee Security Management Center Data Sheet McAfee Security Management Center Unified management for next-generation devices Key advantages: Single pane of glass across the management lifecycle for McAfee next generation devices. Scalability

More information

Software Clone Detection. Kevin Tang Mar. 29, 2012

Software Clone Detection. Kevin Tang Mar. 29, 2012 Software Clone Detection Kevin Tang Mar. 29, 2012 Software Clone Detection Introduction Reasons for Code Duplication Drawbacks of Code Duplication Clone Definitions in the Literature Detection Techniques

More information

Website review itabix.com

Website review itabix.com Website review itabix.com Generated on November 29 2018 13:43 PM The score is 52/100 SEO Content Title Web Hosting Service Domain Name, Wordpress Hosting & Web Design & Development Length : 87 Ideally,

More information

Verification and Validation

Verification and Validation Verification and Validation Minsoo Ryu Hanyang University Topics Covered 1. Verification and Validation 2. Software Inspections 3. Automated Static Analysis 4. Verification and Formal Methods 2 2 1. Verification

More information

Monitoring & Tuning Azure SQL Database

Monitoring & Tuning Azure SQL Database Monitoring & Tuning Azure SQL Database Dustin Ryan, Data Platform Solution Architect, Microsoft Moderated By: Paresh Motiwala Presenting Sponsors Thank You to Our Presenting Sponsors Empower users with

More information

Contents. Getting Set Up Contents 2

Contents. Getting Set Up Contents 2 Getting Set Up Contents 2 Contents Getting Set Up... 3 Best Practices...3 Installing the JAR File... 3 Configuring Community Manager Reports...4 Configure the Analytics Database...4 Enable the Analytics

More information

/ Cloud Computing. Recitation 7 October 10, 2017

/ Cloud Computing. Recitation 7 October 10, 2017 15-319 / 15-619 Cloud Computing Recitation 7 October 10, 2017 Overview Last week s reflection Project 3.1 OLI Unit 3 - Module 10, 11, 12 Quiz 5 This week s schedule OLI Unit 3 - Module 13 Quiz 6 Project

More information

CASE STUDY FINANCE. Enhancing software development with SQL Monitor

CASE STUDY FINANCE. Enhancing software development with SQL Monitor CASE STUDY FINANCE Enhancing software development with SQL Monitor We were using another SQL monitoring tool, but it wasn t providing us with the flexibility and features we needed. Founded in 2006, Xero

More information