-
Article: Pragmatic Design (17 messages)
- Posted by: Nuno Teixeira
- Posted on: February 06 2007 12:33 EST
This article, by Frank Teti, is targeted for Enterprise Architects, who are involved with establishing enterprise-wide standards and guidelines. The article discusses using a decision matrix for selecting a particular design pattern or framework only when it was appropriate for a particular processing style with distinct non-functional requirements, such as performance, protocol independence, etc.Threaded Messages (17)
- The summary says it all by Kasper Nielsen on February 06 2007 14:34 EST
- Re: The summary says it all by Udayan Patel on February 07 2007 11:49 EST
- Re: The summary says it all by Chuck Mccorvey on February 07 2007 08:20 EST
- About performance by Guy Nirpaz on February 09 2007 10:16 EST
- Re: The summary says it all by Udayan Patel on February 07 2007 11:49 EST
- Re: Article: Pragmatic Design by George Coller on February 06 2007 15:09 EST
- What does this have to do with COBAL? by Noah Campbell on February 06 2007 16:05 EST
- Re: What does this have to do with COBAL? by George Coller on February 06 2007 18:19 EST
- Re: What does this have to do with COBAL? by hacking bear on February 08 2007 06:13 EST
- Re: What does this have to do with COBOL? by John Thompson on February 07 2007 07:41 EST
- Tangent: Continuous Build and EJB can learn to love one another! by Noah Campbell on February 07 2007 11:19 EST
- Re: What does this have to do with COBAL? by James Watson on February 08 2007 10:31 EST
- Re: What does this have to do with COBAL? by George Coller on February 06 2007 18:19 EST
- Don't bother reading. by Sam Wilson on February 06 2007 19:16 EST
- 6 years too late by Joshua Cornejo on February 07 2007 08:22 EST
- Re: Article: Pragmatic Design by Friszart Shaucle on February 08 2007 04:29 EST
- Re: Article: Pragmatic Design by Guido Anzuoni on February 08 2007 08:39 EST
- Re: Article: Pragmatic Design by J Dev on February 11 2007 04:59 EST
- Re: Article: Pragmatic Design by Udayan Patel on February 12 2007 10:32 EST
-
The summary says it all[ Go to top ]
- Posted by: Kasper Nielsen
- Posted on: February 06 2007 14:34 EST
- in response to Nuno Teixeira
... As far as runtime performance, only through a combination of application server clustering and application construct performance tuning can Java expect to approach the runtime performance of C++...
Sure, no way to approach the runtime performance of C++ without clustering. I think I'll just save the 10 minutes that I would spend on reading this article. -
Re: The summary says it all[ Go to top ]
- Posted by: Udayan Patel
- Posted on: February 07 2007 11:49 EST
- in response to Kasper Nielsen
Ok What I don't understand is, why people are comparing two architecturally different languages? C++ V/S Java/J2EE? Is there are difference between a compiled and interpreted languages? -
Re: The summary says it all[ Go to top ]
- Posted by: Chuck Mccorvey
- Posted on: February 07 2007 20:20 EST
- in response to Udayan Patel
Ok What I don't understand is, why people are comparing two architecturally different languages? C++ V/S Java/J2EE? Is there are difference between a compiled and interpreted languages?
Neither of the languages you mention are interpreted (both are compiled) and J2EE is not a language. Having read the article (where do I apply to get those moments of my life back?) I agree with the general opinion expressed here that the article is worthless. -
About performance[ Go to top ]
- Posted by: Guy Nirpaz
- Posted on: February 09 2007 10:16 EST
- in response to Kasper Nielsen
There is a big difference between system performance and single thread/processes performance. In many cases organizations are more interested in a wholistic view of performance. End-to-end performance. The time it takes to execute concurrent business transactions. This is why in many cases, it is less relevant to compare single program performance between Java and C++. In heavy transaction processing environements the metrics that are important are latency and scalability. Latency - what is avg/max elapsed time of a single business transaction, end to end. Scalability - how many business transactions can run concurrently. In these cases, the system architecture is what matters.... As far as runtime performance, only through a combination of application server clustering and application construct performance tuning can Java expect to approach the runtime performance of C++...
Sure, no way to approach the runtime performance of C++ without clustering.
I think I'll just save the 10 minutes that I would spend on reading this article. -
Re: Article: Pragmatic Design[ Go to top ]
- Posted by: George Coller
- Posted on: February 06 2007 15:09 EST
- in response to Nuno Teixeira
Is performance really the issue? Seems many companies would love to replace COBOL with more-flexible Java systems except for the cost and effort it would take to entirely replace a legacy system. I need to read the article to see which types of COBOL applications require pedal-to-the-metal speed over stability and correctness. -
What does this have to do with COBAL?[ Go to top ]
- Posted by: Noah Campbell
- Posted on: February 06 2007 16:05 EST
- in response to Nuno Teixeira
Where does COBAL enter into this discussion other than a brief mention in the beginning. It also appears the author may want to re-evaluate EJBs given the current generation application servers are using technology similar to Hibernate, if not Hibernate.Many organizations that support application servers that include EJB containers (i.e. WebSphere, WebLogic) view EJB as a complex, heavy-weight solution and do not rely on them.
This was true many years ago, but not so any more.These organizations prefer using more light-weight frameworks like Spring (i.e. Prototype, Singleton or Session) beans in conjunction with Hibernate.
Again, same story here. Spring has gathered a lot of attention and provided a nice framework for POJO style development, but I'm not sure this argument still holds true. Noah Campbell http://www.noahcampbell.info -
Re: What does this have to do with COBAL?[ Go to top ]
- Posted by: George Coller
- Posted on: February 06 2007 18:19 EST
- in response to Noah Campbell
It is hard to figure out what the author's real point is. The article is a bit all over the map and is in bad need of editing for clarity, spelling, and content. There are some basic writing 101 errors here: * Why bring up COBOL in your introductory (most important) sentence and then drop it? * Figure out who your audience is and target everything you write to them. * If you are going to publish, and you want to be taken seriously, find an editor. Especially, if English is not your first language. e.g. I'm not sure if you really meant "ubiquitous clients" * Why doesn't your summary match your content or your introductory paragraph? The final point of the article seems to be that you have to pick different application patterns and architecture to match the kind of system you are building. In short there is no one size fits all approach. This makes be think the target audience is beginner level designers. I did like the chart showing how you might pick different application technologies and patterns based on the type of application you are developing. I'm not sure I agree with everything the chart states but it shows some thought. The title made me think it was going to be one of the high-quality publishings from the pragmatic press. The title is overly-generic both on the article and the TSS posting. -
Re: What does this have to do with COBAL?[ Go to top ]
- Posted by: hacking bear
- Posted on: February 08 2007 18:13 EST
- in response to George Coller
Sorry, this is a marketing paper mistakenly written by a half-trained engineer. :-) -
Re: What does this have to do with COBOL?[ Go to top ]
- Posted by: John Thompson
- Posted on: February 07 2007 07:41 EST
- in response to Noah Campbell
Ummm, I've developed EJBs on WebSphere, and I can tell you that they are a pain. Especially in a collaborative, continuous integration scenario. The auto-generated stubs can easily get out of sync by just adding a simple method. I tell people that if they want to speed up a project now and in the future to avoid EJBs on WAS 5 and 6. EJBs work fine in WebSphere, but they don't seem worth the effort to develop and maintain.Many organizations that support application servers that include EJB containers (i.e. WebSphere, WebLogic) view EJB as a complex, heavy-weight solution and do not rely on them.
This was true many years ago, but not so any more. -
Tangent: Continuous Build and EJB can learn to love one another![ Go to top ]
- Posted by: Noah Campbell
- Posted on: February 07 2007 11:19 EST
- in response to John Thompson
Ummm, I've developed EJBs on WebSphere, and I can tell you that they are a pain. Especially in a collaborative, continuous integration scenario. The auto-generated stubs can easily get out of sync by just adding a simple method.
Why would you be committing auto-generated stubs into a continues integration system? Wouldn't the build system generate the final output for you? I don't have experience with WebSphere, but I've heard similar stories of woe.I tell people that if they want to speed up a project now and in the future to avoid EJBs on WAS 5 and 6.
Works for me...I work for BEA :)EJBs work fine in WebSphere, but they don't seem worth the effort to develop and maintain.
EJB's do require additional effort to develop and maintain, but I'll punt and say in the hands of an experience team, this is non-issue. EJB3 is expected to remove this burden and liberate the developer. My point is that the old adage of EJBs being hard/difficult/slow is not true given JavaEE landscape. Noah Campbell http://www.noahcampbell.info -
Re: What does this have to do with COBAL?[ Go to top ]
- Posted by: James Watson
- Posted on: February 08 2007 10:31 EST
- in response to Noah Campbell
Where does COBAL enter into this discussion other than a brief mention in the beginning. It also appears the author may want to re-evaluate EJBs given the current generation application servers are using technology similar to Hibernate, if not Hibernate.
You think EJB has become more popular lately? I think people are increasingly more sour on EJB. EJB 3 may pull it out of its tailspin but I think you are living in a fantasy world with this comment. What evidence do you have that this is the case?Many organizations that support application servers that include EJB containers (i.e. WebSphere, WebLogic) view EJB as a complex, heavy-weight solution and do not rely on them.
This was true many years ago, but not so any more.
Again based on what? Spring is more popular now than it was a year ago. What changed? I have seen any trends indicating a reversal. I think WebLogic is a great product but I think you need to accept that EJB has gotten really bad reputation and it's future is in question. Java is at risk of becoming a legacy platform. What makes you think people are flocking back to EJB? Are you selling a lot more licenses? I hope for your sake that BEA isn't putting all it's chips on EJB because everything I see suggests movement away from it.These organizations prefer using more light-weight frameworks like Spring (i.e. Prototype, Singleton or Session) beans in conjunction with Hibernate.
Again, same story here. Spring has gathered a lot of attention and provided a nice framework for POJO style development, but I'm not sure this argument still holds true. -
Don't bother reading.[ Go to top ]
- Posted by: Sam Wilson
- Posted on: February 06 2007 19:16 EST
- in response to Nuno Teixeira
Who approved this article for publishing? What a waste of time. -
6 years too late[ Go to top ]
- Posted by: Joshua Cornejo
- Posted on: February 07 2007 08:22 EST
- in response to Nuno Teixeira
Hi, I think both Frank & yourself (Nuno) should do a bit more research and expand your bibliography - see Business Component Factory : A Comprehensive Overview of Component-Based Development for the Enterprise, by Peter Herzum & Oliver Sims (book website - http://www.componentfactory.org/). Ignore the specifics about Java - specially since java is not a replacement for COBOL, and the IT landscape for solutions has changed dramatically -. As of patterns the article focuses on the basic ones - see Enterprise Integration Patterns (book website - http://www.enterpriseintegrationpatterns.com/) and also Patterns of Enterprise Application Architecture. It is interesting, but lacks innovation, has no references and shows a very limited view on the enterprise application landscape. Cheers, Josh -
Re: Article: Pragmatic Design[ Go to top ]
- Posted by: Friszart Shaucle
- Posted on: February 08 2007 04:29 EST
- in response to Nuno Teixeira
I think it's time for dinner.. -
Re: Article: Pragmatic Design[ Go to top ]
- Posted by: Guido Anzuoni
- Posted on: February 08 2007 08:39 EST
- in response to Friszart Shaucle
Looks like a number of copy&paste from various sources. I hope none will print the "article": it would be an unacceptable waste of paper. For now, it is only an unuseful waste of bandwidth and some disc sectors somewhere. Guido -
Re: Article: Pragmatic Design[ Go to top ]
- Posted by: J Dev
- Posted on: February 11 2007 04:59 EST
- in response to Nuno Teixeira
-
Re: Article: Pragmatic Design[ Go to top ]
- Posted by: Udayan Patel
- Posted on: February 12 2007 10:32 EST
- in response to J Dev
http://myjavaserver.com/~sudhirnimavat/
ok, are you saying your sweet home designed very pragmatically?