background preloader

Arquitecture

Facebook Twitter

97 Things Every Software Architect Should Know - free book download. That’s possible because all texts that were printed in “97 Things Every Software Architect Should Know” are licensed under a Creative Commons Attribution 3. Anyone can use them. So I did! As a source I used webpage 97 Things Every Software Architect Should Know - The Book. I wrote a Java application to extract articles from webpage to text file – it would be very tedious work to do it manually. Then I edited it in MS Word, subsequently I used Mobipocket Creator to make an eBook, so I could read it on my Kindle DX for free!

There is also PDF version available. That exercise took me a dozen or so hours. Once again I want to emphasize that this is NOT illegal copy of O'Reilly Media’s book. Now good stuff. I’ve got only one request: please don’t link to files directly. The files can be downloaded from a box on the right side. Looking forward for comments from you. To DTO or not to DTO. In every single Enterprise Java project I am faced with the question: To DTO or not to DTO? A DTO (Data Transfer Object) is a potential design element to be used in the service layer of an enterprise system.

DTOs have a single purpose: To transport data between the service layer and the presentation layer. If you use DTOs you have to pay for it. That is, you need mapping code that copies the data from your domain model to the DTOs and the other way round. Over the years I´ve collected some personal guidelines that help me deciding the DTO-question in new projects. When NOT to use DTOs: Small to mid-sized project team. When to use DTOs: Teams with more than 5 people.

Consequences of the usage of DTOs As I mentioned already, DTOs don´t come for free. Creating a Conceptual Data Model. Creating a Conceptual Data Model by Eli Weinstock-Herman (tarwn) on August 10, 2010 in category Data Modelling and Design. Article views: 8,875 Instapaper There are three types of data models: Conceptual, Logical, and Physical.

The conceptual model provides a high-level view of the data, defining the general entities and entity relationships using the language of the business or organization. The logical model adds attributes to these entities, providing a technology-agnostic foundation for a database design. The physical model assigns table names, column names, and data types to the entities and attributes defined in the prior models. This topic is a sub-set of my presentation later this week at Baton Rouge, SQL Saturday #28. Building the Conceptual Model My approach is to start with the business drivers for the data and progress through external materials, technical inputs, and an analysis phase. What is the purpose of [fill in the blank]?

What does the business do? Put it all together… J2EE Architecture Blog.