Skip to main content

Development

Tutorials

MA An Introduction to SAFe: The Scaled Agile Framework
Al Shalloway, Net Objectives
Mon, 06/08/2015 - 8:30am

The Scaled Agile Framework (SAFe) is quickly being adopted by many large organizations that have had some success with agile at the team level but have not been able to scale up to large projects. Al Shalloway describes what SAFe is, discusses when and how to implement it, and provides a few extensions to SAFe. Al begins with a high-level, executive’s guide to SAFe that you can share with your organization’s leaders. He then covers the aspects of implementing SAFe: identifying the sequence of features to work, establishing release trains, the SAFe release planning event, SAFe’s variant of Scrum, and when to use the SAFe process. Al concludes with extensions to SAFe including creating effective teams—even when it doesn’t look possible—and implementing shared services and DevOps in SAFe using kanban. Get an introduction to SAFe, discover whether it would be useful to your organization, and identify the steps you should take to be SAFe.

Read more
ME Build Product Backlogs with Test-Driven Thinking―and More SOLD OUT NEW
David Hussman, DevJam
Mon, 06/08/2015 - 8:30am

Many product backlogs of user stories are nothing more than glorified to-do lists. Teams have lost the idea of prioritizing real business value and focus instead only on finishing stories and accumulating story points. Join David Hussman as he drives a stake into the heart of lame backlogs and breathes new life into product design with pragmatic UX and test-driven thinking. Using real-world examples, David shares his experiences and teaches tools you can use to fuse centered-product thinking with end-to-end testing. These techniques include: developing test-driven user experiences, improving product discovery (backlog grooming) sessions with testing talk, adding story clarity with examples and tests, validating requirements with tests, connecting program teams by decomposing product ideas into small testable stories, and recomposing them to validate product level learning. Because we learn by doing and questioning as we go, show up ready to work. This session is for testers, developers, product owners, and anyone else interested in improving their product thinking and product backlog. Bring your failing product backlog stories for discussion, too.

Read more
MI Software Design for Testability
Peter Zimmerer, Siemens AG
Mon, 06/08/2015 - 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 system components cannot be tested at all. Testability is not free; it must be explicitly designed into the system through adequate design for testability. Peter Zimmerer describes influencing factors (controllability, visibility, operability, stability, simplicity) and constraints (conflicting nonfunctional requirements, legacy code), and shares his experiences implementing and testing highly-testable software. Peter offers practical guidance on two key actions: (1) designing well-defined control and observation points in the architecture, and (2) specifying testability needs for test automation early. He shares creative and innovative approaches to overcome failures caused by deficiencies in testability. Peter presents a new and comprehensive strategy for testability design that you can implement to gain the benefits in a cost-efficient manner.

Read more
TI Agile Project Failures: Root Causes and Corrective Actions SOLD OUT
Jeffery Payne, Coveros, Inc.
Tue, 06/09/2015 - 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. Jeffery Payne discusses the most common causes of agile project failure and how you can avoid these issues—or mitigate their damaging effects. Poor project management, ineffective requirements development, failed communications, software development problems, and (non)agile testing can all contribute to project failure. Learn practical tips and techniques for identifying early warning signs that your agile project might be in trouble and how you can best get your project back on track. Gain the knowledge you need to guide your organization toward agile project implementations that serve the business and the stakeholders.

Read more
TQ Design Patterns Explained—from Analysis through Implementation
Ken Pugh, Net Objectives
Tue, 06/09/2015 - 1:00pm

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. In small group exercises, learn how to use patterns to create robust architectures that can readily adapt as new requirements arise. Lessons from these patterns are used to illustrate how to do domain analysis based on abstracting out commonalities in a problem domain and identifying particular variations that must be implemented. Leave with a working understanding of what design patterns are and a better way to build models of your application domains.

Read more

Concurrent Sessions

BW5 Integrating Agile and Traditional Projects in the Enterprise
Steve Caseley, Sensei Project Solutions
Wed, 06/10/2015 - 1:30pm

