We did exactly what you said might work and it did. We had simple representational models of railings in Revit and then built the more details versions with fabrication data in Inventor. We (not me, Josh Emig and Steve Sanderson) then wrote an application to share the parameters through excel. We basically exported a schedule from Revit and Filled a design table in Inventor.
Since it's becoming increasingly trickier for us to send data directly to fabricators we are constantly trying to figure out the best data to extract from Revit that is relevant to a fabricator. So really it becomes more about the parameters and not the geometry.
The reason we still take DP models back to Revit is for drawing production. DP has a pretty traditional drawing extraction process which we try and avoid. Revit hands down is the best for getting architectural drawings (not fabrication data) directly out of a 3d model. As an interoperability effort we are trying to get Inventor into our workflow.
Cool. I knew that Revit was very good for creating drawings, I didn't know that there was that much difference between it and DP. I'm very interested in knowing more about DP's drawing creation process.
I totally agree about the parameters being shared as opposed to the geometry.
In Inventor, we often share parameters only between models in order to achieve very simple and light objects to deal with, since some of our projects involve thousands, even millions of parts. This is especially useful when creating what Inventor calls iParts, I think SolidWorks calls them Configurations. These are models that have a table of values, like a schedule, where each record, or row in the table, or "child" as Inventor calls it, represents a variation of the model. I used this in the wave panels for the olympic oval, where there were at least 100 parameters changing from one panel to another, and there were over 150 different types of vees, so the table was quite large. I like working this way though, it allows me to have an overview of all variations of a model, and when design changes happen, which is quite often for the kind of projects we do, then I can better understand how that change affects the various components of our structure. Often these changes originally appear as a simple dimension change, but it then propagates throughout the models in unpredicted ways, and can result in geometry errors which are not immediately obvious and needs some time to understand and solve. But then often design changes are very visible just by observing how the model changes on screen. Each situation is different, I'm sure you've had your share of changes as well.
I guess you might say that there are two general ways of sharing model data from one app to another. The first would be to create a model, say in Inventor for example, based on information from a Revit model, but which doesn't need to maintain a bi-directional relationship. Then the second would be the bi-directional connected Inventor model.
When making a bi-directional connection, you need to add alot more time making the model "robust" enough to take on changes, which means more use of theoretical geometry, such as points, planes and axis, and more thought into the possible ways this geometry could change.
That way, if the fabricator needs to make changes to the models, and have to update the architects' model, the same model can be used throughout the design process, even if radical changes to the project happen. This is common in our workflow, but not between architect models and ours, but within our models, connecting the design process of other consultants, with that of our structural engineers, and with our manufacturing department.
I assume the same scenario would happen if you had a Revit model bi-directionally connected to an Inventor model. The Inventor model would need to be prepared to take on radical design changes from the Revit model, otherwise it would have to be re-modelled. This is only a big deal if the collaboration between the architect and the fabricator happens early on in the project delivery timeline, which is our case because we are a design-build firm.
Steel fabricators, on the other hand, usually receive projects when most of the design is already finalized, and they just need to create models based on data from construction documents which are already issued for construction. If any design changes happen, the steel fabricator detailing department will probably charge for making those changes in their models and drawings, since the whole idea is that they work with final designs. In this example of steel fabricators, although not all fabricators are the same, in general they don't get involved very early in the project, and this is the same for most fabricators.
If you had a solid workflow for setting-up bi-directional Revit/Inventor models, then you could have information ready for fabricators much more ahead of time, and you'd be able to babysit the design changes as reflected in the fabrication model and drawings, plus you'd have a more detailed understanding of how these changes affect costs. So I guess it's probably well worth the effort. But it's alot of work, you want to be able to set it up so that you're not limiting your design options in any way, but at the same time not destroying your fabrication models after each radical design change.
With a bi-directional workflow like this, you should probably look into using Inventor to setup the overall geometry for projects that have very complex shapes, and let that drive your Revit model via parameters. This would allow you to play with design ideas and see immediate results, without having to deal with huge file sizes, and when you want to see this reflected in the Revit model, just use your custom app to update.