Podcast Episode 14 - Introducing SCRUM to companies

Posted by Robert van Loghem around lunchtime: January 24, 2008

Eelco Rustenburgh, Eelco Gravendeel and Serge Beaumont share their experiences on how to introduce SCRUM to existing companies.

Hosted by Robert van Loghem and Serge Beaumont.

So head over to the podcast page or subscribe!

Agile Architecture in “large” systems

Posted by Meindert Deen around lunchtime:

Tuesday, December 12th we had a Open Space knowledge session and one of the Open Spaces we had was about Agile Architecture in "large systems".

The question was how to do architecture: should there be any in the beginning or should it "evolve"? The answer we came up with is not very surprising, it is that a base architecture is needed, but the size of it is variable and the architecture shouldn't be static but evolve.

The way we came to that conclusion is interesting however. During the discussion, in which a lot of views were expressed, we came up with a list of good old, much used, words, that everyone agreed on are needed. Based on those words we came to the conclusion as stated above.

This blog will list the words on which we based our conclusion, with an explanation on how we arrived at the conclusion.

(more...)

Moving to India. Step 1: Opening moves

Posted by Maarten Winkels at around evening time: January 23, 2008

Working abroad has been a wish of mine for some time now. Xebia offers me the opportunity to live and work in India. Through this blog series I will keep you informed of the progress and challenges of this project.

Currently we are in the opening stages. I’ve had some meetings with the Management Team to discuss the possibilities and problems of such an undertaking. But first I had to tell the home-front…
(more...)

EJCP Top 10: Nested monitor lockout

Posted by Peter Veentjer in the early evening: January 22, 2008

Concurrent programming is going to be even more important with the introduction of the multi-core cpu's. Running the complete application on a single cpu's (single threaded) is going to lead to less effective usage of hardware. Luckily in most cases, applications are inherently concurrent (like a standard request/response web-application) so a developer doesn't need to deal often with explicit concurrency control. But it doesn't mean that even such simple applications are free of concurrency problems. In this Enterprise Java Concurrency Problems (EJCP) Top 10, I'm going to list my 10 most important issues I look at, when I need to find concurrency problems within Enterprise Java applications. (more...)

Is it a Requirement or is it Design?

Posted by Erwin Bolwidt in the late afternoon: January 18, 2008

Many courses and books on requirements will tell you that a good requirement describes the “what” of a need of a customer (or more generally, stakeholder). They will tell you that you shouldn’t write down the “how” (they call that ‘design’) because it pushes you in a technical direction and causes you to miss out on other good solutions.

That’s good advice in the sense that you shouldn’t restrict yourself to a solution if another solution satisfies the needs of a customer better. But when is something a design, and when is it a requirement? If you’ve thought about it, you realized that it is hard to draw the line. (more...)

Quitting a Job

Posted by Balaji D Loganathan in the early morning:

Well, this blog is not to tell you to resign from your current job :-) , but the intention is to share some points that you should consider before you quit a job.
(more...)

Your SOA product choices should be based on the QUINT model

Posted by Viktor Grgic in the early afternoon: January 16, 2008

It is always about well-defined requirements stupid. :-) Building or choosing out-of-the-box software products like an ESB within the company's SOA strategy can be very well supported by a number of requirements distilled from the QUINT2 ISO model:

Functionality: Suitability, Interoperability, Compliance, Security, Traceability
Usability: Operability, Customisability
Efficiency: Time Behaviour
Maintainability: Testability, Manageability, Reusability
Portability: Adaptability, Replaceability

This is the selection from the complete QUINT2 model. It does not mean that other requirements are not important, but usually less than these. If you fill out these requirements properly, which is still a daunting task, then you will have done pretty good requirements gathering. Besides these aspects, there are also security requirements: availability, integrity and confidentiality which should always be considered.

(more...)

Unit Tests As Throw Away Design

Posted by Jan Vermeir in the late evening: January 15, 2008

Unit tests are brittle: if you change the class under test there’s a more than average chance that you will have to change a load of unit test as well. On the other hand unit tests help you think about design on a micro level. The test shows what a method is supposed to do, without room for the interpretation errors you get when using abstractions as design.

So, should we use unit tests or not?
(more...)

Video Podcast Episode 3 - Eclipse Tips; Essential Settings

Posted by Robert van Loghem in the early afternoon: January 14, 2008

Erwin van der Koogh shows you 2 settings that will make your Eclipse life a lot easier.

Head on over to our podcast page here or subscribe to podcast.xebia.com.

Using Groovy in the real world?

Posted by Erik Pragt in the wee hours: January 9, 2008

XKE

Tonight, we organized our biweekly XKE (Xebia Knowledge Exchange), which is a forum where we update each other on interesting developments or have discussions on various topics.

One of the topics of tonight was: "what keeps us programming in Java"? The underlying thought about it was: what prevents us from programming in a different language, especially a dynamic language like Ruby on Groovy. Because I'm a little more into Groovy than I am into Ruby, I'll talk the rest of the blog about Groovy, but you can probably exchange it for any (dynamic) language.

One of the key factors (and this might sound like an open door) to stick to programming in Java is that we are all very familiar with the language. We have invested time learning it, we know the frameworks, and we have real experience that it works. Furthermore, people know how to manage a Java application, know how to deploy it on an application server, and as an added bonus, IDE's support Java really well.
(more...)

Next Page »