General Overview

This wiki explains at a high level, the nature and intent of the Techne OSGi Container project. It is currently under construction.

Table of Contents

  1. What is Techne?
  2. What is a Fragment?
  3. What is a Feature?
  4. What is a Feature Set?
  5. Why Techne?
  6. What differentiates Techne from other containers?
  7. Can it support multiple applications running simultaneously?
  8. What is meant by the term "dynamic assembly"?
  9. Why use OSGi?
  10. Does it support other OSGi framework implementations?
  11. Isn't "composition" the same as "assembly"?
  12. What is a Component?
  13. Explain the aspect of Emerging Behavior

1. What is Techne?

Techne is a containerized system for running applications composed of software fragments bundled into runnable components. By extending the OSGi framework implementation, the system supports a model for dynamic composition and assembly of applications based on common artifacts known as: features and feature sets.

2. What is a Fragment?

A fragment is a file or part of a file, for example a set of instructions needed to create an application. It is the smallest unit of deployment that is supported by Techne. Fragments however can't by themselves be run as an application. Techne provides the means to bind fragments into a runnable component known as a bundle which can then be composed with other bundles in order to assemble an application.

3. What is a Feature?

A feature is similar to a simple application that provides a basic set of functionality. The main characteristic of a feature is that it can be isolated from other features. A nice example is the ubiquitous shopping cart program. Another example is a calendar system. This kind of application is portable and can be reused elsewhere, simplifying software development and ultimately reducing the cost of software. It represents the notion that is commonly held as to what a component is all about.

4. What is a Feature Set?

A feature set represents a complex application system that has been assembled from pre-existing features. For example, the shopping cart program and calendar system mentioned above can both be used in an airline reservation system. Normally, these programs will have to be configured in a specific way in order to support the much larger and complex system. Configuring components so that the main application can fulfill certain types of functionality is known as emerging behavior, one of the main aspects supported by Techne.

5. Why Techne?

6. What differentiates Techne from other containers?

7. Can it support multiple applications running simultaneously?

8. What is meant by the term "dynamic assembly"?

9. Why use OSGi?

10. Does it support other OSGi framework implementations?

11. Isn't "composition" the same as "assembly"?

12. What is a Component?

In Techne-speak, a component is a file that is transformed into a composable element so that it can participate in the assembly process.

13. Explain the aspect of Emerging Behavior.