Event partitioning is an easy-to-apply systems analysis technique that helps the analyst organize requirements for large systems into a collection of smaller, simpler, minimally-connected, easier-to-understand "mini systems" / use cases. Overview The event-partitioning approach is explained by Stephen M. McMenamin and John F. Palmer in Essential Systems Analysis. A brief version of the approach is described in the article on Data Flow Diagrams (DFDs). A more complete discussion is in Edward Yourdon's Just Enough Structured Analysis. The description focuses on using the technique to create data flow diagrams, but it can be used to identify use cases as well. The premise of event partitioning is that systems exist to respond to external events: identify what happens in the business environment that requires planned responses, then define and build systems to respond according to the rules of the business. In particular, a business system exists to service the requests of customers. A customer, in the jargon of the Unified Modeling Language (UML), is an "actor". Event partitioning topics Actor → Event → Detect → Respond The method has the following steps. 1. Identify the external systems by brainstorming a list of the "actors" (external systems), which are the sources of external events. If you find a graphic to be helpful, create a context diagram showing the actors outside of the system under study and the flows/signals between them. 2. Putting oneself in the shoes of an "actor" (or working with actor representatives), brainstorm a list of the "external events" / "triggers" that they want the system to have a planned response to. (Note that the system cannot originate external events; only an actor can.) 3. Identify what will enable the system to detect the external events: the arrival of one or more pieces of data (possibly in the form of a message) the arrival of one or more points in time (called "temporal" events by M&P, and distinguished by them from external events) 4. Identify the planned response(s) that the system may carry out when the events occur. It's the response(s)/use case(s) that will enable the system to achieve its goals. The technique was extended with "non-event" events by Paul T. Ward and Stephen J. Mellor in Structured Development for Real-Time Systems: Essential Modeling Techniques. Data dictionary notation Yourdon/DeMarco style of data dictionary notation may be used to describe the composition and structure of data. The data structure elements can map