Loading…
Agile2015 has ended

Sign up or log in to bookmark your favorites and sync them to your phone or calendar.

Development Practices & Craftsmanship [clear filter]
Monday, August 3
 

10:45

Old Code, New Tricks (Scott Ford)
Limited Capacity seats available

Abstract:
For most developers, the majority of their day involves interacting with code that someone else wrote. Working with legacy code is almost inevitable in today's development landscape, yet most of us have a negative outlook on working with existing codebases. This negativity is baked into the language we use. We work on 'legacy projects', 'dirt field projects', 'rescue projects', 'antiquated projects', 'ancient projects', while newer projects get labeled as 'greenfield' and 'blue sky'. In this talk, M. Scott Ford, Founder and Chief Code Whisperer at Corgibytes, a consultancy that specializes in working on legacy projects, shares his perspective on how you can learn to not only tolerate, but appreciate what he calls 'software remodeling'. You’ll walk away with specific techniques for working with older codebases, a new vocabulary to describe existing projects, and a framework for determining when you should re-write versus improve your project.
Learning Outcomes:
  • For most developers, the majority of their day involves interacting with code that someone else wrote. Working with legacy code is almost inevitable in todays development landscape, yet most of us have a very negative outlook on working with existing codebases. In this talk, M. Scott Ford, Founder and Chief Code Whisperer at Corgibytes, a consultancy that specializes in working on legacy projects, shares his perspective on how you can learn to not only tolerate, but appreciate what he calls “software remodeling.” You’ll walk away with:
  • •Specific techniques for working with older codebases
  • •New vocabulary to describe existing projects
  • •A framework for determining when you should re-write versus improve your project
Attachments:

Speakers

Monday August 3, 2015 10:45 - 12:00
National Harbor 8

14:00

Beyond Error Handling - Using Design To Prevent Errors (Michael Feathers)
Limited Capacity seats available

Abstract:
It would be easy to say that error handling is a black art in software development but that implies that there is some secret stash of knowledge out there. The truth is that we tend to think of error handling as a "lesser concern." If we know how to throw and catch exceptions, we feel that we are okay.
The fact of the matter is - we aren't okay. Error handling in applications is often a symptom of incomplete design. This workshop will focus on techniques you can use to systematically increase the robustness of code by rooting out potential errors and designing them away.
Attendees should bring laptops with a Java development environment. Attendees should also have reading-level understanding of Ruby code.
Learning Outcomes:
  • Learn a Model for Software Robustness
  • Understand Trusted Cores and Type Tunneling
  • Understand the connection between "Tell, Don't Ask" and Error Propagation
  • Learn Techniques for Reducing Variation at Software Interfaces
  • Acquire Guidance for Exceptions, Null Objects, and Option Types
Attachments:

Speakers
MF

Michael Feathers

Director, R7K Research & Conveyance
Michael Feathers is the Founder and Director of R7K Research & Conveyance, a company specializing in software and organization design. Prior to forming R7K, Michael was the Chief Scientist of Obtiva and a consultant with Object Mentor International. Over the past 20 years he has consulted... Read More →


Monday August 3, 2015 14:00 - 15:15
National Harbor 10/11

14:00

Don’t refactor. Rebuild. Kinda. (Wouter Lagerweij)
Limited Capacity seats available

Abstract:
Each and every time, the situation is the same: a big, messy code-base, few (if any) tests and many production issues. It’s no accident that, when he joined what would be the first XP team, the first thing Kent Beck said was: “*Let’s scrap it!*”
Even with a world class team, these problems can be almost insurmountable. And we don’t usually start out with world class teams. Learning all the XP practices is hard enough without a Big Ball (of Mud) and Chain holding you back.
So maybe we should rebuild. But the Agile way: incrementally, iteratively, and with close involvement from the business.
Using examples from practice, I’ll show that:
  • We can set up a clear, loosely coupled architecture around the existing system, so we can replace parts while its running
  • We are then free to use all our modern practices for the new parts, and start Continuous Delivery from the first sprint
  • We can closely involve the business to surface the actually needed functionality, and build up Living Documentation in the process
  • We can get even an inexperienced team using and accepting practices such as TDD and ATDD quickly
Learning Outcomes:
  • The audience will see how extending some existing approaches to system improvement can give teams working on legacy systems renewed energy and belief (through experience) that high quality is possible.
Attachments:

Speakers
avatar for Wouter Lagerweij

Wouter Lagerweij

