Architecture
❑ Avoid unnecessary architectural complexity.
❑ Avoid unnecessary use of EJB.
❑ Use abstraction layers to hide the complexity of core J2EE and J2SE APIs.
❑ If possible, use an O/R mapping product to simplify the persistence layer.
❑ Use a good application framework.
❑ Focus and methodology
❑ Focus! Know what problems you should be solving, and concentrate on them.
❑ Use a reference architecture and start from a template application.
❑ Use an agile development process.
❑ Use appropriate tools.