Return-Path: Delivered-To: apmail-incubator-general-archive@www.apache.org Received: (qmail 75500 invoked from network); 26 Aug 2010 16:13:27 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 26 Aug 2010 16:13:27 -0000 Received: (qmail 9026 invoked by uid 500); 26 Aug 2010 16:13:26 -0000 Delivered-To: apmail-incubator-general-archive@incubator.apache.org Received: (qmail 8869 invoked by uid 500); 26 Aug 2010 16:13:25 -0000 Mailing-List: contact general-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: general@incubator.apache.org Delivered-To: mailing list general@incubator.apache.org Received: (qmail 8861 invoked by uid 99); 26 Aug 2010 16:13:25 -0000 Received: from Unknown (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 26 Aug 2010 16:13:25 +0000 X-ASF-Spam-Status: No, hits=0.7 required=10.0 tests=RCVD_IN_DNSWL_NONE,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [78.142.186.20] (HELO smtp-04.sil.at) (78.142.186.20) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 26 Aug 2010 16:13:04 +0000 Received: from chello080108123177.3.11.vie.surfer.at ([80.108.123.177] helo=darkstar.local) by smtp-04.sil.at with esmtpsa (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.63) (envelope-from ) id 1Oof4E-00027n-WA for general@incubator.apache.org; Thu, 26 Aug 2010 18:12:43 +0200 Message-ID: <4C769270.4060700@it20one.at> Date: Thu, 26 Aug 2010 18:12:32 +0200 From: Siegfried Goeschl Reply-To: siegfried.goeschl@it20one.at Organization: IT20one User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.8) Gecko/20100802 Thunderbird/3.1.2 MIME-Version: 1.0 To: general@incubator.apache.org Subject: Re: [PROPOSAL] Apache Isis References: <4C73FD6A.10009@gmail.com> In-Reply-To: <4C73FD6A.10009@gmail.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 8bit X-HELO-Warning: Remote host 80.108.123.177 (chello080108123177.3.11.vie.surfer.at) incorrectly presented itself as darkstar.local X-Scan-Signature: 537ffa97a2822d38d5d2a7f8ccda71f1 X-Virus-Checked: Checked by ClamAV on apache.org Hi Dan, +1 (non-binding) Cheers, Siegfried Goeschl On 24.08.10 19:12, Dan Haywood wrote: > I'd like to formally propose a new project for the incubator, Apache > Isis. If accepted, Isis will combine the existing open source Naked > Objects framework with a collection of sister projects, providing an > extensible Java-based framework for rapidly developing domain-driven > applications. > > I floated the idea of Isis on this mailing list about a month or so ago, > and we got some positive feedback and a couple of expressions of > interest in contributing. Since then, we've put together a proposal > (also copied in below) onto the incubator wiki. > > The proposal is at: http://wiki.apache.org/incubator/IsisProposal. > The current codebase is at: http://nakedobjects.org, with sister > projects hosted at: http://starobjects.org > > We currently have two mentors, but require more, and we still need a > champion. I'm hoping that this post will generate some further interest > to develop the proposal further. All being well we hope to put this > proposal to a vote in a week or two's time. > > Thanks for reading, looking forward to your feedback. > Dan Haywood > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > = Isis Proposal = > The following presents the proposal for creating a new project within > the Apache Software Foundation called Isis. > > == Abstract == > Isis will be an extensible standards-based framework to rapidly develop > and enterprise level deploy domain-driven (DDD) applications. > > == Proposal == > The Isis project will bring together a collection of open source > projects that collectively support the rapid development of > domain-driven applications. The heart of Isis is the Naked Objects > Framework, an established open source project that has been around since > 2002. In addition, it will incorporate a number of sister projects that > build on Naked Objects' pluggable architecture and which extend the > reach of Naked Objects in several key areas. > > In addition, the project will be reorganising the existing projects to > logically separate out the components into > [[http://docs.jboss.org/weld/reference/1.0.1-Final/en-US/html/|JSR-299]] > beans. We believe that the JSR-299 programming model is likely to become > widely used for enterprise Java applications; adopting it should make it > easier for new contributors to understand how the framework fits > together and therefore to develop their own extensions. In turn, we hope > this will further extend the reach of the framework to other > complementary open source frameworks (either within Apache or outside of > it). > > == Background == > Naked Objects is an open source Java framework that was originally > developed to explore the idea of enterprise systems that treat the user > as a "problem solver, not a process follower". Conceived by Richard > Pawson, the first version of the framework was written by Robert > Matthews (2002). Richard and Rob also wrote a book, Naked Objects > (Wiley, 2002), to explain the idea. > > More generally, Naked Objects is an implementation of the naked objects > architectural pattern. In its purest form, "all" the developer has to do > is develop their domain model as pojos; Naked Objects then provides: a > object-oriented user interface by rendering those pojos; persistence by > extracting the content of the pojos; security by wrapping access to the > pojos; remoting by turning local calls into remote ones; and > localisation by adapting all the names used in the metamodel. All of > this is done reflectively at runtime so that the developer can > concentrate on the most important aspect - the application itself. You > can think of Naked Objects' OOUI generation as analogous to Hibernate > and other ORMs, but rather than reflecting the pojo into the persistence > layer, they are reflected into the presentation layer. A number of other > open source frameworks cite it as their inspiration, including > [[http://jmatter.org|JMatter]], [[http://openxava.org|OpenXava]], and > [[http://www.trailsframework.org|Trails]]. > > Over this time Naked Objects has attracted a fair degree of attention > among the early adopter crowd, generally splitting opinion as either a > very good idea or a very bad one. A common misconception is that naked > objects is only appropriate for simple CRUD based applications. While > developing CRUD applications is indeed trivial, an important innovation > is that the UI generated by NO also renders the pojo's > commands/behaviors (we call them actions). Simply stated: any public > method that does not represent a property or collection is rendered so > it can be invoked, eg with a button, a menu item or a hyperlink. We > characterize entities with such behaviors as "behaviorally complete". > It's OO as your mother taught it to you. > > At the same time that we have been developing our ideas on the naked > objects, there has been a resurgent interest in object modelling at the > enterprise level, specifically as described by Eric Evans' book, > [[http://domaindrivendesign.org/books|Domain Driven Design]]. > Recognizing that there's a lot of synergy between the two ideas, the NO > framework now uses DDD terminology, such as repository, domain service > and value. > > As mentioned in the proposal section, Isis will consist of both the > original NO framework, along with a number of sister projects. These > sister projects were written by Dan Haywood to support a book he wrote > about the framework, [[http://pragprog.com/titles/dhnako|Domain Driven > Design using Naked Objects]] (Pragmatic Bookshelf, 2009). The intent of > these projects was to demonstrate the pluggable nature of the framework. > > Both Naked Objects and its sister projects are under the ASL v2 license. > > Not directly related to this proposal but worth mentioning: Naked > Objects has also been ported to the .NET platform, as a commercial > product. Richard Pawson, the originator of the naked objects pattern, > now devotes his energies to the [[http://nakedobjects.net|.NET version]] > and is no longer involved in the open source Java version. Conversely, > Rob Matthews, the originator of the framework and a co-author of this > proposal, now devotes his energies to the Java version, not the .NET one. > > == Rationale == > We recognize that the key to open source projects long-term success is a > large user base, along with a goodly number of diverse active and > enthusiastic committers. Being brutally honest, we cannot claim to have > either. That said, we are not naive enough to think that entrance into > the Apache incubator will automatically bring us these things. Rather, > we believe it will give us a platform to more effectively publicize the > project so that it can succeed. It will also allow us to take advantage > of the collaborative environment that the Apache Software Foundation > provides. Attracting a diverse group of developers will also provide the > opportunity for significant advancements and improvements to the Isis > framework, making it more useful for more people. > > There are, then, several reasons for us wanting to contribute the > framework to Apache. > > First, it helps us legitimize the "naked objects" concept. > Notwithstanding the fact that the project has attracted its fair share > of nay-sayers, as its developers we remain convinced of its usefulness > and contribution to enterprise development in general. Most > significantly, (v2.0 of) Naked Objects was used to develop the online > application for benefits administration of pensions and other state > benefits for the Irish Government. This project went live in 2006, is > used by 1500+ users on a day-by-day basis, consists of an enterprise > domain model of approximately 500 entities, and pushes out a new release > each month. Richard and Dan remain consultants to this project; we would > dearly like others to reap the benefit of building enterprise > applications in this way. > > Second, and as already mentioned, it gives us a platform on which to > publicize. The Naked Objects framework did have its moment in the sun > about 5~6 years back, but, at that time, it was under a GPL license > rather than ASL v2. We were also solely focused in developing the > aforementioned benefits system, rather than building an open source > community. One could argue that we had an opportunity and we blew it; at > any rate what we hope is that Apache will give us an opportunity to > build up a new community. At Devoxx 2009 we ran an informal poll to get > opinions of Naked Objects, from "best thing since sliced bread", through > "fundamentally flawed", to "never heard of it". There were 5x as many > votes in "never heard of it" as there were in all of the other columns. > That can either be taken as very disappointing, or as an opportunity. We > prefer the latter interpretation. > > Third, by renaming the project to Isis, it gives us a chance to > reposition the framework. While the "naked objects" pattern is > important, we also want to emphasize domain-driven design. Alistair > Cockburn's hexagonal (or "ports and adapters") architecture is another > influence; the plugins that the NO framework supports (see > [[http://nakedobjects.org/plugins|nakedobjects.org/plugins]]) are either > ports/adapters from the presentation layer, or ports/adapters to the > persistence layer. Furthermore, the newer UI viewers that we have been > developing allow the UI to be customized in various ways and to various > extents; so the pojos are not necessarily naked, they are lightly (or > heavily!) clad. And also, being blunt, that term "naked", while > attracting the "bleeding edge" guys, tends to be a turn-off for the > "early majority" who we now want to target. > > Fourth, it removes doubt over its direction. Currently the NO framework > is ASLv2 but copyright Naked Objects Group Ltd (NOGL), with Richard > Pawson still the figurehead of the naked objects movement. As already > mentioned, NOGL's energy is in their commercial .NET product. They are > happy to donate the relevant rights to this software to Apache because > they recognise that the framework is already critically dependent upon > the open source community, so this is the best way to encourage greater > take up, and ensure its future. Changing the name of the Java version > also means it removes confusion in the market place as to what Naked > Objects framework is (ie a .NET product only). Meanwhile the rights to > the various sister projects that Dan has written would also be donated > to ASF. Having a single legal entity - ASF - owning rights for all of > this software would be very desirable; we think it might prompt others > to explore the framework. > > Fifth, the synergies with other Apache projects will help us meet our > ambition to make the framework easier to extend. There are two principle > extension points of the framework: viewers, and object stores. While we > do understand that it isn't a goal of Apache per se to create a > portfolio of frameworks, we hope that being part of the Apache family > might encourage members of these other communities to help us develop > new viewers or object stores. One of the sister projects provides a > customizable viewer that uses Wicket; since pre-announcing this proposal > on the incubator mailing list we've had one expression of interest to > develop a new viewer using Tapestry. > > The 'domain services' angle of DDD also means there are opportunities to > integrate with frameworks that aren't just about presentation or > persistence; in Dan's book he sketches out an integration with > [[camel.apache.org|Camel]; there are multiple opportunities here. We > also hope to tap into expertise to help us refactor the framework > components into JSR-299 beans. Again, we've had an expression of > interest from the incubator mailing list along these lines. > > Sixth, it isn't finished. As has been pointed out to us, projects whose > codebases are finished don't make for good project candidates. Isis, > though, will probably never be truly finished. The hexagonal > architecture, as we think of it, is about plugging in different > presentation and persistence layers. We have several viewers that are in > active development (including the Wicket, and a RESTful-based viewer), > and object stores too (BerkleyDB, MongoDB, vanilla SQL). But there are > lots of UI frameworks we haven't even started on, either Apache's own > (eg Click, Tapestry, [[http://myfaces.apache.org/|MyFaces]], Pivot, �) > or external (eg [[http://vaadin.com|Vaadin]], Portals, Android, JavaFX, > [[http://netbeans.org|NetBeans]] RCP, Eclipse RCP, Eclipse RAP, FLEX, > Silverlight, �). The same is true for persistence technologies, both > internal to Apache (eg [[http://couchdb.apache.org/|CouchDB]], > [[http://openjpa.apache.org|OpenJPA]], Cassandra, Cayenne, HBase, > iBATIS, ...) and external (eg neo4j, db4o, > [[http://labs.google.com/papers/bigtable.html|BigTable]], Amazon S3, > JCloud � ). And� there are also lots of development tools that could be > built, either IDE integrations, or into build tools such as Maven. > > In summary: we hope that incubation will allow us to develop Isis into a > standards-based framework for building domain-driven apps, appealing > both to its user community (who just want to use it "out-of-the-box") > and to its contributor community (who want to quickly understand how it > works and what is required to extend it). > > == Initial Source == > === 1. Combine the codebases === > Both the core Naked Objects framework and the sister projects reside in > Subversion trees, hosted on [[http://sourceforge.net|SourceForge]]: > > * nakedobjects.sourceforge.net > * wicketobjects.sourceforge.net > * restfulobjects.sourceforge.net > * jpaobjects.sourceforge.net > * testedobjects.sourceforge.net ([[http://fitnesse.org/|FitNesse]], > [[http://www.concordion.org/|Concordion]]) > * groovyobjects.sourceforge.net > > These will need to be moved into a single Subversion tree, hosted on > Apache infrastructure. > > === 2. Rationalize the builds === > Both the NO codebase and the sister projects are built using Maven 2. It > shouldn't be difficult to combine these into a single build. > > === 3. Standardize package names === > Naked Objects package names are currently: > > * org.nakedobjects.applib.* and org.nakedobjects.service.* for the > applib and domain services > * org.nakedobjects.core.* for the core > * org.nakedobjects.plugins.xxx for each plugin > > These should move, respectively, to > > * org.apache.isis.application.* > * org.apache.isis.core.* and > * org.apache.isis.alternatives.xxx (we expect that plugins will become > [[http://docs.jboss.org/weld/reference/1.0.1-Final/en-US/html/injection.html#alternatives|alternatives]] > under JSR-299). > > The sister projects package names are currently: > > * org.starobjects.wicket.* (for wicket objects) > * org.starobjects.restful.* (for restful objects) > > etc. > > Because these are all just plugins/alternatives, they should just move > to org.apache.isis.alternatives.*. > > === 4. Move the version number down. === > To emphasize the fact that this is a new project not yet considered > complete, we will move the number back down to < 1.0, eg v0.1. This will > allow us to work on a number of releases, hopefully getting to 1.0 as > and when we graduate from the incubator. > > === 5. Establish continuous integration === > The Naked Objects framework currently builds on its own Hudson server; > we would move this over to run on Apache infrastructure. > > === 6. Rationalize documentation === > The documentation for the sister projects is reasonably up-to-date, but > the documentation for Naked Objects needs rationalizing, aligning with > the core component and the various plugins. This will help make the > framework more digestible to new users/would-be committers; they can > focus on the core, or a bit of the core (say, the metamodel), or work on > just one plugin. > > === 7. Rationalize the Maven sites === > Related to above, we need to "tell the story better" so that would-be > users can see what benefits using the framework will bring (and, > conversely, what freedom they give up in adopting a framework). > > === 8. Review/copy over outstanding tickets. === > There are a number of tickets in the Naked Objects TRAC wiki. These > should be either moved over, or fixed. > > == Initial Goals == > The following outlines some of the goals we have set ourselves during > incubation. Of course, these may change as we proceed and learn more. > > * Prepare ground by defining the 3 area of Isis: Application; Framework; > and Plugin. > * Address (either fix or transfer) all tickets from Naked Objects TRAC > wiki. > * Ensure existing documentation (of which there is a reasonable amount) > is correctly related to each project now that the documentation has been > separated out. > * v 0.1 - source code combination and rationalization (as per above). > * v 0.2 - refactor components to JSR-299, while maintaining backwards > compatibility for bootstrapping. > * v 0.3 - JPA persistor ported from Hibernate to Apache OpenJPA. > * v 0.4 - integrate with JMX for runtime management; provide profiling > of client/server and webapps (eg serialization vs domain logic vs domain > services vs object store timings). > * v 0.5 - write contract tests for all major plugin APIs (object stores, > authentication, authorization, remoting). > > We also have a number of overarching goals: > > * steadily improve the code coverage > * clean up the APIs. Some of the code dates back to Java 1.1 (at one > point in time the code was cross-compiled into J# code); so there is > opportunity to use more generics and remove use of arrays > * steadily reduce the amount of proprietary code, and the code size in > general; use newer libraries such as google-collections more extensively. > > As well as the work going on to create the Isis project there are a > number of components that are in the works, and that will be released as > they are ready: > > * Scimpi web application release. > * Introduce dynamic view design into the DnD viewer. > * [[http://wicket.apache.org|Wicket]] viewer release. > * NOSQL persistor release (using [[http://couchdb.apache.org|CouchDB]], > [[http://www.mongodb.org/|MongoDB]] and > [[http://www.oracle.com/technetwork/database/berkeleydb/overview/index.html|BerkeleyDB]]). > > * SQL persistor release. > * CLI viewer release. > * Portal integration: Examine and implement support for compatible > portals. Under consideration: > [[http://www-01.ibm.com/software/websphere/portal/|WebSphere Portal > Server]]. > > Whether these are part of incubation or not will depend on whether we > feel we have reached a self-sustaining community (but it's more likely > than not that they will be released during incubation). Equally, there > may be other viewers/persistors using other technologies that might be > implemented during incubation. > > == Current Status == > Naked Objects 4.0.0 was released at the end of 2009, broadly > corresponding to the release of Dan's book.This is released into the > Maven central repo, along with an application archetype for quick-start. > The three sister projects mentioned in Dan's book (restful, tested, jpa) > are at 1.0-beta-3, but not formally released into the Maven central > repo. The remaining sister projects are in alpha status. > > The main committers for the codebases to date have been Robert Matthews > and Dan Haywood. Both Rob and Dan work on the NOF core, and each also > works independently (reflecting their individual interests) on their > respective plugins. Much work was done on the core by both Rob and Dan > leading up to the release of NOF 4.0.0, and we are now reasonably happy > with it. Much work remains (see above) in the area of > plugins/alternatives; there is work to complete and improve the existing > ones and many opportunities to develop new ones. > > We readily support users on the NO forum (on > [[http://sourceforge.net/projects/nakedobjects/forums/|SourceForge]]) > and also on the forum for Dan's book (on pragprog.com). As a consequence > of Dan's book, a GWT-based viewer (non open source) has been developed > separately, and we have provided support for this (and hope it will be > contributed back to the framework in the future). > > Over the years we have received some patches for the framework, which we > have incorporated, but not many. Part of the reason for this, we > believe, is that until NOF 4.0.0 it had a monolithic architecture, > making it difficult for would-be contributors to provide small patches. > We think that NOF 4.0.0 improves in this area, but a move to JSR-299 > would be a major step forward to help bring up participation. > > == Community == > We recognize that the lack of a large (or at least, vocal) user > community is the weakest part of our proposal. That said, we do have a > steady trickle of queries on both the Naked Objects forum, and on the > forum for Dan's book. Getting NOF 4.0.0 released has rekindled interest > in at least one long-time user who is helping Rob to test one of the > object store plugins, while we've also picked up commitment to help with > this Apache proposal from a couple of people via the book forum. > > To help build up our community we intend to: > > * ensure that the website and documentation is first-rate (see initial > goals, above) > * make sure that the Isis code can be easily used and understood > * court other open source projects with compatible technologies to work > on integrations with Isis > * write a series of articles for leading web journals, eg > theserverside.com, javaworld.com, artima.com. We would want to point out > that we were in the Apache Incubator, and actively looking for help > * submit sessions to Devoxx and similar, Java-focused, conferences; > again we'd trade on the Apache Incubator status. > > We also hope that some of the newer members of our community will help > us identify what the roadblocks are to adoption, so that we can address > them. > > == Core Developers == > The core developers are: > > * Robert Matthews, UK-based independent consultant. Original author of > the Naked Objects framework, committer to the NOF core and primary > developer of the NOF plugins (DnD viewer, HTML viewer, Scimpi viewer, > in-memory !ObjectStore, XML !ObjectStore, !BerkeleyDB !ObjectStore, SQL > !ObjectStore, !MongoDB ObjectStore). Until recently, worked for Naked > Objects Group Ltd on the commercial .NET version. Is now independent and > working on apps built using the open source Java version. > > * Dan Haywood, UK-based independent consultant. Contributor to the Naked > Objects framework since 2005; took lead in much of the restructuring of > the NO architecture for NOF 4.0.0. Also primary developer for sister > projects plugins (!RestfulObjects viewer, !WicketObjects viewer, JPA > !ObjectStore, !TestedObjects "viewer", Groovy support). Part-time > consultant/advisor to the Irish Government project (since 2004); also a > trainer/consultant in agile, Java, TDD etc. > > Additional committers are: > > * Kevin Meyer, South Africa-based freelance developer and business > analyst. Kevin has been working primarily in a testing role, both on the > SQL Object Store with Rob and on the Wicket viewer with Dan. Kevin has > recently started contributing fixes to both. > > * Dave Slaughter, US-based developer/consultant who is the Lead of the > Software and Specialty Engineering group at SM&A. Dave has spent his > career in the development of enterprise applications for companies such > as Siemens, Sprint and Lockheed Martin. He has started a SWT viewer and > has also started improving code coverage of the XML !ObjectStore. > > * Alexander Krasnukhin, a Swedish-based developer who has spent more > than a year developing different applications on Naked Objects v3 and > spent six months developing a closed-source GWT viewer for Naked Objects > v4.0 for his former employer in Russia. Alexander is interested in > developing a new viewer for Android. > > As a result of a correspondence on the incubator mailing list, we have > also had interest from: > > * Mohammad Nour El-Din, Egypt-based committer to Apache OpenEJB. Nour > has helped us with this proposal relating to JSR-299. > > * Ulrich Stark, committer to Apache Tapestry. Uli has expressed an > interest in developing a Tapstry-based viewer. > > We also have had interest (off list) in developing a Vaadin viewer, and > we know of a student masters project that has developed a (different) > Android viewer for Naked Objects 4.0, which we're keen to incorporate if > we can. We are also hoping that we might persuade Alexander's previous > employer to donate their GWT viewer. > > == Alignment == > The current codebase makes heavy use of Apache projects, including: > Maven, log4j, Apache Commons Codec/Collections/CLI/Lang/HttpClient and > Wicket. > > There is a particular opportunity to integrate nicely with both Wicket > and Tapestry. Both Wicket and Tapestry are great way of building web > UIs, but have little to say about the "back-end". Naked Objects, > meanwhile, provides a full runtime environment with pluggable > persistence layers, and exposes a metamodel to allow generic or > customisable UIs to be built rapidly. The currently in-development > !WicketObjects viewer brings Wickets and Naked Objects together, and (as > noted above) there has been interest in writing a Tapestry viewer. > > Another ongoing integration project is the ongoing-development of an > object store using MongoDB; the intent is to make this codebase a good > basis for other similar object stores, such as Apache CouchDB. > > There are no Apache projects that we are aware of that compete with > Naked Objects. At its heart, NO is (a) a metamodel, and (b) a container > that acts as an abstraction over a persistence layer, using the identity > map pattern. > > == Known Risks == > The biggest risk is that we fail to build a diverse community during > incubation, opening up the possibility that the project could be orphaned. > > That said, there is little risk that either Rob or Dan will move onto > other interests; we are both independent consultants and have the > resources and inclination to continue working on the codebase. Indeed, > with Rob now working only on the Java version (and not the .NET one) and > Dan having finished his book, we have more resources now than at any > time in the last couple of years. > > == Inexperience with Open Source == > Although Naked Objects is an open source project, the number of > committers is so small then we cannot claim great experience with open > source. Neither Rob nor Dan are committers to any other open source > project, though both have submitted occasional patches to the various > open source projects that we use. > > We are, however, comfortable users of open source projects. We also > appreciate that there are lots of open source projects out there and > that most developers will form an impression of a project without > necessarily ever trying it out. This is one of the reasons why we feel > we need to bring the two different codebases together, and create a > standard message about what Apache Isis is about ("rapid development", > "domain-driven design", "standard, extensible architecture", > "customizable UIs"). > > == Homogeneous Developers == > The two main developers, Rob and Dan, are based in the UK. Although we > have collaborated on the framework over the years, we do not work for > the same company and are independent. > > The other developers mentioned in this proposal are based in South > Africa, US, Sweden, Egypt and Germany. > > == Reliance on Salaried Developers == > There are no salaried developers working on the projects. The main > developers, Dan and Rob, are both independent consultants. We use > non-billable time to work on the codebase, with the view to developing > consultancy/services from it. > > == Documentation == > * [[http://www.nakedobjects.org/Pawson-Naked-Objects-thesis.pdf|Richard > Pawson's PhD Thesis]], with foreword by Trygve Reenskaug > * Books: > * Domain Driven Design using Naked Objects, Dan Haywood > * [[http://pragprog.com/titles/dhnako|pragprog.com/titles/dhnako]] > * Naked Objects, Richard Pawson and Rob Matthews book Naked Objects > * full text available online at > [[http://nakedobjects.org/book/|nakedobjects.org/book]] > * [[http://nakedobjects.org|nakedobjects.org]] - current website > * [[http://danhaywood.com|danhaywood.com]] - Dan's blog to accompany his > book > * [[http://starobjects.org|starobjects.org]] - parent to Dan Haywood's > sister projects; references the various SF websites for the sister projects > > == Source and IP Submission Plan == > As mentioned earlier, the NO framework is ASLv2 but copyright belongs to > Naked Objects Group Ltd. NOGL is happy to donate the relevant rights to > Apache, while Dan is also happy to donate the various sister projects > that he has written. Having a single legal entity - ASF - owning the > relevant rights to all this software would be very desirable. > > == External Dependencies == > Other than the Apache dependencies, all other open source projects used > all have ASL v2.0 (eg Google Collections, cglib, objenesis), BSD (eg > Hamcrest, ASM), MPL (eg javassist) or similarly permissive licenses. We > do also have a soft dependency on an LGPL-licensed library (Hibernate) > but during migration would look to migrate to the Apache equivalent > (OpenJPA). > > == Required Resources == > * Subversion > * Jira > * Hudson CI server > * Wiki > * Website space > > == Mailing Lists == > * isis-private > * isis-dev > * isis-commits > * isis-user > > == Subversion Repository == > https://svn.apache.org/repos/asf/incubator/isis > > == Issue Tracking == > Jira; project known as 'isis' > > == Initial Committers == > * Robert Matthews > * Dan Haywood > * Kevin Meyer > * Dave Slaughter > * Alexander Krasnukhin > > == Affiliations == > Alexander is employed as a software developer by Zenterio AB. The other > committers are independent consultants. > > == Champion == > [none yet] > > == Sponsors: Nominated Mentors == > * Vincent Massol > * James Carman > * [more required] > > == Sponsor == > Apache Incubator > > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org > For additional commands, e-mail: general-help@incubator.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org For additional commands, e-mail: general-help@incubator.apache.org