Home > Articles > Software Development & Management > Architecture and Design

  • Print
  • + Share This
From the author of


An architecture-centric viewpoint has potential for paying healthy dividends on software development activities. A well-designed architecture can form the basis of a highly effective single application or a suite of related applications. By separating the issues and requirements that apply to architecture, we can arrive at crisply defined applications.

Use cases provide a convenient mechanism for encapsulating behavior that may remain relatively static across releases. In conjunction with features, use cases provide a very complete description of the proposed software. The key to a happy marriage between yourself and architecture-centric/use case adoption is lightness—don't get too bogged down in the details. This approach has much in common with traditional good software engineering practices. However, the nice thing about the modern tools and techniques is their facility for simplicity and lightness.

Cutting code is still a central role in the production of software. It's important to avoid de-emphasizing coding in favor of excessive artifact creation. Source code is the ultimate artifact!

  • + Share This
  • 🔖 Save To Your Account