Agile Coach
I love spending time with teams and organizations to figure out how to improve the way they make software, and make it more fun.To make that happen I use the knowledge and skills gathered in over ten years of experience applying Agile processes and practices from XP, Scrum, Kanban... Read More →


Monday August 3, 2015 14:00 - 15:15
National Harbor 8

15:45

Abuser Stories: Reduce Software Vulnerabilities by Thinking Like a Criminal (Judy Neher)
Limited Capacity seats available

Abstract:
We all know that User Stories capture goals from the user perspective along with their business value. On the flip side, how can we ensure we've thoroughly examined the ways in which hackers, criminals and adversaries can exploit those stories to get access to our most valuable resources: Our Data!
Abuser stories is a way to capture potential vulnerabilities in software systems, using the standard user story format. While user stories are written from a user perspective, abuser stories are written from an enemy or attacker’s perspective and describe the enemy’s mal-intent and motivation.
The session will look at the concept of Abuser Stories more in-depth. We will examine:
  • How seemingly benign functional user stories can create vulnerabilities in our software, leaving lots of opportunity for our enemies to take advantage of our weaknesses.
  • How to use the concept of abuser stories to shed some light on where these vulnerabilities can be introduced.
  • How to craft a good abuser story.
  • How to craft refutation criteria so that we can determine that the attack depicted by the abuser story is not possible.
  • How to estimate and rank abuser stories.

Learning Outcomes:
  • The participants will take away:
  • * An appreciation for how functional stories can introduce vulnerabilities we may not have thought of before
  • * An understanding between a threat and a vulnerability
  • * A way to capture predictable vulnerabilities that may be introduced into a system while coding features
  • * How to estimate and rank abuser stories in the overall product backlog



Speakers
avatar for Judy Neher

Judy Neher

President/CEO, Celerity Technical Services, Inc.
Passionate about building highly collaborative, high performing teams.


Monday August 3, 2015 15:45 - 17:00
National Harbor 3
 
Tuesday, August 4
 

09:00

It's more than feature toggles: Enabling Applications for Continuous Delivery (Daniel Piessens)
Limited Capacity seats available

Abstract:
Your team has just completed creating a deployment pipeline and moving to trunk based development, and you've discovered the next bottleneck: your application's architecture! You want to develop that next great feature, but a bug fix has to go out and you don't want to create complex branching and reduce feedback. Someone has suggested this "feature toggle" concept, but no one knows how to implement it. Your seasoned developers know that hiding code is more complicated than an if statement and insist toggles will never work. Your QA people reject the notion of toggles citing that there's no way they can test all the toggle cases during a sprint. So what do you do? Watch me explain how it's possible on a real, existing application!
In this session we'll cover how to introduce feature toggles into your application to allow for new features to be hidden until they are ready for release, regardless of if they've been deployed. We'll also show how you can introduce dependency injection and micro-services into an application to help isolate new development and cover best practices to make the most of these technologies as you iterate. Finally I'll demonstrate how automated testing at the unit test and UI test layers can assist in ensuring your feature toggles are working as you expect without a lot of manual testing.
Learning Outcomes:
  • Experience how to use feature toggles and related configuration mechanisms
  • Understand how to leverage dependency injection to "branch by abstraction" within your code base
  • Introduce the concept of micro-services to allow for parallel development of functionality
  • Use automated unit and UI testing to validate feature toggles
Attachments:

Speakers
avatar for Daniel Piessens

Daniel Piessens

Senior Software Consultant, Centare
Dan is a Principal Consultant for Centare where he passionately advocates agile principles and infects his clients with DevOps and other wonderful new ideas. Having over 15 years of experience in the software industry, Dan has architected world class enterprise applications in the... Read More →



Tuesday August 4, 2015 09:00 - 10:15
National Harbor 13

10:45

Agile and Beyond: How Far Can You Go in Embedded Software Development? (Andreas Dharmawan)
Limited Capacity seats available

Abstract:
With the proliferation of IoT and consumer demand for smart homes, smarter appliances and automobiles, wearables, etc. – many traditional product-based manufacturing companies are now becoming embedded software companies.
This means that the design and manufacturing of physical products is becoming more and more complex- as it now requires the integration of both the physical components of the product, the firmware, and the myriad of software components these products contain.
Historically, embedded software developers have lagged behind IT in the adoption of Agile development practices, largely due to the requirement of developing for the target hardware.
Learning Outcomes:
  • In this session attendees will learn concrete tips and best practices used by some of the largest Embedded and IoT manufacturers to adopt and scale Agile methodologies to transform their business- all the way from product design, development, test and manufacturing.


