Home Why Arc@Tec? Mission Values Services Contact

How Architecture Serves Technical Purpose?

The purpose of architecture design is to construct a system that...

  • It satisfies given requirements and functionalities (specifications)
  • It conforms to limitation of the target medium
  • It meets implicit or explicit design criteria on the form of the artifact
  • It satisfies restriction on the design process itself, such as its length or
    cost, or the tools available for doing the design

These goals are often conflicting, not prioritized, underspecified or
based on unrealistic expectations.

What Kind of Technical Concerns Are There?

  • Key system functions
  • System context
  • Changeability
  • Reusability
  • Work divisioning
  • Efficiency/Performance
  • Reliability
  • Availability
  • Portability
  • OS independence
  • HW independence
  • Energy consumption
  • Memory usage
  • Upgradeability
  • Dynamic re-configuration
  • UI feature interactions
  • Persistency of application state and data
  • Management of user data
  • User interaction response time
  • Interoperability with other applications
  • Modularity
  • Testability

The main scope or target of systematic architecture development is to provide a good understanding of architecture to be developed with reasoning (to give clear answers and argumentation), enable the better understanding where optimization (e.g. Use Case implementation options) can be done, and not last and least provide the platform independence with modularity giving a clear definitions and reasoning why divisioning between modules is done the way it’s done.

A good architecture is a “tool”, which will help and support engineering operations providing answers with reasoning (why, what, how) to the questions related to the system concerns, requirements, functionalities and objectives!

A Good Architecture Work Helps and Supports to...

  • Prioritize given system requirements, functionalities and objectives for development purposes that system can be optimized according to “Key Requirements and Use Cases”

  • Analyze requirements and enables to make tradeoffs among requirements of differing priority, if seen necessary

  • Validate how given system requirements, functionalities and objectives are met providing answers with reasoning (why, what, how)

  • Increase engineering development efficiency enabling flexible distribution/partitioning of the system

  • Increase engineering efficiency by reusable system components

  • Optimize system to the various platform/product variants

  • Reduce the cost of modifications (maintenance)

  • Study different implementation alternatives (variants) and evolution

  • Reuse design documents, code and other system work products

  • Reuse and integration with legacy and third-party software (frameworks, class libraries, legacy and third-party applications)

  • And more...

»Introduction To The Architectural Transition Procedures?


© Copyright 2010 ArcaTec. All Rights Reserved. Phone +358 40 751 0502 www.arcatec.fi