Architectural Slicing: Towards Automatic Harvesting of Architectural Prototypes
Architectural prototyping is a widely used practice, concerned with taking architectural decisions through experiments with lightweight implementations. However, many architectural decisions are only taken when systems are already (partially) implemented. This is problematic in the context of architectural prototyping since experiments with full systems are complex and expensive and thus architectural learning is hindered. In this paper, we propose a novel technique for harvesting architectural prototypes from existing systems, “architectural slicing”, based on dynamic program slicing. Given a system and a slicing criterion, architectural slicing produces an architectural prototype that contains the elements in the architecture that are dependent on the elements in the slicing criterion.
Unable to display preview. Download preview PDF.
- 1.Bardram, J., Christensen, H.B., Hansen, K.M.: Architectural Prototyping: An Approach for Grounding Architectural Design and Learning. In: WICSA, pp. 15–24 (2004)Google Scholar
- 2.Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 3rd edn. Addison-Wesley (2012)Google Scholar
- 3.Christensen, H.: Towards an Operational Framework for Architectural Prototyping. In: 5th Working IEEE/IFIP Conference on Software Architecture (WICSA 2005), pp. 301–302 (2005)Google Scholar
- 4.Kim, T., Song, Y.-T., Chung, L., Huynh, D.T.: Dynamic Software Architecture Slicing. In: Proceedings of the Twenty-Third Annual International Computer Software and Applications Conference, COMPSAC 1999, pp. 61–66. IEEE (1999)Google Scholar
- 6.Tip, F.: A Survey of Program Slicing Techniques. Journal of Programming Languages 3(3), 121–189 (1995)Google Scholar