The I* model and the djnn framework
I* is a theoretical model of interactive software under development in our laboratory.
djnn (previously named Istar) is an application and UI framework that relies on the principles of the I* model.
Both djnn and I* were designed to support the efficient construction of modern interactive systems: designer UIs, multimodal and ubiquitous UIs, digital interactive objects. The development processes supported by djnn include iterative design and concurrent engineering between visual designers, interaction designers and software designers. Ultimately, I* is also aimed at supporting the formal verification of interactive components.
The most striking feature of the I* model is its hierarchical event-driven component system. Underlying it is a variant of process theories that relies on interaction rather than communication; in I*, all systems are modelled as interacting processes, including physical objects and software components.
djnn is a multi-language environment. You can construct an application by assembling components that are programmed in different languages and run in different processes. Bindings for djnn are currently available in C, C++, Java and Perl.
You can consult djnn website for download, documentation and examples.
An example of adaptivity and multimodality done with djnn for EICS 2014
djnn is ongoing work. We plan to make its code freely available when it is mature enough.
- Istar, with LRI, IntuiLab and Anyware Technologies.
- ShareIT, with IntuiLab, Thales Avionics and Stantum (multitouch in the cockpit)
- Medusa, with Thales, ENSIETA, Sodius and Telecom Bretagne (model-driven engineering of user interfaces)
- D3CoS, with ISAE and many europan partners (multimodality and task delegation)
- FENICS, with Airbus, Thales, Intactile, Ingenuity i/o, IRIT, LIG, and many other partners (touch user interfaces for cockpits).
- HoliDes, with many european partners concerning the development and qualification of Adaptive Cooperative Human-Machine Systems (AdCoS).
- Mathieu Magnaudet and Stéphane Chatty What should adaptivity mean to interactive software programmers? Proceedings of EICS 2014
- Stéphane Chatty Réconcilier conception d’interfaces et conception logicielle : vers la « conception orientée-systèmes » Proceedings of Ergo'IHM 2012
- Catherine Letondal, Stéphane Chatty, W. Greg Phillips, Fabien André, Stéphane Conversy. Usability requirements for interaction-oriented development tools Proceedings of the 2010 Workshop on the Psychology of Programming.
- Stéphane Chatty. Supporting multidisciplinary software composition for interactive applications Proceedings of the 7th international symposium on software composition, Lecture Notes in Computer Science volume 4954, Springer Verlag, 2008.
- Stéphane Chatty. Programs = data + algorithms + architecture, and consequences for interactive software Proceedings of the IFIP conference on Engineering Interactive Systems (EIS 2007), Lecture Notes in Computer Science, Springer Verlag, 2007.
Contact: chatty at enac.fr