March 03, 2004
Code Complete
We declared Code Complete on WSE 2.0 just over a week ago. This is one of the major milestones on the road to shipping the product and states that we have finished all the feature work for the product. The team is now in what is generally called "the Endgame" - the place in the product cycle where we close everything else down and then kick it out of the door. What happens in the Endgame? Quite a few things, the main ones for WSE are:
- The entire team engages in a Security Review of the product. We spend time identifying potential threats against the product, confirming those threats and fixing or mitigating them. There's no strict schedule on this step, we often pull in people outside the team for assistance and it can generate some additional workitems that need to be implemented before the product ships.
- People inside and outside the team engage in Application Building using the product. This is a sanity check involving taking several possible applications, building them and verifying that there are no obvious feature issues. For example, I'm building WS-Discovery on a soap.udp transport to test the transport and channels part of the product.
- Stress runs continue and we move to long-haul runs to seek out those nasty little bugs that prevent the product from being stable over time.
- We expect to go to at least one more interop test before we ship, testing our implementation of the current Committee Draft of the OASIS WSS specification with other vendors. We will also complete another review of all the WS-* specifications that we've implemented. Of course, these activities can generate some more bugs that must be fixed before release.
- We perform at least one more "Bug Bash" where everyone on the team and as many as possible outside the team takes the current build and spends a solid day installing it, reading the docs, running the samples, writing code and then raising new bugs.
- The development team hammers away at all the outstanding bugs on the product until we reach "Zero Bug Bounce", aka ZBB.
- The QA team re-tests and verifies all the resolved bugs to confirm they are fixed and test for any regressions. When they are done, we hit "Zero Bugs Resolved", aka ZBR.
Only when all the above are complete will the product be almost ready to ship. We will generate at least one "Release Candidate" and let it bake for a while, usually about a week, whilst we stress test it and people work with it. If any bugs are found we evaluate them and decide whether they need to be fixed. Fixing a bug against the Release Candidate resets the timer; we generate a new candidate and start over.
So whilst Code Complete is definitely a major milestone worth passing the beers around for, it doesn't mean we are done. Indeed, the Endgame can often be the most intense and stressful part of the cycle; this is why I've been relatively quiet lately.
Posted by herveyw at March 3, 2004 12:04 PM
Good thing to hear. Keep it up, we need it.
Does it mean that soap.udp will be an intrinsic transport supported by WSE 2.0? Will the WS-Discovery implementation you are working on also be shipped?
That process seems takes long time. Any preview for the shipment ? Why didn't you (MS) posted public betas. That should help you in finding more bugs (if any ;-))
I also would like to know the approximate delivery date...3 weeks or months?
Congrats ... thanks for the update and keep up the good work.
Be intersting to know what Platforms you can use WSE with.
Is it just MS clients using the Full .net framework?
I tried to find out if I could use WSE on the CF sp2 from MS online tech support and all they could do was give me a link to some none MS web sites.
Will it include a working version of SAML 1.1??