Agile and Lean. Methods and Methodology

(Andy Wootton) #1

This could have gone under ‘Business & Entrepreneur’ but I thought devs were more likely to be interested. appears to have a ‘tech-startup flavour’, so when I searched for “Agile”, I expected to find lots of matches. I didn’t. Is it so obvious that people will follow ‘Lean Startup’ ideas that it simply isn’t worth mentioning? Similarly, are devs ‘doing Agile’ or JFDI?

I was in a team that introduced Agile Modelling (AM) into a small dev team about 5 years ago then moved to Scrum in response to a corporate edict a couple of years later. I found that it addressed many of the problems I had with conventional project planning (i.e. PMs) when I was writing code. I was an impossible beast, a Business Analyst in a Scrum team. I found Scrum had great strengths and a few weaknesses, so I’d love to know what other people are doing. I’m now trying to learn more about Lean.

Survey: What tech is Birmingham using
(Colin Smith) #2

I think it very much depends on the project. Some projects suit different styles of agile and some definitely fall under JFDI. Some teams try to pick an approach such as Scrum and apply it unswervingly to every project they do and whereas this means they all become very adept at doing Scrum it also means they may be hammering a square peg into a round hole as far as the project is concerned.

In the team I work in I don’t think I could even describe the methodology in use, it seems that every project tries something different; the only common ground seems to be that they’re all incremental and iterative and that where possible we like to get work in progress in front of the client as soon as possible and progressively release updates; of course that depends on the client, some are not as cooperative as others.

(Andy Wootton) #3

I found that a very interesting answer @PosthumanPat because para 2 incorporates most of my working definition of Agile and I can’t imagine a project at the ‘small team’ scale that wouldn’t work better within the Scrum framework than with conventional project management and I’ve never seen JFDI work for long with a team of more than 2 or 3. I don’t see Scrum as a peg or a hole so much as a workbench with a rack that keeps your range of hammers tidy.

To play devil’s advocate:
If you can’t describe your method then how can you be sure you have one, or that everyone else in the team is following it?
If it works then why do you change it every time? Do you change incrementally or throw everything away and start again?

(Colin Smith) #4

Hi @Woo, I’m not convinced we do have a methodology and secondly It keeps changing mostly in line with with whatever is perceived to be the currently considered best practice and because there had been no perceivable benefit in what had been tried previously.

In fairness we usually work in teams of 1 or 2 and we’re only recently venturing into a project with 5 developers on the team, for which we’re using some elements of Scrum in development and which had a large amount of design-up-front effort put in before that. In general we’re moving away from big design up front and handing over a finished product to a more ‘agile’ approach that allows us to involve the client in the development process and to ensure that they get the opportunity to use and evaluate the solution as it grows which allows them the opportunity to make sure they are getting what they need and not what the BA believes they need. We have had occasions when the BA’s view of the the requirement didn’t tie up with the client’s and we’ve delivered a shiny finished product that was just wrong. I should clarify that we are a small in-house team providing business solutions for the company, so our clients are always internal to the business.

As far as the incremental approach goes we always have an end goal in mind so the increments will add new features and enhance existing features. Only once so far have I had to throw work away; that was because of poor communication - another lesson learned :grinning:

(Andy Wootton) #5

Do you mean ‘design’ in the sense of graphics or software application? I had my first interview in 20 years recently and I was asked how I would improve the relationship between ‘the creatives’ and the Scrum team. I said I’d want everyone to work together from the start. I didn’t get the job :slight_smile:

(Colin Smith) #6

Nope, design in the sense of trying to define what the application should be an do fully before starting development.

Interesting interview question that, I wonder what answer they were looking for? Presumably there is some kind of inter-team conflict going on there :smiley:

(Daniel Hollands) #7

As much as I would love to do Agile development, thus far I’ve only ever done JFDI within my professional career. I’ve had interviews with two companies that did SCRUM (was even offered a job with one of them - turned it down), but that’s as close as I’ve come to it.

For my own stuff I’m trying to be Agile, but as I’m almost entirely self-taught, I could be doing it all wrong.

(Andy Wootton) #8

@PosthumanPat I’ve been convinced that you can’t do that or at least it is very rare that the person with the requirement has a clear enough idea and communication to make it across into the dev’s head and that nothing changes between then and final delivery.

I can’t say too much because of client-confidentiality but their was a disconnect between the hand-wavers and the do-oers. Earlier input of what was technically easy/impossible would have informed the design choices and shortened the overall delivery time so they could have achieved more. But politics. It was impossible to solve the problem without meeting the people and understanding their hangups.

@LimeBlast A wise man once said that Agile is incredibly simple yet very hard to do. Some people can’t let go of their old beliefs. I’d been losing my religion for a long time and people who think like devs seem to get it much quicker because they always knew the project plan was a fairy story. Managers and project leaders, not so much.

I made a list of the resources I’d found up until today though a guy I respect on LinkedIn posted a new link this morning that looks interesting.

(Daniel Hollands) #10

@Woo I wonder if you might be able to point me in the direction of any resources which focus on a lone developer? I’ve looked at SCRUM, and like what I see, but it’s focused on a team with between 5 and 8 members - I’m just a lone lad, either working for myself, or by myself for a client.

(Andy Wootton) #11

You’ll be lonely at the Stand-Up meetings :frowning:

You can use the Scrum-cycle, user-stories, backlogs just the same but the Scrum Master role will be problematical. Just understand that it is there to protect the Team (you) from problems and guide the process, so you’ll need to put time aside to do that. You can only realistically ‘do Agile’ with a customer who is willing to put someone up who can commit the time to take the Product Owner role seriously. Change your relationship from customer-supplier to you being a resource working on their project, with them choosing your priorities (with advice) so they get what they value highest. It becomes their responsibility to make best use of your time. When it works, they see progress and value delivery much earlier.

