Hlavní menu

Nástroje

PremekBrada / ComponentsSimplified

View (print) - Edit page | Recent changes - Page history

Updated 04 April 2006, 14:46 by PremekBrada

PremekBrada.ComponentsSimplified History

Hide minor edits - Show changes to markup

04 April 2006, 14:46 by PremekBrada - moved
Changed lines 1-41 from:

COSI (Components Simplified) project

This project aims at creating a barebone component model which is simple to implement and enhance. Its main purpose is to support research of component substitutability and versioning.

Key features of COSI

(At the moment, these are the desiderata rather than finished features.)

Component model

  • flat component model
  • pure black box, i.e. all features crossing the component surface are specified in its interface and their implementation is irrelevant
  • maximum simplicity
    • in-process, i.e. no complications with distribution and remote access to component's services
    • simple type system (using a restricted subset of Java types)
    • communication with (external) clients/users via text console i/o (local user) or HTTP+HTML i/o (remote user)
  • introspection used to obtain all information about component's interface (deployment descriptor either not necessary at all, or just a convenient duplication of this information)
  • two variants WRT coverage of the ENT meta-model:
    • minimalist -- at most 3 traits, purpose is experiments with substitutability
    • feature rich -- as many traits as practical to obtain full coverage of the meta-model classification

Implementation

  • Java
  • use of "Java annotations":http://java.sun.com/docs/books/jls/index.html for component specification (i.e. single language for specification and implementation)
  • component implementation and distribution format simple to create by hand

Further information

Implementation of COSI: "work in progress":http://www.kiv.zcu.cz/~brada/vyuka/dipl/123/dp-2005-wajtr , first working results planned for Q4/2005

Sources of inspiration

  • the "SOFA component model":http://nenya.ms.mff.cuni.cz/ from Prague
  • "Agile manifesto":http://www.agilemanifesto.org/
  • Enterprise JavaBeans? as negative example

Z MFF UK pochází "vymakaná implementace SOFA modelu":http://sofa.objectweb.org/index.phtml . Pro moje výzkumy potřebuju implementaci triviální, která bude klidně in-process (ne distribuovaná), bez protokolu, bez podpory distribuce komponent a dalších fíčur. Potřebuju hlavně, aby komponenty byly implementačně co nejjednodušší, šly snadno umístit (deploy) do kontejneru (jeho vytvoření je klíčová součást práce), a v tom aby byly snadno zjistitelné informace o ostatních komponentách. Implementace se předpokládá v Javě.


Back to ResearchPlan

to:

(Moved to my research pages.)

04 April 2006, 14:34 by PremekBrada -
Added lines 38-39:

Z MFF UK pochází "vymakaná implementace SOFA modelu":http://sofa.objectweb.org/index.phtml . Pro moje výzkumy potřebuju implementaci triviální, která bude klidně in-process (ne distribuovaná), bez protokolu, bez podpory distribuce komponent a dalších fíčur. Potřebuju hlavně, aby komponenty byly implementačně co nejjednodušší, šly snadno umístit (deploy) do kontejneru (jeho vytvoření je klíčová součást práce), a v tom aby byly snadno zjistitelné informace o ostatních komponentách. Implementace se předpokládá v Javě.

03 April 2006, 10:22 by PremekBrada -
Added lines 38-39:

Back to ResearchPlan

29 June 2005, 11:50 by PremekBrada -
Added lines 9-10:

Component model

Changed lines 13-16 from:
  • in-process, i.e. no complications with distribution and remote access to component's services
to:
  • maximum simplicity
    • in-process, i.e. no complications with distribution and remote access to component's services
    • simple type system (using a restricted subset of Java types)
    • communication with (external) clients/users via text console i/o (local user) or HTTP+HTML i/o (remote user)
Added lines 18-22:
  • two variants WRT coverage of the ENT meta-model:
    • minimalist -- at most 3 traits, purpose is experiments with substitutability
    • feature rich -- as many traits as practical to obtain full coverage of the meta-model classification

Implementation

Changed line 24 from:
  • Java implementation
to:
  • Java
Changed line 26 from:
  • component implementation and distribution format should be relatively simple to create by hand
to:
  • component implementation and distribution format simple to create by hand
13 June 2005, 16:50 by PremekBrada -
Added lines 7-8:

(At the moment, these are the desiderata rather than finished features.)

Changed lines 15-16 from:
  • use of Java annotations for component specification (i.e. single language for specification and implementation)
to:
  • use of "Java annotations":http://java.sun.com/docs/books/jls/index.html for component specification (i.e. single language for specification and implementation)
  • component implementation and distribution format should be relatively simple to create by hand
Changed lines 20-27 from:

Implementation of COSI: "work in progress":http://www.kiv.zcu.cz/~brada/vyuka/dipl/123/dp-2005-wajtr , first working results planned for Q4/2005

to:

Implementation of COSI: "work in progress":http://www.kiv.zcu.cz/~brada/vyuka/dipl/123/dp-2005-wajtr , first working results planned for Q4/2005

Sources of inspiration

  • the "SOFA component model":http://nenya.ms.mff.cuni.cz/ from Prague
  • "Agile manifesto":http://www.agilemanifesto.org/
  • Enterprise JavaBeans? as negative example
13 June 2005, 16:29 by PremekBrada -
Changed lines 3-17 from:

TBD

to:

This project aims at creating a barebone component model which is simple to implement and enhance. Its main purpose is to support research of component substitutability and versioning.

Key features of COSI

  • flat component model
  • pure black box, i.e. all features crossing the component surface are specified in its interface and their implementation is irrelevant
  • in-process, i.e. no complications with distribution and remote access to component's services
  • introspection used to obtain all information about component's interface (deployment descriptor either not necessary at all, or just a convenient duplication of this information)
  • Java implementation
  • use of Java annotations for component specification (i.e. single language for specification and implementation)

Further information

Implementation of COSI: "work in progress":http://www.kiv.zcu.cz/~brada/vyuka/dipl/123/dp-2005-wajtr , first working results planned for Q4/2005

13 June 2005, 16:19 by PremekBrada -
Changed lines 1-3 from:

Describe ComponentsSimplified here.

to:

COSI (Components Simplified) project

TBD