Skip to Main Content
We propose a design methodology, Service-Oriented Design with Aspects (SODA), for service-oriented systems to address the need to continually upgrade and evolve services while maintaining various versions. Our approach treats aspects as first-class design elements and consistently applies the concept of aspect to all phases of design and evaluation. At the early design stages, crosscutting concerns are first separated out as aspects, and then, services are composed by weaving the different design elements together. The behavior of aspects and services is represented as basic Petri Nets and we present rules for weaving together Petri Nets so as to obtain behavior of the integrated system (with aspects crosscutting services). Even at the evaluation stages, performance and resource data are separated out as aspects to be woven in to the design so as to enable advanced analysis using Petri Net tools. A small order service example is used to illustrate our approach.