Much code complexity and no small number of program defects can be traced back to confusion over logical expressions and the expression of logic. Find out how you can get that complexity under control.
In certain company, the topic of favorite programming languages can elicit the same response as other taboo subjects, such as religion and politics. But, Chuck's going out on a limb to discuss his new favorite language, D, and some of its best features, such as its being strongly typed and compiling to native code, yet it is garbage collected.
The requirements composition table is an effective technique comprising six steps that will help you assess an application's test coverage and identify gaps in your test suite even if you don't have any software requirements specifications.
While some debate which, if any, industry practices deserve the designation "best practices," this tongue-in-cheek look at the horrors of some of software's "worst practices" drives home the value of the good ones and may help us improve the quality of our software.
Software development has always been an exercise in managing complexity because there appears to be no end to the problems to which we can apply automatic computation. It has progressed as a discipline as good minds have created abstractions that transform that complexity into simplicity.
When these information architects were assigned to a team that was struggling to achieve CMMI Level 2, they found little user buy-in for the new processes. Find out how introducing user-centered design to the project got everyone involved in the design process and increased the users' satisfaction in the end product.
Despite the hype, test-driven development is not as easy as child's play. Successful implementation of TDD requires discipline and an understanding of the potential pitfalls. This article examines the "fine print" of TDD and explains how following some guidelines can help you make it a valuable addition to your development toy box.
Building on a May 2007 Better Software magazine article by Dan North, this month’s cover story continues a look inside service-oriented architecture that emphasizes the process that defines the services rather than the technical specifics. However, this article does use standard technologies—Java, XML, SOAP, WSDL, and POX to further describe a practical implementation of the vacation-booking service described in Dan’s article.
Software development has really changed over the years, and programming languages have evolved along with it. Learn more about D, one of today's more interesting languages; it's a high-level, type-safe language with the efficiency of C++ and the convenience of Java.