Conference Presentations

An Incremental Approach to Setting Up a Data Warehouse

With the growing popularity of agile methods like eXtreme Programming and the emergence of automated, open source unit testing frameworks such as JUnit, the idea that developers should actively participate in testing their own code finally is gaining broad acceptance. Numerous studies and countless examples show the tremendous benefits of having a suite of unit tests created by developers and always executed before integrating units into a build. Unfortunately, the majority of development organizations attempting to implement automated developer testing fail to achieve long-term success. Alberto Savoia shares the underlying reasons that most developer testing efforts fail to take off and, more importantly, offers his "Seven Laws of Developer Testing." Arm yourself and your organization with the information and tools you need to make managed developer testing your best bet for delivering significantly better software.

James Ferree, Motorola
A Manager's Guide to Getting the Most Out of Testing and QA

Like other aspects of development, information about testing and QA practices is often buried in technical jargon and hidden from senior management's true understanding. Although corporations have many choices to protect their customers from poor quality software, these choices are so complex that many decision-makers do not understand them well enough. This lack of understanding is dangerous both to the companies and to the test organizations working for them. Whether you are among the decision-makers or someone who needs to influence them, Brian Warren offers, in business terms, a flexible model of how testing and QA can fit into the development organization as seen by IEEE, ASQ, CMMI®, RUP, and others. He provides recommendations for integrating testing and QA functions into your organization and how these functions now are being impacted by the 2002 Sarbanes-Oxley Act.

Brian Warren, Ceridian Corporation
Better Software Conference & EXPO 2004: The Seven Habits of Highly Insecure Software

Over the past few years Herbert Thompson and his cohorts have scoured bug databases for the most malevolent and destructive security bugs ever to infest a released binary. Through that search they found that common characteristics and habits emerged-creating temporary files with secure data, trusting that system calls will succeed, foolishly relying on insecure third party components, and many others. In this session, he offers a startling and even scary accounting of the top seven habits of insecure software. Take away a red-teaming strategy that has broken some of the world's most secure software under testing contracts with Microsoft, IBM, the US DoD, and many others. Use this approach to make your software more secure, and you can sleep better at night.

  • The differences between security defects and other common errors
  • An intimate understanding of security faults as seen by hackers
Hugh Thompson, Florida Institute of Technology
QA Practice in High Maturity Organizations

If your organization aspires to higher maturity, such as CMMI® Level 4 or 5, your Quality Assurances process capability must measure up. As process action team leader, group process assessor, and trainer, Steven Thompson has developed, deployed, and maintained systems for quantitatively managing and continuously improving QA activities in his organization. These systems were formally assessed as satisfying CMMI® Capability Level 5 for the Process and Product Quality Assurance process area, and his organization has been formally assessed at CMM®/CMMI® Level 5 Maturity. Join Steven as he describes his journey growing a QA process capability to Level 5 in a Level 5 company. Learn about their quality management system, encompassing planning and reporting, and find out more about their QA Quantitative Management Model and QA Continuous Improvement Model.

  • Mechanisms to quantitatively manage and improve QA
Steve Thompson, BAE Systems
Take Your Iterative Development Practices to the Next Level

Whether you are using the Rational Unified Process (RUP), agile methods, spiral development, or a home grown iterative approach, there are some fundamental practices that can make a big difference. Esther Derby looks at ways to manage schedules and resources, keep progress visible, mitigate risk, and dynamically improve estimates throughout the project. After comparing and contrasting popular iterative process models, Esther offers practical, easy to implement practices to enhance your current process. You will take away some process "gems" that she has collected in her consulting practice, including: use of product backlogs for driving ownership and priorities, burn down charts, ROI measures of requirements, and ways to obtain vital feedback at every iteration.

  • The advantages and disadvantages of different iterative development models
  • A return on investment (ROI) measure for more detailed requirements
Esther Derby, Esther Derby Associates Inc
Process Improvement: Based on Models, Implemented in Reality

Experience demonstrates that no matter the end product-financial services, insurance, beer, construction, etc.-the foundation for and focus on implementing process improvement remains consistent. Using models as the basis for improving processes makes success more likely; however, no single model has all the right answers. In this presentation, Barbara Ainsworth provides an overview and comparison of popular software process models: Software Engineering Institute's Software CMM® and CMMI®; Project Management Institute’s PMI Common Body of Knowledge; and Quality Assurance Institute's Bodies of Knowledge for Quality Assurance and Testing. See the influence of both the old and new quality masters-Juran, Crosby, Humphrey, and others-and learn from them how to get your process improvement initiative on the right track.

  • An overview of popular software process models
Barbara Ainsworth, ProcessPlusOne
Identifying Your Organization's "Best" Practices - A Measured Approach

Through the application of a rigorous measurement model, which includes both quantitative and qualitative analysis, organizations can identify high impact areas of software development performance. With these organizational practices identified, you can more effectively align process improvement programs and realize significant gains in productivity and quality. Using three case studies, David Herron describes what leading organizations are doing to reduce costs and to produce higher quality deliverables. One company was able to measure and model the impact of an SEI CMM®-based process improvement program to analyze performance results from the program. Another organization quantitatively compared practices of high versus low performance projects to identify the factors contributing to better results. A third company used qualitative and quantitative analysis techniques to model performance and identify their best practices.

David Herron, The David Consulting Group
Software Project Poker: Should We Keep Betting or Fold?

Software projects are like stud poker hands-all have great potential at the beginning, additional information becomes available as they progress, and it's hard to remain detached from the emotion of the game. The goal of an interim project review is to offer an independent analysis of the current state of a project and a pragmatic assessment of the project's chances of success or likelihood of failure. Learn the steps for performing an objective project assessment, getting the facts, and keeping emotions in check. Find out how to determine if a project can be saved or if it should be stopped. See examples of how to effectively present bad news to executives who might be tempted to throw good money after bad.

  • A model for conducting an interim project review
  • Questions to assist with an assessment of project health
  • Present difficult findings to encourage good business decisions
Payson Hall, Catalysis Group Inc
Scrum - The Art of the Possible

Scrum is an agile, lightweight and team-based process to manage software and product development within iterative software development lifecycles. By wrapping around existing engineering practices such as XP or RUP, Scrum generates many benefits of agile development with the advantages of simple implementation. Properly understood and implemented, Scrum significantly increases productivity and facilitates adaptive, pragmatic systems development. Scrum is a proven way to improve communications, increase cooperation, and remove things that get in the way of delivering products. Brad Grant, a Certified ScrumMaster, shares his knowledge and experiences facilitating stakeholder involvement with Scrum and improving the engineering practices of development teams. Join Brad to discover the roles, practices, team dynamics, and metrics that make up Scrum projects, and find out if Scrum is right for your team.

Brad Grant, Charwick
Software Test Automation Spring 2003: Mission Made Possible: A Lightweight Test Automation Experience

Using a challenging client engagement as a case study, Rex Black shows you how he and a team of test engineers created an integrated, automated unit, component, and integration testing harness, and a lightweight process for using it. The test harness supported both static and dynamic testing of a product that ran on multiple platforms. The test process allowed system development teams spread across three continents to test their own units before checking them into the code repository, while the capture of the tests provided automated integration testing and component regression going forward. He'll also explain the tools available to build such a testing harness and why his team chose the ones they did.

  • Examine the benefits-and challenges-of implementing an integrated, automated component and integration testing process in a Java/EJB development environment
Rex Black, Rex Black Consulting Services, Inc.

Pages

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.