How can I encourage code sharing and limit the overhead of tracking bugs while maintaining flexibility in my releases?

How do you track changes, testing efforts for bugs that affect multiple separately released artifacts?

Sharing codes is good because it reduces the total number of paths through the code, which means more impact on fewer changes and fewer bugs (or more bugs, with fewer changes). For example, we can create a search tool and indexer that uses the same file handling package or model package.

We need to be able to ensure that changes are tested in all the correct components and tracked what changes were included in which released tools. We also don't want you to be forced to release changes across all applications at the same time.

Goal: One bug to be tested is tracked on a schedule, regardless of each released application. With automated systems that understand the architecture, guiding us to make the right choice.


Unlock script with error:

We can post a search tool patch that contains a performance fix in the utility library. Critical for the search tool, the fix is ​​less noticeable in the index so that it can wait for the next maintenance release. We want one bug to be scheduled with tracking β€” released with a search patch and delayed for the next version of indexer support.


So, when I create a bug in our tracking system (JIRA), I want it to magically become multiple objects.

  • Main issue describing the problem and tracking development.
  • a set of issues that allow me to track testing efforts, and for me to track how this issue was released for each application it impacts.

How can we make the user experience of code sharing more active so as not to reward it without getting blind, what changes have affected what is being released or causes people to introduce many repetitive errors?

I'm sure large scale projects from Eclipse to linux distributions have faced this problem and are wondering how they solved it (I'm going to repeat them).

Do any of you have any experience with this situation and how did you approach it?

0


source to share


2 answers


In Jira, you can allow sub-tasks so that you can assign sub-tasks to the main task. You can also enable time tracking for questions so you know how long each task takes and what the difference is between estimated and actual.

You can also turn on version control so you have a roadmap of what is being done in the next version with a changelog. The problem with a roadmap is that it is only for one project, so you cannot have a roadmap that covers all of your projects.



Finally, you can create your own custom workflows to do just about anything you want. I never tried this because we would have to learn a new language to do this, and the reason we got Jira was to reduce development overhead, not increase it by customizing our bug tracker - but it is possible.

+1


source


For jira, use patched versions and patched in versions (plus you can add a few custom fields like QA verified in versions)



0


source







All Articles