Speakers
AD

Andreas Dharmawan

Senior Director, Solutions and Services, Electric Cloud
Andreas Dharmawan is the Senior Director, Solutions and Services at Electric Cloud. He leads technical pre-sales, post-sales, professional services, and training groups in the US, Japan, Korea, China and the UK. He develops packaged PS and training offerings that accelerate adoption... Read More →


Tuesday August 4, 2015 10:45 - 12:00
National Harbor 8

10:45

Data Done Right: Applying Agile and XP Concepts To Enterprise Data Integration (Joseph Frazier, Randy Loushin)
Limited Capacity seats available

Abstract:
Data projects often come with the perception that they are lengthy and expensive endeavors, which is an issue when speed-to-market is critical to business success. In an age where data is everything, how do you ensure projects are delivered both on-time and with the highest quality?
Come see how Nationwide Insurance has combined the best practices found in Agile, Lean, and Extreme Programming to deliver data integration projects faster, cheaper, and with higher quality. Topics to be covered include:
-- Learn how to achieve smaller, incremental delivery while navigating the waters of big business process. -- Give the customer exactly what they want by tearing down the walls between IT and Business. -- Follow the life of a story card as it enters the development life-cycle, using Cucumber and Rspec to test drive our application. -- Discover how blending the lines between development and testing results in increased productivity and team capability. -- Solve the headaches found during upgrades and regression testing through continuous integration. See all this and more as Nationwide Insurance shows you what we think is the correct way to deliver data!
Learning Outcomes:
  • Practical use of test driven development for data integration.
  • Approach to facilitating poly-skilling of resources between development and testing roles, to build a true software craftsman.
  • How to leverage continuous integration, with data to prevent defect injection in a complex environment.
  • Ability to adapt iterative development concepts to data.
Attachments:

Speakers
avatar for Randy Loushin

Randy Loushin

Nationwide
Randy Loushin has 6+ years in the data integration and data warehousing space, and has been leading data integration projects using Agile and test driven development for the past three years. | | At Nationwide Insurance, a Fortune 100 company with an operating revenue of $25... Read More →



Tuesday August 4, 2015 10:45 - 12:00
Chesapeake 1/2/3

14:00

A Gentle Introduction to Reactive Extensions (Hadi Hariri)
Limited Capacity seats available

Abstract:
Reactive Extensions have been around for quite a while. First originated in the Microsoft space, they are now available pretty much on any language and platform, including Java and JavaScript. In this session we’re going to understand what reactive extensions are all about and how we can leverage them to create asynchronous and scalable applications. We’ll see the benefits they provide over other more traditional asynchronous models and see how to put them to use with practical examples. This session is about finally understanding Rx and removing all the myth surrounding it.
Learning Outcomes:
  • Learn the basics of reactive programming and what benefits these provide, as well as where to use it.
Attachments:

Speakers
avatar for Hadi Hariri

Hadi Hariri

Developer Advocate, JetBrains
Developer and creator of many things OSS, his passions includes Web Development and Software Architecture. Has authored a couple of books, a few courses and has been speaking at industry events for nearly 15 years. Currently at JetBrains leading the Developer Advocacy team. Spends... Read More →


Tuesday August 4, 2015 14:00 - 15:15
National Harbor 8

14:00

Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship Culture (Allison Pollard, Mike Rieser)
Limited Capacity seats available

Abstract:
The ninth principle from the Agile Manifesto states that technical excellence enhances agility, but when the codebase is ugly and the deadlines are tight, most teams don’t choose to refactor mercilessly, adopt TDD, or evaluate automated testing tools—unless they have the proper support. In our experience working with multiple teams in a single codebase, developers can feel victim to a legacy codebase if only a few people are writing clean code or refactoring; guiding them on how to decrease technical debt while delivering their projects helps "unstuck" their other agile practices. We will talk about the challenges we’ve seen with Product Owners, Managers, and Scrum Masters interacting with teams at various stages of agile+technical excellence and how a focus on technical practices sparked a wider interest in craftsmanship. Learn how can you influence the team towards the right practices while fostering their sense of ownership. Getting serious about technical excellence requires support from technical and non-technical roles, and we’ll share how we partnered as coaches to help an organization through a technical turnaround with some tips for others who need to do the same.
Learning Outcomes:
  • Why technical excellence is important and the impact of having only a small percentage of developers applying good technical practices
  • How to influence the team towards the right practices while fostering their sense of ownership
  • What craftsmanship means to other roles (e.g., QA, Scrum Master, Product Owner, manager)
