The ADO.NET Entity Framework relies heavily on visual modeling tools. But are these tools really appropriate for large scale development?
In his last blog post, Johan den Haan asks one of the key questions of model driven engineering. The article is didactic and explains how ontological and linguistic metamodels can be combined (orthogonally) to simplify code generation while enabling the combination of general purpose languages and domain specific languages concepts. He uses BPEL and BPMN as a supporting example.
Peter Ritchie raised concern about TDD and BDD keeping practitioners from writing good unit tests. He cites an over-reliance on “interaction testing", a core mantra and essence of TDD and BDD, as a driver with tendency to result in incomplete unit testing.
Today, many projects focus on Domain-Driven Design, but it is not always easy. One of the most important things are to separate the domain code from the code that only exists for technical reasons. Mats Helander has written an article where he explains how to manage domain models and teaches design patterns and aspect-oriented programming in the process.
Charles Simonyi, the President of Intentional Software and a recent space traveller presents his views on the future of software development. He talks about how to include domain experts in the development cycle by letting them express their intentions in domain specific languages, about Intentional's view on DSLs and Domain Driven Design and about what it was like to be a space tourist.
In this talk, Eric Evans introduces two broad principles for strategic design. 'Context mapping' addresses the fact that different groups model differently and 'Core domain' distills a shared vision of the system's core domain and provides a systematic guide to when good enough is good enough versus when to push for excellence.
Naked Objects is an architectural pattern and a framework for developing applications where domain objects takes a central role. Naked Objects recently released version 3.0 with support for Java 1.5, injection, an alternate UI, Hibernate object store, integrated security and contributed actions. InfoQ took the opportunity to speak with Richard Pawson, inventor of the Naked Objects pattern.
Why bother with models? Eric Evans explains that the most critical complexity of most software projects is understanding the business domain itself. In this talk Evans talks about the foundations of Domain-Driven Design and how to make a domain model truly pull its weight and positively transform a project.
In OOP, objects are traditionally coupled with actions that determine their behavior, implemented as objects’ methods. Reg Braithwaite argues that, in some cases, it may be relevant to dissociate the two. Traditional approach to OOP is also questioned by Buko Obele who advocates for going beyond the verb/noun metaphor that is often used to approach object oriented design.
Everware-CBDI announced recently the publication of their second release of ther Service Architecture & Engineering Metamodel which provide different views to capture the metadata associated to services. Salamander announced this week the release of a solution combining their leading MooD product and the SAE metamodel.
Ever since Eric Evans wrote the book Domain-Driven Design in 2004 he has been a significant voice advancing domain modeling and design concepts. In this interview with Floyd Marinescu he talks about some of the recent refinements in Domain-Driven Design and how people are advancing the field today.
Microsoft's Data blog has five short demos on Orcas and post-Orcas features for editing XML files and XSD files, debugging XSLT, and working with Entity Data Models (EDM).
Ying Hu and Sam Peng show how they solved some major problems dealing with international currency by selectively applying Domain-Driven Design to their existing application.
As a follow-up to our interview with Jimmy Nillson, we bring you a review of his book Applying Domain-Driven Design and Patterns and a sample chapter from courtesy of Addison Wesley Professional.
On her Creating Passionate Users blog, Kathy Sierra recently envisioned software that's not just usable, but transparent, helping users achieve "flow" in their work without intrusive distractions, delays or constraints. Perhaps end-user "flow" is the next big differentiator - and if so, what will the development processes look like that support the creation of such software?