What are components?
A definition from Wikipedia: “A software component is a system element offering a predefined service and able to communicate with other components”. Components as defined by the Nuxeo model are logical units that may depend on and/or extend one another. The Nuxeo Runtime is responsible for providing a common API to register, locate or extend components. Components are commonly registered using XML descriptor files. Components can either be declared as subunits of an OSGi bundle or as independent components – as standalone XML files or programmatically registered components. Components are commonly declared as part of an OSGi bundle through XML descriptors. To declare a component, you need to create an XML description file, put it somewhere in the bundle and specify the “Nuxeo-Component” header in the bundle manifest to load components at bundle activation.
Components are a physical, replaceable part of a system that packages implementation and provides the realization of a set of interfaces. By terming them physical, we intend to identify them as individual units that offer support for packaging and in this process composing with other components to form a complete application. Components are replaceable units that adhere to its interface which make them replaceable. The client of the component is bound to the interface and not to the implementation.
Teaching Assistants, Lab Instructors, Research Assistants and COUS employees make up component one. Second Language Instructors and Cultural Assistants make up component two. Sessionals and Music Performance Instructors make up component three. Members of each component elect their own component executive.