Attachments:

Speakers
avatar for Allison Pollard

Allison Pollard

Agile Coach, Improving
I am an agile coach working with 20 teams in a large enterprise, and I love to create communities for those interested in developing their agile instincts; I mentor project managers to become great Scrum Masters and coach managers to grow teams that deliver amazing results and an... Read More →
avatar for Mike Rieser

Mike Rieser

Practice Director, Agile and Software Development, Fenway Group



Tuesday August 4, 2015 14:00 - 15:15
Chesapeake 7/8/9

15:45

Open Source Patterns of Cloud Native Architectures (Andrew Clay Shafer, josh long)
Limited Capacity seats available

Abstract:
Mobile and the looming internet of things initiatives are driving organizations to adopt cloud technologies and methodologies as software must be delivered at an ever increasing scale. We've all read 'Release It!' and 'Continuous Delivery', but some things are easier said than done and there is so much to do. Luckily, we live in a time when people have solved common problems and made the solution freely available. In this session, we'll look at the manifestation of ideas like circuit breakers, load balancing, service discovery and other related microservices through the lens of the NetflixOSS and Spring Cloud open source libraries deployed to Cloud Foundry. We'll walk through how cloud native patterns are used to build fault tolerant architectures, can be optimal for continuous delivery, require a technical baseline and finish with a nod to leveraging Conway's Law to design your architecture and your org chart.
Learning Outcomes:
  • basic understanding of cloud native architectures contrasted with last generation enterprise architecture
  • introduction to microservices and prerequisites of managing them
  • basic vocabulary around microservices, continuous delivery, devops, how they fit together and reinforce each other
  • patterns for service discovery, fault tolerance, graceful degradation, identity and horizontal scalability
  • map that list of common cloud native architecture patterns, the problems they are solving and examples using NetflixOSS and Spring Cloud deployed to Cloud Foundry
  • demonstrations and github repos with the code


Speakers
avatar for Andrew Clay Shafer

Andrew Clay Shafer

Clown Prince, Parvus Captus
we do what we can


Tuesday August 4, 2015 15:45 - 17:00
Chesapeake 1/2/3

15:45

Rescuing legacy software from impending doom (Refactoring from the trenches) (Martin Cronje, Jacques De Vos)
Limited Capacity seats available

Abstract:
Dealing with an ageing code base is one of the hardest challenges that software development teams face. Legacy code bases can slow teams to a crawl, and therefore it is critical to solve this on the road to agility.
Software rewrites fail at alarming rates! Refactoring - a safer approach - has emerged as the de-facto technique to tackle this challenge.
In this interactive session we will equip attendees with techniques and lessons to help them refactor more effectively. We will share our experience gained while working with various software teams, from start-ups to mid-sized, that attempted to rescue their legacy from impending doom.
Learning Outcomes:
  • Effectively justify the investment in refactoring legacy code to Product Owners.
  • When and how to apply different refactoring workflows on legacy code.
  • Practical tips to avoid common pitfalls when refactoring code.
Attachments:

Speakers
avatar for Martin Cronje

Martin Cronje

Founder and Developer Coach, nReality
Martin Cronje is a software developer who spends most of his time coaching software teams to help them master their craft. Over his 15 year career he has contributed to projects ranging from mobile, data analytics to high volume mission-critical systems in government and financial... Read More →
avatar for Jacques de Vos

Jacques de Vos

Founder, Developer and Coach, nReality
With more than 10 years of experience in leading development teams on cutting-edge software systems, Jacques is driven to build systems, teams and processes that not only address immediate project needs, but also enable clients to meet their strategic goals.Most of his experience... Read More →


Tuesday August 4, 2015 15:45 - 17:00
Chesapeake 7/8/9
 
Wednesday, August 5
 

10:45

Essential Skills for the Agile Developer (Al Shalloway)
Limited Capacity seats available

