Kimbo:
To partition a system (manual, automated, or combo) - especially a larger scale system:
* I use the data flow diagramming approach of "interviewing the data". That is, I follow data flows as they naturally combine or split apart. When data flows logically combine or split apart, I have discovered a logical process/function.
(Note: In the actual drawing of a diagram, whether I physically draw a process first or not is no issue - the key is to think of data flows first and then let the data flows flush out essential process/functions.)
* I supplement the above by evaluating the resulting interface complexity. If a given process has more than five total inputs and outputs, it is a red flag that that process needs to be further partitioned.
* I ensure that I am focused on the unchanging business data flows, not on any implementation specific flows. For larger scale efforts, just coming up with a comprehensive, integrated understanding of the essentials is tough enough - trying to, at the same time, think implementation is a killer.
* Whether a logical data flow happens within a computer or happens between people MAKES NO DIFFERENCE. For some reason, alot of BA's think that if the logical (not physical) data flow is within a computer, that needs to be handled differently than if the flow is manual. Such artifical partitioning kills larger scale integration efforts.
Tony