The object database handbook: how to select, implement, and use object-oriented databases
The object database handbook: how to select, implement, and use object-oriented databases
Agile Software Development: Principles, Patterns, and Practices
Agile Software Development: Principles, Patterns, and Practices
Patterns of Enterprise Application Architecture
Patterns of Enterprise Application Architecture
Domain-Driven Design: Tacking Complexity In the Heart of Software
Domain-Driven Design: Tacking Complexity In the Heart of Software
Foundations of AOP for J2EE Development (Foundation)
Foundations of AOP for J2EE Development (Foundation)
Architectural improvement by use of strategic level domain-driven design
Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications
Using domain-driven design to evaluate commercial off-the-shelf software
Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications
The investigation of WEB software system based on domain-driven design
WISM'11 Proceedings of the 2011 international conference on Web information systems and mining - Volume Part I
Hi-index | 0.00 |
In this paper we present the experience gained and lessons learned when the IT department at Statoil ASA, a large Oil and Gas company in Norway, applied Domain-Driven design techniques in combination with agile software development practices to assess the software architecture of our next generation oil trading and supply chain application. Our hypothesis was that the use of object oriented techniques, domain driven design and a proper object-relational mapping tool would significantly improve the performance and reduce the code base compared with current legacy systems. The legacy system is based on several Oracle databases serving a variety of clients written in Java, Gupta Centura Team Developer and HTML. The databases have a layer of business logic written in PL/SQL offering various system services to the clients. To validate our new object-oriented software architecture, we re-implemented one of the most computationally heavy and data intensive services using Test First and Domain-Driven design techniques. The resulting software was then tested on a set of servers with a representative subset of data from the production environment. We found that using these techniques improved our software architecture with respect to performance as well as code quality when running on top of our Oracle databases. We also tested the switch to an object database from Versant and achieved additional performance gains.