Is your organization using agile on some projects and classic waterfall on others? Are you concerned with integrating your agile projects into your current PMO, tool, and reporting structure? Are you afraid you might require two totally separate approaches? Steve Caseley believes you can support agile without having to introduce a new suite of tools. Project vision, release and sprint planning, product backlog management, and automated production of Scrum artifacts are all possible with your existing project management tools. Steve demonstrates how Microsoft Project and Project Online can provide full support for Scrum/agile projects. Having a framework based on existing tools is key, as it fully integrates your agile projects into established PMOs, ensuring consistency across your organization’s project portfolio independent of the delivery approach selected. Learn how to provide full support and manage all projects—both traditional and agile—in your portfolio in the same tool set.

Read more
BW7 What’s In a Name? The Metaphorical Power in Our Ideas
Andy Palmer, RiverGlide
Wed, 06/10/2015 - 1:30pm

Why is naming things so difficult? Look in any reasonably sized code base, and you’ll see—in abundance!— crimes against naming. The Spring framework has a class AbstractSingletonProxyFactoryBean—and there are many worse examples. We in the computer industry tend to name things by what they do, rather than why they do it, and thus rob ourselves of the opportunity to tell an interesting and intriguing story. Andy Palmer says it hasn’t always been this way. In the early days of computing, names were rich with metaphor. Names, that today are synonymous with the concepts, were once compelling and novel stories. Terms such as Desktop, File, and Folder all had analogues in the physical world, and this helped people come to grips with the new concepts. Andy gives some examples of metaphors from the early days of computing, discusses some more modern examples, gives reasons why we might choose to program in this way, and suggests some ways in which we can improve our ability to tell a story through our code.

Read more
BT2 Emergent Design: History, Concepts, and Principles
Rob Myers, Agile Institute
Thu, 06/11/2015 - 10:00am

Software design is about change. A good design facilitates adding features—and adding new developers to the team. Yet any change to the code impacts design and can damage existing functionality. Without design idioms and practices, the code can degrade into a maintenance nightmare. Your team must know which decisions to make early in design and which to defer. Rob Myers reviews “families” of design attributes and practices, showing the common principles within each. Exploring emergent design by tracing how the concept itself has evolved and matured over time, Rob covers traditional attributes of good object-oriented code (cohesion, encapsulation, polymorphism, coupling); design patterns and the wisdom discovered within; and S.O.L.I.D. principles—all culminating in emergent design, where simple (not easy) practices meet the simplest of guidelines, such as Kent Beck’s “Four Rules of Simple Design.” And the result is code that is easy to understand and delightful to work on.

Read more
BT3 Cloud-Based, Automated Mobile App Testing for the Enterprise
Joe Schulz, Orasi Software
Thu, 06/11/2015 - 10:00am

Mobile applications are now a required component of enterprise operations, with both consumers and workers relying on mobile technologies for communications and productivity. To ensure a functional, secure, and worthwhile mobile experience, enterprises must stay abreast of growing complexity in mobile devices, applications, and platforms while remaining responsive to unforgiving user expectations for speed and service. To meet this challenge, many firms are turning to cloud-based automated testing, which reduces the complexity and cost of manual, on-premise testing and offers extraordinary flexibility to accommodate a variety of scenarios. Joe Schulz outlines the reasons why cloud-based application testing is beneficial, discusses the role it plays in supporting testing automation, and explores the best practices for adopting this solution. Get a practical grounding in cloud-based automated mobile testing. Learn how this approach helps companies speed time to market, optimize security and performance, increase user satisfaction, and contain costs.

Read more

Keynotes

K3 Lean UX: Turn User Experience Design Inside Out
Jeff Patton, Jeff Patton & Associates
Thu, 06/11/2015 - 8:30am

It’s usually the finer points of the user experience (UX) design that separate good-enough software from really-great software. For companies launching new products or adding new capabilities, how well they understand their users and their needs differentiates the wild successes from the dismal failures. This is user experience design, and doing it well in the past took experienced specialists and lots of time. But the world has changed. Jeff Patton describes how Lean UX turns product design into a team sport in which everyone participates. Learn how Lean UX thinking breaks what we thought were good design rules. In Lean UX design, it’s OK to guess. It's OK for developers to talk to users. It’s OK for bad artists to design user interfaces. And, it’s OK to demonstrate half-baked ideas. You’d think that if we break all these rules, good user experience couldn’t possibly result—but it does. Jeff shares examples of how all this rule breaking is supported by a culture of experimentation and learning—and that makes all the difference.

Read more