Agile + DevOps Virtual 2021 - Agile Engineering & Development
Monday, June 7
Getting Started with Microservices and Serverless
Do you wonder how computers can be “serverless”? Does “microservices” seem like just another buzzword? These two technologies are actually changing software design and operations. They work together to help solve complex problems by breaking them down into smaller pieces through loose coupling and modularization. Where some traditional software design techniques required assembling a monolithic piece of software on a platform, a microservices architecture and a serverless programming paradigm focus more on how to keep the pieces independent, orthogonal in function, and interconnected...
Tuesday, June 8
Test-Driven Development for the Uninitiated
You might have heard of test-driven development (TDD), a practice where tests are the drivers of the code, and you want to know more. You might have even tried it, but come away feeling dejected and confused. Now is your chance to have an expert show you the ropes! TDD is the best practice for high-quality, low-defect-count software. That said, why is it still unfamiliar to many developers? Byron Katz will do his part to help rectify that issue, through this intensive workshop led by an experienced practitioner. But what is TDD? Practically and simply, in TDD you write a test first, then...
Threat Modeling
If it seems as though attacks are always getting better, it’s because they are. Computers, apps, networks, and connected devices are all subject to different types of threats. Systems are facing new threats from things such as voice cloning and computational propaganda. Not to mention the growing importance of threats “at the human layer.” All of this can make it hard to keep up, let alone get ahead of potential threats. So isn’t it time that the threat modeling used by security pros, developers and systems managers evolve? Join Jeffery Payne as he shares his knowledge and experience on...
Wednesday, June 9
How I Learned to Stop Worrying and Love Legacy Code
Many developers would love to work on brand-new, cutting-edge, greenfield projects, never having to deal with the mess of unintelligible code someone else left behind. But most of us spend most of our time maintaining existing code, and it is often spaghetti code with no unit tests, no documentation, and, if we are lucky, a comment that says, “Not sure how this works, but it does so don’t touch it.” We need to make changes, but we can’t even figure out what the code is supposed to do. You know your changes are just going to pile on and make it worse. You can’t change the code safely...
Agile in 160 Billion Gallons: When Agile Principles Occur During A Disaster
PreviewWhile the Agile concepts may sometimes be easy, the why's and how's are a little trickier to wrap your head around. I’ve unfortunately participated in three recent rising flood water events in Houston over the last three years. Employing my agile skills has had a profound impact on the "success of the project". I will be mapping common Agile ideas to dealing with rising water encroaching on your home. I start with an interactive exercise where we talk about flooding, with the outcome being the question: “What do you do when you know that your house might flood?” The answer to this...
DevOps Engineering with containers to enable microservices
Are you trying to follow the industry and shift from a monolithic system to a widely distributed, scalable, and highly available microservice architecture? Maybe you already shifted to Agile delivery models, but you’re struggling to keep up with the rate of change in the technologies of these systems. Your DevOps team has thrown a bunch of automation in place to help this, but it seems to be creating a bigger, different mess that results in broken systems that don’t work together.
To succeed, you need to properly design and implement your delivery process with the right technology...
Shifting Left - Introduction to Testing
Shift left encourages testing to be done as early as possible. This practice results in developers doing more testing as well as other stakeholders. Testers aren’t the only ones responsible for the quality of the software. With this move there is a need for everyone to understand how to test and to test properly. This move also brings with it questions such as What are the correct terminologies to use? How do you properly report a bug? How did you find that bug? What are best practices for testing? Should everything be automated? In this session Julia will go through an introduction to...
Thursday, June 10
Engage and Delight Your Stakeholders: There's ALWAYS Something to Show
PreviewWhether you are in a large or small organization, we all have to convey and demonstrate our accomplishments in our software. Many of us struggle finding what to show, especially if it’s not a UI. In this presentation, we'll walk through various aspects of presenting software: presenting basics, how to prepare, how to convey your ideas, how to keep their attention, tips and tricks, remote presentations, and finally how to convey specific software topics. The entire presentation will be a culmination to that last topic: how to convey specific software topics, like spikes, backends,...
Stop, You’re Doing BDD Wrong
PreviewTools like Cucumber and Fitnesse have been popularizing the ‘idea’ of using Behavior Driven Development (BDD) for test automation for over a decade. While there are many benefits to using these tools, adoption of BDD practices and principles can add a lot more value than the tooling alone. BDD isn’t about testing; it’s about design, and team collaboration. Max will review the main tenets of BDD, and dive into some ideas of implementing this process. He’ll cover the benefits of doing true BDD: how it can be used to increase product quality and reduce feature churn. He will also...
Agile Metrics transformation to fix disconnect between Business and Delivery
PreviewThere is a widespread disconnect between Business and Delivery. These days many delivery teams follow agile principles. Their focus is on improving agile metrics such as sprint velocity,tracking product burnup/burndown etc. However, these metrics/measures do not say anything about the value a user or customer is getting. Business wants to gauge customer satisfaction,employee satisfaction, time to market, innovation, cost, revenue etc. There is a disconnect. Some of the common pitfalls – last-minute surprises, dissatisfied teams, and significant cost impact. Agile metrics...