matrix scheduling

During the early 2000’s I worked at a series of small start-ups handling project management for our development groups.  I entered the start-ups at various stages of their life-cycles, but the one constant was their state of scheduling – inconsistent and compartmentalized, even for small scale organizations.  Some efforts were scheduled by project, others were scheduled by function (e.g. development, manufacturing, QA).  Some schedules were maintained, others were written and never looked at again.  This got me thinking…there has to be a better way to organize and visualize all this information.  Improving the understanding of scheduling data improves organizational planning and communication which hopefully increases our chances of completing a project successfully.

This page is a summary of a more detailed paper I authored for a summer project that was part of my Master’s program in Engineering Management at UT.  You can read the full paper here.  The paper has some really slick before and after metrics on the quantified impact of the implementation of this scheduling system at Interactive Silicon, one of the start-ups  worked for.

The degree to which an organization’s are systematically structured varies as widely as the types of organizational structures. The extreme example of information mismanagement is a complete lack of structure. In these situations, schedules are often created on an as needed basis only when they are required for a specific presentation or deadline. Following the immediate need, the schedules are abandoned and the information contained in the schedule is no longer kept up to date or made available for others. The following figure illustrates the chaotic nature of this approach to sharing project information.

An intermediate level of scheduling mismanagement occurs when efforts are made on the group level. Functional groups within an organization establish processes for exchanging information within that group, but little attention is paid to providing information outside the group.

Different groups maintain different scheduling and planning practices. Despite the presence of well formed scheduling practices within the group, planning between functional groups is scarce, leading to poor inter-group communication, misinterpretation, and potential animosity between groups often yielding missed deliveries or cost over-runs. An example of this potential scenario is illustrated below:

The Matrix Scheduling Theory unifies scheduling efforts across an organziation. Here is an illustration of an implementation of the theory in an organization with multiple groups running concurrent projects. A detailed description of the implementation follows the figure.

The process begins with the alignment of two primary types of schedules, the Project and Functional schedule, along the x-axis and y-axis, respectively. Following the alignment of the axes, the cells of the matrix formed by the Project and Functional schedules is populated with information specific to each function and project.

The main schedules for each project and functional group are then linked to each related cell within the matrix moving down the matrix in the case of a project or moving across the matrix in the case of a functional group. By structuring information in this manner, multiple audiences can view the same information where only one instance of that information is maintained.

To ensure that over-allocation of resources does not occur, a Resource Pool is inserted into the Matrix Scheduling System. Each sub-project within the matrix is linked to the Resource Pool, drawing it’s resources from the pool to ensure that all Projects and Functional groups are aware of other Project and Functional group’s resource requirements.

The final stage of the Matrix Scheduling System is the incorporation of Program Schedules and an Executive Summary. In some instances Programs span multiple Projects and multiple Functional Groups. In these cases, specific summary information that encapsulates all relevant Program information must be presented in a meaningful summary, in this case, the Program Schedule. An Executive Summary is used to provide members of the Executive Management Team with an overview of all active Projects and Functional Group commitments. Typically the executive team does not have the time to review detailed schedules, so the Executive Summary draws on key milestones identified for each project or functional groups.