Many post on this forum relate to the question of which technique is better to model an assembly, Bottom-up or Top-Down?... while the mayority of people usign a modern 3D CAD tool such as SW know the difference between the two techniques, I believe that the following will help the few in doubt to clarify the main differences between the two metodologies and where they are applicable.
Solid Works allow to create assemblies of any level of complexity using bottom-up design, top-down design, or a combination of both methods. Which one is the better, depends on the nature of the product you are designing and the amount of changes you expect to have during the entire product life cycle.
Bottom-up is the most traditional method used by CAD operators. Parts are modeled and them are inserted into the assembly using mates to position and fix them in relation to other components. Any changes to a part will need to be done by editing it individually. This technique is practical to model parts all ready designed and fabricated, like purchased parts and components (hardware, bearings, motors, pulleys, etc.), in general, parts that you do not design, and which do not change their shape and dimensions based on changes on your design, parts which change in model or change to a different component as your design changes (a 5 HP motor to replace a 3HP one when your design change to a larger size machine, or a 4" pipe elbow to replace a 6" pipe elbow, etc.)
Bottom-Up is also a good technique for people "integrating" comercial components into an assembly, where perhaps only one or two components are design (such as the skid base of a motor-generator set, where all other components (motor, radiator, electric generator, etc.) are purchased components.
Top-down technique (also known in SW as "in-context"), is normally the technique used by product design engineers. Top-down create assemblies where parts are modeled "inside" the assembly, being related to "driving" entities inside the assembly which control the shape, features, dimensions and position of those parts, in a way that changes introduced to the "driving" entities "drive" the configuration of all the "in-context" modeled parts and therefore the entire assembly. Top-down modeling make possible the creation of parametric assemblies and "true" KBE systems, which can not be done using the Bottom-up technique alone.
Creating a properly structured Top-down assembly requires more analysis and work that the creation of a Bottom-up model, however, the advantage of top-down modeling for people doing product design is that very little work (and time) will be required when design changes occur, since all parts and components will automatically update to new shapes, dimensions, position, etc. as new input parameters are entered into the "driving" entities at the assembly level.
The "driving" entities on a top-down assembly (referencial geometry, layout sketches, envelopes, etc.) can be driven by design tables which can be linked to "product configuration" aplications which will accept operational inputs (product operational characteristicas such as capacity, power, size, etc.) and perform the rule based calculations required to generate the values to be used as "inputs" on the CAD model. For example, inputs such as Flow in GPM , Pressure and desired Pressure Drop in PSI or Fluid Velocity in Ft/sec. can be used as inputs to calculate the wall thickness and diameter of a pipe circuit on a hydraulic equipment assembly, then the values can be passed to the design table (or "pushed" with an API into the value of the sketch dimensions inside "driving' entities on the SW Assembly) to update the "driving" entities and them the components.
Therefore, the top-down technique, while a little more difficult to do and requiring more work when creating the model, will be better for people designing products from scratch (where the assembly will need to go thru many changes before reaching his "final" configuration), or for people designing products which are "design-to-order" as "variations" of a "basic" generic product.
In reality, any assembly will need to use both techniques, therefore, at the end you will have a "hybrid" model, where all the parts and components you design will be modeled top-down and all the purchased components will be "inserted" using bottom-up (with "drivers" that will position, suppress, unsuppress or repace a components for another model as required), in fact, those "comercial" parts can be "inserted" as "solids" without features or construction geometry.
The name of the game (the objective) shall be to create your assemblies as required to reduce as much as possible the amount of work required during the entire life cycle of the product, not just to do a fast and easy model at the beginning of the cycle. If you expect the need to "create" new variations of a product many times, or if you are designing something that will evolve and "morph" during the design cycle, then Top-Down will be a good alternative, at the end you will work a lot less and the productivity of your engineering system will increase a lot.