BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Modeling Content on InfoQ

  • InfoQ Minibook: Composite Software Construction

    In a new InfoQ minibook, InfoQ SOA Editor and SOA Enterprise Architect Jean-Jacques Dubray describes the state of the art and emerging new approaches in building "Composite Software", solutions created by assembling existing services. The book is available as an InfoQ Minibook, i.e. free of charge in PDF format for InfoQ users. A printed version is available too.

  • Designing for flexibility and robustness: Asynchronous message model, OOP and Functional Programming

    According to Pragmatic Programmers it is preferable in OOP to avoid design based on returning values. Michael Feathers argues that it may also be better to use the asynchronous message model that might be instrumental for improving adaptability and robustness. This maps well to the Erlang model though opposing some of the principles of pure functional programming.

  • Is a picture always worth a thousand words?

    <p>Is a picture always worth a thousand words?</p> <p>In his recent article, &#8220;Why we write code and don&#8217;t just draw diagrams&#8221;, Dean Wampler argues that in software development the opposite is more often true. </p>

  • InfoQ Presentation: Eric Evans on Domain Driven Design - Putting the Model to Work

    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.

  • OOP: Thinking beyond verb/noun metaphor to yield a better design

    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.

  • Erik Doernenburg on Software Visualization

    Software visualization aims to provide a representation of artifacts at an intermediate level of abstraction, which provides enough information to be useful but is at a high enough level that you can perform broadly scoped analysis. In this interview Erik Doernenburg talks with InfoQ about different software visualization strategies using a combination of free tools and custom development.

  • High abstraction level of DSLs to reduce the testing burden?

    Inconsistencies between the user interface and user’s expectations can be an important source of bugs. According to Leonardo Vernazza, this is due the fact that the user and the UI do not talk the same language. Using a DSL, characterized by a high abstraction level, would be instrumental for avoiding the risk of translation errors and would therefore reduce the testing burden.

  • Language-oriented programming : an evolutionary step beyond object-oriented programming?

    At a recent conference, Martin Fowler and Neal Ford develop the concept of language-oriented programming and question the eventuality for Domain Specific Languages to become a new abstraction and modelling mechanism. This could be "the next evolutionary step beyond object-oriented programming", especially since major vendors start offering IDE tooling for DSLs.

  • Interview: Eric Evans on Domain Driven Design

    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.

  • Presentation: Introduction to Component Based Architecture

    Mark Miller provides an introduction to Component Based Architecture and its competitive advantages. First delivered at devLink, Mark covers the theory of Component Architecture and its effect on Developers, Customers and the software product itself.

  • IBM Updates Architect Content/Info Kit

    IBM in May updated their "Software Architect Kit", a bundle of content for architects including podcasts by Grady Booch on trends, patterns and best practices in architecture, webcasts, demos, and whitepapers on patterns-based development, SOA, model-driven architecture, and software structure & modularity. The kit requires registration before all the content can be downloaded.

  • OSGi for application modularity - one company's design choice

    Much has been written about the the adoption of OSGi by tools vendors and application servers, but one of the areas OSGi may have the most impact for developers in the future is as a better component model for application development. InfoQ spoke to BPS, an ISV who chose to re-architect their application around OSGi to find out why this one company made the choice.

  • Microsoft SOA Reference Model, Initial Draft of the Introductory Chapter

    John Evdemon, an architect with the Microsoft Architecture Strategy Team has published an initial draft of the introductory chapter of a Microsoft Abstract SOA Reference Model. According to Evdemon this paper shall serve as an abstract reference for understanding, designing and building software architectures that adhere to service-oriented principles.

  • Interview: Ramnivas Laddad on AOP Design, Modelling, and Policy Enforcement

    Ramnivas Laddad talks about domain aspects, how aspects fit in the design phase, how to model aspects in UML, how to enforce policies with Aspects, how he used Aspects to diagnose production problems including touch threading problems, and using aspects to simplify design pattern implementation.

  • Microsoft Domain-Specific Language Tools from a Developer's Perspective

    Domain-Specific Languages (DSLs) are an architectural hotspot. Microsoft supports DSLs within the Software Factory Initiative and provides a means to incorporate them into the software development process via the Visual Studio 2005 SDK. Although there is quite some information available on the topic, for the most part, DSLs remain an abstract architectural concept.

BT