Greater Atlanta Software Symposium

October 21 - 23, 2005 - Atlanta, GA


WHotel Atlanta Perimeter
111 Perimeter Center West
Atlanta, GA   30346
Map »

NOTE: You are viewing details about a past event. We will be back in AtlantaSeptember 20 - 22, 2013.
View the event details here ».

Andrew Glover

Founder of easyb

Andrew is the founder of the easyb BDD framework and the co-author of Addison Wesley's "Continuous Integration", Manning's "Groovy in Action" and "Java Testing Patterns". He is an author for multiple online publications including IBM's developerWorks and Oreilly's ONJava and ONLamp portals. He actively blogs about software at thediscoblog.com.



Presentations

Taking Quality to the Next Level through Code Coverage Analytics

Understanding what code coverage represents, how to effectively apply it, and how to avoid its pitfalls will give you an unprecedented understanding of how unit tests may or may not be covering you from sneaky defects.

You’ve drunk the XP cool-aide and made a concerted effort to actively unit test your code. After awhile, however, you may find yourself wondering how good are those tests? Are they actually covering the code adequately? Understanding what code coverage represents, how to effectively apply it, and how to avoid its pitfalls will give you an unprecedented understanding of how those unit tests may or may not be covering you from sneaky defects. We’ll talk code based coverage and specification-based coverage and we’ll look at the tools available to gather these metrics in both the open-source and commercial worlds. Additionally, we’ll examine the notion of mutation testing and its affect on code coverage.

Using Code Metrics for Targeted Code Refactoring

The knowledge of how to effectively spot smelly code and replace it with proven patterns will ultimately lead to a more stable, maintainable and elegant code base.

Often times, candidate code for refactoring is based upon a source file's smell, which its spotting can take time to acquire and is largely based upon subjective determinations. The proper use of code metrics, such as Cyclomatic Complexity, Fan-In, Fan-Out, and Depth of Inheritance can also facilitate the discovery of candidate code which is in need of refactoring.

For example, Cyclomatic Complexity is adept at spotting methods containing a high degree of conditional logic, which, consequently, can be replaced with polymorphism as elaborated in Martin Fowler's seminal work, Refactoring with the Replace Conditional with Polymorphism pattern. Additionally, excessively deep hierarchy trees create problematic testing targets, which can be broken out into separate objects with Fowler's Replace Inheritance with Delegation and Collapse Hierarchy patterns. Fan-In and Fan-Out are quite effective at pinpointing brittle code, which can be refactored into a more stable state with a plethora of patterns including Extract Hierarchy and Extract Class.

Introduction to TestNG, the next generation testing framework for developers

No one will argue that JUnit has positively affected the quality of thousands of Java applications around the world. JUnit’s simplicity and ease of use ushered in a whole new era of code quality; however, as many developers have found, its simplicity has also limited its use. TestNG was designed from the ground up to overcome some of JUnit’s limitations; moreover, TestNG’s features make it a great tool to complement your JUnit tests.

In this session we’ll learn about TestNG’s flexible fixture model, its test categorization capability, dependent methods, and TestNG’s powerful parametric testing facility. We’ll also see how both TestNG and JUnit can play together in a build process.

Books

by Paul M. Duvall, Steve Matyas, and Andrew Glover

Continuous Integration: Improving Software Quality and Reducing Risk (Addison-Wesley Signature Series) Buy from Amazon
List Price: $39.99
Price: $27.00
You Save: $8.99 (25%)
  • This is the eBook version of the printed book.

    For any software developer who has spent days in “integration hell,” cobbling together myriad software components, Continuous Integration: Improving Software Quality and Reducing Risk illustrates how to transform integration from a necessary evil into an everyday part of the development process. The key, as the authors show, is to integrate regularly and often using continuous integration (CI) practices and techniques.

     

    The authors first examine the concept of CI and its practices from the ground up and then move on to explore other effective processes performed by CI systems, such as database integration, testing, inspection, deployment, and feedback. Through more than forty CI-related practices using application examples in different languages, readers learn that CI leads to more rapid software development, produces deployable software at every step in the development lifecycle, and reduces the time between defect introduction and detection, saving time and lowering costs. With successful implementation of CI, developers reduce risks and repetitive manual processes, and teams receive better project visibility.

     

    The book covers

    • How to make integration a “non-event” on your software development projects
    • How to reduce the amount of repetitive processes you perform when building your software
    • Practices and techniques for using CI effectively with your teams
    • Reducing the risks of late defect discovery, low-quality software, lack of visibility, and lack of deployable software
    • Assessments of different CI servers and related tools on the market