Abstract:
It is time to get back to basics. People believe that since they know what the strategy, iterator, adapter or composite pattern are they believe they know design patterns. Unfortunately, this is akin to someone who knows 4 recipes thinking they are great cooks. Design patterns give insights into the proper way of design. The patterns, as solutions themselves, are only somewhat valuable. A major challenge in the Agile community today is people not manifesting what they know in their code. What you know in your head has no value if it doesn't manifest in your code.
Al Shalloway has been teaching design patterns for almost 2 decades. This talk is about getting the essence of the teachings of design patterns at a basic coding level. That is, by focusing on 6 basic practices:
1 Programming by intention
2 Separate Use From Construction
3 Consider tests before writing code
4 Encapsulation as a design technique
5 Avoiding redundancy that will come back to cost you
6 Refactor To The Open Closed
Our experience has shown that if you write code with these practices, your code will be of high quality even if you are not aware of the patterns you are likely implementing.
Learning Outcomes:
  • How to write code in an extensible manner by attending to a handful of basic practices.
  • How the aforementioned practices will result in design patterns being used.
  • That writing code with high quality takes less time than writing code with low quality.
Attachments:

Speakers

Wednesday August 5, 2015 10:45 - 12:00
National Harbor 4/5

14:00

From Zero to Continuous Validated Learning: Lean Startup on PaaS (Chris Sterling)
Limited Capacity seats available

Abstract:
This session will take us on a journey from idea to "validated learning”, implementing an idea and measuring for its expected effect on behavior. Cloud computing, Agile software development, and Lean Startup have all contributed to lowering the cost of learning and accelerating time to market for businesses. Platform as a Service (PaaS) is further accelerating the validated learning cycles in application development to increase successful business outcomes. We will show how to use Cloud Foundry as a PaaS and a Lean Startup approach to take us from zero to a valuable platform that helps us inspect and adapt our business based on validated learning.
  • Using Lean Canvas to identify our first experiment
  • Developing a Landing Page MVP application to run the first experiment
  • Deploying to Cloud Foundry, a Platform as a Service (PaaS), for executing the experiment
  • Measure the results of the experiment
  • Reviewing the Lean Canvas to decide what we need to learn next
  • Use a Blue/Green Deployment approach for updating our application

Learning Outcomes:
  • After this session, participants will take away an approach for validating their own business ideas through fast, focused learning cycles. Software developers will also take away tools and techniques for enabling fast feedback using Cloud Foundry as a PaaS.



Speakers
avatar for Chris Sterling

Chris Sterling

Product Owner - AppFog, CenturyLink Cloud
Chris Sterling is a Product Owner for AppFog, a public platform to deploy cloud native applications, at CenturyLink Cloud. Chris has an extensive technology, process, and consulting background and brings his experience and deep passion for software development into his daily work... Read More →


Wednesday August 5, 2015 14:00 - 15:15
Chesapeake 10/11/12

14:00

Hands-on: Let's save some Legacy Code (Arlo Belshee, Llewellyn Falco)
Limited Capacity seats available

Abstract:
Like everyone else, you have a large product that is hard to work with. We're going to change that in 75 minutes. Together we will save some gnarly legacy code (one thousand-line function). We will start with something hard to read, untested, and possibly buggy. We will finish with code that is stupidly easy to modify. You'll learn 6 trivial techniques that you can apply over and over to fix 95% of the messiest code you have. You can take home this exercise to help the rest of your team learn these techniques. You'll also learn how your team can teach itself a bunch more techniques to handle the other 5%.
We are going to save some legacy code. In 75 minutes. While adding features. We will mob program; you will save this legacy code. We won't introduce any bugs along the way. We will spend the time that you would normally use reading code to instead make it readable. You can apply these techniques and reduce the cost of coding within 48 hours of getting home.
We have done this exercise with dozens of teams. They code differently now. Changing existing code is actually safer and cheaper than writing new code. Their designs get a little better each day. This session will improve your code and show you what skills to learn to gain further improvements.

Learning Outcomes:
  • Know the 6 refactorings required for reading code by refactoring it.
  • Differentiate between refactoring and micro-rewrites (code editing), and choose each where appropriate.
  • Have fluency in the key refactorings with one tool set and know how to spread that fluency to other tools and to broaden the skills within that tool set.
  • Able to start successfully saving legacy code without making major investments, even with no tests.
  • See an obvious path for continuing to learn design and refactoring skills - know where and how to get feedback and can create own curriculum for next 1.5-3 years of improvements.



Speakers
avatar for Arlo Belshee

Arlo Belshee

