From 27eff4b972154d3d141d2325c20263e44bcce718 Mon Sep 17 00:00:00 2001 From: "alr@alrubinger.com" Date: Wed, 1 Aug 2012 23:23:15 -0700 Subject: [PATCH] [1] Created Project in Atlas, imported Proposal and Working Outline --- Book-Proposal.asciidoc | 39 ++++++++++++++++++++++++++++++++++ Working-Outline.asciidoc | 45 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 Book-Proposal.asciidoc create mode 100644 Working-Outline.asciidoc diff --git a/Book-Proposal.asciidoc b/Book-Proposal.asciidoc new file mode 100644 index 0000000..d18478f --- /dev/null +++ b/Book-Proposal.asciidoc @@ -0,0 +1,39 @@ +== PROPOSAL for O’Reilly Media: +Continuous Enterprise Development in Java + +=== Authors: +Andrew Lee Rubinger | +alr@alrubinger.com+ + +Dan Allen | +dan.j.allen@gmail.com+ + +Aslak Knutsen | +aslak@4fs.no+ + + +=== Editors: +Meghan Blanchette + +Michael Loukides + +=== Preamble: + +As builders of test-oriented frameworks, we’re well aware of the link between "testing" and "development". But the bond is too weak. We believe that testing is the very foundation of development--essential for learning and critical for asserting that code is consumable, complete, and correct. Yet, testing is still widely viewed as an optional part of development. We want to collapse the gap that stands between them. + +Over the past 2 years we've come to recognize that the testing platform we’ve developed with the JBoss community is "The Missing Link in Enterprise Java". It’s a means for users to validate components as they're being constructed by invoking them in a real environment. Where the Java EE Specifications intentionally leave out concerns involving container interaction, our solution provides convenient abstractions in a vendor-agnostic manner. + +We aim not to be focused on any one set of APIs, nor explain too fully Java EE from a conceptual level; instead, we'll present a use-case-focused approach to the proper and effective development of Enterprise Java, with tests acting as the proving grounds. The reader will learn how to perform continuous development, which means that whether they are learning a new technology, debugging broken behavior or laying down new code, all the knowledge remains in the system in form of test cases. + +=== Motivation: + +Most documentation resources in the EE space concern themselves with the mechanics of the subsystems; this leaves unanswered the question of how to tackle common problems encountered during development, for instance: + +* How to bootstrap new projects. +* How to try out new technologies you want to incorporate. +* How to prove a feature works without (or before) having a UI. +* How to incorporate dummy data into testing. +* How to validate user interfaces. +* How to ensure transactional boundaries are correct. +* In short: how to build end-to-end applications in a testable fashion. + +=== Why Us?: + +Bolstered by our recent experience gained by presenting these solutions and soliciting feedback from audiences the world over, we believe we're well-positioned to explain Java EE development from creation all the way through full-system runtime testing. But more importantly, this subject has long been a work of passion that's driven the projects we create. Andrew has enjoyed his experience with O’Reilly and Mike Loukides on the 6th Editiion of the Enterprise JavaBeans book, Dan has published the popular “Seam in Action” with Manning, and Aslak has been successfully heading the technical direction of the Arquillian project since its inception. + +=== Market: + +The target demographic will primarily be Java EE audiences, though the text will also be applicable to extensions beyond this realm. \ No newline at end of file diff --git a/Working-Outline.asciidoc b/Working-Outline.asciidoc new file mode 100644 index 0000000..67d5359 --- /dev/null +++ b/Working-Outline.asciidoc @@ -0,0 +1,45 @@ +== Working Outline + +. Testing is Development +.. Benefits and Criticisms +.. Types of Tests +... Unit +... Integration +... Functional +... System +.. Foundation Test Frameworks +... JUnit +... TestNG +.. Continuous Progress +... Integration +.... Automation +.... Phased Testing +... Deployment +. The Arquillian Testing Platform +.. Testing Framework +... API Overview +... Container Abstraction +.. The Extension Suite (?) +.. The Arquillian Philosophy +... Java EE and Beyond +. Zero to Java EE: Creating a Tested Application +.. Bootstrap +... JBoss Forge +... Create OpenShift Account +... Add some simple business logic and make ARQ tests +... Set up CI +... Probably OpenShift Jenkins +... Deploy +... OpenShift +. N Chapters, One per Use Case +.. UI +.. Security +.. Transactions +.. Data +.. Behaviour-Driven Development +.. Integration with Spring and EE +.. .etc... +. Implementing an Arquillian Container +. Extending Arquillian +.. Philosophy of Extensions +.. Example Extension \ No newline at end of file