Computer-Aided Software Engineering Tools – An overview.

Slides:



Advertisements
Similar presentations
.NET Technology. Introduction Overview of.NET What.NET means for Developers, Users and Businesses Two.NET Research Projects:.NET Generics AsmL.
Advertisements

A Taste of Visual Studio 2005 David Grey. Introduction In this session we will introduce Visual Studio 2005 and its features and examine those features.
Module 13: Performance Tuning. Overview Performance tuning methodologies Instance level Database level Application level Overview of tools and techniques.
Software engineering tools for web development Jim Briggs 1CASE.
Programming Paradigms and languages
Prashant Lambat Sr. Manager SQA Engineering Symantec Corporation, Pune Date: 29 th January 2011.
® IBM Software Group © 2010 IBM Corporation What’s New in Profiling & Code Coverage RAD V8 April 21, 2011 Kathy Chan
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Chapter 9_3 Following Instructions: Principles of Computer Operation.
SE 450 Software Processes & Product Metrics 1 Defect Removal.
Systems Analysis and Design in a Changing World, 6th Edition
Computer Software.
Microsoft ® Official Course Monitoring and Troubleshooting Custom SharePoint Solutions SharePoint Practice Microsoft SharePoint 2013.
Visual Studio 2005 Team System: Enterprise Class Source Control & Work Item Tracking Ajay Sudan Microsoft Corporation
Automation Testing Tools
Unit VI. Keil µVision3/4 IDE for 8051 Tool for embedded firmware development Steps for using keil.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Testing Tools. Categories of testing tools Black box testing, or functional testing Testing performed via GUI. The tool helps in emulating end-user actions.
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
Revision Control and Issue Tracking Andrew Watkins.
Tejasvi Kumar Technology Specialist – VSTS Microsoft Corporation
What’s New in Automated Software Testing and ClearQuest Shmuel Bashan IBM Rational
DEV 303 Visual Studio "Whidbey" Enterprise Tools: Source Control and Work Item Tracking Brian Harry Product Unit Manager Microsoft Visual Studio.
Just as there are many human languages, there are many computer programming languages that can be used to develop software. Some are named after people,
1 3. Computing System Fundamentals 3.1 Language Translators.
Systems Software Operating Systems. What is software? Software is the term that we use for all the programs and data that we use with a computer system.
Computer Science and Engineering The Ohio State University  Widely used, especially in the opensource community, to track all changes to a project and.
Martin Schulz Center for Applied Scientific Computing Lawrence Livermore National Laboratory Lawrence Livermore National Laboratory, P. O. Box 808, Livermore,
Debugging and Profiling With some help from Software Carpentry resources.
® IBM Software Group © 2006 IBM Corporation PurifyPlus on Linux / Unix Vinay Kumar H S.
COMPUTER SOFTWARE Management Information Systems.
Building More Reliable And Better Performing Web Applications With Visual Studio 2005 Team System Gabriel Marius TLN312 Program Manager Microsoft Corporation.
Computing System Fundamentals 3.1 Language Translators.
CSCI Rational Purify 1 Rational Purify Overview Michel Izygon - Jim Helm.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University IWPSE 2003 Program.
Confidential Continuous Integration Framework (CIF) 5/18/2004.
LOGOPolyUnpack: Automating the Hidden-Code Extraction of Unpack-Executing Malware Royal, P.; Halpin, M.; Dagon, D.; Edmonds, R.; Wenke Lee; Computer Security.
Testing in Android. Methods Unit Testing Integration Testing System Testing Regression Testing Compatibility Testing Black Box (Functional) White Box.
 Programming - the process of creating computer programs.
