Emergent Design with Test-Driven Development

This workshop shows how Test-Driven Development (TDD) is used to enable emergent design. Using a simple but representative example in Java, the presenter will demonstrate how a low-level design naturally emerges when using the TDD cycle of test/code/refactor. The audience will be involved by suggesting the next steps and also by pairing with the presenter.

Note that the goal of the session isn't necessarily to have a complete working example at the end, but to illustrate the process of low-level design through TDD.

 
6 favorite thumb_down thumb_up 0 comments visibility_off  Remove from Watchlist visibility  Add to Watchlist
 

Outline/structure of the Session

The session will proceed as follows:

  • 10 minutes - Introduction explaining emergent design with TDD and the example problem to solve.
    75 minutes - Interactively building the solution using TDD with assistance from the audience.
    5 minutes - Questions and wrap-up

Learning Outcome

  • Understand the concept of emergent design
  • Learn how to allow overall design to emerge through small steps
  • Learn the difference between emergent design and designing up front
  • Learn how much design is enough

Target Audience

This session is intended primarily for software developers and architects, though other roles such as testers and business analysts will find value in understanding how emergent design is intended to work.

schedule Submitted 1 year ago

Comments Subscribe to Comments

comment Comment on this Proposal

  • Liked Ayesha Khan
    keyboard_arrow_down

    One story in three voices: research, design and development

    Ayesha Khan
    Ayesha Khan
    Jennifer Fraser
    Jennifer Fraser
    Lina Bonapace
    Lina Bonapace
    schedule 1 year ago
    Sold Out!
    60 mins
    Talk
    Intermediate

    Take a recently acquired high-profile client with global stakeholders, insert a very aggressive timeline for a complex problem, throw a global team of researchers, designers and developers at it, and see what happens!

    Wonderful things can happen when multi-disciplinary teams are engaged on intense, complex projects using Agile methods. But, tight timeframes magnify problems that otherwise would have been easily worked through, including: internal and external team dynamics; communication challenges; and time zone differences. We will share with you the good, the bad and the ugly of what happened, and what we learned from our experience.

  • Liked Ellen Grove
    keyboard_arrow_down

    Digging in the dirt: unearthing assumptions about organizational & team culture

    Ellen Grove
    Ellen Grove
    Mike Bowler
    Mike Bowler
    schedule 1 year ago
    Sold Out!
    90 mins
    Workshop
    Intermediate

    Organizational and team culture is rooted in implicit assumptions about how individuals relate to one another in getting work done.  To foster alignment or change, it’s critical to have open and frank discussions about what we assume and what we value: this workshop will demonstrate how to have that conversation using LEGO Serious Play

  • Liked Sue Johnston
    keyboard_arrow_down

    Appreciative Agile: Overturning Our Problem Bias

    Sue Johnston
    Sue Johnston
    schedule 1 year ago
    Sold Out!
    60 mins
    Workshop
    Beginner

    Appreciative Inquiry (AI) is a tool for change that’s aligned with the values, beliefs and challenges we find in business today. It can engage and inspire a work team – even an entire work force. It flips our perspective from looking at problems to be solved and invites us to examine what’s working. A focus on strengths helps us do more than perform – we transform. In this lively session, we’ll head in a new direction – away from the deficit-based approach to change where we identify problems and shortfalls. Instead, we’ll approach things from the other side.

    In this session, you will:

    • Learn how and why AI works
    • Discover the 5D model (definition, discovery, dream, design, and delivery)
    • Explore some questions that make positive change possible
    • Discuss ways to incorporate AI in our daily work

    Appreciative Inquiry isn’t just “happy talk.” it’s grounded in science and proven effective in large organizations and small teams around the world. It’s a way to open communication, unleash potential and create a true learning organization. AI offers a positive, strengths-based approach to organizational development and change management.

    Join us and learn about the subtle shift you can choose to make – and to introduce to others – for everyone’s benefit.

  • Liked Marie-Christine Legault
    keyboard_arrow_down

    Agile marketing: a new reality!

    Marie-Christine Legault
    Marie-Christine Legault
    schedule 1 year ago
    Sold Out!
    45 mins
    Talk
    Beginner

    After working for 25 years in advertising agencies and major networks - I believe that the software industry and the Agile community ...have something to teach / share with the advertising world.

    • Agile marketing promotes experimentation and continuous improvement.
    • Its actions are based on trends and in reaction to surrounding changes.
    • Agile campaigns allow improved collaboration between clients and agencies.
    • Discover why traditional marketing is out-of-date and how Agility will help you rapidly adapt to the market.
  • Liked Mike Lowery
    keyboard_arrow_down

    Coaching flow - Moving past resistance

    Mike Lowery
    Mike Lowery
    schedule 1 year ago
    Sold Out!
    60 mins
    Talk
    Intermediate

    “They are resisting the changes I am trying to implement!” It’s a common refrain when people don’t embrace a change with the speed or enthusiasm desired. Do you keep pushing, give up or call in the big guns? How you respond to resistance can doom the change to failure, or boost the chance of success.
    As coaches, we introduce new ideas in many different contexts. Relying on positional authority (our role as coach), or calling on outside authority (the managers who hired us) isn't likely to get those ideas a fair hearing.
    In this talk, Mike will help you see resistance from a new perspective. By understanding how much influence you have, what forces are interacting around you and seeing different ways to re-frame your issues you can still get your message across without “inflicting help” on others.

  • Liked Glenn Waters
    keyboard_arrow_down

    8 (Agile) Testing Success Factors

    Glenn Waters
    Glenn Waters
    schedule 1 year ago
    Sold Out!
    60 mins
    Workshop
    Beginner

    In many Agile environments testing is either pushed to the end of a Sprint or is handled in a separate Sprint. This “mini-waterfall” approach to testing can be the root cause for a number of problems, including stress for the testers, delays in getting to Potentially Shippable Product Increment, missed testing, and team interruptions.

    During this session we will look at 8 practical techniques that teams can try to help them deliver higher quality products. We will be using Jenga blocks as a tool to explore the techniques that can be used to improve quality.

  • Liked Mike Edwards
    keyboard_arrow_down

    Leading for Change

    Mike Edwards
    Mike Edwards
    schedule 1 year ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    As a leader are you struggling to find a way for your team to improve and have that change stick? Here’s a thought: What if the point isn’t to have change stick?

    Successful organizations look at change as the way we work. This is where Leading for Change comes in. Leading for Change requires all of us, regardless of our title, to take a different approach in leading ourself, the people around us and the system.

    Drawing from my upcoming book of the same title, I will help you start thinking of leadership in a different light. We will start by looking at how you lead yourself, then expand into leading those around you. Finally we will examine what it means to lead a system so you, the people and the system will never stop improving.

    Leading for Change is about providing the leadership in support

  • Liked Dave Rooney
    keyboard_arrow_down

    Continuous Improvement with Root Cause Analysis

    Dave Rooney
    Dave Rooney
    schedule 1 year ago
    Sold Out!
    60 mins
    Workshop
    Beginner

    Whether it's a minor typo on a page, a major failure causing a severe outage of a system or anything in between, the software industry is fertile ground for examining problems and their causes. From the problems that plagued HealthCare.gov to defects that allowed some lucky people to purchase airline tickets for almost nothing from United airlines, we hear a constant stream of issues with software systems.

    With our society becoming increasingly dependent on software, we need to "up our game" with respect to tracking down problems with they happen, ensuring that defects are caught before entering the wild, and are prevented from occurring in the first place.

    Root Cause Analysis is a process that enables this form of continuous improvement and uses techniques borrowed from other engineering disciplines. The aviation industry, for example, constantly seeks to improve due to the dire consequences of any failures in that domain.

    This interactive workshop will explain when and how to use Root Cause Analysis (RCA) to investigate problems and determine actions that will ensure that those problems can never happen again. Using real world examples the attendees will explore simple, lightweight RCA practices as well as a more involved example using fault tree analysis.

  • Liked Mike Bowler
    keyboard_arrow_down

    Moving Towards Continuous Delivery: Getting there from here

    Mike Bowler
    Mike Bowler
    schedule 1 year ago
    Sold Out!
    60 mins
    Workshop
    Advanced

    Continuous delivery is the capability to release new features or changes at any time, dictated only by the needs of the business and not restricted by technical limitations. Some companies use this to deploy dozens of times a day, others release less often.

    The benefits of continuous delivery are fairly obvious today. Companies that have the ability to release on demand have a distinct advantage over their competitors who can’t.

    The challenge is planning the journey. Given where we are today, what steps should we be taking? What measurements should we be tracking now to know if we’re moving in the right direction? What do we need to change in our process to make this happen?

    In this workshop, we will explore several milestones and measurements for continuous delivery to allow participants to create a roadmap for their specific environments.

    Mike has been helping a variety of companies move towards continuous delivery, from startups to the Fortune 500 and brings that experience to the discussion.

  • Liked Mike Edwards
    keyboard_arrow_down

    Value: From 'meh' to 'wow'!

    Mike Edwards
    Mike Edwards
    schedule 1 year ago
    Sold Out!
    45 mins
    Talk
    Beginner

    As a customer how do you define “value”? What does it take for a business to shift Value from "Meh" and create “Wow” experiences?

    Why does the software industry struggle to deliver valuable results? Every team I work with talks about delivering valuable features. When I question how they define value I might get text book answers about ROI, sales, efficiencies or other quantifiable measures. Although they are important measures, I don’t believe “Wow” comes from anything you can quantify. If that’s true then how do we get from Value to Wow without going broke?

    We will start by examining two similar customer experiences. Both experiences are valuable, but one is over the top in terms of “Wow!”. Using these as a basis we will examine the system of delivering value at the corporate, team, employee and customer levels. There’s no magic formula to creating “Wow!” moments but if can align your system you might have a chance of creating a few.

  • Liked Steve Purkis
    keyboard_arrow_down

    Sparking Change: Agile Transition Lessons Learned

    Steve Purkis
    Steve Purkis
    schedule 1 year ago
    Sold Out!
    45 mins
    Experience Report
    Beginner

    Changing an organisation for the better can be really hard!  At times, it may seem impossible!  Why?  What can you do to make it easier?

    In this session Steve will share lessons learned from his experience as a change agent attempting to introduce various agile development practices to several organisations.  With outcomes ranging from "failed dismally" to "roaring success", the audience will come away with a few laughs and some practical tips to refer to when setting out on their own journey.

  • Ram Srinivasan
    Ram Srinivasan
    schedule 1 year ago
    Sold Out!
    60 mins
    Workshop
    Beginner

    What does John F. Kennedy's "We choose to go to the moon in this decade...", the recent organizational change that you had, and your latest update on social media have in common? Have you ever thought why well-intended, perfectly valid logical ideas fail to appeal to people?

    One of the best ways to communicate with people is through a story. Stories or narratives help you to connect with the hearts and minds of your audience. An emotionally engaging story affects more areas of the brain than rational, data-driven messages - meaning that they are far more likely to resonate with people you lead. Realizing this, the importance of storytelling as a tool has gained prominence in organizations.

    So what sort of stories can you tell in a business context? And an eloquent leader uses different narrative patterns of storytelling to achieve different outcomes. Learn about the skill of storytelling to communicate your vision, spark action, have people collaborate at work and transform your organization.

  • Liked Melanie Paquette
    keyboard_arrow_down

    What does agility feel like -- a new approach to goal setting

    Melanie Paquette
    Melanie Paquette
    schedule 1 year ago
    Sold Out!
    90 mins
    Workshop
    Beginner

    If we examine traditional goal setting methods, like SMART, we see that we've been encouraged for over 30 years to make sure that our goals are Specific, Measurable, Achievable, Realistic and Time Based.  The theory being that if our goals meet these criteria, we will be more like to actually achieve them.  From there, we take the actions necessary, we measure, and ta-da! we achieve our goals.

    Only, in a large number of cases, we don't quite get there. A few things can end up happening:  

    1. We get tired of pursuing the goal and give up
    2. We pursue the goal, but can't quite seem to achieve it, even though we know what we want and how to get it
    3. We achieve the goal, but find that somehow, the results are not what we thought they would be

    Examples abound both in our personal lives and in organizations.  We work hard to get a promotion, only to find that we aren't satisfied with the new role.  We commit to a healthy lifestyle, only to give up on it after a couple of weeks.  Organizations set goals for improvement, and don't achieve them, even though everyone did the right thing.

    What if we are actually motivated by how we think achieving a goal will make us feel, rather than by the achievement itself?  So really, when we were working for that promotion, what we actually wanted was to feel powerful and capable (even if we weren't conscious of it).  We thought that the promotion would make us feel that way, but it didn't.

    Human beings are uniquely motivated by feelings -- we do things that we think will make us feel good, and avoid things that we think will make us feel bad.

    What does this have to do with agile development you ask?  Well, in my experience as a coach and a ScrumMaster, I've watched teams struggle to adopt agile practices (even though they seemed to really want to) and I've watched team members resist implementing practices that have obvious, undeniable benefits, and wondered what the barriers were.  The common thread in all of these teams seems to be the lack of understanding of how they want to feel on an agile team -- ultimately the "what's in it for me?" is missing for them.  It's like leaving the "so that" off of the user story.

    It's not enough to just want to "be agile".  We have to know why we want to be agile, and specifically, what we as individuals will get out of an agile transition.

    In this workshop, we will use user stories as a basis for setting goals, with a particular focus on using the "so that" to identify how we as team members, want to feel when work on an agile team.

  • Liked Eric Laramée
    keyboard_arrow_down

    Uncovering your organizational culture

    Eric Laramée
    Eric Laramée
    schedule 1 year ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    Culture is often stated as the top obstacle to transforming into an agile organisation.  This misunderstood obstacle can limit teams in reaching their full potential or even expel any hopes for meaningful change. During this session, we’ll explore ways to uncover the dominant culture of your organization, identify the contrasts with an agile culture and how to empower every individual to lead change initiatives.

  • Liked Isabelle Therrien
    keyboard_arrow_down

    Les communautés de pratique pour favoriser l'apprentissage

    Isabelle Therrien
    Isabelle Therrien
    schedule 1 year ago
    Sold Out!
    60 mins
    Talk
    Beginner

    Elles permettent de partager les connaissances entre des personnes qui exercent le même métier, mais elles sont aussi un moyen d’apprendre sur vous, votre écosystème d’équipes et votre organisation. J’élaborerai sur les diverses façons de mener une communauté de pratique, les meilleures pratiques, et nous les expérimenterons ensemble.

  • Liked Jesus Mendez
    keyboard_arrow_down

    Chronicles about curiosity

    Jesus Mendez
    Jesus Mendez
    schedule 1 year ago
    Sold Out!
    60 mins
    Experience Report
    Beginner

    In this talk, Jesus invites you to take a closer look about how curiosity has transformed his professional carreer into an unlimited source of inspiration that supports his Agile journey. This inspirational talk, is a deep retrospection about live and the value of being authentic when establishing relationships with others.This experience-report has been formated in chronicles that will hopefully inspire you to connect with your authentic-self and lead you to greatness.

  • Liked Amanda Holtstrom
    keyboard_arrow_down

    Going Live: Getting Agile with Everything That's Not Code

    Amanda Holtstrom
    Amanda Holtstrom
    schedule 1 year ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    To win work, consultants are asked to price their work competitively. To win repeating work, consultants must do a good job. In this session, we'll explore some of the approaches Amanda has taken as a Product Owner to create great, meaningful and lean deliverables.

    Together, we'll examine how traditional UX and Change Management artefacts can be tweaked to deliver more value in less time. Some examples of these tweaks include: varying the level of fidelity, varying the direction, substituting appropriate alternatives and identifying and focusing on priorities. By using the basic lean principle of prioritizing the end product, instead of the content that is produced to create and support it, you'll learn how to make the most out of the budgets that surround the activities unrelated to writing or testing code for a product or site.

    While this advice may cause your standard process to be sacrificed, the quality of the resulting product and the alignment with its user's needs will not. Resulting in more bang for your (or your client's) buck.

  • Mike Kaufman
    Mike Kaufman
    schedule 1 year ago
    Sold Out!
    90 mins
    Workshop
    Beginner

    The White Bead Corporation is looking for Above Average Employees for expanded production.  On the job training provided.  Earn bonuses!  The White Bead Corporation is a proud producer of shiny, perfect, white beads. We work hard to meet our customer’s exacting demands and won’t settle for anything less than perfection. We need Willing Workers who are Above Average Employees to handle this rigorous task in an inspiring environment. Apply within.

     

    Come watch, and participate, in the classic experiment made famous by Dr. Deming. Let’s explore the link between typical management techniques, human factors and overall quality.