In this short presentation, Gerard Beckerleg – SSW Solution Architect – shows us how we can use Agile to more effectively develop our mobile applications.
This presentation was part of the Sydney Xamarin Hack Day line-up. Head over to the Xamarin Hack Day website to apply to attend (or even run your own hack day!)
Let us know how you feel, take the poll!
Gerard Beckerleg: Okay, morning guys. I’m going to be very quick because I don’t want to take up too much of your time talking about Agile. A little bit about me, so my name is Gerard Beckerleg, solution architect at SSW, but the thing that’s probably important that I want to get across to you here is that I’m a mentor at the FireBootCamp, okay? And FireBootCamp is something that we’re really proud of at SSW. This is a nine-week intensive .Net training program where you get to build a real-world product over nine weeks and you’re using all the latest technologies, and also wrapped up in using an Agile process. So you get to learn about Agile, you get to learn about building products, and you get to learn using the latest .Net technologies from all the lessons that we’ve learned over the years.
So this is really good for people who are just out of university and want to get that step up, because I know when you go to interviews people are telling you you don’t have any experience. So you can say, “Okay, I’ve got nine weeks experience building a product.” And alternatively, the other types of people that we get on here are normally contractors who, their skill sets have become a bit outdated and they want to just refresh and learn some new things in a really short space of time. So I wanted to highlight that to you.
So one of the things that we do in BootCamp is we teach Agile. So I thought, okay, maybe what I can do today is I can give you a really brief, take out the best parts of the Agile, give them to you. Because pretty soon, in maybe a couple of hours, you’re going to join your own teams and maybe you can put some of these hacks into your projects that you’re going to join. So my challenge then is for you guys to listen to these lightweight processes, I’m just going to bring up four of them.
Join a team. So at the end of the day, in a couple of hours, there’s going to be a couple of teams for you to choose from, join a team. And then if you can, try and apply one, a few, or all of these hacks to the team that you’re joining and then see what happens. So we’re just going to cover four. Okay, so the first one, begin with the end in mind. So I see a lot of teams that they start off without setting a clear goal of where they want to go. And then without having a clear goal you then drift off into one guy does this, one guy does this, and then you’re all going off in your own different directions.
So what I want you to do is when you start your team, make sure you set your goal really clear. So a really good way that I find to do this is you’ve probably all seen these product landing pages when you go out on the internet. And you’ve probably all used a Twitter bootstrap and it gives you a landing page similar to this. And these are a really good way for you to think about your project. And the one that I’ve chosen here is HipChat. And the reason that these are good is that it highlights a good way to structure and to think about building products.
So what we have here a the top is we have your goal. In this situation it’s HipChat and their goal is to bring your team to life through group private chat file sharing. So they’ve constantly got that goal that they can refer to when they’re building their product. They also have their “Epics,” so these are the big, high-level features that help them achieve the goal, okay? And then inside the Epics they then have their features.
So it’s really interesting to think about a product in this way. And sometimes, obviously you’re not going to have time today, but in real life to create a product page like this so you can think about where you’re going and you can think about what you’re building and then you can constantly refer back to this and make sure you’re going on the right path. So hack number one, set a goal, break the goal down into Epics, and then break the Epics into Features. And then you’re just going to call this your Backlog.
Okay, so the next hack, time-boxing. So it’s very easy, especially on a day like today where we’ve not got much time, it’s very easy for people to go off in all different directions and to lose track of time. And before you know it, you’ve got to the end of the day and you’ve not really achieved anything and the team’s all going in one direction. So if we can have one goal, then the next hack for you is to then work out how much time you have and split your time into small, little boxes, okay? That way then it will raise your awareness of time and allow you to work in smaller chunks rather than one big chunk, okay?
So the next hack, it’s very slow, this, to respond, work out how much time you have available, dead easy, divide this into time-boxes and then call these your sprints. Okay, next one, “In preparing for battle I have always found that plans are useless, but planning is indispensable.” So this is a really interesting point because normally when people start Agile they want to get going as soon as possible and they think if we do Agile it means that we don’t have to think about the planning stage. And it’s true that the plans are useless but the actual creating of the plan is a really beneficial process.
So when you sit down and you think, “Okay, what do I have to do first? Then what do I have to do? Then what do I have to do?” That actual process of thinking about what you’re going to do before you actually set out and build it is really, really valuable. The idea for this also comes from financial planning and stuff like this. So financial people will make forecasts. And these forecasts are relatively useless because who can predict the future of the economy? And if you could predict the future of the economy you would be a multimillionaire, if everybody could do it. So the actual process of trying to forecast is as useful as the actual forecasts themselves.
So hack three, set a small goal that will move you towards your main goal. Make a plan to achieve this goal in a sprint using some items from your Backlog. So take a few items from your Backlog, make a plan about how that’s going to move you towards your main goal, and then we can just call this list your sprint backlog. Easy. Okay, so here’s the hard part, executing the plan. But this is the easy thing, so just hack away.
Take your time-box, create your plan, have a few items in your plan, then hack away. When your timer finishes, you stop. So set a timer, execute your plan, and stop when it finishes. Okay, so “No battle plan survives contact with the enemy.” It’s a very famous phrase. So we spend this time to create this plan, then we execute the plan and we realize that nothing went to plan. We couldn’t install Xamarin or this widget didn’t work the way that we wanted it to. So this is the important part then, is that we then re-evaluate what we did and then make an effort to change the next time-box according to what we’ve learned from the previous time-box.
So hack number four, inspect and adapt. So work out what went well the time before, keep doing more of that. Work out what you can improve on the next sprint. And then just rinse and repeat that process. So I was going to say, a really lightweight process. Basically what you’ve done there is the basic core of scrum in a very, very small way, okay? And I think that this will help you as self-organizing teams because it’s a very lightweight process that I’ve given you that you can apply to a group of individuals to help you meet your goal, and then allow you to adapt to meet that goal.
So obviously this is a small version of scrum. At SSW we’ve been doing scrum since its inception and we’ve got lots of experience in it. We also do a lot of training with scrum. We’ve got the posters available over there or you can get the posters online. If you text this number I think, yeah, so if you want these slides and you want the poster and some information about FireBootCamp you can just text this number. It will send you back a link that you can then just download. I think it’s on one drive. So you can download it when you get home, okay?
About the speakers
Scrum guru Gerard Beckerleg has been a Solution Architect at SSW in Sydney since 2011.
He also lists Scrum and agile practices as a passion. Using these skills and frameworks, Gerard has brought to life a raft of successful projects, such as Toll, Sydney Airports, McDonalds, Event Cinemas, and National Australia Day Council.
An established and confident speaker and trainer, Gerard has delivered numerous courses including SharePoint 2010 and .NET MVC at the University of Technology in Sydney, and is also a regular speaker at the Sydney and Canberra .NET User Groups.
Unleashing the Power of Microservices | William Liebenberg | User Group
Join our Azure and microservices expert William Liebenberg as he presents a game-changing approach to building microservices using Dapr and Azure Container Apps. 🤯
Discover how Dapr enhances the scalability, resiliency, and maintainability of your microservices while reducing complexity.
SSW Solution Architect William will give a hands-on demonstration of how to extend your microservices with Dapr and how to run GitHub-to-Azure deployments leaving you inspired to elevate your microservices game. 👨💻
Tech News #28 | Prompt Engineering, GitHub Check-ins & Microsoft Teams Sparkles
Discover the fascinating world of prompt engineering and its impact on AI development.
May the 4th Be With You | Home & Office Automation
A long time ago in a galaxy far, far away, technology has advanced to a point where even our homes and offices can be smart. With the power of automation systems from SSW, controlling our lights, climate, entertainment, and security has become as easy as pressing a button on our Control4 remotes or smartphones. Imagine walking into your home or office and the doors unlock, the lights turn on, the air conditioner adjusts to your preferred temperature, and your favorite Star Wars soundtrack plays in the background. With SSW’s smart solutions, the force will be with you, always.
Exploring the Capabilities of ChatGPT | Calum Simpson | User Group
Discover how GPT-4 can revolutionize your workflow, and increase your productivity and efficiency. This is your chance to gain insight into the future of AI and software development. Get ready to learn and explore the exciting possibilities of GPT-4! 🤘
Keep “Plug Predators” away with best desk setup hardware | Brady Stroud | SSW Rules
In today’s fast-paced work environment, it’s crucial to have an efficient and organized workspace.
The only ChatGPT cheatsheet you’ll ever need (Developer Edition) | Luke Cook | SSW Rules
As ChatGPT becomes increasingly popular, users are discovering the most effective ways to prompt the AI for different scenarios.
How and when to offer unsolicited feedback | Matt Goldman & Ulysses Maclaren | SSW Rules
With empathy and the right approach, you can provide meaningful support and help others reach their goals. Join us for tips on how to offer feedback with care, so you can empower your team to be their best selves.
The best way to handle requests from your boss | Jonty Gardner | SSW Rules
Managing deadlines can be tricky, let’s find out how to deal with unexpected changes to project priorities.
How to Plan for Database Performance | Bryden Oliver | User Group
Are your applications running at a snail’s pace? 🐌
Have you been wracking your brain trying to identify the source of the bottleneck? 🔍
Tech News #26 | Adam Cogan | User Group
Adam Cogan brings you the most important and recent tech news, including the release of .NET 8 preview, updates on Azure Open AI Service, GitHub, and AWS, and the rebranding of Netlify CMS. He also introduces the new, faster version of Microsoft Teams.