Skip to main content

Development

Tutorials

MI Design Patterns Explained: From Analysis through Implementation
Ken Pugh, Net Objectives
Mon, 11/11/2013 - 8:30am

Ken Pugh takes you beyond thinking of design patterns as “solutions to a problem in a context.” Patterns are really about handling variations in your problem domain while keeping code from becoming complex and difficult to maintain as the system evolves. Ken begins by describing the classic use of patterns. He shows how design patterns implement good coding practices and then explains key design patterns including Strategy, Bridge, Adapter, Façade, and Abstract Factory.

Read more
MJ Problem Solving and Decision Making in Software Development NEW
Linda Rising, Independent Consultant
Mon, 11/11/2013 - 8:30am

Unfortunately, those of us who struggle with complex problems for a living don't have time to keep up with the enormous amount of cognitive science research that could help us become better thinkers, better problem solvers, and better decision makers. Having devoted more than ten years to researching the fast-moving fields that almost daily reveal new information, Linda shares what she has uncovered—some of it surprising, some even counterintuitive. She summarizes the research and provides concrete tips for improving your individual, team, and organizational abilities.

Read more
ML The Developer’s Guide to Test Automation
Dale Emery, DHE
George Dinwiddie, iDIA Computing, LLC
Mon, 11/11/2013 - 1:00pm

Your shrinking project deadlines are increasing the need for automated tests—but, simultaneously, reducing the time available for writing them. The system requirements are continually changing. The implementation is changing. You spend more and more time maintaining old tests, leaving less time to write new ones. The tests take longer and longer to run. And when they fail, the problem is as likely to be in the tests as in the system.

Read more
TB Accelerated Agile: From Months to Minutes NEW
Dan North, Dan North & Associates, Ltd.
Tue, 11/12/2013 - 8:30am

Formula 1 drivers don’t just drive faster than you—they drive differently. Accelerated Agile uses different rules, based on the core principles of agile but taken to another level, to deliver in hours and days what regular teams can only achieve in weeks or months. Accelerated Agile is for experienced agile practitioners who are frustrated with the pseudo-science of agile planning and estimation, the social pressure to automate where it doesn’t add value, the artificial commitment of sprints, and the unwelcome surprises that still derail projects.

Read more
TF Design for Testability: A Tutorial for Devs and Testers
Peter Zimmerer, Siemens AG
Tue, 11/12/2013 - 8:30am

Testability is the degree to which a system can be effectively and efficiently tested. This key software attribute indicates whether testing (and subsequent maintenance) will be easy and cheap—or difficult and expensive. In the worst case, a lack of testability means that some components of the system cannot be tested at all. Testability is not free; it must be explicitly designed into the system through adequate design for testability.

Read more
TG Agile Project Failures: Root Causes and Corrective Actions
Jeff Payne, Coveros, Inc.
Tue, 11/12/2013 - 8:30am

Agile initiatives always begin with the best of intentions—accelerate delivery, better meet customer needs, or improve software quality. Unfortunately, some agile projects do not deliver on these expectations. If you want help to ensure the success of your agile project or get an agile project back on track, this session is for you. Jeff Payne discusses the most common causes of agile project failure and how you can avoid these issues—or mitigate their damaging effects.

Read more

Concurrent Sessions

BT10 When Code Cries: Listening to Code
Cory Foy, Cory Foy, LLC
Thu, 11/14/2013 - 3:45pm

What is the best way to learn a new programming language or improve coding skills with the language you already use? Cory Foy has developed a new method for learning—and teaching—new programming languages and improving programmer expertise on their current languages. His approach focuses on preparing the learner to listen to what the code is saying and, thereby, changing how we approach the language. To learn a natural language, we would not start by studying prepositions, nouns, and verbs.

Read more