I've been working on a system for a law firm that allows them to quickly generate legal documents. Users complete a Q&A process and a PDF pops out at the end. The logic is more sophisticated than it sounds though. It's now evolved into a records management system and document management system as once generated as document have a particular life-cycle or legal purpose. The system plugs into the Alfresco ECMS which is an impressive little open source project.

We originally started with Struts 2.0.1. Some of the challenges have been managing the massive increase in scope and the view and workflow tailoring requested by every new corporate client. At my last count this application had over 100 actions in struts.xml. Lessons learned: I've been scared-for-life and won't ever use FOP again (http://xmlgraphics.apache.org/fop/).

My pet project involves data mining and analysis. I've been using Struts2.1 as a SOA framework where the actions output a response as json, xml, an html fragment or html page depending on how it was requested. Struts does an excellent job at that. The RIA is build upon YUI. The biggest challenge with this project is dealing with large datasets. Every operation hits a bottleneck, from javascript being too slow to the servers having insufficient [insert any resource]. It's a constant juggle between optimzing algorithms and reoganizing resources.

I have new appreciation for what Sergey Brin & Larry Page achieved in the years before they had money or resources.
Lessons learned: Don't bite off more than you can chew


Ted Husted wrote:
While outward facing web application get the most publicity, I know
that most of us are heads-down on internally-facing applications
designed for fellow employees to use over the corporate intranet.

I'm trying to put together a list of the typical types of applications
that  enterprise developer write in real life. For example, my last
project involved a system to track drafting, granting, monitoring, and
enforcing water permits administered by a government agency. We would
create an initial record for a permit, and then add child records to
track progress through the workflow, and also update the master record
along the way. For management, a key item here is a tracking report,
which we exported to Word (using a third-party tool) for better
formatting. For engineers, a key item was a flexible search system to
quickly find a master or child record. Other interesting features are
workflows where one task leads to another. When we completed one task
(child record), the next is often implied, and so we had a workflow
that would default the next task to work on when a current task was
closed. Another interesting requirement was that sometimes master
items were merged under another uber-master-item, becoming, in effect,
child items themselves. In most cases, the application simply exposed
business models that we designed into the database, so the application
has little business logic of its own. Most of the workflows were
designed to find, list, edit, or view one database entity or the
other.

So, if anyone else is up for sharing, I'd be interested in hearing
what sort of things other people are doing these days. (If your not
comfortable posting the list, feel free to mail me direct.)

-Ted.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]






---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to