Skip to main content
added 146 characters in body
Source Link
Ladislav Mrnka
  • 7.4k
  • 1
  • 27
  • 32

Both @S.Lott and @Steven A. Lowe answered your problem. I would not consider the sentence you posted as an user story at all. That's more like a task.

What I would add to those answers is consideration about "component library". Do not start with a reusable component when you first see the piece of code you think can be reused in the future - that is completely bad approach. When developing SW in agile way you are adding the minimum code (satisfying some common programming practices) needed to implement business value. Once a new requirement is being developed you can find that you have already diddone something similar and only then you can refactor your code and make it reusable for those known two cases. You can repeat this process once you get another requirement again suitable for the component. Be aware that you should have some test suite to validate that refactoring didn't break existing code. Do not add reusability to component upfront - that can be a waste if reusability will not be needed latter or if requirements for reusability will be different than you expected.

Special case is reusability among projects. You should approach this with caution. I would say that second need for the same component still doesn't satisfy investing time into general component.

Both @S.Lott and @Steven A. Lowe answered your problem. I would not consider the sentence you posted as an user story at all. That's more like a task.

What I would add to those answers is consideration about "component library". Do not start with a reusable component when you first see the piece of code you think can be reused in the future - that is completely bad approach. When developing SW in agile way you are adding the minimum code (satisfying some common programming practices) needed to implement business value. Once a new requirement is developed you can find that you already did something similar and only then you can refactor your code and make it reusable for those known two cases. You can repeat this process once you get another requirement again suitable for the component. Be aware that you should have some test suite to validate that refactoring didn't break existing code. Do not add reusability to component upfront.

Special case is reusability among projects. You should approach this with caution. I would say that second need for the same component still doesn't satisfy investing time into general component.

Both @S.Lott and @Steven A. Lowe answered your problem. I would not consider the sentence you posted as an user story at all. That's more like a task.

What I would add to those answers is consideration about "component library". Do not start with a reusable component when you first see the piece of code you think can be reused in the future - that is completely bad approach. When developing SW in agile way you are adding the minimum code (satisfying some common programming practices) needed to implement business value. Once a new requirement is being developed you can find that you have already done something similar and only then you can refactor your code and make it reusable for those known two cases. You can repeat this process once you get another requirement again suitable for the component. Be aware that you should have some test suite to validate that refactoring didn't break existing code. Do not add reusability to component upfront - that can be a waste if reusability will not be needed latter or if requirements for reusability will be different than you expected.

Special case is reusability among projects. You should approach this with caution. I would say that second need for the same component still doesn't satisfy investing time into general component.

Source Link
Ladislav Mrnka
  • 7.4k
  • 1
  • 27
  • 32

Both @S.Lott and @Steven A. Lowe answered your problem. I would not consider the sentence you posted as an user story at all. That's more like a task.

What I would add to those answers is consideration about "component library". Do not start with a reusable component when you first see the piece of code you think can be reused in the future - that is completely bad approach. When developing SW in agile way you are adding the minimum code (satisfying some common programming practices) needed to implement business value. Once a new requirement is developed you can find that you already did something similar and only then you can refactor your code and make it reusable for those known two cases. You can repeat this process once you get another requirement again suitable for the component. Be aware that you should have some test suite to validate that refactoring didn't break existing code. Do not add reusability to component upfront.

Special case is reusability among projects. You should approach this with caution. I would say that second need for the same component still doesn't satisfy investing time into general component.