“Naked Objects: a Technique for Designing More Expressive Systems”, 2001-12-01 (; backlinks):
[2004 thesis] Naked objects is an approach to systems design in which core business objects show directly through to the user interface [ie. an object-oriented user interface], and in which all interaction consists of invoking methods on those objects in the noun-verb style. [cf. spreadsheets eg. spreadsheet-driven customization]
One advantage of this approach is that it results in systems that are more expressive from the viewpoint of the user: they treat the user like a problem solver, not as merely a process-follower. Another advantage is that the 1:1 mapping between the user’s representation and the underlying model means that it is possible to auto-generate the former from the latter, which yields benefits to the development process.
The authors have designed a Java-based, open source toolkit called ‘Naked Objects’ which facilitates this style of development. This paper describes the design and operation of the toolkit and its application to the prototyping of a core business system.
Some initial feedback from the project is provided, together with a list of future research directions both for the toolkit and for a methodology to apply the naked objects approach. [Irish case-study]