I like to do a sanity check (0.5 to 2d) on the idea first. I once killed an idea in an hour but in the old days it would have failed after 6 months so that’s a huge financial benefit to the client and I only wasted an hour. I like to draw pictures/models to support the discussion.

(Colin Smith) #12

I absolutely agree with you there, we do try to do as little as possible in term of up-front design, in the case mentioned it was a phase done by a separate team before it reached development.

(Steve Pitchford) #13

@Limeblast, as a certified scrum product owner I’d suggest you look at other agile methodologies like lean ( ), with it’s pivots and MVPs, Kanban - possibly using trello, or even play with something wacky like pomodoro ( ).

Even if you can’t magically turn yourself into a team of five, there are various techniques you can pull out - such as solo planning poker ( ), iterations and backlogs ( ), personal retrospectives or calculating your own velocity with a burn down chart.

(Daniel Hollands) #14

I’ve heard lots of people talk about lean, especially in relation to the entrepreneurial world - this has put me off it a little (I don’t have an entrepreneurial bone in my body), although I am working towards an MVP (I think) on this little project I’m building.

We’re also using trello and user stories for the pair programming project, which is something that I like from a spec point of view - although I’m personally inexperienced writing good user stories (most of what’s on the board at the moment is thanks to @omarqureshi).

I’m not sure if this is meant to be in the same area, but I’ve started to read The Phoenix Project - I got 40% in, but have given up n it because I’m not sure I’m compatible with it’s parable-method of teaching.

We’ve also discussed Pomodoro before, and what @DaveDev says about it seems to ring true - very good for study, but I’m not so sure about it’s use elsewhere.

(Andy Wootton) #15

@Steve_Pitchford I’m happy to admit that I don’t know much about Lean yet. I’m trying to get the differences between Agile and Lean clear in my head and your post hasn’t helped much :slight_smile: because I used scrum with a (rolling-)MVP, Kanban, planning poker and everything else except personal retrospectives. We used Sprint Retrospectives. I don’t know if that is different.

I’ve seen experiences Lean software people suggest that Scrum is a good place to start on a journey towards Lean as it allows you to make some of the difficult changes while hanging on to a few familiar ideas. I struggle to see the difference between Lean and a ‘to-do list’ at the moment. I quite like the Agile idea that “we estimate we will get this work done in this period” then ‘the customer’ (probably you in a start-up) can decide if you trust us enough to commit to another.

I think it’s important to realise that Lean comes from the manufacturing environment so I suspect Lean Startup is different to Lean software development. Software is made of a very pliant material but it doesn’t stretch well.

(Andy Wootton) #16

I’d like to apologise for “(rolling-)MVP”. “Next Current Viable Release”? A ‘rolling minimum’ reminds me of the moving targets of traditional projects.

(Steve Pitchford) #17

I’m happy to admit that I don’t know much about Lean yet. I’m trying to
get the differences between Agile and Lean clear in my head and your
post hasn’t helped much
because I used scrum with a (rolling-)MVP, Kanban, planning poker and
everything else except personal retrospectives. We used Sprint
Retrospectives. I don’t know if that is different.

WRT “Personal Retrospectives” I was highlighting a ritual in scrum which could be adapted for personal use - there are a number of different names for taking time to reflect on how you achieved certain tasks and what you could do better.

On the Agile/Lean front - My understanding is that agile is a manifesto which acts as an umbrella for a number of development methodologies, whereas for me, Lean, is product focused ( which could be a software product ) and focuses on maintaining the requirements - not on how the requirements are turned into working software.

Roman Pichler can explain the lean/scrum model far better than I can:



(Andy Wootton) #18

Yes, that’s Lean Startup with the Agile Scrum ‘Framework’ driving the product development. No wonder there was over-lap. Some people also talk about a Lean or sometimes Kanban ‘method’ though I’m not confident there is such a thing. It’s all so needlessly complicated that you’d think people had consultancy to sell.

Thanks for the link, I’ve added it to the ‘Agile & Lean’ resources page on my blog

I was trying to remember what the Product Canvas was called, though the stuff I read didn’t call ‘the idea’ the Vision Statement. My ex-colleague nicked that from the Microsoft docs that hang around with TFS but it’s far too Californian for my taste-buds - like much of the Agile jargon: Scrum Master, Sprint, rituals.

(Steve Pitchford) #19

I agree to some extent on the degree of needless complexity created by many of the contradictory terms in scrum ( such as a scrum master being a servant leader ) - but processes require some terminology and the alternative to a shared language tends to be common sense - and i’m pretty sure that in your line of work that you are familiar with the age old adage that there is nothing common about common sense…

Just to touch on consultancy - I’m actually a fan of consultancy - though I find the alignment a good consultant provides for an organisation is as important as the education that is all too often seen as their primary purpose.

I’m sure I had a read of your resources page earlier but I’ll try to pay it another visit over the weekend - as well as taking a few more steps to getting my own site sorted out…

(Daniel Hollands) #20

To be honest with you, I think I lost you a few posts ago, which is a shame because I think this could be really beneficial to me (and everyone else). I wonder if there is enough interest in this topic for a seminar to be hosted, or maybe even a meetup group?

(Steve Pitchford) #21

I wonder if there is enough interest in this topic for a seminar to be hosted, or maybe even a meetup group?

There’s already a group - and it’s one of the best run ( IMO ) meetups in the West Midlands: