Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 5 years ago.
Improve this question
Is there a methodology where the process combines Scrum and Kanban and has both fixed sprint schedules and project backlog? I've heard of Scrumban and Kanplan but I'm not sure which is which.
Thanks.
Kanban is a method to visualize and improve whatever you do currently. The Kanban Method encourages you to visualize your current process on a Kanban board, establish a pull mechanism to ensure team members take up new work when that actually have capacity, and improve the flow of work thru your process.
If you are currently doing Scrum and you apply Kanban on top of it to improve your team's performance, you are doing what is popularly called Scrumban.
Kanban helps Scrum teams identify and resolve bottlenecks in their current processes, using concepts such as WIP limits (to reduce multitasking) and classes of Service to deal with the variations in demand (the different types of work a software team usually does, such as new features, break-fixes, etc.) and make commitments to their product owners and other stakeholders based on their real capacity to deliver work.
In this process, Scrum teams may often move towards a 'sprint-less' delivery (just do releases on a regular cadence), while improving the frequency with which they deliver quality software. If they do so, many teams call that thenKanban process. However, that is not a necessary step at all. Team's can simply continue with Scrumban.
If you'd like to learn more about this, you can read up here - http://www.digite.com/Kanban-guide/what-is-scrumban
Hope this helps!
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
I am new to Scrum and I am trying to use it for website support and maintenance.
For website support and maintenance, we often receive small tasks, for example: replace a banner on homepage, change phone number on contact page, remove image xyz on article 123, etc... I don't know how to deal with these small tasks in Scrum.
At the moment, I create a single task in backlog, and a single Sprint for each task. Then, execute each task individually. Am I right?
In Scrum we have fixed length, repeating sprints. We bring work to the sprint, rather than creating sprints from tasks.
This is useful for a number of reasons, including:
After a while we get to know the capacity of a sprint.
We know at the start of the sprint what we will be doing and there is no change to the sprint goal during the sprint. This stability helps the team get organised.
The regular cadence helps the team get into a rhythm of planning, executing and then adapting.
Scrum isn't as effective if:
You don't have a team of 3-9 people
Work items and priorities change frequently and stable sprints are not possible
From your description, I wonder if Scrum is the best agile framework for your team.
Perhaps you might consider using Kanban?
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
What are advantages and disadvantages of Scrum over Kanban methodology.
Which one is better for mobile development?
TL;DR; You don't have an Apples to Apples comparison here.
Scrum is am empirical framework optimised for delivering Software
Kanban is an empirical method of optimising any existing process
Kanban
Kanban needs way more discipline in your team and organisation to be able to get value. You start by modelling your current processed and then make small incremental changes to the process to optimise it for your needs. Most teams fail to optimise effectively and end up where they started (or close to it) forever.
Kanban is not focused on Software Delivery and is best suited to tasks that have a relatively small standard deviation in size of batches. This allows you to monitor flow and optimise for it.
Scrum
Scrum is a Framework that enshrines accountability, inspection and adaption, and transparency as its fundamental pillars. The three clear roles provide accountability so everyone knows what they have to do. Each and every one of the Events provides a Kaizan moment to allow you to change. Every one of the Artefacts creates transparency so we all know what is going on.
The most important artefact is the Increment of Working Software because that is what out goal is. You can read the Scrum Guide to find out how it all goes together.
Scrum is focused only on Software Delivery (although modified versions like EduScrum exist) and is best suited for tasks that have a large standard deviation in batch sizes.
Conclusion
There is no 'better' option, its what works for you. I see more teams succeed quicker using Scrum than Kanban.
If you bought the board game monopoly would you expect it to come with a rule book or a strategy guide? Right, a rule book. Will the rules help you win? No, you will need to come up with, and experiment with, strategies that work for you.
The Scrum Guide is the rule book for Scrum
In Kanban you come up with your own rule book as you go along
All the practices common to either technique are complimentary.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
The last time I wrote a specification was years ago, using a waterfall method.
I am now about to gather the requirements for my first Laravel project, I am working as a lone developer.
How is everyone else doing this?
I was thinking of getting an overview of the requirements, writing a spec, then communicating with the customer iteratively to refine the document to something I can start working with.
Then I was going to do a prototype and gets some feedback.
Then I would work on "chunks" of the project and present to the customer for feedback and refining after every stage.
How does that sound? Any recommended reading?
Mick
The Scrum approach is to put requirements in the format of 'user stories' in to a backlog (effectively a prioritised list).
Rather than gathering all the detailed requirements up front we aim to gather just enough requirements to start development (perhaps sufficient to keep the team busy for 2-4 weeks). In Scrum we work in what we call 'sprints' that are regular sized iterations of work (much like the "chunks" you describe).
Then, the requirements are continuously refined and added to as the team progresses. The team does the highest priority requirements first and then demonstrates progress to the customer (the 'Product Owner' in Scrum terminology) and stakeholders (other interested parties). Based on the feedback the team gets they either carry on as before or they may adapt. For example they may take the feedback and add it as new user stories to the backlog and prioritise them against the existing stories. This differs from the prototype approach in that we try to have production-ready working software at the end of each iteration.
If you are interested in using this agile approach I would highly recommend reading 'Agile Estimating and Planning' by Mike Cohn.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
When using an agile methodology on a team programming project, what should be done when several people needs to work in something that is to be used by everyone. For example, There is a User entity, and two people have to do requirements that need to use that entity. So, first an skeleton is created and then the activities are assigned? or what is the procedure in these cases.
And second, Is it possible to find information that addresses this kind of issues that can occur when applying such methodologies?
Thanks
The best thing about Scrum, is that it is an amazing tool for identifying bad practices. This is one of the cases. An agile team should be working with as many hands as possible, on the same requirement (requirement, feature, user story - same thing). The division of work between members should be based on the tasks needed to complete the requirement, no the requirements themselves.
Each task would be defined based on the modifications that need to be made to a certain component. Doing that will not only make the problem go away (nobody's working on the same code), but will unite the team members' efforts, and make them function as a real team, rather than a disparate group of individuals that happen to share a room and a manager.
As for official information on the subject, I can suggest reading any book about Scrum, but you might want to focus on the following sites:
Introduction to Scrum
Mike Cohn's Blog
Scrum.org
A few great books:
Succeeding with Scrum - Mike Cohn
Free ebook - Scrum & XP from the Trenches - Henrik Kniberg
And finally, if you pardon the shameless plug, you can check out my blog - I have a few posts on this subject (such as this one) and others from my experience about implementing agile methods in software teams.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
Is it possible to or how should one use agile development processes (Scrum/XP) and write user stories in order to develop purely technical programming libraries (think Spring or a game engine for example)?
Yes, you can use agile to develop software that doesn't have a front end UI used by human users. First, because you don't have to use user stories to be agile. Even Scrum doesn't prescribe that the backlog has to be expressed in user stories. It just says there should be a backlog, it should have one order of priority and items on top of it should be small enough to fit into one sprint. They can be expressed in any way that is understandable to both the Product Owner and the team.
But, second, you can write user stories for libraries too. You just think of potential pieces of software as roles - or even create imaginary personas that could be using this library directly. "As a text editor I can call this library to encode strings in Base64" would be an off the bat example of the former technique.
To sum it all up: any type of software can be developed with agile, user stories are not key to agile - they are just one pretty useful technique frequently used by agile teams.
The same as you do for business-based requirements, except the reqs are prioritized by the API consumers/technical people?
If you're talking about Spring or Game engine, you still have a customer/product owner point of view to write your stories from..
That's you'd talk about your API, how other developers will use interfaces or what is exposed of your black-box
They are many component vendors that use Scrum to manage the development of their libraries.
I can tell you two of the StackOverflow.com sponsors are using it actively.