A plug-in can be built layer by layer using bottom-up development approach.
Bottom-up development approach builds the plug-in layer by layer starting from the lower level layers and continuing with the higher level layers. When this approach is mixed with an interactive and iterative development approach, then part or whole layer is delivered for each iteration. At the end of the N iterations the plug-in is completely finished.
An advantage of the bottom-up plug-in development approach is that development is focused on one layer at a time.
Consider the following disadvantages of bottom-up plug-in development approach.
The progress of the plug-in development is difficult to show until some insertions are completed.
It does not fit very well in an Agile development practices.
The bottom-up development process is considered good enough for small plug-ins, with reduced or non-existent set of wrapping classes, scripting objects, actions, or workflows.