Team Craftsman, Legacy Code Mender, and Rabblerouser, Tableau Software
Arlo helps you change cultures in large organizations. He transitions hundreds or thousands of people at a time to full technical and cultural prowess in a way that sticks. More importantly, Arlo gives your company the ability to change its own culture. He seeks to be the last consultant... Read More →
avatar for Llewellyn Falco

Llewellyn Falco

Agile Coach, Spun Labs
Llewellyn Falco is an Agile Technical Coach specializing in Legacy Code and Test Driven Development. He is the creator of the open source testing tool ApprovalTests( www.approvaltests.com ), co-founder of TeachingKidsProgram ( www.teachingkidsprogramming.org ) and a PluralSight a... Read More →


Wednesday August 5, 2015 14:00 - 15:15
National Harbor 13

15:45

Sustainable Test-Driven Development (Scott Bain)
Limited Capacity seats available

Abstract:
Sustainable Test-Driven Development
As Test-Driven Development has gained in momentum and popularity, it has also been called into question as a viable development strategy past the first 3-4 iterations in Agile projects. Many report that the test suite generated by the process can become a maintenance problem in and of itself, eventually collapsing under its own weight.
Is this an inherent problem with TDD, or simply a result of a misunderstanding of how TDD works, and what needs to be emphasized in order to keep it sustainable? In this presentation we will introduce the basics of automated test-driven development, and then briefly examine the specific factors that make it a sustainable process. This requires more than simply knowing how to write unit tests, but implies a style of test design that does not become un-maintainable as the test quite matures and grows in size.
Learning Outcomes:
  • Learn how to conduct the Test-Driven development process in a sustainable way. Also learn how/why TDD is also Test-Driven *Design*.
Attachments:

Speakers
avatar for Scott Bain

Scott Bain

Senior Trainer/Consultant, Net Objectives
Scott Bain is a 35+-year veteran in computer technology, with a background in development, engineering, and design. He has also designed, delivered, and managed training programs for certification and end-user skills, both in traditional classrooms and via distance learning. Scott... Read More →


Wednesday August 5, 2015 15:45 - 17:00
National Harbor 12
 
Thursday, August 6
 

09:00

Complementing Scrum with Technical Excellence for Hyper-productivity (Ron Quartel)
Limited Capacity seats available

Abstract:
“Few implementations of Scrum achieve the hyper productive state for which Scrum was designed (5-10 times normal performance). Those that do all implement variations on XP (eXtreme Programming)” - Jeff Sutherland
Want to go fast? Really fast? Like 5x-10x times faster? Find out how Scrum + XP delivers on this.
The session will start with a lively and interactive exercise which will make it obvious why you need to complement Scrum with eXtreme Programming (XP) and what happens if you don't. The exercise is easily reproducible and you will be able to facilitate it in your own environment to help sell your engineering teams and management on the advantages of taking on these practices.
Learning Outcomes:
  • what XP is
  • how XP integrates with Scrum
  • the what, how and when of refactoring
  • how technical debt is created and how to stop it in it's tracks and remove it
  • how to build an XP team
  • how and why Scrum plus XP achieves hyper-productivity
  • why Scrum without XP can fail you
Attachments:

Speakers
avatar for Ron Quartel

Ron Quartel

Developer, Ripl
Ron loves software and creating harmony in the workplace. His Agile and Extreme Programming experience started in 2002 and over the years has built into strong technical skills and a deep understanding of Agile methods. In 2014 Ron had an epiphany moment at an Open Space conference... Read More →


Thursday August 6, 2015 09:00 - 10:15
Chesapeake 7/8/9

09:00

Science of Technical Debt (Brian Randell)
Limited Capacity seats available

Abstract:
In this session, Brian will cover what technical debt is and what issues it causes for your teams and organization. He’ll then cover how you can identify and quantify it using metrics and analytics. Then he’ll look at ways that you can apply rigor and develop a plan to address your existing debt. He’ll show you with tooling how to analyze and adjust your development processes to repay the debt. Finally, he’ll provide guidance on how you can reduce the amount of debt your team takes on during development.

Learning Outcomes:
  • What is technical debt
  • How does technical debt get into your development processes
  • How to pay off technical debt
  • How to prevent technical debt from becoming the norm in your systems



Speakers
avatar for Brian Randell

Brian Randell

Partner, MCW Technologies LLC
Brian A. Randell is a Partner with MCW Technologies LLC. For more than 20 years he has been building software solutions. He educates teams on Microsoft technologies via writing and training—both in-person and on demand. He’s also a consultant for companies small and large, worldwide... Read More →


