• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Tim Cooke
  • paul wheaton
  • Jeanne Boyarsky
  • Ron McLeod
Sheriffs:
  • Paul Clapham
  • Liutauras Vilda
  • Devaka Cooray
Saloon Keepers:
  • Tim Holloway
  • Roland Mueller
Bartenders:

Does anyone have experience of using XP Extreme Programming, J2EE, EJB.

 
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Does anyone have experience of using Test Driven Development, XP Extreme Programming,J2SE, J2EE, EJB, Web Services all together on one project?
Or is this still a very small rarity ?
 
author
Posts: 11962
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
All of those? Get outta here...
Seriously, there are very few projects using the full breadth of J2EE specs and even fewer of those use XP (because they're supposedly too big and important for "experimenting" a new development process). Sad but true, I believe.
By the way, I'm trying to do TDD in my current big-as-hell-and-beyond project but I'm forced to copy-paste code into a "temporary" Eclipse project in order to be able to run JUnit tests (otherwise it takes 15 minutes to compile before getting to the first testMethod()...). This kind of glitches aren't too helpful in getting XP practices adopted in big projects.
 
HS Thomas
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Well, they are all darned good technologies.
In the past , you'd have have a similar scale of technologies for a myriad purposes.
TP monitors for on-line processing ,batch processes, reporting tools , testing tools. Surely you'd need the combination of several technologies to provide a more value-added service.
*whisper* Does anyone still do batch processing with J2SE ?

regards
[ August 05, 2003: Message edited by: HS Thomas ]
 
Lasse Koskela
author
Posts: 11962
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
After re-reading your list of tech acronyms, it's probably not as rare as I already proclaimed if you interpret "TDD, XP, J2SE, J2EE, EJB, WS" as "XP, JSP, Servlets, EJB, WS". Then again, if you interpret J2EE to include also JCA, JAAS and CORBA, it's pretty rare (how many projects write their own JAAS handlers or custom connectors?)...
 
HS Thomas
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

"XP, JSP, Servlets, EJB, WS".


That was the list I was after ,basically with J2EE included.
But if they've adopted XP, why not TDD. TDD is not new but has been around since programming began. When you had to punch cards (before my time, honest. Probably in Robert Martin's time) you had one shot to get it right. So inputs and outputs were specified precisely and checked and re-checked manually till you got it right.
With modern TDD you can evolve much more - like Design, Documentation.
Many a time I have heard the complaint that we don't have the budget to do a particular thing.
[ Okay , I accept a room-full of geeks may be rather boring so rather a nice Secretary/ Personal Assistant type up the documentation. And have several Programmers , Designers , Testers, Project Managers visit the nice secretary to make sure the documentation is up to date. ]
I am not sure why you dropped J2EE off your list .
regards
[ August 05, 2003: Message edited by: HS Thomas ]
 
mister krabs
Posts: 13974
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by HS Thomas:
I am not sure why you dropped J2EE off your list .

If you have servlets and EJB on your list then you really don't need J2EE on it as well. It's like saying "I'm going to buy Coke, Mountain Dew, and soda."
 
Ranch Hand
Posts: 1209
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
In my last project we used the following:
Struts1.0 on Web tier ( that obviously includes controller Servlet and JSPs)
EJB2.0 on Business tier ( CMP and CMR both) and we did get our fingers burnt :-)
JAAS for authentication ( we wrote Login Modules and callback handlers)
ANT for automated builds.
and yes as far as TDD is concerned, we set up Cactus (since we had EJB2.0 Local interfaces all over the place ) and clover for code coverage.
But the deadline was too stringent and unit tests were out of the window as the project progressed. We just c'dnt handle that part towards the middle stages. But whatever tests we had written still run as a part of everyday build :-) I mean we do have ant targets that run the tests everyday and
test failure == build failure.

Originally posted by HS Thomas:

That was the list I was after ,basically with J2EE included.
But if they've adopted XP, why not TDD. TDD is not new but has been around since programming began. When you had to punch cards (before my time, honest. Probably in Robert Martin's time) you had one shot to get it right. So inputs and outputs were specified precisely and checked and re-checked manually till you got it right.
With modern TDD you can evolve much more - like Design, Documentation.
Many a time I have heard the complaint that we don't have the budget to do a particular thing.
[ Okay , I accept a room-full of geeks may be rather boring so rather a nice Secretary/ Personal Assistant type up the documentation. And have several Programmers , Designers , Testers, Project Managers visit the nice secretary to make sure the documentation is up to date. ]
I am not sure why you dropped J2EE off your list .
regards
[ August 05, 2003: Message edited by: HS Thomas ]

 
Lasse Koskela
author
Posts: 11962
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

But if they've adopted XP, why not TDD.


TDD is an XP practice.
 
Lasse Koskela
author
Posts: 11962
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

JAAS for authentication ( we wrote Login Modules and callback handlers)


May I ask what made up the rest of the infrastructure for authentication (database, LDAP, biometrics, ...)?
 
HS Thomas
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks Thomas Paul.
I should have said Other J2EE Technologies as it does in the name of the forum.
Karthik,
That sounds an interesting project. Pity the tests were thrown out the window.
Did you have a formal way of writing the tests?
regards
[ August 06, 2003: Message edited by: HS Thomas ]
 
Karthik Guru
Ranch Hand
Posts: 1209
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Lasse Koskela:

May I ask what made up the rest of the infrastructure for authentication (database, LDAP, biometrics, ...)?


