Rakesh's Blog

Quality or Quantity

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.

Published Thursday, August 05, 2004 9:24 AM by rakeshna

Comments

 

Mike Griggs said:

Quality is <b>always</b> better than quantity. No point having features if they don't work properly.

Good work.
August 5, 2004 11:00 AM
 

Mike Griggs said:

I guess HTML doesn't work in the comments section :)
August 5, 2004 11:01 AM
 

Rakesh Namineni said:

Here is a comment posted by Bryan Rieger.

"I am all for quality over quantity, as Mike points out, features that don't work are not worth having.

From what I gather in your list of retained features and cut features. One will only be able to create classes (types) and inheritance relationships on the diagram. Everything else will be read only and will be created only by what is in the code. Is this correct? "

Bryan, you are right. But we are also trying to keep the following support, which was available in beta1...

1. Inherited Interface Stub generation.
2. Abstract Base Type Stub generation.
3. Ability to Override a base member in the derived class.

We are still estimating how much work it would take to continue to support this in the final product. In a week or two we will finalize.
August 13, 2004 10:47 AM
 

Song Lyrcis and Music &raquo; Rakesh&#8217;s Blog : Quality or Quantity said:

April 15, 2008 7:05 PM
Anonymous comments are disabled

© 2009 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Microsoft
Page view tracker