Skip to main content

Software Architecture or Design

Tutorials

MN Essential Test-Driven Development
Rob Myers, Agile Institute
Mon, 11/10/2014 - 1:00pm

Test-driven development (TDD) is a powerful technique for combining software design, unit testing, and coding in a continuous process to increase reliability and produce better code design. Using the TDD approach, developers write programs in very short development cycles: first the developer writes a failing automated test case that defines a new function or improvement, then produces code to pass that test, and finally refactors the new code to acceptable standards. The developer repeats this process many times until the behavior is complete and fully tested.

Read more
TG Software Design for Testability
Peter Zimmerer, Siemens AG
Tue, 11/11/2014 - 8:30am

Testability is the degree to which a system can be effectively and efficiently tested. This key software attribute indicates whether testing (and subsequent maintenance) will be easy and cheap—or difficult and expensive. In the worst case, a lack of testability means that some components of the system cannot be tested at all. Testability is not free; it must be explicitly designed into the system through adequate design for testability.

Read more
TM Innovation Thinking: Evolve and Expand Your Capabilities NEW
Jennifer Bonine, tap|QA, Inc.
Tue, 11/11/2014 - 1:00pm

Innovation is a word frequently tossed around in organizations today. The standard cliché is “Do more with less.” People and teams want to be innovative but often struggle with how to define, prioritize, implement, and track their innovation efforts. Jennifer Bonine shares the Innovation Types model to give you new tools to evolve and expand your innovation capabilities. Find out if your innovation ideas and efforts match your team and company goals. Learn how to classify your innovation and improvement efforts as core (to the business) or context (essential but non-revenue generating).

Read more