Thursday August 6, 2015 09:00 - 10:15
National Harbor 2

10:45

Agile Craftsmanship and Technical Excellence, How to Get There (Steve Ropa)
Limited Capacity seats available

Abstract:
We all know that continuous attention to technical excellence and good design enhances agility. We also know that Craftsmanship is currently the best known approach to professionalism in development. But what skills really get us there, and how do we develop them in ourselves and others. We will explore briefly what it means to be an apprentice or journeyman, but then delve deeper into how to develop these skills in ourselves and our teams. This discussion will be based on a matrix of skills and professional practices necessary and the activities necessary to show competence in said skills(hint: its not a test!)
Learning Outcomes:
  • Attendees should have a good idea of a way to help develop themselves and their team members' technical expertise and also foster an atmosphere of Craftmanship in their workshops.
Attachments:

Speakers
avatar for Steve Ropa

Steve Ropa

Agile Consultant, VersionOne
Steve has 26+ years of experience in software development and 16 years’ experience working with agile methods. Steve is passionate about bridging the gap between the business and technology and nurturing the change in the nature of development. He has currently been focusing many... Read More →


Thursday August 6, 2015 10:45 - 12:00
National Harbor 12

14:00

Don't Analyze and Ignore, Automate and Act! (Scott Dillman)
Limited Capacity seats available

Abstract:
Static-code analysis tools provide a wealth of information about your code, and highlight numerous opportunities for improvement. If you are like most teams, however, you are rarely given a block of dedicated time to devote to this technical debt, and therefore critical opportunities get lost in the information overload of the analysis results. The most opportune time to identify and act on coding issues is as they are being introduced. In this session, you will learn how to leverage your automated build to monitor your analysis results, and to immediately act on impacted areas that are most important to you. For example, you will learn how to leverage your build to detect duplication introduced into the code base, a change to an area of known complexity, or matches on keywords frequently linked to defects. You will then learn how to have the build automatically initiate a code review in response to these findings. This session will also highlight additional opportunities to leverage code analysis in your build such as automating the generation of release notes, and automating the maintenance of a web-service catalog. The discussion will cover both custom tools and techniques, as well as identifying opportunities to leverage and integrate off-the-shelf products.
Learning Outcomes:
  • Learn how to have your automated build monitor your static-code analysis results
  • Learn how to monitor for changes to sensitive areas of your code base
  • Learn how to monitor for keywords introduced that may be indicative of potential problems
  • Learn how to automatically trigger code reviews based on analysis results
  • Learn how to leverage code analysis and automation to create automated release notes
  • Learn how to leverage your build to create and maintain a web-service catalog
Attachments:

Speakers
avatar for Scott Dillman

Scott Dillman

Senior Information Systems Director, Travelers
I have over 20 years of experience in software development, the majority of which has been spent in technical-leadership roles leading teams of software developers, application architects, and system analysts. I have worked in several industries including automotive, telecommunications... Read More →


Thursday August 6, 2015 14:00 - 15:15
Chesapeake 7/8/9

14:00

TDD in Embedded Systems... All The Way Down To The Hardware (Neil Johnson)
Limited Capacity seats available

Abstract:
At Agile2014 in Orlando, you watched a crazy person push around a bright blue cart while mumbling incoherently about how TDD can be used to build software AND hardware. Well... it's a year later and that crazy person is back with a hardware demo that is bigger and much, much better.
In this talk, we'll look at how TDD can be used to build a complete embedded system, from the embedded software to the drivers, right down to the hardware. We'll look at how TDD translates to hardware development and discuss the lessons I've learned about thread management, timing, design partitioning, refactoring and testability. The best part is the live demo. We'll start with a real application running on a reprogrammable FPGA platform. From there, we'll change code and tests on the fly, run the tests and display the results from a true embedded system built entirely with TDD.
Learning Outcomes:
  • * TDD can be used to build entire embedded systems
  • * TDD changes how we think about hardware design partitioning and testability
  • * unit testing helps us rethink threading and clocking strategies
  • * incremental development can be done in hardware
Attachments:

Speakers
avatar for neil johnson

neil johnson

Hardware Verification Engineer, XtremeEDA
Neil Johnson is a hardware test specialist and currently holds the position of Principal Consultant at XtremeEDA Corp, a design services firm specializing in all aspects of ASIC and FPGA development. He is co-moderator for AgileSoC.com, a site dedicated to the introduction of Agile... Read More →


