Trouble with architecture
Our product is a java web application, with a generated data model, Hibernate for persistence, some logic in static methods, some beans, and servlets and JSPs. The class design is sometimes poor, with no understanding of the concept of a class invariant. Some methods throw a "you haven't called the initialisation method first" exception.
A year ago, one developer was saying loudly that we must use MVC, because this is industry best practice, and coded a part of the application using Struts. This code was convoluted, with among other things dreadful exception handling.
In response, the project board said we must take a discussion on architecture, and so we solemnly sat down and opted for Presentation Model and JSF with MyFaces. Nine months later, it seems that MyFaces is still not really mature, and some of those who have read Martin Fowler's article on Presentation Model say they don't understand it.
The oddest thing is a recent discussion with one of the more experienced developers. Some updates need to call logic, but most don't. For them, we have a servlet that updates the DB, then refreshes the referring page, so the view reflects the update. To do this, each getXxxx() in the bean must be paired with a getXxxxLocation(), which returns a string that represents the table, primary key, and column.
He was opposed to using this, on the grounds that it is bad architecture. Instead he wants to write a doPost method for every editable view page, and a Writer class for every bean the view uses.
It seems to me that discussion on architecture has done nothing to improve the quality of the product. By contrast, some developers now write test cases. That has done much more for us. I'd much rather fix poor code that is under test, than elegant code that is not.
At a recent team meeting, there was agreement to put no more logic in doGet/doPost methods, nor in JSPs.
I should add that we are a scattered project, in five cities, and we are in academia, so concensus is expected. I'm project manager, but the role of chief architect was not allocated.
How can discussions on architecture benefit a project?


Recent comments
24 weeks 2 days ago
25 weeks 1 day ago
25 weeks 1 day ago
26 weeks 1 day ago
26 weeks 5 days ago
26 weeks 5 days ago
27 weeks 6 hours ago
27 weeks 1 day ago
27 weeks 1 day ago
27 weeks 1 day ago