Invalid quantity. Please enter a quantity of 1 or more.
The quantity you chose exceeds the quantity available.
Please enter your name.
Please enter an email address.
Please enter a valid email address.
Please enter your message or comments.
Please enter the code as shown on the image.
Please select the date you would like to attend.
Please enter an email address.
Please enter a valid email address in the To: field.
Please enter a subject for your message.
Please enter a message.
You can only send this invitations to 10 email addresses at a time.
$$$$ is not a properly formatted color. Please use the format #RRGGBB for all colors.
Please limit your message to $$$$ characters. There are currently ££££.
$$$$ is not a valid email address.
Please enter a promotional code.
N/A
Sold Out
You have exceeded the time limit and your reservation has been released.
The purpose of this time limit is to ensure that registration is available to as many people as possible. We apologize for the inconvenience.
This is option is not available anymore. Please choose a different option.
Please read and accept the waiver.
All fields marked with * are required.
Please double check your email address. The email address format does not appear valid.
$$$$ requires a number between ££££ and §§§§
US Zipcodes need to be 5 digits.
Please double check your website URL.
All fields marked with * are required.
Your credit card expiration date is in the past.
Your credit card CSC needs to be 4 digits.
Please confirm your order: $$$$ You have selected to Pay by Check.
Click OK to confirm your order.
Please confirm your order: $$$$ You have selected to Pay at the Door.
Click OK to confirm your order.
Please confirm your order: $$$$ You have selected to Pay upon Receiving an Invoice.
Click OK to confirm your order.
Your credit card CSC needs to be 3 digits.
Your billing zip code needs to be 5 digits.
There was a problem saving your address.
There was a problem saving your credit card info.
There was a problem saving your personal information.
Please select the date you would like to attend.
McAfee Secure sites help keep you safe from identity theft, credit card fraud, spyware, spam, viruses and online scams.
Copying Prohibited by Law - McAfee Secure is a Trademark of McAfee, Inc.
Unknown card type.
No card number provided.
Credit card number is in invalid format.
Wrong card type or credit card number is invalid.
Credit card number has an inappropriate number of digits.
Please enter numbers here.
Please enter an integer value.
Numbers must be less or equal to $$$$
All the required fields have not been filled out. Click OK to proceed without all the required information, or click Cancel to finish entering the missing data.
Sorry, invalid event registration form.
Sorry, invalid event or database error.
Sorry, quantity must be a positive integer.
Sorry, you did not select a valid ticket.
Sorry, invalid event organizer email address.
Your order was canceled.
Thank You. Your order has been successfully completed. Your name and email address have been added to the list of event attendees.
Sorry, that option is sold out.
Sorry, that option is no longer available.
Sorry, there are only tickets of that type still available.
Sorry, you entered an invalid quantity. Please enter a quantity of 1 or more next to the type or types of tickets you would like to purchase.
Sorry, you did not select any tickets to purchase. Please enter a quantity of 1 or more next to the type or types of tickets you would like to purchase.
Sorry, there are no tickets left for this event.
The tickets, ticket quantity or date and time you've requested are no longer available, due to previous sales. Please choose a different date, time or number of tickets and place your order again.
Sorry, one or more of the tickets you requested are no longer available for purchase.
Sorry, you need to select the date you want to attend.
Sorry, the promotional code you entered is not valid yet.
Sorry, the promotional code you entered has expired.
Sorry, the promotional code you entered is not valid.
Your session has expired. Try ordering again.
Sorry, your requested ticket quantity exceeds the number provided by your promotional code.
In this unique training we cover the critical skills needed to build software that can easily change. We identify and give names to the qualities that make software flexible so all team members can communicate with high fidelity. We then look at specific principles and practices which support the development of quality software.
In addition to covering a core set of patterns every developer should know we also examine the forces that underlie patterns and make them valuable to agility. This expanded view of patterns gives attendees a powerful framework to allow them to encapsulate and abstract virtually any problem for maximum flexibility without overcomplicating the solution. These techniques apply equally well to new development as they do to maintaining or extending existing systems.
Attendees learn how to find elegant solutions by understanding the forces of problems. This leads to discovering the right abstractions that make software less complex and more manageable. Using advanced techniques like commonality-variability analysis, “refactoring to the open-closed”, encapsulating construction and pattern-oriented design, participants learn how to emerge designs just-in-time and with minimal waste.
There are no “magic bullets” in software development but developers can make better choices if they understand the tradeoffs of their decisions. This training helps attendees evaluate tradeoffs in design that can then be immediately applied to virtually any problem. This practical approach will impact the way attendees create software on a day to day basis. Participants leave this training confident and empowered to improve the quality of the software they produce.
This is a lecture-style course with a group exercise done at whiteboards.
SKILLS TAUGHT
After completing this training attendees will be able to:
Identify six code qualities that make software easier to maintain
Build a common vocabulary for evaluating and communicating designs
Understand how to apply key principles for building extendible designs
Evaluate the tradeoffs of alternate designs without having to code them
Learn twelve core patterns that every developer should know and use
See how to apply patterns just-in-time and avoid up-front overdesign
Employ proven techniques to dramatically reduce defects
Recognize pathologies of poor code and how to fix them
Discover how to refactor code without breaking callers
Master an easy way to find patterns in any problem
AUDIENCE
This training is for developers, testers, designers, architects, technical leads and managers of development teams.
PREREQUISITES
Attendees should be familiar with basic Object-Oriented (OO) concepts and terminology.
Review Paradigms, Principles and Perspectives Encapsulating Foreignness Group Exercise Group Exercise Debrief
Day 3
Review Core Practices Encapsulating Sequence and Cardinality Encapsulating Construction Refactoring and Emerging Systems
Watch this 6 minute video and see what my Agile Software Development Essentials class has to offer you and your team. Click the video below and begin watching!
FOLLOW-ON TRAINING This class is the perfect prerequisite for the Introduction to Cucumber for Acceptance Test-Driven Design (ATDD) class offered immediately following this training on April 1-2, 2010. For more information, click here.
YOUR INSTRUCTOR One of the nation’s leading Agile Software Development Coaches, David Bernstein has personally trained more than 6,000 developers for several Fortune 500 companies over the course of his 30-year career in software development and multimedia. David is the creator of a wholesale bank-accounting software program that has become the de facto standard in major foreign-exchange banks across the globe as well as econometric software used to invest trillions of dollars. A longtime special consultant to IBM, he worked on the development of OS/2 and was a key programmer for IBM’s ImagePlus platform. As part of a special IBM technology-transfer task force, David trained IBM software engineers around the world, giving them the tools to write the next generation of applications and operating-system software, and earning one of the highest satisfaction ratings in the history of IBM corporate education. In 1998 he founded MicroSurfer Corporation, whose Web-productivity software attracted rave reviews from the technology press. Over the last 5 years, David has trained developers at Microsoft, Boeing, Real Networks, SunGard and many others. David is also an award-winning video producer who has created an MTV Earth Day Special and co-produced several shorts with his filmmaker wife, Staci Bernstein.
As a Registered Education Provider for the Scrum Alliance Techniques of Design now offers Certified Scrum Developer (CSD) training. We also offers agile software development training, object oriented analysis and design training and design patterns training plus coaching and consulting services to help your technical team become more agile.