Xebia

Blog Xebia France

J2EE, Agility and SOA

June 2nd, 2008

Review of the papers Xebia

Review of the papers Xebia
The review of the papers of actuality Popular dance / weekly J2EE offered by Xebia.

Agility

RIA

SOA

The corner of technology

Agility

The Hell of SCRUM!

Kelly Toilets approaches here difficulties met by some ScrumMasters who tries to implement SCRUM with teams which have never made it.
He gives some advice to arrest this situation, to keep his backlog in order. It is also necessary to resist the desire to change method during the first iterations. This point can seem anti-agile but since wrote it Ken Schwaber, before adapting a method it is first necessary to understand her and for this it is necessary to apply her such which. He shows these purposes on the basis of stages of the development of a team of Bruce Tuckman:

  • Training: individualistic behaviour of the members of the team, the leader must prove to be favour of planned economy.
  • Confrontation: the members become apparent and confront their points of view. To continue applying SCRUM efficiently during this difficult stage is what Kelly calls the Hell of SCRUM. The members have to show maturity to cross this stage.
  • Normalisation: the members adjust their behaviour between them, they learn to work together.
  • Production: the energy of the team is canalised on task to be accomplished. The members are competent, autonomous and capable of making decisions without supervision.

The team must persist to attain the last stage, the essentials to become a team .

RIA

RIA and the reference

RIA technologies meet more and more membership, but one of the major problems of these technologies is the reference. In this article of Francois Le Droff, this one introduces us some solutions:

  • The first one consists in setting up a HTML "mirror " page  so that research engines could index the contents of this one. With the help of script Javascript, it is then possible to re-run the internauts arrived via the research engine towards the version Flash of the site. The JAVASCRIPT SWFOBJECT bookshop also allows to include contents SWF in a page HTML very easily.
  • Other one is functionality of deeplinking. This functionality allows to create points of entries in application. This solution is close to approach REST.
  • Finally there is the exhibition of data in first. This technology leans on the support XSL of the navigators. Technology consists in having a HTML page containing only data and SWF is injected by transformation XSL. This technology is notably used in FLEX Directory.

Obviously this last technology works well enough, because sites using this solution are classified well on Internet.

GOOGLE accommodates AJAX bookshops

Very good initiative of GOOGLE, which decided to accommodate AJAX bookshops most known via the IPA - INTERNATIONAL PHONETIC ALPHABET AJAX LIBRARIES.

Extremely simple idea is to centralise the accommodation of bookshops such as archetype or jQuery. When an internaut achieves for the first time the site A, which uses the jQuery bookshop accommodated to GOOGLE, it downloads the bookshop. When he achieves then the site B, which uses the same bookshop in the same version, also accommodated to GOOGLE, it does not need of re - download the bookshop, and the load of the page is therefore quicker.

HEADERS HTTP is also correctly positioned to optimise management in mask of bookshops by the navigator.
GOOGLE worked in keeping with the different teams editing bookshops (today jQuery, archetype, script.aculo.us, dojo and mootools), and other bookshops will shortly be also accommodated.

SOA

Tuscany becomes a Beep Level Project of foundation Apache

The framewok Apache Tuscany becomes one of foundation Apache 6 months after the exit of its version 1.0. We announced last month the promotion of CXF it is obviously the season of promotions. Which will be the next plan to be taken out of : bets are opened!

Tuscany offers the realisation of a RUNTIME SCA (Componant Architecture service) aiming at simplifying creation and service composition (independently of their realisation) as part of Orientated Architectures Service (SOA). For more information on this subject, we let you consult the introduction to SCA that we had published the last year.

Let us use this occasion to remind that SCA is not a direct rival in OSGI. OSGI Allows to manage dependency and service version, SCA describes correlations between components at a higher level (QOS POLICIES / network protocols). It is therefore completely possible to use OSGI with SCA.

Enterprise Integration Patterns for Security

The security of exchanges is often a poor parent of the integration of applications and of approaches SOA. Eric Newcomer, IONA, offers us his Enterprise Integration Patterns for Security of approaches to manage the problems of spread of identity and of confidentiality during the changes of transport (SOAP / HTTPS-> CORBA / CSI_V2, etc):

  • Protection message: unlike the Transport Protection which reassures the "conduit" (https, middleware message, etc), it is the contents of the message it even that is protected. Only service provider and service to consume have access to the message (reading and writing); the intermediaries are blind.
  • Token Spread: the intermediaries transmit without changing them tokens linked to the message (signature, etc).
  • Token Mediation: the intermediaries enrich / change tokens linked to the message.

Let us remember however that if this patterns is useful in environments very reassured (financial transactions, not repudiation, etc), the simple security of the transport (https + BASIC authentication) is most often sufficient.

The corner of technology

Rod Johnson introduces the strategy of Spring Source

After the surprised exit of Spring Source Application Platform (s2AP) last month and tiny debate linked to the use of a licence GPLV3, Rod Johnson introduces the strategy of Spring Source in Open Source, Open Strategy: The SpringSource Manifesto. Key points:

  • Spring Source launches into the edition of middleware with S2AP who is intended to compete with leaders as with Websphere and with Weblogic. On this domain, Spring Source decided to protect her investments by using an Open source licence unfriendly business (LPG v3) intended to prevent other actors from monetizing these technologies without sharing fruits with Spring Source.
  • This editor's new activity changes nothing in the involvement of Spring Source in frameworks Open source which will keep their licence friendly Apache business. The contribution of Spring Source on this domain was besides also intense never thanks to the thorough lifting which allows to salarier the contributors.

