How long do you take for each Development Cycle

Hi guys,

I don’t know if this question is proper to post here. But I think it is
related to every developer, so I post.

I am using RoR for developments more than a year. We are using Bugzilla.
We do unit, funcitonal and watir tests.

We usually schedule to do around 40-50 bugs for each development cycle
and it scheduled to take 3-4 days.

Most of the tasks involve RoR MVC modification, documentation, testings,
CSS style, debuggings, modify jQuery plugins.

And we maintain for IE6, ie7 and FF3.

However, most of the time we cannot meet schedule and bugs are often
found (around 10-25% need to reopen).

I am quite frustrated about that although we tried our best and Overtime
works, the result is not suitable.

How about yours? Is the cycle/time too short? or any tools (RoR,
Bugzilla) do we used inproperly?

We are small company only 2 developers. And the freelance designer has
left for a while. We do wanna change the situations, if you have similar
situations or you know our problem, I do appreciate your comment and
help!

Thanks, and Happy Year of the Ox !
Arthur

2 Developers * 3-4 Days * 40-50 Bugs < Happiness…

Feel free to alter the first, second and/or third terms until the
equation balances.

It sounds like you have the correct processes in place, you just need
some scope management. With the idea that “less is more”, fewer bugs
attempted should yield less rework, and less missed dates (and maybe get
you home in time for dinner).

Prioritize the bugs that are on the list, and don’t be afraid to start
tossing low priority bugs off the list if the scope of a higher priority
change is larger than anticipated.

Overtime may work for short bursts, but fact is fact… tired
programmers make mistakes.

That’s the problem with bugs, you never know how long they will take
to correct.

On the other hand, 4 days to resolve 25 simple bugs does not seem so
tight.

Cheers, Sazima

Arthur C. wrote:

Hi guys,

I don’t know if this question is proper to post here. But I think it is
related to every developer, so I post.

I am using RoR for developments more than a year. We are using Bugzilla.
We do unit, funcitonal and watir tests.

Do you pair program? Use test-driven development? And do you make the
fewest
possible edits between successful test runs? Do you test incrementally,
where
only suites edited in the last 10 minutes run to integrate?

We usually schedule to do around 40-50 bugs for each development cycle
and it scheduled to take 3-4 days.

By “bug” do you mean missing feature? glitch? or irritating surprise?

Honestly we have the last one about once a month. We could do better.
But the
good news about our missing features is we know they are missing; they
are not
surprises…

However, most of the time we cannot meet schedule and bugs are often
found (around 10-25% need to reopen).

Are your user stories very small, such as 1 hour to 3 days duration?

Do you integrate continously and deploy daily? Do you work overtime?


Phlip

I am using RoR for developments more than a year. We are using Bugzilla.
We do unit, funcitonal and watir tests.

Do you pair program? Use test-driven development? And do you make the fewest
possible edits between successful test runs? Do you test incrementally, where
only suites edited in the last 10 minutes run to integrate?

Do you refactor mercilessly enduring no un-DRY code?

Hi Phlip,

Phlip wrote:

Arthur C. wrote:

Hi guys,

I don’t know if this question is proper to post here. But I think it is
related to every developer, so I post.

I am using RoR for developments more than a year. We are using Bugzilla.
We do unit, funcitonal and watir tests.

Do you pair program? Use test-driven development? And do you make the
fewest
possible edits between successful test runs? Do you test incrementally,
where
only suites edited in the last 10 minutes run to integrate?

We don’t use Test-driven development, but should be similar to Agile
Development. We decide each phase by putting the tasks or previous bugs
into bugzilla (ticket system), then start doing it. I think the problem
may be somehow created in the design phase since we only use bugzilla
but not e.g. UML.

For the automated tests, we just installed the ZenTest. Before that, we
write the test before integration.

And not much Codes reviews too.

We lack those UML, and Code Reviews all b’cuz the time. I think there
should be trade off for it.

We usually schedule to do around 40-50 bugs for each development cycle
and it scheduled to take 3-4 days.