David Streader Computer Science Victoria University of Wellington Copyright: David Streader, Victoria University of Wellington Debugging COMP T1.
May08-21 Model-Based Software Development Kevin Korslund Daniel De Graaf Cory Kleinheksel Benjamin Miller Client – Rockwell Collins Faculty Advisor – Dr.
Survey of Tools to Support Safe Adaptation with Validation Alain Esteva-Ramirez School of Computing and Information Sciences Florida International University.
JavaScript 101 Introduction to Programming. Topics What is programming? The common elements found in most programming languages Introduction to JavaScript.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
Tool Support for Testing Classify different types of test tools according to their purpose Explain the benefits of using test tools.
Automation Testing Trainer: Eran Ruso. Training Agenda Automation Testing Introduction Microsoft Automation Testing Tool Box Coded UI Test and Unit Test.
Introduction to Performance Tuning Chia-heng Tu PAS Lab Summer Workshop 2009 June 30,
Debuggers. Errors in Computer Code Errors in computer programs are commonly known as bugs. Three types of errors in computer programs –Syntax errors –Runtime.
Software Development Languages and Environments. Computer Languages Just as there are many human languages, there are many computer programming languages.
Code/Project Management On Screwdrivers and Hammers.
SOFTWARE TESTING TRAINING TOOLS SUPPORT FOR SOFTWARE TESTING Chapter 6 immaculateres 1.
Chapter Goals Describe the application development process and the role of methodologies, models, and tools Compare and contrast programming language generations.
Tool Support for Testing
Building Enterprise Applications Using Visual Studio®
Lecture 1b- Introduction
YAHMD - Yet Another Heap Memory Debugger
Introduction to programming
Eclipse Test & Performance Tools Platform Project (TPTP)
Unified Modeling Language
Maintaining software solutions
TRANSLATORS AND IDEs Key Revision Points.
11/12/2018 6:58 PM © 2004 Microsoft Corporation. All rights reserved.
Chapter 1 Introduction(1.1)
DAT381 Team Development with SQL Server 2005
SSDT and Database Project Basics
Dynamic Program Analysis
Branches And Releases Branch for Urgent Bug Branch for Feature A
Final Review 27th March Final Review 27th March 2019.
SeeSoft A Visualization Tool..
Presentation transcript:

Computer-Aided Software Engineering Tools – An overview

To build complicated system you need complicate tools

Software Tool Summary Version control Issue Tracking System (bug report system) Performance evaluation Tools Debugging Tools Static Analysis Tools Testing Tools Management Tools Daily Build Tools ALM (SLM) (Software Life Cycle Management tools)

Version Control Major features – Checkout – Commit – Branch – Merge – Conflict detection

Issue Tracking System (Bug Report System) Trac (lightweight) Bugzilla Other Commercial tools

Performance Tools In software engineering, program profiling, software profiling or simply profiling, a form of dynamic program analysis (as opposed to static code analysis), is the investigation of a program's behavior using information gathered as the program executes. The usual purpose of this analysis is to determine which sections of a program to optimize - to increase its overall speed, decrease its memory requirement or sometimes both.software engineeringdynamic program analysisstatic code analysisoptimize A (code) profiler is a performance analysis tool that, most commonly, measures only the frequency and duration of function calls, but there are other specific types of profilers (e.g. memory profilers) in addition to more comprehensive profilers, capable of gathering extensive performance data.memory profilers An instruction set simulator which is also — by necessity — a profiler, can measure the totality of a program's behaviour from invocation to termination.instruction set simulator

List of Profilers Some well-known profilers DevPartner, Xperf, gprof

Gprof (Gnu Prof)

Debugging Tools Visual Debugger Debugging Visualization – DDD – xDIVA xDIVA Remote Debugging Memory Debugging tools – Purify – Purify is a memory debugger program used by software developers to detect memory access errors in programs, especially those written in C or C++. It was originally written by Reed Hastings of Pure Software. Pure Software later merged with Atria Software to form Pure Atria Software, which in turn was later acquired by Rational Software, which in turn was acquired by IBM. It is functionally similar to other memory debuggers, such as Insure++ and Valgrind.memory debuggersoftwareCC++Reed HastingsPure SoftwareRational SoftwareIBMInsure++Valgrind

Static Analyzers Static code analysis is the analysis of computer software that is performed without actually executing programs built from that software (analysis performed on executing programs is known as dynamic analysis). In most cases the analysis is performed on some version of the source code and in the other cases some form of the object code. The term is usually applied to the analysis performed by an automated tool, with human analysis being called program understanding, program comprehension or code review.analysis of computer softwaredynamic analysissource codeobject codeautomated toolprogram comprehensioncode review Tool type – Code reviewer – Security scan Example system – Source code analysis - Klocwork

Testing Tools Code Coverage – Bullseye Test automation tools Unit testing tools Capture Recording (applications with GUI) Stress Testing tools Load testing tool

Project Management Tools Microsoft project

Build Automation System Build automation is the act of scripting or automating a wide variety of tasks that software developers do in their day-to- day activities including things like: compiling computer source code into binary code packaging binary code running testsscripting compilingsource code deployment to production systems creating documentation and or release notes Comercial tools – Microsoft VSTS OpenSource – CruiseControl