This paper reports an investigation into the application of slicing te
chniques to OBJ, an algebraic specification notation. A general method
for slicing an OBJ specification based on its abstract syntax tree is
described and examples of slices produced are presented. A tool that
slices OBJ specifications is reported together with the results of app
lying this tool to several published specifications. The results show
that slices of algebraic specifications can provide the same benefit a
s slices of imperative programs, namely reduced length, thus leading t
o ease of comprehension and future maintenance. However, slice-based m
etrics that have been suggested for determining the cohesion of module
s in imperative languages do not give an obvious indication of quality
in the context of an OBJ module. (C) 1998 Elsevier Science B.V.