Presentation is loading. Please wait.

Presentation is loading. Please wait.

Parasoft : Improving Productivity in IT Organizations David McCaw.

Similar presentations


Presentation on theme: "Parasoft : Improving Productivity in IT Organizations David McCaw."— Presentation transcript:

1 Parasoft : Improving Productivity in IT Organizations David McCaw

2 Objectives Reduce the overall cost of delivering software Introduce a non-intrusive process that will improve the productivity of the development organization over time Automate previously manual tasks Establish a regression testing infrastructure to help manage change in your applications; ultimately reducing cost and speeding time to market

3 Complex Testing Problem Symptoms not Bugs Simple Testing Problem Catalysts to Bugs Implementation Layer Interface / Application Layer Capers Jones Study

4 How this is applied to software development projects Archived Data 28,000,000 lines of code 120 developers Process Improvement 10x Productivity Improvement Quality becomes a side effect

5 How is this done?  Principles: Basic rules for structuring and managing software projects through defect prevention  Practices: Functional embodiments of the principles  Policies: Managerial embodiments of the principles

6 Principle 1: Establishment of Infrastructure “Build a strong foundation through integration of people and technology”  People  Configurable technologies  Integration of the people and the technology

7 Principle 2: Application of General Best Practices “Learn from others’ mistakes”  Best practices from industry experts  Prevent common errors

8 Implementation / Code Level Analysis  Enforcement of Best Practices  Code Review support  Code Flow analysis  Automated Test Case Generation  Construction & Functional Testing  Code Coverage  Test Case Management  Regression Testing  Identifies code implementation flaws early!  Increases the quality of your code  Provides easier-to-maintain code  Scales to supports the group, project, division, as well as corporate standards  Supports easy training/transition of personnel/projects  Supports all “stages” of development  QuickFixes and Recommendations

9 Implementation / Code Level Analysis  Enforcement of Best Practices  Code Review support  Code Flow analysis  Automated Test Case Generation  Construction & Functional Testing  Code Coverage  Test Case Management  Regression Testing  Static Analysis addresses 80% of Code Review tasks  Identify algorithm, design and implementation flaws  Promotes flexibility in the development team  Ensures documentation of development decisions  Problem: TIME  Code Review Module automates remote peer-to-peer and pair programming

10 Implementation / Code Level Analysis  Enforcement of Best Practices  Code Review support  Code Flow analysis  Automated Test Case Generation  Construction & Functional Testing  Code Coverage  Test Case Management  Regression Testing  Analyzes how the code is used  Identifies dangerous paths in the code  Missing/incomplete requirements  Real null pointer problems  Resource leaks  Security vulnerabilities  XML/SQL Injects, etc.

11 Implementation / Code Level Analysis  Enforcement of Best Practices  Code Review support  Code Flow analysis  Automated Test Case Generation  Construction & Functional Testing  Code Coverage  Test Case Management  Regression Testing  Auto generation of test harnesses  Auto generation of code based test cases  Auto generation of stubs for external calls  Non-intrusive to development process  High productivity solution for creating everything necessary to support testing focus

12 Implementation / Code Level Analysis  Enforcement of Best Practices  Code Review support  Code Flow analysis  Automated Test Case Generation  Construction & Functional Testing  Code Coverage  Test Case Management  Regression Testing  Tests for quality under adverse conditions  Automatically creates test case inputs to test for quality under adverse conditions  Monitored Functional Test cases  Raises red flags in code base  Easily create test cases to test expected results based on controlled inputs  Drives quality and functionality to help meet requirements

13 Implementation / Code Level Analysis  Enforcement of Best Practices  Code Review support  Code Flow analysis  Automated Test Case Generation  Construction & Functional Testing  Code Coverage  Test Case Management  Regression Testing  Test case and cumulative code coverage  Visibility to help “extend” coverage via user-defined test cases  Code not covered is code not tested!  Coverage supported against single unit and multiple units

14 Implementation / Code Level Analysis  Enforcement of Best Practices  Code Review support  Code Flow analysis  Automated Test Case Generation  Construction & Functional Testing  Code Coverage  Test Case Management  Regression Testing  Test suite kept with class/method  Source based tests  Testing artifacts can be controlled along with source  Easy for developers/testers to evolve test suites  Easy for developers/testers to share test suites with others

15 Implementation / Code Level Analysis  Enforcement of Best Practices  Code Review support  Code Flow analysis  Automated Test Case Generation  Construction & Functional Testing  Code Coverage  Test Case Management  Regression Testing  Prior test run results kept with project  Click of button runs regression tests  Easily configured for nightly builds  Maintains quality of your code as it evolves

16 Principle 5: Automation “Let the computer do it”  System complexity makes automation a necessity  Automation…  Improves job satisfaction and productivity  Improves product quality  Facilitates human communication  Helps to implement and verify best practices and organizational standards  Facilitates control of the software processes by collecting measurement data

17 Infrastructure Supporting Human Mind Auto verification of policy adherence Support for auto rebuilds Auto verification of internal structure Auto verification that functionality did not change Support for peer code reviews

18 Principle 4: Measurement and Tracking of Project Status “Understand the past and present to make decisions about the future”  Identify problems promptly  Assess product quality and deployment readiness  Requires automated reporting system

19 GRS Visibility Did the code change? Did it build? Was it reviewed? Did it implement requirements? Did it fix bugs? Does it work?

20 Team-wide Deployment and Workflow SCM Source Control code & tests TCM Team Configuration Manager Test Results Scheduled Test Server Analytical Dashboard Professional Editions Server Edition (Batch Mode) Architect Edition Team Coding Standards Developer Machines Architect / Technical lead Nightly Results Program Manager Architect

21 Developer Visibility

22 Where does this lead?  Better software production methods  Higher productivity  Better software quality


Download ppt "Parasoft : Improving Productivity in IT Organizations David McCaw."

Similar presentations


Ads by Google