Present day computing environments for control engineering have come a long way in terms of numerical support and command or graphical interfaces which provide `natural and flexible' programming support for numerical computations. However, this ease of use and support for flexible and interactive numerical programming has come at a price. Most of these environments lack the structure and organization capabilities necessary for managing model data, parameters, intermediate values and results generated during different computations. They also lack facilities for managing the workspace during any control design session and for maintaining different versions of models and results for a project. There have been several attempts at providing some kind of data management functionality, but most have not been sufficient or general enough, or have proved to be too rigid and restrictive. A review of several environments for computer-aided control engineering (CACE) shows that the common practice of using an external tool for data management is not very practical and that data management functionality should be incorporated as far as possible into the numerical programming environment. Furthermore, any such feature incorporated into the programming process should closely correspond to other programming constructs in the environment. Object-oriented methodologies are good candidates for such developments. These considerations form part of requirements analysis, on the basis of which an experimental-study for overcoming data management problems in Matlab has been conducted. The study is based on Matlab Containers which provide a general solution to the systematic creation and manipulation of data and functions. They are also used for the implementation of class-composition hierarchies and computational chains. An extended example illustrates how the new functionalities can be used without compromising Matlab's flexible programming style.