Skip to main content

Software Developer

Tutorials

MB Requirements Engineering: A Practicum
Erik van Veenendaal, Improve IT Services BV
Mon, 11/11/2013 - 8:30am

Identifying, documenting, and communicating software requirements are key to all successful IT projects. Common problems in requirements engineering are “How do we discover the real requirements?”, “How do we document requirements?”, and “How do user stories fit into requirements?” Erik van Veenendaal answers these questions and more while helping you improve your skills in requirements engineering for both traditional and agile projects. With practical case studies and hands-on exercises, Erik illustrates requirements issues and solutions.

Read more
MD Dealing with Estimation, Uncertainty, Risk, and Commitment
Todd Little, Landmark Graphics Corporation
Mon, 11/11/2013 - 8:30am

Software projects are known to have challenges with estimation, uncertainty, risk, and commitment—and the most valuable projects often carry the most risk. Other industries also encounter risk and generate value by understanding and managing that risk effectively. Todd Little explores techniques used in a number of risky businesses—product development, oil and gas exploration, investment banking, medicine, weather forecasting, and gambling—and shares what those industries have done to manage uncertainty.

Read more
MF Acceptance Test-Driven Development: Mastering Agile Testing
Nate Oster, CodeSquads, LLC
Mon, 11/11/2013 - 8:30am

On agile teams, testers can struggle to keep up with the pace of development if they continue employing a waterfall-based verification process—finding bugs after development. Nate Oster challenges you to question waterfall assumptions and replace this legacy verification testing with acceptance test-driven development (ATDD). With ATDD, you “test first” by writing executable specifications for a new feature before development begins.

Read more
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
MK Disciplined Agile Delivery: Extending Scrum to the Enterprise
Scott Ambler, Scott W. Ambler + Associates
Mon, 11/11/2013 - 1:00pm

Going far beyond the limits of a team approach to agile, Scott Ambler explores a disciplined, full-lifecycle methodology for agile software delivery. In this interactive hands-on session, learn how to initiate a large-scale agile project, exploring ways to extend Scrum's value-driven development approach to include both value and risk in the equation. Discover project governance practices that will increase your team's chance of success.

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
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
TK Essential Test-Driven Development
Rob Myers, Agile Institute
Tue, 11/12/2013 - 1:00pm

Test-driven development (TDD) is a powerful technique for combining software design, unit testing, and coding in a continuous process to increase reliability and produce better code design. Using the TDD approach, developers write programs in very short development cycles: first the developer writes a failing automated test case that defines a new function or improvement, then produces code to pass that test, and finally refactors the new code to acceptable standards. The developer repeats this process many times until the behavior is complete and fully tested.

Read more
TM Security Testing for Test Professionals
Jeff Payne, Coveros, Inc.
Tue, 11/12/2013 - 1:00pm

Your organization is doing well with functional, usability, and performance testing. However, you know that software security is a key part of software assurance and compliance strategy for protecting applications and critical data. Left undiscovered, security-related defects can wreak havoc in a system when malicious invaders attack. If you don’t know where to start with security testing and don’t know what you are—or should be—looking for, this tutorial is for you.

Read more
TQ Patterns for Collaboration: Toward Whole-Team Quality SOLD OUT
Janet Gregory, DragonFire, Inc.
Matt Barcomb, odbox
Tue, 11/12/2013 - 1:00pm

A lot of talk goes on in agile about how collaboration among team members helps drive a shared responsibility for quality—and more. However, most teams don't do much more than just hold stand-up meetings and have programmers and testers sit together. Although these practices improve communications, they are not collaboration! Most teams simply don't understand how to collaborate. Janet Gregory and Matt Barcomb guide you through hands-on activities that illustrate collaboration patterns for programmers and testers, working together.

Read more

Concurrent Sessions

AW7 Adopt Before You Adapt: Learning Principles through Practice
Steve Berczuk, Fitbit, Inc.
Wed, 11/13/2013 - 2:15pm

Although agile principles sound simple, adopting agile is often extremely difficult. Some teams adopting agile start by making changes and tweaks to prescribed processes—bad! Steve Berczuk explains how following the recommended practices of your chosen agile method for a time will help you internalize the process and leverage the experiences of those who developed the method. Through experience, Steve has discovered that premature customization can lead to more problems and eventually to failure.

Read more
AW12 Test (and More) Patterns for Continuous Software Delivery
Andy Singleton, Assembla
Wed, 11/13/2013 - 3:45pm

Top web companies employ continuous delivery of software to build and deploy systems faster and gain a marked competitive advantage. You can do it, too! Andy Singleton shares the patterns for testing in real time that result in more frequent and more reliable releases. He explains why you will have to invest seriously in automated tests and shares experiences developing the most time-efficient types of automated tests, setting up a social structure to get the tests you need, and employing existing layers of testing and production monitoring.

Read more
AT7 Test-Driven Development for Developers: Plain and Simple
Rob Myers, Agile Institute
Thu, 11/14/2013 - 2:15pm

Test-driven development (TDD) is not an easy discipline to establish. However, it provides considerable return on investment for the effort. Rob Myers describes the costs of TDD (the introduction of test-maintenance overhead) and its benefits (greatly improved quality, productivity, and throughput of real value)—but only when the TDD practices are given time to ripen.

Read more
AT8 The Kanban Pizza Game: Maximize Profit by Managing Flow
Brad Swanson, agile42
Thu, 11/14/2013 - 2:15pm

The Kanban Pizza Game is a hands-on simulation designed to teach the core elements of a kanban system—visualize the workflow, limit your work-in-process (WIP), manage flow, make process policies explicit, and improve collaboratively.

Read more