I have to agree that in the recent weeks as more and more people have started using C++ CD, we have observed a spike in our incoming bug rate. I had a discussion with my Program Manager over lunch yesterday about how we should manage our C++ CD deliverable.
We had a couple of options
Keep the breadth of the features offered by C++ CD, but raise our triage bar. This means that a lot of bugs wouldn’t qualify to get fixed.
OR
Cut some features and try to keep the quality of the delivered tool high. This culminates in features delivered, even if lesser than promised set, being solid.
We are leaning towards option 2. We would like to cut some implemented/semi-working features. We would like to concentrate on features that offer “good” value for C++ developers and make them robust.
We have gotten feedback that C++ developers wouldn’t prefer to use the “Class Details Window”. It is a grid based tool window. The developers would rather type the method signature in code editor.
This feedback is making us reevaluate our promise on the abilities of Class Details Window and the Properties pages. We are thinking of making Class Details Window and the Properties pages read only.
So if we do this, then C++ Class Designer would offer
1. Create types (managed and unmanaged)
2. Create and modify Inheritance relationship between types
3. Visualize Associations to other types
4. Visualize Implemented Interfaces (as lollipops on the shape)
5. Visualize a types’ members and the members’ constituents
6. Visualize the characteristics (virtual, abstract, sealed etc) of a types’ Members
7. In managed projects browse and view details about types from referenced assemblies.
8. The designer will give you the ability to jump from the designer to code and from code back to the designer.
9. Visualize Attributes and XML Comments
We cut L
1. Ability to create/modify Members of a type
2. Ability to create/modify Associations to a type
3. Ability to generate stubs for inherited Interfaces or Abstract Types
4. Ability to override members of a base type from the designer
5. Ability to create/modify Attributes and XML comments.
I would appreciate feedback on our approach. Thanks.