ey operate with computer abstractions not with AD ions they cannot fully bridge the semantic gap between IT and AD. Therefore, we can safely conclude that the research on computer artifact development performed so far has as the goal to make computer artifact development more easy, more efficient, more everything. But note, computer artifact development is not really the objective of problem solving within a given problem domain. Another important advance in software development is the realization that software complexity can be better handled by developing and studying software architectures that separate software descriptions from software implementation. Barry Boehm [Boe96] in his foreword for the book [SG96] identifies precisely the relationship between software architecture and the application oriented problem solving process when he observes that ”the biggest problem in software engineering hortage of intermediate abstractions that connect the