Thursday August 6, 2015 14:00 - 15:15
National Harbor 8

15:45

Agile Architecture - Ideals, History, and a New Hope (Gary Pedretti)
Limited Capacity seats available

Abstract:
Application and Enterprise Architecture has been put through its paces in the agile world over the years...
  • Ideals: architectural work inside the development team, shortening the design-to-implementation loop as much as possible
  • Misinterpretations: "We don't need no stinking Architects!" screamed the Keyboard Cowboys
  • The inevitable backlash of misinterpretations, lack of craft, and the inertia of the status quo: Architectural Epics and Runways continuing to encourage a split between business and technology, command-and-control capital-"A" Architects
Where are we now? What have we learned? More importantly, what have we forgotten?
Could "The best architectures...emerge from self-organizing teams?" No, really?
Now more than ever, we need to go back to the core principles of agility, craftsmanship, and evolutionary architecture.
This talk will review the history of application architecture in the agile development world, explain common pitfalls, and provide concrete patterns and practices for growing and maintaining architecture in a sustainable, agile way.
Learning Outcomes:
  • Understanding the history of enterprise and application architecture in the agile development world
  • Common pitfalls, counter arguments, and misinterpretations of "Emergent Architecture" and "Evolutionary Architecture"
  • Pros and cons of Evolutionary Architecture and its alternatives
  • Real-world Evolutionary Architecture techniques and practices, firmly rooted in first principles
Attachments:

Speakers
avatar for Gary Pedretti

Gary Pedretti

Founder and Owner, Sodoto Solutions
I am an agile practitioner, Scrum trainer, application architect, and software craftsman. With over sixteen years of experience, I help companies achieve their goals in delivering business value through software. In 2006, I took a class on Scrum with Ken Schwaber. Since then I have... Read More →



Thursday August 6, 2015 15:45 - 17:00
Chesapeake 7/8/9

15:45

Node.js Crash Course (David Neal)
Limited Capacity seats available

Abstract:
Node.js is a compelling platform that is quickly spreading from startups to the enterprise. Node.js strategically unites developers of all backgrounds through the common language of JavaScript. Why should you learn Node.js and where do you start? You will come away from this talk with the evidence to support Node.js, and tools you need to be productive. We will walk through a typical workflow of creating and debugging a web application. You will learn how easy it is to deploy, including Microsoft Azure. We'll also look at popular frameworks and modules, and other learning resources to give you the best start.
Learning Outcomes:
  • Pros and Cons of Node.js over .NET
  • How to get started with Node.js
  • How to create a Node.js project in Visual Studio
  • How to debug Node.js applications
  • How to deploy a Node.js application to Microsoft Azure
  • Additional learning resources
Attachments:

Speakers
avatar for David Neal

David Neal

Developer Advocate, LeanKit
David is a family man, geek, musician, motorcyclist, speaker, and software developer living in North GA. He's currently a Developer Advocate for LeanKit. He's a Microsoft MVP, and runs on a high-octane mixture of caffeine and bacon.


Thursday August 6, 2015 15:45 - 17:00
Chesapeake 10/11/12
 
Friday, August 7
 

09:00

Growing a craftsman through innovation & apprenticeship (Carlos Sirias, Sofia Parissos)
Limited Capacity seats available

Abstract:
Are you pushing your organization to master Agile skills? Do you have the knowledge but not everyone in your organization does? Do you want to develop novices into experts? Do you want to create new products and services, but lack an organizational culture which promotes innovation? perhaps an apprenticeship program is right for you, one that is focused on innovation.
An apprenticeship program will secure the qualified professionals our organizations need by providing the experience our industry’s current model lacks. By allowing apprentices to work on projects without “real” clients been involved (safe to make mistakes) with minimal investment we will be able to develop their core competencies while they work on something creative that could potentially become a new product or service.
Learning Outcomes:
  • Understanding the apprenticeship paradigms
  • How to get started with an apprentice program
  • Lessons learned from managing an apprenticeship program
  • Principles to base an apprentice program on
  • Apprenticeship ROI
  • How to embed innovation in an apprenticeship
  • Benefits of apprenticeship innovation.
Attachments:

Speakers
avatar for csirias

csirias

CEO, PERNIX
Co-founder of Pernix. A software development consultancy from Costa Rica with clients in America and Europe.


Friday August 7, 2015 09:00 - 10:15
National Harbor 13