by Neal Ford

No Fluff, Just Stuff Anthology: The 2007 Edition Buy from Amazon
List Price: $32.95
Price: $24.05
You Save: $8.90 (27%)
  • Twenty-seven weekends a year, the No Fluff, Just Stuff conference rolls into another town, featuring the world's best technical speakers and writers. Up until now, you had to go to one of the shows to soak up their collective wisdom. Now, you can hold it in the palm of your hand. The No Fluff, Just Stuff Anthology represents topics presented on the tour, written by the speakers who created it. This book allows the authors the chance to go more in depth on the subjects for which they are passionate. It is guaranteed to surprise, enlighten, and broaden your understanding of the technical world in which you live.

    The No Fluff, Just Stuff Symposium Series is a traveling conference series for software developers visiting 27 cities a year. No Fluff has put on over 75 symposia throughout the U.S. and Canada, with more than 12,000 attendees so far. Its success has been a result of focusing on high quality technical presentations, great speakers, and no marketing hype. Now this world-class material is available to you in print for the first time.


by Dierk Koenig, Andrew Glover, Paul King, Guillaume Laforge, and Jon Skeet

Groovy in Action Buy from Amazon
List Price: $49.99
Price: $31.67
You Save: $18.32 (37%)
  • Groovy, the brand-new language for the Java platform, brings to Java many of the features that have made Ruby popular. Groovy in Action is a comprehensive guide to Groovy programming, introducing Java developers to the new dynamic features that Groovy provides. To bring you Groovy in Action, Manning again went to the source by working with a team of expert authors including both members and the Manager of the Groovy Project team. The result is the true definitive guide to the new Groovy language.

    Groovy in Action introduces Groovy by example, presenting lots of reusable code while explaining the underlying concepts. Java developers new to Groovy find a smooth transition into the dynamic programming world. Groovy experts gain a solid reference that challenges them to explore Groovy deeply and creatively.

    Because Groovy is so new, most readers will be learning it from scratch. Groovy in Action quickly moves through the Groovy basics, including:

    • Simple and collective Groovy data types
    • Working with Closures and Groovy Control Structures
    • Dynamic Object Orientation, Groovy style

    Readers are presented with rich and detailed examples illustrating Groovy's enhancements to Java, including

    • How to Work with Builders and the GDK
    • Database programming with Groovy

    Groovy in Action then demonstrates how to Integrate Groovy with XML, and provides:

    • Tips and Tricks
    • Unit Testing and Build Support
    • Groovy on Windows

    An additional bonus is a chapter dedicated to Grails, the Groovy Web Application Framework.

    Purchase of the print book comes with an offer of a free PDF eBook from Manning. Also available is all code from the book.


by Jon Thomas, Matthew Young, Kyle Brown, and Andrew Glover

Java Testing Patterns Buy from Amazon
List Price: $45.00
Price: $38.08
You Save: $6.92 (15%)
  • * Focuses on software testing, which is one of the most important-and often the most overlooked-aspects of software development
    * First book that demonstrates how to apply both existing and new design patterns to the job of testing Java software
    * Explains how applying proven patterns to the testing of software can help ensure that applications function correctly and more efficiently, and are easier to maintain
    * Patterns will be extensively reviewed online to ensure community support and endorsement
    * Covers detailed patterns for unit, functional, database, and application deployment testing
    * Provides complete Java code that applies each pattern to a real-world sample application
    * Companion Web site provides code for Java pattern implementations, plus code for the sample applications and test suites