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

  • Interview with Grady Booch

    Grady Booch discusses the growth of software engineering as a discipline with Mark Collins-Cope, the pair covers topics ranging from UML and Unified Process to Programming Languages and the future of software innovation.

  • Data Modeling with Key Value NoSQL Data Stores – Interview with Casey Rosenthal

    In Key Value data stores, data is represented as a collection of key–value pairs. The key–value model is one of the simplest non-trivial data models, and richer data models are implemented on top of it. InfoQ spoke with Casey Rosenthal from Basho team about the data modeling concepts and best practices when using these NoSQL databases for data management.

  • Modeling in the Agile Age: What to Keep Next to Code to Scale Agile Teams

    Now that Agile methods have become mainstream in software development, working code is considered the most important team artifact. There is still a need for modeling. Kenji Hiranabe explores the spaces where modeling fits and plays an important role in this Agile age. With focus on development scaling to multiple teams where a shared understanding of the system’s “Big Picture” becomes essential.

  • Agile Software Architecture Sketches and NoUML

    Understanding the software architecture of what you're building can prevent chaos and encourage collective code ownership. In the race for agility though, many teams struggle to do this, particularly since they've abandoned UML in favour of "boxes and lines" sketches. Moving fast requires good communication, but how do you do this without resorting to big design up front and UML?

  • A Proposal to Enhance the UML Notation

    Raul Rugiero proposes an enhancement to the UML notation whereby requirements and test cases, in particular acceptance tests, are strictly related. Agile methodologies highlight this aspect basing themselves on test driven approaches. The notation of UML use cases may be enhanced in order to allow enhanced UML tools to properly handle links between use cases and tests.

  • Wireframes: A Great Way to Start Development Projects

    In this article, Andreas Wulf introduces wireframing as a simple and effective way to kickstart your development projects. Wireframes allow you to present your ideas in a tangible form so that can be shared and debated (without writing any code). By leaving out graphic design details, wireframes are not only quick and easy to create and change, they help us stay focused on the “big picture”.

  • How to Integrate Models And Code

    While creating models in a form or another is very common, their combination with the code has been challenging. As a result, models are usually thrown away once the implementation has progressed. The reason is partly in the modeling languages used and partly in the tools applied. The article describes proven practices for working with both models and code.

  • Modeling Failure Scenarios in Systems

    The increase in number of integrated systems in today’s enterprise solutions necessitates dealing with dependency and environment failures in a systematic way. By modeling dependency failures at the architecture stage, system response to failures can be communicated, tested and implemented reducing the business risk and cost.

  • Ember.js: Rich Web Applications Done Right

    This article walks you through building an application with Ember.js, showing the MVC system, data binding, as well as how to build GUI and Touch support.

  • Interview: Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives

    Nick Rozanski and Eoin Woods have continued their journey of building a comprehensive handbook on Systems Software architecture with the publication of the second edition of Software Systems Architecture. InfoQ spoke to the authors on a couple of new topics, the System Context viewpoint and Agile, that are covered in the latest edition.

  • Agile Modeling: Enhancing Communication and Understanding

    Modeling supports us in communicating and understanding when we create software solutions. As communication and understanding are two of the most critical aspects of delivering software solutions - modeling is a valuable tool that should not be overlooked. Agile Modeling adheres to and aligns with Agile values and principles and should be one of the practices within your Agile toolkit.

  • Patterns-Based Engineering: Successfully Delivering Solutions via Patterns

    InfoQ spoke with Lee and Celso about the Patterns-Based Engineering: Successfully Delivering Solutions via Patterns book, discussing patterns for working with patterns, MDD and the promise of reuse. The book focuses on how to improve efforts in identifying, producing, managing and consuming patterns – leading to better software delivered more quickly with fewer resources.

BT