Rick Matthews writes:
> 3.  What are the imported (consumed by the project) and exported (exposed by 
> the project)
>     interfaces or protocols and their respective stability levels?

Nit: I realize that you're trying to be pithy, but I don't think those
are the correct definitions of import and export.

An "export" is something that the project under review defines.  An
"import" is something that is defined by some other project, and the
reference should cite that other project.

The distinction is important, because defining the interfaces
establishes the references, and it's not uncommon to have cases where
the producer/consumer relationship works the opposite direction.  For
example, if you have a plug-in interface, it's usually the case that
the consumer of those plug-ins is the one "exporting" (defining) the
interface, while the individual plug-ins are "importing" the
interface.

(For what it's worth, this is why "importing" from an external
standard simply makes no sense at all, though project teams seem to
try to do that frequently.  Except perhaps for special legacy cases,
it only makes sense to "import" things that've been defined explicitly
elsewhere.)

When done right, this allows us to establish which project should be
initiating changes and which ones end up being dependent on changes.

-- 
James Carlson, Solaris Networking              <james.d.carlson at sun.com>
Sun Microsystems / 35 Network Drive        71.232W   Vox +1 781 442 2084
MS UBUR02-212 / Burlington MA 01803-2757   42.496N   Fax +1 781 442 1677

Reply via email to