IPlanet LDAP Server. Actually our application had couple of interesting modes of deployment. So for one of the modes , wbe had to employ multiple login modules.
 
Karthik Guru
Ranch Hand
Posts: 1209
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by HS Thomas:

Did you have a formal way of writing the tests?
regards


Nope actually. We were supposd to write unit tests ( a portion of our quarterly bonus was tied to that as well :-)) for every functionality that we develop. It was new for all us here and as i indicated we did'nt do a good job of the unitesting thingy.
ThoughtWorks Inc, a big proponent of TDD, is very close to where we are. got to check out someday as to how they function!
 
HS Thomas
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

So for one of the modes , wbe had to employ multiple login modules.


Sounds as if you were developing re-usable components for different user companies.
Wow! Well , I started on that track but the company disappeared off to Canada after floating on the SE and making millions.Difficult to find anything similar at the moment.
regards
 
author & internet detective
Posts: 42105
933
Eclipse IDE VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

But if they've adopted XP, why not TDD.


I see Lasse pointed out that TDD is part of XP, but I already typed up this nice reason why So here it is:
TDD (test driven development) is a new name for Test First Programming, an original XP practice. According to Kent Beck it is because the opposite of test first programming (test last? programming) is accepted by many programmers. However, the opposite of TDD leads to the question of what is driving the tests. Beck suggests specifications and speculation, both of which sound weaker than test driven.
Anyway, one of the groups I work with uses all of the listed technologies except web services.
 
HS Thomas
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Jeanne ,
Thanks for the nice explaination !

Did you do EJBs the formal way where roles were split or did it all yourselves ?
I can't reconcile doing TDD and XP with EJBs by roles.
regards
 
Lasse Koskela
author
Posts: 11962
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

I can't reconcile doing TDD and XP with EJBs by roles.


You just need to do 'em all. First you put your test writer hat on, then you put your bean provider hat on, then you put your application assembler hat on, deployer hat, *running the tests*, back to bean provider hat, and so on. Nowhere it says that one person couldn't do all the roles by himself and you need to deploy an EJB in order to test it.
The role of the J2EE Roles have been the subject of debate for some time now. I believe most people ignore them completely, me included. They were created by Sun to accomodate a component market out there (which never really happened, IMO).
[ August 06, 2003: Message edited by: Lasse Koskela ]
 
HS Thomas
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

They were created by Sun to accomodate a component market out there (which never really happened, IMO).


But possibilities to happen are high.In fact , I believe, it is already happening.
A consultancy specialising in ,say, day-to-day insurance would provide some of the the components for an application, so the business pays a rental fee per transaction. Another consultancy specialising in Actuarial Sciences would provide a different set of components.
It's up to the business to decide how they want to use these components and build applications. A business will still have to understand both day-to-day insurance and Actuarial Sciences.
Now you have Testing spread at both the consultancies (unit tests) as well as at the business ( Acceptance Tests).
How do you still do TDD and XP in this scenario ?
regards
[ August 06, 2003: Message edited by: HS Thomas ]
 
Lasse Koskela
author
Posts: 11962
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

How do you still do TDD and XP in this scenario?


I don't quite get the problem you're asking a solution for. If you have a component being developed by a 3rd party, you don't need to unit test it (you can if you want to, but it shouldn't be necessary). You just give them your wallet, take the binary and use it.
 
HS Thomas
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

in a shifting financial environment where commercial banks, investment services, and insurance companies are consolidating at a staggering pace. As companies begin to offer more services, each customer becomes a more valuable life-long user. Meanwhile, as these vertical markets expand, communication across markets and across borders becomes a greater challenge.


More common scenarios like the above lead me to speculate that this will get even more common.Now which company wouldn't want ot deal with this one
Browne International
TDD and XP are Test-first driven , but are not just about testing but design and development. Which means there are some boundaries not in the control of the test-design-developer using 3rd party components.
I have come across a Mock-objects concept or stubbs in using TDD. The Yahoo TDD group has a thread starting on EJB and TDD which may lead to something.
regards
[ August 06, 2003: Message edited by: HS Thomas ]
 
Lasse Koskela
author
Posts: 11962
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

TDD and XP are Test-first driven , but are not just about testing but design and development. Which means there are some boundaries not in the control of the test-design-developer using 3rd party components.

True, you cannot refactor 3rd party code (unless you have access and permission to modify it), but so what? You simply need to accept that you can't touch those and make your refactoring/design decisions based on what you've got.

I have come across a Mock-objects concept or stubbs in using TDD. The Yahoo TDD group has a thread starting on EJB and TDD which may lead to something.

Mock objects are a useful method for testing "environment-dependent" code. You can also accomodate testing of EJBs by delegating all logic to plain old Java classes and write the tests for those classes which is easier.
 
HS Thomas
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thinking about it, it won't be unheard of for the business to have wrappers around 3rd party components. A 3rd party EJB within an EJB if you like, to customise it. More testing issues and headaches.
No wonder they talk of using these as you would electricity.
Just add the cost to your utilities bill(even the cost of your in-house components ). Or have I missed something and you actually need to use the component from the Web rather than just within your company/ies framework.

Thanks for the tips, Lasse.
regards
[ August 06, 2003: Message edited by: HS Thomas ]
 
All of life is a contant education - Eleanor Roosevelt. Tiny ad:
Smokeless wood heat with a rocket mass heater
https://woodheat.net
reply
    Bookmark Topic Watch Topic
  • New Topic