Shape Spring: XML, annotations or encode popular dance?

Rod Johnson introduces in Configuring the Spring Container (pdf) advantages and disadvantages of the different techniques of shape given by Spring Framework. We will keep synthetically:

  • Classical XML is rich, easy to understand and externalis of code but verbose and not very advantageous for the refactoring
  • NAMESPACES XML improves density and understanding. However, the creation of new NAMESPACES is rather intended for the editors than for the teams of computer science of management which will have interest them to limit this possibility to components reused extremely often.
  • The shape by annotations is very compact and refactoring-friendly but becomes delicate when qualifiers (cf @Qualifier) is used and they is maladjusted in the use of placeholders ($ {}) as in the integration of ganders who were not annotated.
  • The Shape Popular dance, always in beta version, brings the inheritance of shapes and the management of the visibility of beans besides being a refactoring-friendly but crushing defeat by the use of abstract methods and will meet the hostility of the defenders of separation between code and shape.

eBay displays the main principles of a dimensionnable architecture

Randy Shoup, chief architect research facilities of eBay, reveal on InfoQ the main principles of achitecture who allows the site of auction to manage hundreds of million users, petabytes of data, and more than 2 thousand million pages seen a day.

1. Partitionner by functional section
At the level of code, it is a reflex which the majority of the developers have: cutting up in packages, gander, bundles eBay applies this principle at the level of the servers of application: every functionality (auction, sales, management of users) is displayed on a pool of servers. Cel allows a better management of d pendences and a dimensionnement according to consumption in resources of the different pools.
At the level of database, the same principle of segmentation is applied: eBay uses several groups of databases, regrouped by functional section (users, auction, products).

2. Go up in load in a horizontal way
At the level of the servers of application, design Stateless of eBay returns coarse exercise, by the use of simple load balancers.
Real stake is at the level of database, where data are splitt es according to their way of primary access (for example, the users can be divided on 20 authorities, each containing 1/20th of users). There are several strategy of partitionnement: modulo on the primary key, by beach of value, by table of indirection, or a combination of some of these methods.

3. Avoid distributed transactions
Distributed transactions (two-stage made) are proscribed to eBay. In the majority of cases, every operation on the base is auto commit e. This principle is based on an optimistic vision of architecture, by supposing that the majority of the components of the system are available in time T.
The consistency of data is guaranteed by various techniques: ordered and thoughtful regulating of operations on the base, system of recovery asynchronous, batch of reconciliation and of correction.
The consistency of data must be seen as everything or nothing , but must be adjusted according to the criticit of operations and of data.

4. D coupler functionality in an asynchronous way
By using asynchronous processes, it is easily possible to d coupler some functionality and thereabouts even D coupler their dimensionnement.
This principle is also worth at the level of cutting up between component: to break every treatment down into stages or into stages, enchain es in an asynchronous way is a key element of a scalable architecture.

5. Deport the heavy treatments of the asynchronous quoting
Now that functionality is proportioned in an asynchronous way, it is necessary to deport the heaviest treatments of the asynchronous quoting.
So, the user gets a request fast in his request, while the backend continues its treatments.  All that can wait must wait  .
The use of the asynchronicit also allows to erase the notion of peak of load, and to size its architecture to absorb a medium load (the peak of load is displayed in time).

6. Use a maximum of layers of abstraction
For example, database is "Virtualis e" by the use of a framework O/R  "home   . So, the complexity of the organisation of data is concealed.
Similarly, the research engine, complex (requests multi bases, aggregation) is abstracted.
It allows not only to simplify the job of the developers, but also to the operational teams to intervene in a completely independent way of developments, in case of addition of facilities or of physical reorganisation of data.

7. Put in mask wisely
This principle is less universal than precedents, because strongly linked to the nature of manipulated data.
To eBay, the only hidden data are data having weak likelihood of change: m tadonn es, shape, static data. Transiantes data, data in reading / writing suffering quick changes, are voluntarily left out of the scope of the mask, and it to the advantage of bigger availability.
It is however necessary to note that some sites chose an inverse strategy and take out there in a completely honourable way.
At any rate, the strategy of bet in mask must be suited to the circumstances, and allow to maximise total performances, without sacrificing availability.

Kohsuke Kawaguchi full-time on Hudson

The principal (and original) developer of Hudson has just announced that his employer (Sun) asked him to work from now on on time on Hudson, the server of uninterrupted integration which goes up ( on recent statistics of downloading of Hudson and CruiseControl).

Beyond corrections of anomalies, Kohsuke thinks about new functionality, to supplement compilation and tests. He would like to allow for example to the developer to be notified during a worry on the unit tests, to allow him to be connected with a remote debugger on Hudson, what would avoid him reproducing problem in place

Kohsuke already spent it the nights, he is going to spend now there his days AND his nights!

Key words :, , , Popular dance, , , , , ,

You can follow answers accepted by this article thanks to the thread of comments.

3 answers to "Revue de presse Xebia"

Leave a comment

Xebia IT Architects lock France
Defence Colis e - 10/12, avenue of The Ark
92419 Courbevoie Cedex

T l : +33 (0) 1 46 91 76 16
Fax : +33 (0) 1 46 91 88 00
E-mail : info@xebia.fr