Simon Shi
2011-08-03 06:32:31 UTC
Let me describe the current application:
1. maintaining hierarchical resources (e.g. companies has dozens of departments, one department has hundreds of workshops, one workshop has thousands of workers), data organised like a tree.
2. Create/Modify/Delete these resources will do various calculations, e.g. decrease total quota in upper-level resource based on its properties and upper-level's properties; configuring several workshops as a group, thus need to involve them all in some calculations.
3. each resource will setup(Cre/Mod/Del) corresponding Hardware resource, so the resource node contains not only properties but also HW related data, the data in the tree grows continuously in development. (it's now very big one)
4. calculations changes: add new one, involve/discard some parameters, etc.
After several years change, many functions created/modified based on the big data tree, looks like a big ball of mud, it's a maintain nightmare.
So, do you have suggestion on how to organize the desgin? is there any opensource project solved a similar problem?
1. maintaining hierarchical resources (e.g. companies has dozens of departments, one department has hundreds of workshops, one workshop has thousands of workers), data organised like a tree.
2. Create/Modify/Delete these resources will do various calculations, e.g. decrease total quota in upper-level resource based on its properties and upper-level's properties; configuring several workshops as a group, thus need to involve them all in some calculations.
3. each resource will setup(Cre/Mod/Del) corresponding Hardware resource, so the resource node contains not only properties but also HW related data, the data in the tree grows continuously in development. (it's now very big one)
4. calculations changes: add new one, involve/discard some parameters, etc.
After several years change, many functions created/modified based on the big data tree, looks like a big ball of mud, it's a maintain nightmare.
So, do you have suggestion on how to organize the desgin? is there any opensource project solved a similar problem?