By “bug” do you mean missing feature? glitch? or irritating surprise?
Both. For our boss, some usability problem or layout problems are
surprise. And we focus on the functional stuff usually in our tests.
That’s the biggest surprises come from.

Honestly we have the last one about once a month. We could do better.
But the
good news about our missing features is we know they are missing; they
are not
surprises…
We sometimes know it, but our boss doesn’t think so. E.g. we modified
jQuery Validation (real time validation plugns) display, it works fine
in most case. But suddenly, in some ajax forms, the position distorted
in IEs. That considered a critical one.

So, how do you guys think about these kinda bug? Are we treating not
serious enough to these problems?

However, most of the time we cannot meet schedule and bugs are often
found (around 10-25% need to reopen).

Are your user stories very small, such as 1 hour to 3 days duration?

Do you integrate continously and deploy daily? Do you work overtime?

Our phase is susposed to be 3 days usually including the whole
development cycles. But usually we used 4-5 days even with many OTs.

We integrate if we found that changes spread over web pages and before
testing. Do you think our integrate process got problems?

Thanks guys!!!
arthur

Sazima wrote:

That’s the problem with bugs, you never know how long they will take
to correct.

On the other hand, 4 days to resolve 25 simple bugs does not seem so
tight.

Cheers, Sazima

Yup, i agree. But the bosses and clients never think so. Or actually,
they think so, but changed their mind when other things go wrong
together as the whole process are delayed.

cheers, Arthur

Arthur C. wrote:

On the other hand, 4 days to resolve 25 simple bugs does not seem so
tight.

Cheers, Sazima

Yup, i agree. But the bosses and clients never think so. Or actually,
they think so, but changed their mind when other things go wrong
together as the whole process are delayed.

Ah, the joys of encountering reality! When a project starts, the process
does
not (apparently) matter! You can use code-and-fix, and whip out a great
demo.

Then, as the clients start asking for feature requests, each one starts
taking a
liiiittle longer!

Do you pair program? Use test-driven development?

We don’t use Test-driven development, but should be similar to Agile
Development. We decide each phase by putting the tasks or previous bugs
into bugzilla (ticket system), then start doing it. I think the problem
may be somehow created in the design phase since we only use bugzilla
but not e.g. UML.

TDD is the design process. It also reduces bugs. Never write the tests
“just
before integration” because you will miss stuff.

Without TDD, you implement by debugging; by adding code, and noodling
around
with the running app to see if it works. That’s a complete waste of
time. TDD
tells you if the logic is working, faster, so you can free up more test
time.

For the automated tests, we just installed the ZenTest. Before that, we
write the test before integration.

ZenTest is just a tool.

And not much Codes reviews too.

That is what pair programming is for. With just two guys, that will be a
pain,
though!

We lack those UML, and Code Reviews all b’cuz the time. I think there
should be trade off for it.

UML is not a process. Just throw in RailRoad (with Graphviz) and the UML
is
automatic…

Now, is your code DRY? Is it all the same style? Are your models fat and
controllers thin? Is any business logic in the view? Are your statements
short?
Does every name reveal intent? All these details will slow you down…

Our phase is susposed to be 3 days usually including the whole
development cycles. But usually we used 4-5 days even with many OTs.

A “phase” is supposed to be a week. Stop doing overtime. But are your
User
Stories very small? Are they small increments on existing features, such
as
“take the form you wrote for the Frobs and now add a Delete button”.

When you do a User Story, are the programmers pulling for reducing the
features?
Do you do the minimum possible, get a review from your Onsite Customer,
and then
make him tell you to add more? That is a review process - letting your
boss
watch things grow in realtime.

We integrate if we found that changes spread over web pages and before
testing. Do you think our integrate process got problems?

By “integrate” do you mean “run all the tests and check in to Subversion
if they
all pass”? We do that every 1 to 10 minutes.


Phlip
"Pigleg too?", week 1

you missed the bug up your ass.