Ann Arbor Java Users Group

27 Oct

AAJUG Meeting October 28, 2008: “Turning Brown Fields Green” Using New Engineering

October 28, 2008
6:30 pmto9:30 pm

Pillar Technologies speaks to us on:
“Turning Brown Fields Green” Using New Engineering.

Date: Tuesday, October 28th, 2008
Time: 6:30 PM - 9:30 PM EDT

Note: If you plan to attend, please RSVP to:
rsvp@data-masters.com
Open Networking starts at 6:30 PM.

Pizza and Soft Drinks will be served!

Note: We will have giveaways such as T-Shirts, Pens, Books, etc. from Sun Microsystems.

Also, attendees will have a chance to win a free license of one of the JetBrains products:

a. IntelliJ IDEA Personal License
b. ReSharper Personal License
c. TeamCity Build Agent (for our Continuous Integration and Build Server)
d. Ruby IDE Personal License (not named yet, but we?re working on that.

Meeting Location:
Washtenaw Community College, WCC BE270

Meeting Location and Map:


Washtenaw Community College, WCC BE 270

PRESENTATION:
=============
Product Demo: Verde to Generate Automated Tests

Overview:

At Pillar label any code without an automated test as Legacy Code
because it is hard to change . The industry has been good at innovating
solutions, like Agile Methodologies and Unit Testing Tools that reduce
the fear of change for new development. What about the millions of lines
of existing Legacy Code? This presentation will review this problem in
detail and demonstrate Pillar’s tool, Verde, that records and generates
these automated tests for Legacy Java code.

The following is an overview of some of the planned presentation
materials

Why should I Care?

Time:  The time to market for a system without a test driven approach
usually increases with each release.

Cost:  Legacy Code (code without tests) is more costly to enhance and
requires more time & requires more senior resources

Quality:  Without tests you are likely to create regression defects that
are costly to identify and fix.

What stops our teams from just writing tests themselves?

1. Often teams do not value writing tests because there is so much code
without tests there is little immediate value to them.
2. Creating tests after the fact on existing code is really hard
3. Code may not be designed to be testable
4. Developers do not know all the ways a method is used.
5. Setting up test data is complicated.
6. We have too much existing code and not enough time or $ to go back
and create tests now.

Discussion: Three Step Process to accelerate adoption

1. Quality and Testability Assessment
2. Test Factoring: Making Legacy Code “Agile Ready”
3. Supporting TDD Skill Development

What we measure

Code Quality: we use typical static analysis tools to assess the code
quality
Code Testability: we evaluate the complexity involved in writing tests
against legacy code. Including:
Test Coverage, Cyclomatic Complexity, and  Injectability / Mockability
We provide an detailed actionable report that provides;
Data analysis and results and (most importantly) specific
recommendations concerning proactive and opportunistic activities
necessary to improve the testability of the code.

Test Factoring: Making Legacy Code “Agile Ready”

If necessary we start with the basics
Get Code in Version Control
Format code to “House Style”
Get Build Automated
Get Running on CI
Create Characterization Tests for Critical Functionality

Traditional Approach

Create tests as you touch code.  If you need to modify code: First write
tests around the code, Second refactor the code to support the new
feature or correct a defect

While the test harness will not cover 100% of the code it is the best
way to prioritize your investment in Unit Tests to the code that changes
most often, that has the most issues

Pillar’s Approach:  Functional Tests turn into Characterization Tests

1.  Inject recorders into the application to record method calls in and
out of targeted portions of the application.
2. Exercise the application using current functional test scripts
(automated or manual) in order to record data at the method interface
level.
3. Use Coverage analysis and data comparisons to review recorded data
for the unique set of calls to be used as unit tests and mocks
4. Generate and register tests and mock objects with the Continuous
Integration Server.
5. Leverage these tests as part of the check in process so going forward
broken components will be identified as soon as possible

Required Support

1. You need to teach your people to get enduring value!
2. Ensure they know the importance of Continuous Integration
3. Teach them how to handle broken tests and builds
4. Teach them to support and maintain test harnesses
5. Teach and Mentor the team on Test First Development techniques

Presenter BIO:
===========

Matt VanVleet
Mr. VanVleet joined Pillar in 2005 as Vice President of Fulfillment for
the Ohio Valley Region after years of notable accomplishments. He holds
a Bachelor of Science Degree in Management Information Systems from Ohio
University. Matt has developed a testing practice focused on functional
test automation and application performance management. Matt founded a
company, Solstice Software that wrote Automated Unit and Integration
Testing Products and continues to push the envelope of what is possible
with test automation. Within Pillar he is one of the key innovators
around our approach, Speed To Value (s2v), focusing on the critical
areas of project management practices, requirements management, and test
driven development. Due to Matt’s skills and experience, he has
developed Pillar’s Practice Management model that maximizes the impact
of productivity by enforcing those proven concepts and training.

Chris Beale
Chris has over 20 years of experience in Information Technology and
holds Bachelor Degrees in both Electrical Engineering and Computer
Engineering from Oakland University.  During his career, he has held a
wide range of roles including Senior Software Engineer at NASA’s
Engineering Design Laboratory, Chief Architect for Digital Manufacturing
at Dassault/Delmia, and Vice President of Application Development for
ranal.com.  Chris joined Pillar in 2002 as Engagement Manager for
GM/Onstar and was promoted to Director of Regional Operations for Great
Lakes in 2003.  In 2004 he assumed responsibility as Corporate Head of
Fulfillment where he is responsible for company-wide Speed-to-Value
(S2V) consulting including practice definitions and development,
consultative sales, offer design, engagement management, and consulting
service delivery. Chris’ success in this role is measured by meeting
revenue and profitability goals for S2V-related business in addition to
the level of delight maintained across Pillar’s customer base.

Thanks for supporting your local JUG!!

AAJUG

To be notified of future AAJUG events, please sign up for our mailing list at www.aajug.org

Leave a Reply

food prices in st thomas pirodr! 666

� 2009 Ann Arbor Java Users Group | Entries (RSS) and Comments (RSS)

GPS Reviews and news from GPS Gazettewordpress logo