BT

Facilitating the spread of knowledge and innovation in professional software development

Contribute

Topics

Choose your language

InfoQ Homepage Software Engineering Content on InfoQ

  • How Agile and Architecture Parted and Finally Became Friends

    People stopped seeing the need to define the architecture or do software design due to incorrect interpretation of the agile manifesto, argued Simon Brown. Many software developers don’t seem to have a sufficient toolbox of practices and the software industry lacks a common vocabulary for architecture. A good architecture enables agility with just enough up front design to create firm foundations.

  • Deliver Shippable Products with Good Engineering Practices

    Good engineering practices are the tools that help agile teams to deliver shippable products. Although many engineering practices have proved to be effective, they are not as widely used as they should be. Agile anti-patterns like the software testing ice-cream cone, accumulating technical debt and functional silos prevent teams from delivering a potentially releasable product.

  • Software Developers Use Domain Driven Design to Drive Business

    Increasingly, software developers have the ability to not only maintain and architect code, but extend their expertise to providing direction to the business. By using domain driven design, developers can discover customer behaviors and recommend practices that change the nature of the business.

  • Stop Over-Engineering, Build What the Customer Really Needs

    After working with many different teams, Greg Young has found that they often are drastically over-engineeringing in their projects. Teams start to work on 9 month projects, but by thinking on the problem from another perspective they may be able to deliver 95% of the value in just a few weeks, Young claimed in his keynote at the recent DDD eXchange conference in London.

  • How to Effectively Debug Software

    InfoQ interviewed Diomidis Spinellis, author of the books Code Reading and Code Quality, about finding and fixing errors in software, principles for debugging software and how to improve the effectiveness of debugging, how to write code that requires less debugging, and what managers can do to support error prevention and handling.

  • Technologies and Trends in Developing Complex Software Systems

    The Software-Centric Systems Conference explored new technologies, trends, and experiences in developing complex software systems. InfoQ spoke with Rob Howe and Martijn Rutten, two members of the program committee, about the main challenges that software development is facing, technology developments, driving innovation, and deploying agile to improve process reliability and deliver value.

  • Software Industry Pioneer Ed Yourdon Dies

    Software industry pioneer, prolific author, researcher, consultant and photographer Edward Yourdon died on January 20, 2016

  • Uncle Bob Proposes an Oath to Programmers

    Uncle Bob proposes an oath to software programmers as other professions have, considering the importance of this craftsmanship.

  • Business Case for Diversity in Organizations

    There is a positive correlation between diversity and financial performance and in an inclusive workplace, employees are more engaged which is crucial for retention and performance says Regina Chien. Having a diversity of thought and life experiences is going to help engineers create the best products.

  • 10 Properties Defining Software Architecture

    Software architecture is a process; a sequence of strategic design decisions mapping specification and business goals to architecture design, and a thing; a set of views produced by the process that address different stakeholders, Michael Stal states describing how to define a software architecture.

  • Software – Is it "Engineering" Yet?

    At the GOTO Amsterdam 2015 conference Mary Shaw talked about progress towards an engineering discipline of software. She explored what it means to have an engineering discipline, how far we have progressed toward having one for software, and what can be the next steps.

  • Practicing Empathy Driven Development (EDD)

    Introduction to the concept of Empathy Driven Development.

  • Designing Systems for Testability

    Testability must be explicitly designed in the system said Peter Zimmerer from Siemens AG. Test architects should drive testability and collaborate with architects, designers and testers in using good design and engineering practices. At the QA&Test 2014 conference Peter gave a tutorial about design for testability for embedded software systems.

  • Fear Driven Development on the Rise

    There are several recent posts and discussions dedicated to a fairly common approach to software development: Fear Driven Development.

  • Death by Planning in Agile Adoption

    Management can get the feeling of losing control when their enterprise adopts agile and starts deploying self-organizing teams. Procedures, review boards and consultation bodies can become superfluous when switching to an agile approach, but they may not realize that, says Marcel Heijmans. Trying to regain control with additional planning can make things worse, causing "death by planning".

BT

Is your profile up-to-date? Please take a moment to review and update.

Note: If updating/changing your email, a validation request will be sent

Company name:
Company role:
Company size:
Country/Zone:
State/Province/Region:
You will be sent an email to validate the new email address. This pop-up will close itself in a few moments.