WO2001018683A2 - Resource-based task scheduling system and method - Google Patents

Resource-based task scheduling system and method Download PDF

Info

Publication number
WO2001018683A2
WO2001018683A2 PCT/US2000/024828 US0024828W WO0118683A2 WO 2001018683 A2 WO2001018683 A2 WO 2001018683A2 US 0024828 W US0024828 W US 0024828W WO 0118683 A2 WO0118683 A2 WO 0118683A2
Authority
WO
WIPO (PCT)
Prior art keywords
schedule
ofthe
recited
task
tasks
Prior art date
Application number
PCT/US2000/024828
Other languages
French (fr)
Other versions
WO2001018683A8 (en
Inventor
Craig Mindrum
Dennis Bowers
Original Assignee
Accenture Llp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Accenture Llp filed Critical Accenture Llp
Priority to AU71298/00A priority Critical patent/AU7129800A/en
Publication of WO2001018683A2 publication Critical patent/WO2001018683A2/en
Publication of WO2001018683A8 publication Critical patent/WO2001018683A8/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Definitions

  • the present invention relates to employee management systems and more particularly to a human performance framework for organizing information in preparation of generating a schedule.
  • the job of creating staff schedules is complex, and involves such variables as the definitions of each task, the percentage of an employee's time that it takes to do a particular task, the day ofthe week, month, or year in which the task should be performed, the skill levels of employees available to perform each task, resource constraints such as equipment capacity at the location that facilitate or prevent a task from being scheduled, relationships between tasks that affect their placement and movement on the schedule, calculations for each task for a task's length, start time, positive and negative tolerances in completing a task, and employee availability by day ofthe week, hours ofthe day, their skill level and priority or seniority levels or categories.
  • Each remote location has unique differences in layout, sales patterns, sales volume, and product mix.
  • a system and method are provided to organize resources for effective utilization in task completion.
  • a list of tasks requiring completion is generated after which a list of employees is correlated to the list of tasks requiring completion.
  • a list of resources are associated with the list of tasks requiring completion.
  • Resource information is specified including which of the resources are to be used for facilitating the completion ofthe tasks by the employees.
  • employee information including compensation and scheduling conditions based on labor regulations.
  • a schedule is generated based on the resource information and the employee information in order to complete the tasks. The schedule is then stored in a storage.
  • the task list may indicate when each task requires completion.
  • the employee list may indicate a skill level and a seniority level of each ofthe employees.
  • An availability ofthe employees may be specified by days ofthe week and hours ofthe day.
  • the employee information may include a minimum and a maximum time the employees may work before the labor regulations require a break, a maximum time the employees may work before being paid overtime per the labor regulations, and/or minimum and maximum shift lengths as required by the labor regulations.
  • the schedule may be generated based on policies of a business entity.
  • FIG. 1 is a block diagram of a representative hardware environment in accordance with a preferred embodiment
  • Figure 2 A is a flowchart illustrating one embodiment ofthe present invention which organizes resources for effective utilization in task completion;
  • Figure 2B is a block diagram ofthe registry process in accordance with a preferred embodiment
  • Figure 3 illustrates examples of authentication methods in accordance with a preferred embodiment
  • Figure 4 illustrates the components ofthe system network architecture in accordance with a preferred embodiment
  • Figure 5 illustrates an application security architecture in accordance with a preferred embodiment
  • FIG. 6 is a block diagram ofthe major information flows that are described in the following sections in accordance with a preferred embodiment
  • FIG. 7 is a block diagram of certificate processing for a new client registration in accordance with a preferred embodiment
  • Figure 8 illustrates a member feed in accordance with a preferred embodiment
  • Figure 9 is a functional block system architecture diagram flowchart in accordance with a preferred embodiment
  • Figures 10 is a flow chart ofthe processing in accordance with a preferred embodiment.
  • a preferred embodiment of a system in accordance with the present invention is preferably practiced in the context of a personal computer such as an IBM compatible personal computer,
  • FIG. 1 illustrates a typical hardware configuration of a workstation in accordance with a preferred embodiment having a central processing unit 110, such as a microprocessor, and a number of other units interconnected via a system bus 112.
  • the workstation shown in Figure 1 includes a Random Access Memory (RAM) 114, Read Only Memory (RAM).
  • RAM Random Access Memory
  • ROM Read Only Memory
  • I/O adapter 118 for connecting peripheral devices such as disk storage units 120 to the bus 112
  • a user interface adapter 122 for connecting a keyboard 124, a mouse 126, a speaker 128, a microphone 132, and/or other user interface devices such as a touch screen (not shown) to the bus 112
  • communication adapter 134 for connecting the workstation to a communication network (e.g., a data processing network) and a display adapter 136 for connecting the bus 112 to a display device 138.
  • the workstation typically has resident thereon an operating system such as the Microsoft Windows NT or Windows/95 Operating System (OS), the IBM OS/2 operating system, the MAC OS, or UNIX operating system.
  • OS Microsoft Windows NT or Windows/95 Operating System
  • MAC OS MAC OS
  • UNIX operating system Those skilled in the art will appreciate that the present invention may also be implemented on platforms and operating systems other than those mentioned.
  • OOP Object oriented programming
  • OOP is a process of developing computer software using objects, including the steps of analyzing the problem, designing the system, and constructing the program.
  • An object is a software package that contains both data and a collection of related structures and procedures.
  • OOP Since it contains both data and a collection of structures and procedures, it can be visualized as a self- sufficient component that does not require other additional structures, procedures or data to perform its specific task. OOP, therefore, views a computer program as a collection of largely autonomous components, called objects, each of which is responsible for a specific task. This concept of packaging data, structures, and procedures together in one component or module is called encapsulation.
  • OOP components are reusable software modules which present an interface that conforms to an object model and which are accessed at run-time through a component integration architecture.
  • a component integration architecture is a set of architecture mechanisms which allow software modules in different process spaces to utilize each others capabilities or functions. This is generally done by assuming a common component object model on which to build the architecture. It is worthwhile to differentiate between an object and a class of objects at this point.
  • An object is a single instance ofthe class of objects, which is often just called a class.
  • a class of objects can be viewed as a blueprint, from which many objects can be formed.
  • OOP allows the programmer to create an object that is a part of another object.
  • the object representing a piston engine is said to have a composition-relationship with the object representing a piston.
  • a piston engine comprises a piston, valves and many other components; the fact that a piston is an element of a piston engine can be logically and semantically represented in OOP by two objects.
  • OOP also allows creation of an object that "depends from” another object. If there are two objects, one representing a piston engine and the other representing a piston engine wherein the piston is made of ceramic, then the relationship between the two objects is not that of composition.
  • a ceramic piston engine does not make up a piston engine. Rather it is merely one kind of piston engine that has one more limitation than the piston engine; its piston is made of ceramic.
  • the object representing the ceramic piston engine is called a derived object, and it inherits all ofthe aspects of the object representing the piston engine and adds further limitation or detail to it.
  • the object representing the ceramic piston engine "depends from" the object representing the piston engine. The relationship between these objects is called inheritance.
  • the object or class representing the ceramic piston engine inherits all ofthe aspects ofthe objects representing the piston engine, it inherits the thermal characteristics of a standard piston defined in the piston engine class.
  • the ceramic piston engine object overrides these ceramic specific thermal characteristics, which are typically different from those associated with a metal piston. It skips over the original and uses new functions related to ceramic pistons.
  • Different kinds of piston engines have different characteristics, but may have the same underlying functions associated with it (e.g., how many pistons in the engine, ignition sequences, lubrication, etc.).
  • a programmer would call the same functions with the same names, but each type of piston engine may have different/overriding implementations of functions behind the same name. This ability to hide different implementations of a function behind the same name is called polymorphism and it greatly simplifies communication among objects.
  • composition-relationship With the concepts of composition-relationship, encapsulation, inheritance and polymorphism, an object can represent just about anything in the real world. In fact, our logical perception ofthe reality is the only limit on determining the kinds of things that can become objects in object- oriented software. Some typical categories are as follows:
  • Objects can represent physical objects, such as automobiles in a traffic-flow simulation, electrical components in a circuit-design program, countries in an economics model, or aircraft in an air-traffic-control system.
  • Objects can represent elements of the computer-user environment such as windows, menus or graphics objects.
  • An object can represent an inventory, such as a personnel file or a table of the latitudes and longitudes of cities.
  • An object can represent user-defined data types such as time, angles, and complex numbers, or points on the plane.
  • OOP allows the software developer to design and implement a computer program that is a model of some aspects of reality, whether that reality is a physical entity, a process, a system, or a composition of matter. Since the object can represent anything, the software developer can create an object which can be used as a component in a larger software project in the future.
  • OOP enables software developers to build objects out of other, previously built objects.
  • C++ is an OOP language that offers a fast, machine-executable code.
  • C++ is suitable for both commercial-application and systems-programming projects.
  • C++ appears to be the most popular choice among many OOP programmers, but there is a host of other OOP languages, such as Smalltalk, Common Lisp Object System (CLOS), and Eiffel. Additionally, OOP capabilities are being added to more traditional popular computer programming languages such as Pascal.
  • Class hierarchies and containment hierarchies provide a flexible mechanism for modeling real- world objects and the relationships among them.
  • class libraries allow programmers to use and reuse many small pieces of code, each programmer puts those pieces together in a different way.
  • Two different programmers can use the same set of class libraries to write two programs that do exactly the same thing but whose internal structure (i.e., design) may be quite different, depending on hundreds of small decisions each programmer makes along the way.
  • similar pieces of code end up doing similar things in slightly different ways and do not work as well together as they should.
  • Class libraries are very flexible. As programs grow more complex, more programmers are forced to adopt basic solutions to basic problems over and over again.
  • a relatively new extension of the class library concept is to have a framework of class libraries. This framework is more complex and consists of significant collections of collaborating classes that capture both the small scale patterns and major mechanisms that implement the common requirements and design in a specific application domain. They were first developed to free application programmers from the chores involved in displaying menus, windows, dialog boxes, and other standard user interface elements for personal computers. Frameworks also represent a change in the way programmers think about the interaction between the code they write and code written by others.
  • event loop programs require programmers to write a lot of code that should not need to be written separately for every application.
  • the concept of an application framework carries the event loop concept further. Instead of dealing with all the nuts and bolts of constructing basic menus, windows, and dialog boxes and then making these things all work together, programmers using application frameworks start with working application code and basic user interface elements in place. Subsequently, they build from there by replacing some ofthe generic capabilities ofthe framework with the specific capabilities of the intended application.
  • Application frameworks reduce the total amount of code that a programmer has to write from scratch.
  • the framework is really a generic application that displays windows, supports copy and paste, and so on, the programmer can also relinquish control to a greater degree than event loop programs permit.
  • the framework code takes care of almost all event handling and flow of control, and the programmer's code is called only when the framework needs it (e.g., to create or manipulate a proprietary data structure).
  • a programmer writing a framework program not only relinquishes control to the user (as is also true for event loop programs), but also relinquishes the detailed flow of control within the program to the framework. This approach allows the creation of more complex systems that work together in interesting ways, as opposed to isolated programs, having custom code, being created over and over again for similar problems.
  • a framework basically is a collection of cooperating classes that make up a reusable design solution for a given problem domain. It typically includes objects that provide default behavior (e.g., for menus and windows), and programmers use it by inheriting some of that default behavior and overriding other behavior so that the framework calls application code at the appropriate times.
  • default behavior e.g., for menus and windows
  • Behavior versus protocol Class libraries are essentially collections of behaviors that you can call when you want those individual behaviors in your program.
  • a framework provides not only behavior but also the protocol or set of rules that govern the ways in which behaviors can be combined, including rules for what a programmer is supposed to provide versus what the framework provides.
  • a preferred embodiment of the invention utilizes HyperText Markup Language (HTML) to implement documents on the Internet together with a general-pu ⁇ ose secure communication protocol for a transport medium between the client and the Newco. HTTP or other protocols could be readily substituted for HTML without undue experimentation. Information on these products is available in T. Berners-Lee, D. Connoly, "RFC 1866: Hypertext
  • HTML Markup Language - 2.0
  • R. Fielding H, Frystyk, T. Berners-Lee, J. Gettys and J.C. Mogul, "Hypertext Transfer Protocol - HTTP/1.1 : HTTP Working Group Internet Draft” (May 2, 1996).
  • HTML is a simple data format used to create hypertext documents that are portable from one platform to another.
  • HTML documents are SGML documents with generic semantics that are appropriate for representing information from a wide range of domains.
  • HTML has been in use by the World-Wide Web global information initiative since 1990. HTML is an application of ISO Standard 8879; 1986 Information Processing Text and Office Systems; Standard Generalized Markup Language (SGML).
  • SGML Standard Generalized Markup Language
  • HTML has been the dominant technology used in development of Web-based solutions.
  • HTML has proven to be inadequate in the following areas:
  • UI User Interface
  • Custom “widgets” e.g., real-time stock tickers, animated icons, etc.
  • client-side performance is improved.
  • Java supports the notion of client-side validation, offloading appropriate processing onto the client for improved performance.
  • Dynamic, real-time Web pages can be created. Using the above-mentioned custom UI components, dynamic Web pages can also be created.
  • Sun's Java language has emerged as an industry-recognized language for "programming the Internet.”
  • Sun defines Java as: "a simple, object-oriented, distributed, inte ⁇ reted, robust, secure, architecture-neutral, portable, high-performance, multithreaded, dynamic, buzzword- compliant, general-pu ⁇ ose programming language.
  • Java supports programming for the Internet in the form of platform-independent Java applets.”
  • Java applets are small, specialized applications that comply with Sun's Java Application Programming Interface (API) allowing developers to add "interactive content” to Web documents (e.g., simple animations, page adornments, basic games, etc.).
  • API Java Application Programming Interface
  • Applets execute within a Java-compatible browser (e.g., Netscape Navigator) by copying code from the server to client. From a language standpoint, Java's core feature set is based on C++. Sun's Java literature states that Java is basically, "C++ with extensions from Objective C for more dynamic method resolution.”
  • ActiveX includes tools for developing animation, 3-D virtual reality, video and other multimedia content.
  • the tools use Internet standards, work on multiple platforms, and are being supported by over 100 companies.
  • the group's building blocks are called ActiveX Controls, small, fast components that enable developers to embed parts of software in hypertext markup language (HTML) pages.
  • ActiveX Controls work with a variety of programming languages including Microsoft Visual C++, Borland Delphi, Microsoft Visual Basic programming system and, in the future, Microsoft's development tool for Java, code named "Jakarta.”
  • ActiveX Technologies also includes ActiveX
  • a generic framework or architecture is constructed that contains commonalties.
  • a house analogy one could purchase a prefabricated house framework consisting of floors, outside walls, bearing walls and a roof. The house can be customized by adding partition walls, wall-paper, woodwork, ca ⁇ eting etc.
  • prefabricated application frameworks are available that contain baseline application structure and functionality. Individual applications are completed by adding specific functionality and customizing the look-and-feel.
  • An example of a commonly used application framework is Microsoft Foundation Classes. It is a framework for developing Windows applications using
  • MFC supplies the base functionality of a windowing application and the developer completes the application by adding functionality within the framework.
  • Framework-based reuse is best suited for capturing template-like features, for example user interface management, procedural object behaviors, and any other features that may require specialization.
  • Some benefits of using a framework include:
  • Extensive functionality can be incorporated into a framework.
  • I can build the plumbing, wiring, and partition walls right into the framework, reducing the incremental effort required for each house. If I know I am going to build a large number of very similar applications, they have more commonalties that can be included in the framework rather than built individually.
  • component-based reuse key functionality is encapsulated in a component.
  • the component can then be reused in multiple applications.
  • components correspond to appliances such as dishwashers, refrigerators, microwaves, etc.
  • application components with pre-packaged functionality are available from a variety of vendors.
  • An example of a popular component is a Data Grid. It is a component that can be integrated into an application to deliver the capability of viewing columnar data in a spreadsheet-like grid.
  • Component-based reuse is best suited for capturing black-box-like features, for example text processing, data manipulation, or any other features that do not require specialization.
  • Some benefits of using components include:
  • a microwave can be used in virtually any house, whether it's framework is steel or wood, and regardless of whether it was customized for building mansions or shacks. You can put a high-end microwave in a low-end house and vice-versa. You can even have multiple different microwaves in your house.
  • Component technologies such as CORBA, COM, and Java Beans make this kind of flexibility commonplace in application development.
  • framework-based approach for building human resource management applications is appropriate for developing the user interface, handling user and system events, starting and stopping the application, and other application-specific and delivery platform-specific functions.
  • a component-based approach is appropriate for black-box functionality. That is, functionality that can be used as-is with no specialization required.
  • the present invention provides an automated staff scheduling system and method in which the variables associated with making an optimum staff schedule can be defined, maintained, and consistently applied.
  • the present invention also provides an automated staff scheduling system and method which can be operated by relatively unskilled operators and which requires little technical knowledge or supervision.
  • the present invention provides an automated staff scheduling system which represents and utilizes a co ⁇ oration's staffing policy when creating staff schedules at each remote location.
  • the present invention provides a method which inco ⁇ orates state, federal and local labor regulations (referred to herein as 'state' regulations) and co ⁇ orate policy when creating schedules.
  • the present invention obviates the above mentioned drawbacks ofthe prior art systems and provides a system and method for generating optimum staff schedules that are unique to each of a plurality of remote locations given a plurality of variables.
  • optimum schedules take into account: the tasks that need to be scheduled and when they should be scheduled; the skill levels of employees that are available to perform the tasks; the resources available to facilitate tasks; the relationships between tasks; calculations to combine unique location values with unique location historical data and co ⁇ orate policy to determine the length, start time, and positive and negative slide for a task; employee availability by day ofthe week, and hours ofthe day, skill level, and priority of seniority levels; and applicable 'state' labor regulations.
  • positive and negative slide for a task refers to the latitude or tolerance of shifting the end point(s) of a task forward or backward in time.
  • the present system and method thus minimizes the training times required for location managers and brings more expertise to bear on this complex task than is possible with traditional manual scheduling schemes.
  • Figure 2 A is a flowchart illustrating one embodiment ofthe present invention which organizes resources for effective utilization in task completion.
  • a list of tasks requiring completion is generated after which a list of employees is correlated to the list of tasks requiring completion in operation 202.
  • a list of resources are associated with the list of tasks requiring completion.
  • Resource information is specified in operation 206, including which ofthe resources are to be used for facilitating the completion ofthe tasks by the employees.
  • employee information including compensation and scheduling conditions based on labor regulations. See operation 208.
  • a schedule is generated in operation 210 based on the resource information and the employee information in order to complete the tasks. The schedule is then stored in a storage in operation 212.
  • the task list may indicate when each task requires completion.
  • the employee list may indicate a skill level and a seniority level of each ofthe employees.
  • An availability ofthe employees may be specified by days of the week and hours of the day.
  • the employee information may include a minimum and a maximum time the employees may work before the labor regulations require a break, a maximum time the employees may work before being paid overtime per the labor regulations, and/or minimum and maximum shift lengths as required by the labor regulations.
  • the schedule may be generated based on policies of a business entity.
  • a preferred embodiment in accordance with the invention loads the Scheduler Resource File and the State File from a storage into a computer RAM as shown in Figure 1.
  • the Scheduler Resource File specifies which resources will be used in the schedule and where to find the initial values of these resources.
  • a resource is an item that may be of limited supply, or a reference value or a value that is modified as the other values on the schedule change.
  • the Scheduler Resource File contains the resource type, the name ofthe resource and whether the particular resource is being created or updated.
  • Decreasing the resource is 'consumed' or committed as a task is scheduled, for example, equipment
  • increasing the resource is accumulated as a task is scheduled, for example, people
  • Constant the resource must simply exist with no regard to its capacity in order for the task to be scheduled.
  • the State File defines the minimum and maximum time an employee may work before the applicable labor regulation requires a paid or unpaid break, the maximum hours an employee may work before being paid overtime by day and week, and also defines the minimum and maximum shift lengths as required by applicable labor regulations.
  • the Task Definition File defines the tasks that are to be scheduled. It contains information about the day ofthe week on which the task is to be performed, the required skill level for this task, the percentage of an employee's time that it takes to do a particular task (from 1% to 100%), flags for task type and task placement, and the letter code (e.g., P, S, C, D, and the like) to represent the task on the Schedule Bar Chart.
  • the task type flags indicate whether a task can be split, whether a task is a pool task, whether the task skill level can be changed when an employee is moved from this task, and whether a task allows a break to replace this task.
  • Task placement flags change the way a task is placed on the schedule.
  • a preferred embodiment in accordance with the invention utilizes task type flags and task placement flags to improve the performance of each task while optimizing the schedule. It optimizes the schedule by taking into account the duration of a task, each task's start-time, and the positive and negative slide for a task.
  • the Task Relation File defines the relationships between tasks and events. It describes how each task is related to other tasks or events. For example, certain tasks can only be performed after another task has been completed, but before closing time for that location.
  • the invention When defining the relationships between tasks and events, the invention is able to define multiple groups of relationships. During the process of placing a task on a schedule, each group of relations are tested and if no relation is violated in that group, the task is placed on the schedule. Otherwise, the next group of relations are tested.
  • the Task Resource File defines the resources that are referenced by each task. It contains the resource type and the quantities and capacities of each resource that can restrict or enable a task to be scheduled. Resources are tracked every fifteen minutes on the schedule and are used to determine if an item is available for a particular task.
  • the Task Resource File references resource definitions in one of three files: (i) the Location Master File 10 which contains values unique to each location that are then used to define resources or are used in calculations to define task attributes; (ii) the Daily File 7 which contains values for a specific day which deviate from the normal values and which may cause additional tasks to be scheduled; and (iii) the Sales Curve File 8 which contains values for a particular location's past performance which is stored by time period during the day, by each day of the week and for each season ofthe year.
  • the Calculation File contains information which allows the invention to access data from various files and perform operations to calculate a task's start-time, the duration ofthe task, the positive and negative slide for the task, and the task manpower percent.
  • the calculations feature uses data from the Calculation File to perform calculations on the values retrieved from the Parameter File, the Location Master File, the Sales Curve File and the Daily Questions and Response File.
  • the calculations feature can also perform other calculation sets to achieve a nesting or parenthetical structure of calculations and logic.
  • the Parameter File contains look-up table values and is used to inco ⁇ orate various co ⁇ orate standards into the scheduling process.
  • the Parameter File also contains the skill level matrix which cross references a given skill level to other skill levels to determine which other skill levels a given skill level is able to perform.
  • One aspect of a preferred embodiment is the flexibility provided to modify the values that affect the way a task is scheduled without altering the program logic. This is possible because the Task Relation File, the Task Resource File, and the Calculation File are located in separate external files.
  • Each task is processed in the order of its priority, as defined in the Task Definition File.
  • a preferred embodiment in accordance with the invention accesses the Task Definition File and retrieves the skill level required for each task.
  • the invention determines the task's duration, the percentage of an employee s time that it takes to do a particular task (from 17% to 100%), and defines the boundaries of a window which reflects the task's start-time and stop-time, taking into account the positive and negative slide for each task. If these values are not defined in the Task Definition File, then they will be retrieved from either the resource constraints, or from calculations in the Calculation File.
  • the process determines the required manpower by skill level.
  • the skill level matrix in the Parameter File is accessed to determine the highest skill level that can perform the task.
  • placement logic for each task, it places the task on the schedule within the Task Placement window, which is defined by the schedule's start-time, task duration, and the positive and negative slide for the task.
  • the placement logic has the ability to look at what shifts are currently on the schedule and the current task's placement window, and then find the best existing shift to which to append the current task. Due to the limited computational power available at a remote location, it is not possible to solve multiple simultaneous equations which are typical ofthe linear programming nature of scheduling.
  • the representation of calculations and placement logic in a rules fashion serve to inco ⁇ orate as much human reasoning and logic into the process to minimize the computational power required to solve the problem in a timely fashion.
  • the relative placement of a task on the schedule can be controlled to include co ⁇ orate policy and expertise in the ordering of tasks on the schedule.
  • the process continues in the Schedule Optimization Phase. In an optimal fashion, this phase divides the schedule into different shifts and inserts breaks in the shifts where necessary.
  • the invention accesses the Skill Shift File and retrieves the preferred minimum and maximum shift lengths as well as any preferences in order to build minimum, maximum, or average length shifts.
  • the Skill Shift File defines the skills that are expected to be generally available at the particular location and also contains values which define the preferences on the length of a shift by skill level.
  • a shift can be defined in numerous ways such as (i) the duration ofthe shift is only as long as the length ofthe tasks; (ii) fill the shift to the maximum shift length or the minimum shift length; or (iii) must be the first shift or the last shift.
  • the co ⁇ orate policies may be inco ⁇ orated and optimized by allowing this logic to define the minimum and maximum length of time for a shift in accordance with co ⁇ orate policies for each skill level.
  • the Schedule Optimization Phase is able to remove any sudden increased requirements in a location's demand for a given skill level. This occurs when the created schedule positions persons with the same skill level to perform different tasks at the same time.
  • the process smooths this sudden demand requirement for a given skill level by taking the sudden increased requirement for the given skill level and testing it for the following conditions: (i) if sudden increased demand for a given skill level is less than fifty percent ofthe length ofthe minimum shift of that skill level, and
  • the sudden increased demand for a given skill level is more than two-thirds of a minimum shift away from a shift which is eligible to be appended to the shift with the sudden increased demand for a given skill, and (iii) the sudden increased demand for a given skill level is less than the product ofthe total number of available employees with this skill level multiplied by the threshold of the shift which is defined in the Skill Shift File, in order to alter the schedule to accommodate the sudden increased demand for a given skill level. This tends to even the demand for a given skill level on the assumption that an individual can perform at more than 100% of capacity for a short period of time.
  • a preferred embodiment in accordance with the invention divides the schedule into shifts in the following manner. Starting with the highest skill level, the tasks to be done are allocated to different shifts according to the shift logic defined in the Skill Shift File. As each shift is created, the remaining tasks on the task line for that skill level are evaluated to see if they can be pushed to a lower skill level. The process of first placing the task at the highest skill level and then trying to move the task to a lower skill level when creating shifts ensures that a full shift will be built around a task that requires the higher skill level, but will move other tasks to a lower skill level to minimize costs.
  • the applicable state, federal, local regulations are retrieved from the State Master File, and this information is used to insert breaks into each shift.
  • the optimization process inserts a break between the start-time and stop-time for each shift, where the interrupted tasks will best append to the beginning or end of another shift.
  • any dangling or isolated tasks whose length does not entirely fill the time between the start-time and stop-time of a shift, are combined with designated filler tasks to completely fill this empty time.
  • the Schedule Header Record contains one record per schedule and each record contains summary information of the schedule.
  • the Employee Schedule Record contains one record per scheduled employee with that employee's name, skill level and the start-time and stop-time for that employee's shift.
  • the Task Schedule Record contains the task information for each employee, and holds, among other things, the schedule date, the employee skill level, the name ofthe task, the task's start-time, the task's duration, the skill level required by the task, and the positive and negative tolerances ofthe task.
  • the Assign Name Phase assigns worker names by the week or days ofthe week.
  • the information is accessed from the Schedule Header Record, the Employee Schedule Record, and the Task
  • the Employee Master File contains basic information about the employee such as the employee's name and address as well as the employee's pay rate, and the address of the location where the employee works.
  • Availability File contains information for each employee by day ofthe week. It contains the skill level and priority of the employee, and the availability by hours ofthe employee.
  • a preferred embodiment in accordance with the invention initially assigns employee names to the day with the least total employee availability, followed by the next most restrictive day and so on. Within a given day, employees names are assigned by skill level. Within a given skill level, the available employees on that day that can perform the skill level will be sorted by their priority and the percentage of their minimum or maximum hours which have been already scheduled. Once all employees of equal skill and priority have reached their minimum requested hours for the week, the employees are sorted by such preferences as the percentage of requested maximum hours for a week. The State File is retrieved to ensure that no minor is assigned to a shift in violation of any applicable labor regulations.
  • a Scheduler Chart for a given day of the week, designating tasks by one-letter codes is utilized in accordance with a preferred embodiment.
  • the chart including the letter codes, is displayed and printed out on a printer or plotter to provide an indication of the tasks and manpower requirements, for example on fifteen minute intervals, throughout a given day across the top ofthe chart, there appears the business hours ofthe day along the abscissa axis, with quarter-hour intervals inte ⁇ osed between one-hour time lines.
  • the chart utilizes a value which constitutes a projected total business demand distributed by hour, and additionally illustrates on the right border the time duration ofthe various skill level requirements for the tasks involved that day.
  • Selected time intervals may also include several tasks with assigned employees performing the letter-coded tasks for designated intervals between the scheduled start and stop times.
  • the system includes a central processing unit which is connected to control the display device in response to inputs supplied to the microprocessor via the user's manipulation ofthe keyboard, or via other inputs supplied through a conventional network interface (e.g., modem, bar-code readers, standard network bus, and the like) as illustrated in Figure 1.
  • the microprocessor accesses memory which contains information that is supplied via the keyboard or the network (e.g., Internet or other network connection), or is transferred thereto in conventional manner from storage medium or working memory.
  • the memory contains instructions for executing the routines on information that is stored in the several fields according to the present invention previously described.
  • the memory also includes main menu functions and buffer storage or interactive display control for synchronously displaying lines of data bits on display device in conventional manner.
  • Permanent records and periodic reports may be plotted or printed out under control of a processor.
  • several files of information in data base are gathered and stored regarding applicable labor regulations, employee information, task definitions, task relations, and the like, as previously described, and these files are accessed and modified under control ofthe processor in response to the scheduling routines such as the initialization, create preliminary schedule, optimization, assign names, and the like, as previously described for controlling the display on display device of a chart ofthe tasks and required manpower at prescribed time periods throughout the day.
  • Figure 2B summarizes how these different strands of thought have evolved, in each case resulting in greater impact on the business as they evolved to the next stage.
  • Figure 2B illustrates the various stages of change management and the impact made on business in accordance with a preferred embodiment. Each ofthe stages illustrated in the Figure are elaborated below in accordance with a preferred embodiment.
  • Change management began as a professional field with two primary emphases: one having to do with traditional human resources work, and another with educational and training endeavors. Both emphases were fairly straightforward, because companies generally had both a human resources department and a training department.
  • Stage 2 Support for Strategic and Technological Change.
  • the second stage of change management growth began when both HR and training consulting began to have an impact beyond the specialized departments and moved closer to the boardroom on the one hand, and to the IT shop on the other.
  • strategic human resources management began to address in a consistent way the challenges of increasing competition, scarcity of resources, and a professional, highly-educated workforce that soon came to be known as "knowledge workers.”
  • Stage 4 A Comprehensive Framework for Human Performance.
  • Today we are on the brink of a new way of linking va ⁇ ous techniques and research into a comprehensive understanding of human performance within organizations
  • a field of endeavor begins to arrange that experience, codify it, and b ⁇ ng to the field a degree of ⁇ gor, consistency, and predictability
  • This framework can not only optimize the performance of an organization's workforce, but also identify where new forms of value can be created within the human dimension ofthe company
  • Rummler and Brache write "The anatomy ofthe human body includes a skeletal system, a muscular system, and a central nervous system. Since all of these systems are critical and interdependent, a failure in one subsystem affects the ability ofthe body to perform effectively.” Thus, just as an understanding of human anatomy is required for a physician to diagnose and treat ailments, so an understanding ofthe entire system of human performance is necessary for an executive to diagnose a company and make it fully healthy.
  • the environment represents a set of influences over which the company generally does not have direct control, but which affects the company and, ultimately, its people. These influences may be economic, regulatory, social, technological, or physical. • The strategy ofthe company, which includes the co ⁇ orate and business unit strategy, as well as the operational strategy.
  • FIG. 3 illustrates the Layers ofthe Human Performance System in accordance with a preferred embodiment.
  • Each ofthe components is described in the sections following to assist one of ordinary skill in the art to make and use the invention without undue experimentation.
  • the "sell” has to be made very quickly after the insight. And the sell involves using the picture of the human performance system to create a framework of interventions that links investments in human performance to more optimal performance of work, and thus better alignment with the strategic direction of a company and its overall value. In other words, it's not enough just to say that we can see something the right way.
  • the right kind of vision or mindset is no good if one only has the old tools.
  • Systemic understanding must be accompanied by systemic tools with which to influence the system. If we had such tools, what would they look like? These tools include: • Comprehensive, distilling knowledge and experience both from internal client experience and external expertise.
  • Such a tool is the human performance framework.
  • any field there comes a time when enough experience has been gained to abstract the knowledge and experience gained from practical experience, and then group that knowledge into components of a generic solution.
  • the IT world had delivered enough of these systems that it could find common aspects of solutions, identify these, and then re-use them in building other systems.
  • Solutions then, can be analyzed; repeatable components of those solutions, found across many particular environments, can be identified and abstracted into a "framework.”
  • a framework is an aid to understanding and structuring a problem. It is a generic grouping of reusable components, which then serves as a basis for the detailed design needed to construct a solution for a particular organization.
  • FIG. 4 illustrates the Individual Layer in accordance with a preferred embodiment.
  • Ability and motivation ultimately drive the work of human beings.
  • Knowledge is a mental state that can also be called “understanding”; it's the result of a process of integration - integrating external facts and information, as well as internally synthesized experience and discovery.
  • Knowledge is the "know-how” ability, and skills are the “can-do” ability. Both are required for optimal performance.
  • an ai ⁇ lane pilot in training must read, listen, and acquire a great deal of abstract knowledge about flying. But this alone does not constitute the ability to fly the plane.
  • Know-how and can-do must come together as the student flies the plane.
  • Doing skills are those we most often link to the successful performance of tasks in the workplace. These skills include both “harder,” technical skills and “soft” skills, often described as social skills or professional qualities. Doing skills enable the quality of actions performed in the Operations layer, including hard skills like the productive use of technology or manipulation of information, as well as the softer skills like communication, necessary to deliver process value.
  • Learning skills which include not just learning but also behavior change skills — include experiential learning that is not directly linked to on-the-job doing. Character traits that are not genetically linked to personality but evolve with experience, environmental exposure, and learning also may be considered learning and behavior change skills.
  • a third dimension of ability - creativity is somewhat more controversial, at least from the standpoint of academic study. Not all cognitive scientists would place creativity in the realm of ability. However, there is no doubt that creativity plays a huge role in high-quality performance. The ability to look beyond received notions of how to do something, and to find a way that results in a new, leading-edge solution, is critical to organizational success.
  • Intellectual traits are based on the "wiring” ofthe nerve cells that make up the brain, and include aptitude ("IQ”), “mental quickness,” and inductive reasoning (i.e., moving from parts to the whole).
  • IQ aptitude
  • mental quickness and inductive reasoning (i.e., moving from parts to the whole).
  • the genetic basis of IQ has been clearly and consistently exhibited in research, most popularly using the Stanford-Binet intelligence scale.
  • Physical traits include appearance, metabolism (often perceived as "energy level”), body type, height, strength, dexterity, tonal memory, color blindness and structural visualization.
  • Personality traits are the most recent and the most rigorously studied of traits. Recent research by scientists involved in the Human
  • Genome Experiment (a multi-university research effort decomposing DNA to identify the human characteristics carried by genetic material) has traced four personality traits to genetics: novelty seeking, harm avoidance, reward dependence, and persistence.
  • Motivation is a very complex dimension of human performance, as attested to by the hundreds of definitions of motivation developed over the last fifty years. The discussion of motivation here is intended to cut across many or most of these definitions and, in addition, establish a meaningful way to address the subject.
  • motivation is the willful intention to achieve an outcome or goal.
  • motivation is the willful intention to achieve an outcome or goal.
  • think of motivation as a two-step process: First comes the initial thought. This creates a sort of tension in the status quo of a person, a tension that demands action of some sort. Second, then, that tension is translated into energy, yielding behavior and new levels of performance.
  • Organizations can influence motivation in their people: they can create positive willful intention; they can also create negative intention. Two levels of awareness shift when a new thought is introduced to a person's status quo. Attention focuses the awareness to a local perception.
  • Intention brings about a change in that localization and attaches greater importance to it. Intention is an expression of focus and thought. Intentions that originate inside a person are immediately important and relevant, and are usually processed emotionally. Intentions conceived internally are typically expressed as aspiration, dream, or fantasy.
  • Intention originating from the organization - that is, externally to the individual often takes the form of a vision or message communicated to relevant stakeholders.
  • the individual employee receives the vision and screens it for "relevance.”
  • the intention is typically processed intellectually by a person - although we all know cases where a vision is so inspirational or the leader so charismatic that the person is engaged emotionally.
  • a typical error in organizational motivation, however, is to over-rely on the emotional component. This must be followed up, or augmented, by motivation that engages people intellectually. Emotions are powerful: they can flame up, but they can also flame out.
  • Values are the deeply-held goals, ideals, and principles ofthe individual that typically lead and guide willfulness.
  • a person assesses the "fit" of an organization's intention.
  • the individual filters out those intentions that are relevant, but not deeply desired.
  • an individual's values are supportive ofthe organization's intention, the intention evolves to a deeper level of anticipated commitment — a willfulness to begin the pursuit of that intention.
  • Beliefs also serve as a guide, though in this case they constitute more of an assurance that one's actions occur within a system that has meaning - that life is not fruitless or useless.
  • Norms can be thought of as the collective attitude or behavioral expectations of a group, and are often what we mean when referring to an organizational "culture.” They represent a critical motivational component in many (but not all) jobs and roles, since the degree of external affiliation can be a major driver of team performance. For more solitary, "solo flyer" employees, norms are less likely to play as significant a motivational role as for others with more need or desire for external affiliation and acceptance or approval.
  • activation energy describes the extent to which the social filters of beliefs, values, and norms are internalized so as to drive individual energy to pursue the, now willful, intention.
  • conviction can be indexed by the degree of effort an individual is willing to exert to reach a goal. As conviction energizes the pursuit of productive behavior change on the path toward the now deeply desired intention, the concept of comfort enters the emotional and physical picture.
  • comfort represents the degree of resistance or pain one is willing to tolerate or overcome in order to achieve a goal.
  • resistance There are two forms of resistance that tend to be considered, differing mainly in the degree of discomfort they create. The first is the anxiety resulting from the anticipation of an unknown or frightening future state possibly less comfortable (more painful) than the status quo. The second, even more powerful, form of resistance is the fear in the current moment as an employee faces the immediate anticipation prior to the trial of a new behavior. This immediate and specific emotional reaction of fear is in anticipation of a specific threatening stimulus: for example, investing in a new behavior, practice or study on the path toward new performance.
  • the short-circuit emotion-based deliberation uses a shortcut to the more primitive emotional brain, causing a more dramatic flee or fight response in the individual.
  • This stressful survival response leaves inadequate time for the more intricate and recently evolved thinking brain, to fully deliberate.
  • this emotional energy can be used to constructively engage effort we may consider the tension productive — for example, nervous energy that stimulates thought, effort, and creativity.
  • the brain may seek to protect the employee, enabling rationalization ofthe status quo and denial ofthe relevance or belief in the organization's new intention.
  • the motivation level meets the comfort level in a productive engagement, the individual begins the active learning and experimentation process associated with trying out new behaviors.
  • Confidence is the person's internal model of how well his/her current ability to perform a job or task addresses the new job or task requirements. Confidence is regarded as a largely internal assurance that individual effort expended will yield anticipated outcomes. It is, however, influenceable both (a) by feedback from respected sources and (b) through self-observation and reflection. The bolstering of confidence contributes to comfort or the mitigation of tension or anxiety that typically accompanies change. In turn, this may lead to additional risk-taking, collaboration and curiosity, as learning and change become less risky and less painful processes. As behaviors are successfully pursued and feedback yields additional confidence, learning and achievement derived from challenge and experience may yield satisfaction. Satisfaction is the degree of fulfillment of meaningful needs and desires. It is critical to make this needs/desires distinction, since the satisfaction of more basic needs has only a partial impact on potential performance but are necessary prerequisites for fulfillment of meaningful desires.
  • the organization layer represents the suite of activities - organizational design as well as many other management actions - that most directly influence the ability and motivation of people (see Figure 5).
  • Figure 5 illustrates the organizational framework in accordance with a preferred embodiment. The presumption here is that management can take actions, can be directive, in influencing human performance. And the suite of interventions listed under the organization layer acknowledges - in fact, demands agreement about - the truth that there is no "silver bullet" solution to the problem of optimizing human performance. No piece by itself will accomplish the goal. Everything must be present for an optimal solution.
  • organization structure refers to the suite of activities that involve selecting the workforce competencies needed to enact business strategies, and then designing jobs, roles, and team structures to ensure that those competencies can be present in the workforce.
  • Competency Planning Competencies are the overall skill sets that are required, by the workforce, in order to achieve strategic business objectives and to optimize business performance. Within this subservice, strategic goals ofthe organization are analyzed and monitored to ensure that the proper competencies are built in to the workforce.
  • Job/Role Design Based on the set of competencies identified as critical for aligning the workforce with business strategy, particular jobs and roles are designated that provide the necessary competencies.
  • Resourcing Organization structure ensures that structures are in place to build competencies. Resourcing ensures that a company has the actual people with the potential to spread those competencies throughout the company, and that they are deployed so those competencies are properly directed. Resourcing involves two primary subcomponents: ⁇ Recruiting/selection ⁇ Deployment/redeployment
  • the recruiting and selection subcomponent includes all activities related to the hiring of people from the outside. In recruiting/selection, people are matched to general categories of jobs and roles in the organization.
  • Deployment/redeployment In deployment/redeployment (also called “staffing") all members of the workforce are deployed to particular jobs, and/or shifted to new responsibilities.
  • the organization's pu ⁇ ose plays a critical role in the deployment process. Redefinition ofthe company's business domain has strategic implications for its human resource management system. Thus, serious thought must be given to defining the qualifications that are mandatory for managing the new organization. Specification ofthe qualifications, identification of persons possessing those skills, and moving people into jobs should be guided by the organization's strategic plans and its overall staffing strategy.
  • Performance management is focused on a set of consequences for different kinds of performance. It also focuses on altering, encouraging, and directing performance through either positive or negative reinforcement. This is also where career management for individuals takes place. The alignment of individual performance with a company's strategic objectives is found here more than in any other component of the organization layer.
  • Evaluation/Appraisal is a formal process to provide workers with an assessment of job performance relative to targets.
  • evaluation is used here because ideally, this component includes not only judgment (appraisal), but also a set of actions designed to remediate, counsel, and direct people toward improved performance.
  • evaluation can be used to promote a variety of goals. For instance, evaluation systems could drive employees toward increased productivity, to identify fast-trackers, and identify poor work behavior, while at the same time providing information to other human resource systems by systematically compiling data.
  • HR information systems The increased popularity of computer-based HR information systems is a case in point. Many companies are concerned with building a link between the evaluation (or performance appraisal systems) and other human resource systems such as recruitment, compensation, career planning, and training.
  • Recognition This refers to a set of consequences that are primarily non-monetary. These may be formal programs (employee recognition programs) or informal actions such as highlighting certain people during meetings, in official communications, or even simply in conversation.
  • Promotion/ Advancement This represents consequences which, though linked to monetary reward, nevertheless link in to issues of status within an organization and to new challenges necessary for employees to feel they are growing professionally. Promotion refers to official moves up the "co ⁇ orate ladder.” However, new kinds of job assignments, new challenges, also represent a form of advancement that is vital to the larger pu ⁇ oses of performance reinforcement.
  • career management takes the "long view” for workers, ensuring that advancement takes place within some larger plan, both for the individual and the company's needed competencies.
  • Termination This, finally, represents the ultimate form of negative reinforcement (short of ritual execution) within an organization.
  • This aspect of organizational design is often overlooked, yet the manner in which an organization turns employees into non-employees has profound effects on current workers.
  • termination of employees for poor performance often has the effect of assuring other workers that the organization is aware of employees who are not performing well, particularly when this poor perfoimance puts additional pressure on co-workers to pick up the slack.
  • Culture are one feature of organizations that contributes to their overall culture or climate. Depending upon how reward systems are developed, administered, and managed, they can cause the culture of an organization to vary quite widely. For example, they can influence the degree to which it is seen as a human resource-oriented culture, an entrepreneurial culture, an innovative culture, a competence-based culture, and a culture of participation.
  • Reinforce and Define Structure the reward system of an organization can reinforce and define the organization's structure. Often this feature of reward systems is not fully considered in the design of reward systems. As a result, their impact on the structure of an organization is unintentional. This does not mean, however, that the impact ofthe reward system on structure is usually minimal. Indeed, it can help define the status hierarchy, the degree to which people in technical positions can influence people in line management positions, and it can strongly influence the kind of decision structure that exists.
  • Cost reward systems are often a significant cost factor. Indeed, the pay system alone may represent over 50% ofthe organization's operating cost. Thus, it is important in strategically designing the reward system to focus on how high these costs should be and how they will vary as a function ofthe organization's ability to pay.
  • the learning component ofthe organization layer is focused on the knowledge and skills necessary for individuals and teams to perform. It is comprised of two primary subcomponents in accordance with a preferred embodiment: • Training
  • training generally refers to ways in which skills are acquired.
  • Knowledge sharing refers, obviously, to the manner in which new knowledge is acquired.
  • Training refers to the formal training content, instructional design, and opportunities for individuals and teams to learn efficiently and effectively. This subcomponent prepares workers for performing new tasks at "day one" proficiency levels, or for performing the same tasks at higher proficiency levels. Instructional and delivery methods represented here range widely, and will usually be used in combination with many techniques.
  • Training is, in turn, comprised of ormal and informal components.
  • Formal training consists of the following main elements:
  • Curricula identifies the formal learning opportunities that should be provided to the organization. Usually these learning opportunities consist of courses, seminars, or conferences that use various instructional methods and media. Within the curricula component, these individual learning opportunities are organized into curriculum paths that individuals should follow. These paths ensure that individuals have learned the more basic material, often reinforced through actual job performance, before proceeding to more advanced learning opportunities.
  • Curriculum plans include course descriptions, dependencies between courses (e.g., prerequisites), performance objectives, and audience descriptions.
  • Courses is the subcomponent that identifies the specific delivery method(s) for a given curriculum path, and provides the instructional content, organized in a way that promotes learning and delivers individuals who can achieve "day one" performance targets.
  • JIT Just-in-Time Learning
  • JIT Just-in-Time
  • JIT Learning content is often organized by task; it is also highly focused, because the task performance requirements may preclude a thorough exploration ofthe topic. (Consider, for example, a customer service representative for an airline on the phone with an irate passenger, and the CSR's limited ability to absorb new information in this situation).
  • Informal Learning provides opportunities for improving skills in situations that cannot or do not need to be accounted for in advance. Although less structured and more ad hoc, they often are the most salient and productive learning experiences, because they arise at the point and time of need. Informal Learning includes the following elements in accordance with a preferred embodiment:
  • Incidental Learning arises from workers' everyday experiences as they perform their jobs or simply as they perceive their world in a reflective manner. Information gained this way is often not captured in formal learning programs, or even other informal learning settings, but is invaluable in improving an individual's performance, and an organization's understanding of its competitive environment. "Learning how to learn” (more formally, "meta-cognition”) is fundamental to effective incidental learning because it helps workers recognize and make sense of information, and relate it to their existing knowledge. Incidental learning can increase the rate of overall organizational learning significantly.
  • Self-Directed Learning occurs when workers themselves develop new skills, by asking for coaching, or by reading trade journals or attending seminars and conferences. Self-Directed Learning is often influenced by others within an organization. For example, a coach might suggest a direction for an individual's self-development.
  • Coaching is usually inte ⁇ ersonal, where one person provides solicited or unsolicited advice to an individual on any topic related to job performance, including career counseling. This coaching can be formalized into mentoring relationships or can simply be an informal discussion between colleagues on a topic. Coaching provides salient information at the point of need (either the worker has asked for advice, or the coach has identified a "teachable moment") in the right context. Effective coaches are respected for their expertise, concern for others, and their ability to send difficult messages regarding perfoimance in a constructive manner. Loosely speaking, coaching can also be provided through technology and tools, found in the work layer ofthe human performance framework.
  • Knowledge support provides useful information in varying degrees of "packaging" and types of media, and also provides ready access to that content. This content is provided by individuals and groups within the organization, or entities from outside ofthe organization. Knowledge support aids the process of converting tacit knowledge held by a few individuals into explicit knowledge that can be shared throughout the organization.
  • Knowledge support is comprised of three primary subcomponents: content creation, content evaluation, and content indexing.
  • Content can take many forms: presentations, white papers, case studies, lessons learned, or responses to a specific question or situation.
  • Media ranges from simple text and graphics to sophisticated animation, audio, and video.
  • Creation is performed either by an individual or group for a specific business pu ⁇ ose (e.g., a sales proposal to a customer), then "repu ⁇ osed" as share-able, explicit knowledge. This act of creation makes the content explicit. Organizations can sometimes accelerate this process through formal projects or groups to package knowledge.
  • Evaluation verifies that the information supplied is high-quality and relevant to the organization's needs. This quality assessment can be done by expert reviewers or, in a more emergent fashion, through assessments by users of this information, or through determining the frequency of use of a piece of knowledge (the more frequently an item is used, the more valuable it presumably is to other individuals).
  • Indexing organizes and categorizes the information in ways that other people in the organization will find useful. To be fully effective, indexing goes beyond mere keyword matching; it needs to understand the semantics ofthe information. Access and dissemination ofthe content is obviously required also. This is found in the tools and technology components of the work execution layer.
  • Perfoimance Support provides the day-to-day tools and access to relevant knowledge that helps workers accomplish tasks. This support is immediate and very fine-grained; ideally it is perfectly relevant to the task at hand. A key design decision is: who will initiate support under which circumstances, the system or the worker? The more proactive the system is in supplying support, the smarter it needs to be, because the chance of unnecessarily interfering with the work increases with proactiveness.
  • Advice provides the relevant information "nuggets" and determines the circumstances (situations, user actions, errors, degree of criticality) under which the advice would be offered. Indexing may be necessary to organize and relate information appropriately. This information might be in the form of stories, but can also be textual or an animation to illustrate a principle. In theory, a well-integrated, well-indexed knowledge management service could provide the advice. However, most knowledge management processes (other than case-based reasoning systems used in product support settings) are not rigorous enough (and probably shouldn't be) to support advice creation for a mission-critical business process.
  • Access Paths provide the workers with the ability to acquire relevant information for their specific task at the point and time of need. In a well-designed performance support environment, this access would appear to workers to simply be a natural part of their work. Access paths are provided to:
  • Leadership is a difficult concept to manage, especially given the plethora of theories about it in management literature. Sometimes leadership is spoken of in a way that makes it difficult to assign to any one person or set of persons. That is, "co ⁇ orate leadership” may mean simply being accountable for a company's performance — setting goals and perfoimance targets to be achieved and communicating the strategies to be followed.
  • leadership within the human perfoimance framework refers to leadership shown by identifiable individuals within the organization. Leadership is necessary at all levels of an organization, but particularly for those individuals identified as having a high impact on the workforce or on a team. Leadership involves people interacting on an individual basis, acting as coach and mentor as well as supervisor, to demonstrate to all employees that their contribution to the work ofthe group is valued. It involves helping each individual and team to achieve its full potential and appropriate recognition of those achievements. Skillful leadership of people is a key component to creating a high perfoimance work group. Leadership is comprised of four subcomponents in accordance with a preferred embodiment:
  • Stewardship refers to a general sense of leadership that provides assurance to people that there is someone strong at the helm. This is a combination of charisma, communication skills, intelligence, caring, and probably many other characteristics. Yet this kind of leadership can be encouraged within individuals, and it can be designed into the human performance system of an organization. Stewardship is demonstrated at levels throughout the organization, not only at the highest level, but also in teams.
  • Sponsorship is that unique aspect of leadership which is directed toward a particular change initiative. Whereas leadership is active in all directions and at all times, sponsorship is focused on active encouragement and facilitation of a program of change.
  • Sponsors are responsible for creating an environment that enables change to be made on time and within budget. Although some thinkers in this area maintain distinctions between sponsors (those who have the power to sanction or legitimize change), agents (those individuals or groups who actually perform the work of making change happen), and advocates (those who support the change, but lack the power either to sanction the change or to make it happen), sponsorship within the human perfoimance framework includes all these roles.
  • Mentoring refers to close professional relationships between more experienced employees and less experienced employees in organizations. Mentoring implies a long-term interest in the professional development of someone. Developing mentoring capabilities within a company involves going well beyond establishing mentoring "programs,” because mentoring cannot be established by decree. It involves the serendipity of relationships established by accident as much as by design. Coaching refers to the type of leadership that directs employees very close to the point of perfoimance. It presumes an active role in observing and providing short periods of feedback and direction to an employee.
  • Efficient and effective communication is vital to human performance, not only during times of rapid change, but at all times. Communication ensures that employees have a sense of direction, and of connection to the organization and other employees. Communication contains important links to other components in the architecture framework, especially to Leadership and Culture.
  • Communication is comprised o ⁇ planned communications and ad hoc communications.
  • Planned communications refer to the "official" communications of a company, with the intent to provide a consistent set of messages to all employees. Although these official communications are generally thought of as one-way, in fact, effective communication programs are only possible where there is a two-way flow and where the audience has the opportunity to question in order to develop understanding.
  • Key messages are the themes that will resonate through all communications, both to a team and to the entire organization. Every communication must have a pu ⁇ ose: to bring the audience to a specific level of awareness or understanding about the project or to announce the reaching of a major project milestone. Organizations should not send out communications when there is no specific pu ⁇ ose. Key messages should be the primary driver of the communication plan. Each key message can address a different audience (stakeholder) or address several audiences at different times. Each message communicated must be customized for its target audience. This will ensure that the information is relevant. 2. Vehicle. Vehicles, or communication channels, are the methods used to deliver messages to stakeholders. The vehicles used can be as informal as a telephone conversation or as formal as a prepared presentation or a newsletter. The vehicles used will differ depending on the stakeholder group and the message being delivered.
  • Feedback must be generated and evaluated in order to monitor, check, and improve communications. In order to check that the key messages are reaching their target audiences as well as to provide a means of "self tuning" communications to meet the needs of audiences, feedback should be regularly sought from both audiences and communicators. Achieving such a system may include the development of questionnaires and surveys as well as management debriefs after communications events.
  • Ad hoc communications refer to informal communications among employees at all levels of an organization. Here we find a strong link to the cultural aspects of the architecture framework. A culture of openness can only be built by encouraging communication links among workers. Within ad hoc communications, the primary work for management is establishing the vehicle by which such communications may take place easily.
  • Sustained high levels of performance depend on people supported by a culture that is cohesive, that defines explicit values and encourages work in accordance with those values. This is an area within the framework which many people are apt to treat as "more art than science," and yet this should not blind us to the fact there are proven techniques for building a high-performing, highly- motivated culture. Many ofthe components of the human performance framework affect the culture and values ofthe organization. A positive work experience is affected by effective leadership, workforce planning, and well-targeted training and development programs. Also important is demonstrating a genuine concern for performance issues, including appropriate forms of recognition and reward.
  • Values involves both values clarification and values ownership. Organizations often make the mistake of not being explicit about what particular values they wish embodied in their culture. Values clarification involves:
  • Values are of no benefit if they are simply abstractions, or if they remain simply as policy statements. Values ownership ensures that organizations take specific actions to ensure the development of ownership ofthe values at all levels ofthe organization.
  • the operations layer is comprised of the processes performed, the technology and tools that enable that performance, and the physical environment in which the work is performed.
  • the operations layer is comprised, then, of three components (see Figure 6): • Process
  • FIG. 5 illustrates the Operations Layer in accordance with a preferred embodiment. Each of the components of this critical layer are discussed below in accordance with a preferred embodiment.
  • Physical setting includes:
  • Layout involves different concerns, depending on whether the focus is on a group or team, or on an individual.
  • Group design must be cognizant of a physical workspace that encourages collaboration when it is appropriate. It also must take into account a design of space that encourages informal meetings, where innovation often takes place. Individual design is where ergonomical considerations are highlighted - things such as appropriate seating, proper height of desks and terminals, and so forth.
  • the strategy layer concerns the basic strategic direction for the company. Strategic direction rigorously analyzes the company's or business unit's external environment, market dynamics, and organization. In this layer, the company makes a clear statement about how it intends to serve its markets to achieve competitive advantage and maximize shareholder value. Work in this layer occurs when (1) the strategic direction needs clarifying for some internal reason; and (2) when occurrences in the company's environment (regulation, competitors, economy) dictate strategic change. Our discussion in this section is intended only to sketch the basic outlines of strategy, certainly not to treat the subject in detail.
  • Figure 7 illustrates the various components ofthe strategy layer in accordance with a preferred embodiment.
  • the strategy layer is comprised of three components that are detailed below.
  • a co ⁇ orate strategy provides the company with a common direction that focuses its collective effort on creating sustainable value in the industries and markets in which it chooses to compete.
  • the co ⁇ orate strategy differs from a business unit strategy in that it: focuses the collective effort on its business portfolio; defines how it will structure and govern itself to create and manage synergy across the co ⁇ orate center and its business units; and manages relationships with external stakeholder groups.
  • the business unit strategy clarifies what the business unit aspires to be, what business it is in, what goals it is seeking to achieve, what value proposition it will deliver to customers, which capabilities are required for success, how to distinguish its portfolio of products and services from its competitors, and how it will contribute to achieving the company's vision and objectives.
  • the business unit strategy differs from the co ⁇ orate strategy in that it focuses on how to be successful in a particular market, leverages effort within the business unit, and seeks a distinctive marketplace position for its produce/service portfolio.
  • Figure 8 illustrates the various components making up the Environment layer in accordance with a preferred embodiment.
  • the environmental layer is made up of a number of external influences on the company and its people. These are things over which the company has no direct control. So, although we cannot design "interventions" for these occurrences, they nevertheless must be included in the human performance framework as primary influences.
  • Figure 9 illustrates each ofthe components of a Human Perfoimance Framework in accordance with a preferred embodiment. This is a way of looking at human performance, and a way of communicating its fullness in an integrated manner. As the framework is used, it becomes a tool by which to guide the development of solutions to influence human performance for our clients.
  • the framework in accordance with a preferred embodiment includes:
  • the individual layer ofthe framework is where human performance arises; they are where our interventions are felt most strongly. All intentional interventions to influence human performance apply either directly to the individual and groups of individuals, or indirectly through the work layer (process, technology, physical setting).
  • the operations layer and the strategy layer identify things that influence human performance, but they are not ultimately designed by a human performance architect (that is, put another way, they are not directly owned by the Change Management competency). In those layers, a human performance architect provides input to the definition of other architectures.
  • the organization layer identifies the elements that are directly implemented by the human performance architect (that is, they are within the "people” element ofthe Business Integration model).

Abstract

A system, method and article of manufacture are provided for organizing resources for effective utilization in task completion. First, a list of tasks requiring completion is generated after which a list of employees is correlated to the list of tasks requiring completion. Next, a list of resources are associated with the list of tasks requiring completion. Resource information is specified including which of the resources are to be used for facilitating the completion of the tasks by the employees. Also specified is employee information including compensation and scheduling conditions based on labor regulations. Next, a schedule is generated based on the resource information and the employee information in order to complete the tasks. The schedule is then stored in a storage.

Description

RESOURCE-BASED TASK SCHEDULING SYSTEM AND METHOD
FIELD OF THE INVENTION
The present invention relates to employee management systems and more particularly to a human performance framework for organizing information in preparation of generating a schedule.
BACKGROUND OF THE INVENTION
Managing multi-unit retail locations that are geographically dispersed is a challenging task, and a key to successful operation of multi-unit retailing or chain franchising is consistency. Training location managers to be consistent in applying company standards is subject to each location manager's interpretation ofthe company standards. Complex federal, state and local labor regulations require additional training ofthe location manager to assure compliance, for example, with state-required minimum and maximum shift lengths, required paid and unpaid breaks, and labor regulations which place additional restrictions on employees who are minors. High rates of personnel turnover in this segment of the market further complicates this task. If this task could be successfully taught, the expense of constantly retraining replacement personnel would be high.
The job of creating staff schedules is complex, and involves such variables as the definitions of each task, the percentage of an employee's time that it takes to do a particular task, the day ofthe week, month, or year in which the task should be performed, the skill levels of employees available to perform each task, resource constraints such as equipment capacity at the location that facilitate or prevent a task from being scheduled, relationships between tasks that affect their placement and movement on the schedule, calculations for each task for a task's length, start time, positive and negative tolerances in completing a task, and employee availability by day ofthe week, hours ofthe day, their skill level and priority or seniority levels or categories. Each remote location has unique differences in layout, sales patterns, sales volume, and product mix. These differences are further complicated by the uniqueness of each day ofthe week and seasonally. Such variables must be combined and examined to create a unique optimum staff schedule for each remote location. Creating an optimum schedule is a job which does not lend itself to be taught well to the typically minimum wage employee of a multi-unit retail organization. The complexity of creating an optimized staff schedule approaches the complexity of linear programming and the solving of multiple simultaneous equations. These are processes that the human mind is not well suited to perform.
As a result organizations resort to a substandard and labor-intensive manual method of creating staff schedules and attempting to deal effectively with human resources that are typically not optimized for the tasks.
SUMMARY OF THE INVENTION
A system and method are provided to organize resources for effective utilization in task completion. First, a list of tasks requiring completion is generated after which a list of employees is correlated to the list of tasks requiring completion. Next, a list of resources are associated with the list of tasks requiring completion. Resource information is specified including which of the resources are to be used for facilitating the completion ofthe tasks by the employees. Also specified is employee information including compensation and scheduling conditions based on labor regulations. Next, a schedule is generated based on the resource information and the employee information in order to complete the tasks. The schedule is then stored in a storage.
In one embodiment, the task list may indicate when each task requires completion. Further, the employee list may indicate a skill level and a seniority level of each ofthe employees. An availability ofthe employees may be specified by days ofthe week and hours ofthe day.
In yet another embodiment, the employee information may include a minimum and a maximum time the employees may work before the labor regulations require a break, a maximum time the employees may work before being paid overtime per the labor regulations, and/or minimum and maximum shift lengths as required by the labor regulations. As an option, the schedule may be generated based on policies of a business entity.
DESCRIPTION OF THE DRAWINGS
The foregoing and other objects, aspects and advantages are better understood from the following detailed description of a preferred embodiment of the invention with reference to the drawings, in which:
Figure 1 is a block diagram of a representative hardware environment in accordance with a preferred embodiment;
Figure 2 A is a flowchart illustrating one embodiment ofthe present invention which organizes resources for effective utilization in task completion;
Figure 2B is a block diagram ofthe registry process in accordance with a preferred embodiment;
Figure 3 illustrates examples of authentication methods in accordance with a preferred embodiment;
Figure 4 illustrates the components ofthe system network architecture in accordance with a preferred embodiment;
Figure 5 illustrates an application security architecture in accordance with a preferred embodiment;
Figure 6 is a block diagram ofthe major information flows that are described in the following sections in accordance with a preferred embodiment;
Figure 7 is a block diagram of certificate processing for a new client registration in accordance with a preferred embodiment;
Figure 8 illustrates a member feed in accordance with a preferred embodiment;
Figure 9 is a functional block system architecture diagram flowchart in accordance with a preferred embodiment; and Figures 10 is a flow chart ofthe processing in accordance with a preferred embodiment.
DETAILED DESCRIPTION
A preferred embodiment of a system in accordance with the present invention is preferably practiced in the context of a personal computer such as an IBM compatible personal computer,
Apple Macintosh computer or UNIX based workstation. A representative hardware environment is depicted in Figure 1, which illustrates a typical hardware configuration of a workstation in accordance with a preferred embodiment having a central processing unit 110, such as a microprocessor, and a number of other units interconnected via a system bus 112. The workstation shown in Figure 1 includes a Random Access Memory (RAM) 114, Read Only
Memory (ROM) 116, an I/O adapter 118 for connecting peripheral devices such as disk storage units 120 to the bus 112, a user interface adapter 122 for connecting a keyboard 124, a mouse 126, a speaker 128, a microphone 132, and/or other user interface devices such as a touch screen (not shown) to the bus 112, communication adapter 134 for connecting the workstation to a communication network (e.g., a data processing network) and a display adapter 136 for connecting the bus 112 to a display device 138. The workstation typically has resident thereon an operating system such as the Microsoft Windows NT or Windows/95 Operating System (OS), the IBM OS/2 operating system, the MAC OS, or UNIX operating system. Those skilled in the art will appreciate that the present invention may also be implemented on platforms and operating systems other than those mentioned.
A preferred embodiment is written using JAVA, C, and the C++ language and utilizes object oriented programming methodology. Object oriented programming (OOP) has become increasingly used to develop complex applications. As OOP moves toward the mainstream of software design and development, various software solutions require adaptation to make use of the benefits of OOP. A need exists for these principles of OOP to be applied to a messaging interface of an electronic messaging system such that a set of OOP classes and objects for the messaging interface can be provided. OOP is a process of developing computer software using objects, including the steps of analyzing the problem, designing the system, and constructing the program. An object is a software package that contains both data and a collection of related structures and procedures. Since it contains both data and a collection of structures and procedures, it can be visualized as a self- sufficient component that does not require other additional structures, procedures or data to perform its specific task. OOP, therefore, views a computer program as a collection of largely autonomous components, called objects, each of which is responsible for a specific task. This concept of packaging data, structures, and procedures together in one component or module is called encapsulation.
In general, OOP components are reusable software modules which present an interface that conforms to an object model and which are accessed at run-time through a component integration architecture. A component integration architecture is a set of architecture mechanisms which allow software modules in different process spaces to utilize each others capabilities or functions. This is generally done by assuming a common component object model on which to build the architecture. It is worthwhile to differentiate between an object and a class of objects at this point. An object is a single instance ofthe class of objects, which is often just called a class. A class of objects can be viewed as a blueprint, from which many objects can be formed.
OOP allows the programmer to create an object that is a part of another object. For example, the object representing a piston engine is said to have a composition-relationship with the object representing a piston. In reality, a piston engine comprises a piston, valves and many other components; the fact that a piston is an element of a piston engine can be logically and semantically represented in OOP by two objects.
OOP also allows creation of an object that "depends from" another object. If there are two objects, one representing a piston engine and the other representing a piston engine wherein the piston is made of ceramic, then the relationship between the two objects is not that of composition. A ceramic piston engine does not make up a piston engine. Rather it is merely one kind of piston engine that has one more limitation than the piston engine; its piston is made of ceramic. In this case, the object representing the ceramic piston engine is called a derived object, and it inherits all ofthe aspects of the object representing the piston engine and adds further limitation or detail to it. The object representing the ceramic piston engine "depends from" the object representing the piston engine. The relationship between these objects is called inheritance.
When the object or class representing the ceramic piston engine inherits all ofthe aspects ofthe objects representing the piston engine, it inherits the thermal characteristics of a standard piston defined in the piston engine class. However, the ceramic piston engine object overrides these ceramic specific thermal characteristics, which are typically different from those associated with a metal piston. It skips over the original and uses new functions related to ceramic pistons. Different kinds of piston engines have different characteristics, but may have the same underlying functions associated with it (e.g., how many pistons in the engine, ignition sequences, lubrication, etc.). To access each of these functions in any piston engine object, a programmer would call the same functions with the same names, but each type of piston engine may have different/overriding implementations of functions behind the same name. This ability to hide different implementations of a function behind the same name is called polymorphism and it greatly simplifies communication among objects.
With the concepts of composition-relationship, encapsulation, inheritance and polymorphism, an object can represent just about anything in the real world. In fact, our logical perception ofthe reality is the only limit on determining the kinds of things that can become objects in object- oriented software. Some typical categories are as follows:
• Objects can represent physical objects, such as automobiles in a traffic-flow simulation, electrical components in a circuit-design program, countries in an economics model, or aircraft in an air-traffic-control system.
• Objects can represent elements of the computer-user environment such as windows, menus or graphics objects.
• An object can represent an inventory, such as a personnel file or a table of the latitudes and longitudes of cities.
• An object can represent user-defined data types such as time, angles, and complex numbers, or points on the plane.
With this enormous capability of an object to represent just about any logically separable matters, OOP allows the software developer to design and implement a computer program that is a model of some aspects of reality, whether that reality is a physical entity, a process, a system, or a composition of matter. Since the object can represent anything, the software developer can create an object which can be used as a component in a larger software project in the future.
If 90% of a new OOP software program consists of proven, existing components made from preexisting reusable objects, then only the remaining 10% ofthe new software project has to be written and tested from scratch. Since 90% already came from an inventory of extensively tested reusable objects, the potential domain from which an error could originate is 10% ofthe program. As a result, OOP enables software developers to build objects out of other, previously built objects.
This process closely resembles complex machinery being built out of assemblies and sub- assemblies. OOP technology, therefore, makes software engineering more like hardware engineering in that software is built from existing components, which are available to the developer as objects. All this adds up to an improved quality ofthe software as well as an increased speed of its development.
Programming languages are beginning to fully support the OOP principles, such as encapsulation, inheritance, polymoφhism, and composition-relationship. With the advent ofthe C++ language, many commercial software developers have embraced OOP. C++ is an OOP language that offers a fast, machine-executable code. Furthermore, C++ is suitable for both commercial-application and systems-programming projects. For now, C++ appears to be the most popular choice among many OOP programmers, but there is a host of other OOP languages, such as Smalltalk, Common Lisp Object System (CLOS), and Eiffel. Additionally, OOP capabilities are being added to more traditional popular computer programming languages such as Pascal.
The benefits of object classes can be summarized, as follows:
• Objects and their corresponding classes break down complex programming problems into many smaller, simpler problems. • Encapsulation enforces data abstraction through the organization of data into small, independent objects that can communicate with each other. Encapsulation protects the data in an object from accidental damage, but allows other objects to interact with that data by calling the object's member functions and structures. • Subclassing and inheritance make it possible to extend and modify objects through deriving new kinds of objects from the standard classes available in the system. Thus, new capabilities are created without having to start from scratch.
• Polymoφhism and multiple inheritance make it possible for different programmers to mix and match characteristics of many different classes and create specialized objects that can still work with related objects in predictable ways.
• Class hierarchies and containment hierarchies provide a flexible mechanism for modeling real- world objects and the relationships among them.
• Libraries of reusable classes are useful in many situations, but they also have some limitations. For example:
• Complexity. In a complex system, the class hierarchies for related classes can become extremely confusing, with many dozens or even hundreds of classes.
• Flow of control. A program written with the aid of class libraries is still responsible for the flow of control (i.e., it must control the interactions among all the objects created from a particular library). The programmer has to decide which functions to call at what times for which kinds of objects.
• Duplication of effort. Although class libraries allow programmers to use and reuse many small pieces of code, each programmer puts those pieces together in a different way. Two different programmers can use the same set of class libraries to write two programs that do exactly the same thing but whose internal structure (i.e., design) may be quite different, depending on hundreds of small decisions each programmer makes along the way. Inevitably, similar pieces of code end up doing similar things in slightly different ways and do not work as well together as they should.
Class libraries are very flexible. As programs grow more complex, more programmers are forced to reinvent basic solutions to basic problems over and over again. A relatively new extension of the class library concept is to have a framework of class libraries. This framework is more complex and consists of significant collections of collaborating classes that capture both the small scale patterns and major mechanisms that implement the common requirements and design in a specific application domain. They were first developed to free application programmers from the chores involved in displaying menus, windows, dialog boxes, and other standard user interface elements for personal computers. Frameworks also represent a change in the way programmers think about the interaction between the code they write and code written by others. In the early days of procedural programming, the programmer called libraries provided by the operating system to perform certain tasks, but basically the program executed down the page from start to finish, and the programmer was solely responsible for the flow of control. This was appropriate for printing out paychecks, calculating a mathematical table, or solving other problems with a program that executed in just one way.
The development of graphical user interfaces began to turn this procedural programming arrangement inside out. These interfaces allow the user, rather than program logic, to drive the program and decide when certain actions should be performed. Today, most personal computer software accomplishes this by means of an event loop which monitors the mouse, keyboard, and other sources of external events and calls the appropriate parts of the programmer's code according to actions that the user performs. The programmer no longer determines the order in which events occur. Instead, a program is divided into separate pieces that are called at unpredictable times and in an unpredictable order. By relinquishing control in this way to users, the developer creates a program that is much easier to use. Nevertheless, individual pieces of the program written by the developer still call libraries provided by the operating system to accomplish certain tasks, and the programmer must still determine the flow of control within each piece after it's called by the event loop. Application code still "sits on top of the system.
Even event loop programs require programmers to write a lot of code that should not need to be written separately for every application. The concept of an application framework carries the event loop concept further. Instead of dealing with all the nuts and bolts of constructing basic menus, windows, and dialog boxes and then making these things all work together, programmers using application frameworks start with working application code and basic user interface elements in place. Subsequently, they build from there by replacing some ofthe generic capabilities ofthe framework with the specific capabilities of the intended application.
Application frameworks reduce the total amount of code that a programmer has to write from scratch. However, because the framework is really a generic application that displays windows, supports copy and paste, and so on, the programmer can also relinquish control to a greater degree than event loop programs permit. The framework code takes care of almost all event handling and flow of control, and the programmer's code is called only when the framework needs it (e.g., to create or manipulate a proprietary data structure).
A programmer writing a framework program not only relinquishes control to the user (as is also true for event loop programs), but also relinquishes the detailed flow of control within the program to the framework. This approach allows the creation of more complex systems that work together in interesting ways, as opposed to isolated programs, having custom code, being created over and over again for similar problems.
Thus, as is explained above, a framework basically is a collection of cooperating classes that make up a reusable design solution for a given problem domain. It typically includes objects that provide default behavior (e.g., for menus and windows), and programmers use it by inheriting some of that default behavior and overriding other behavior so that the framework calls application code at the appropriate times.
There are three main differences between frameworks and class libraries:
• Behavior versus protocol. Class libraries are essentially collections of behaviors that you can call when you want those individual behaviors in your program. A framework, on the other hand, provides not only behavior but also the protocol or set of rules that govern the ways in which behaviors can be combined, including rules for what a programmer is supposed to provide versus what the framework provides.
• Call versus override. With a class library, the code the programmer instantiates objects and calls their member functions. It's possible to instantiate and call objects in the same way with a framework (i.e., to treat the framework as a class library), but to take full advantage of a framework's reusable design, a programmer typically writes code that overrides and is called by the framework. The framework manages the flow of control among its objects. Writing a program involves dividing responsibilities among the various pieces of software that are called by the framework rather than specifying how the different pieces should work together. • Implementation versus design. With class libraries, programmers reuse only implementations, whereas with frameworks, they reuse design. A framework embodies the way a family of related programs or pieces of software work. It represents a generic design solution that can be adapted to a variety of specific problems in a given domain. For example, a single framework can embody the way a user interface works, even though two different user interfaces created with the same framework might solve quite different interface problems.
Thus, through the development of frameworks for solutions to various problems and programming tasks, significant reductions in the design and development effort for software can be achieved. A preferred embodiment of the invention utilizes HyperText Markup Language (HTML) to implement documents on the Internet together with a general-puφose secure communication protocol for a transport medium between the client and the Newco. HTTP or other protocols could be readily substituted for HTML without undue experimentation. Information on these products is available in T. Berners-Lee, D. Connoly, "RFC 1866: Hypertext
Markup Language - 2.0" (Nov. 1995); and R. Fielding, H, Frystyk, T. Berners-Lee, J. Gettys and J.C. Mogul, "Hypertext Transfer Protocol - HTTP/1.1 : HTTP Working Group Internet Draft" (May 2, 1996). HTML is a simple data format used to create hypertext documents that are portable from one platform to another. HTML documents are SGML documents with generic semantics that are appropriate for representing information from a wide range of domains.
HTML has been in use by the World-Wide Web global information initiative since 1990. HTML is an application of ISO Standard 8879; 1986 Information Processing Text and Office Systems; Standard Generalized Markup Language (SGML).
To date, Web development tools have been limited in their ability to create dynamic Web applications which span from client to server and interoperate with existing computing resources. Until recently, HTML has been the dominant technology used in development of Web-based solutions. However, HTML has proven to be inadequate in the following areas:
• Poor performance; • Restricted user interface capabilities;
• Can only produce static Web pages;
• Lack of interoperability with existing applications and data; and
• Inability to scale.
Sun Microsystem's Java language solves many ofthe client-side problems by:
• Improving performance on the client side;
• Enabling the creation of dynamic, real-time Web applications; and
• Providing the ability to create a wide variety of user interface components. With Java, developers can create robust User Interface (UI) components. Custom "widgets" (e.g., real-time stock tickers, animated icons, etc.) can be created, and client-side performance is improved. Unlike HTML, Java supports the notion of client-side validation, offloading appropriate processing onto the client for improved performance. Dynamic, real-time Web pages can be created. Using the above-mentioned custom UI components, dynamic Web pages can also be created.
Sun's Java language has emerged as an industry-recognized language for "programming the Internet." Sun defines Java as: "a simple, object-oriented, distributed, inteφreted, robust, secure, architecture-neutral, portable, high-performance, multithreaded, dynamic, buzzword- compliant, general-puφose programming language. Java supports programming for the Internet in the form of platform-independent Java applets." Java applets are small, specialized applications that comply with Sun's Java Application Programming Interface (API) allowing developers to add "interactive content" to Web documents (e.g., simple animations, page adornments, basic games, etc.). Applets execute within a Java-compatible browser (e.g., Netscape Navigator) by copying code from the server to client. From a language standpoint, Java's core feature set is based on C++. Sun's Java literature states that Java is basically, "C++ with extensions from Objective C for more dynamic method resolution."
Another technology that provides similar function to JAVA is provided by Microsoft and ActiveX Technologies, to give developers and Web designers wherewithal to build dynamic content for the Internet and personal computers. ActiveX includes tools for developing animation, 3-D virtual reality, video and other multimedia content. The tools use Internet standards, work on multiple platforms, and are being supported by over 100 companies. The group's building blocks are called ActiveX Controls, small, fast components that enable developers to embed parts of software in hypertext markup language (HTML) pages. ActiveX Controls work with a variety of programming languages including Microsoft Visual C++, Borland Delphi, Microsoft Visual Basic programming system and, in the future, Microsoft's development tool for Java, code named "Jakarta." ActiveX Technologies also includes ActiveX
Server Framework, allowing developers to create server applications. One of ordinary skill in the art readily recognizes that ActiveX could be substituted for JAVA without undue experimentation to practice the invention. Framework-Based Reuse
Within the paradigm of framework-based reuse, a generic framework or architecture is constructed that contains commonalties. In a house analogy, one could purchase a prefabricated house framework consisting of floors, outside walls, bearing walls and a roof. The house can be customized by adding partition walls, wall-paper, woodwork, caφeting etc. Similarly, prefabricated application frameworks are available that contain baseline application structure and functionality. Individual applications are completed by adding specific functionality and customizing the look-and-feel. An example of a commonly used application framework is Microsoft Foundation Classes. It is a framework for developing Windows applications using
C++. MFC supplies the base functionality of a windowing application and the developer completes the application by adding functionality within the framework. Framework-based reuse is best suited for capturing template-like features, for example user interface management, procedural object behaviors, and any other features that may require specialization.
Some benefits of using a framework include:
■ Extensive functionality can be incorporated into a framework. In the house analogy, if I know I am going to build a whole neighborhood of three bedroom ranches, I can build the plumbing, wiring, and partition walls right into the framework, reducing the incremental effort required for each house. If I know I am going to build a large number of very similar applications, they have more commonalties that can be included in the framework rather than built individually.
■ Applications can override the framework-supplied functionality wherever appropriate.
If a house framework came with pre-painted walls, the builder could just paint over them with preferred colors. Similarly, the object oriented principle of inheritance allows an application developer to override the behavior of the framework.
Component-Based Reuse
In the paradigm of component-based reuse, key functionality is encapsulated in a component. The component can then be reused in multiple applications. In the house analogy, components correspond to appliances such as dishwashers, refrigerators, microwaves, etc. Similarly, many application components with pre-packaged functionality are available from a variety of vendors. An example of a popular component is a Data Grid. It is a component that can be integrated into an application to deliver the capability of viewing columnar data in a spreadsheet-like grid. Component-based reuse is best suited for capturing black-box-like features, for example text processing, data manipulation, or any other features that do not require specialization.
Some benefits of using components include:
■ Several applications on the same computer can share a single component. This is not such a good fit with the analogy, but imagine if all the houses in a neighborhood could share the same dishwasher simultaneously. Each home would have to supply its own dishes, detergent, and water, but they could all wash dishes in parallel. In the application component world, this type of sharing is easily accomplished and results in reduced disk and memory requirements.
Components tend to be less platform and tool dependent. A microwave can be used in virtually any house, whether it's framework is steel or wood, and regardless of whether it was customized for building mansions or shacks. You can put a high-end microwave in a low-end house and vice-versa. You can even have multiple different microwaves in your house. Component technologies such as CORBA, COM, and Java Beans make this kind of flexibility commonplace in application development.
The Solution: A Combined Approach
Often, the best answer to achieving reuse is through a combination of framework-based and component-based techniques. A framework-based approach for building human resource management applications is appropriate for developing the user interface, handling user and system events, starting and stopping the application, and other application-specific and delivery platform-specific functions. A component-based approach is appropriate for black-box functionality. That is, functionality that can be used as-is with no specialization required.
Accordingly, the present invention provides an automated staff scheduling system and method in which the variables associated with making an optimum staff schedule can be defined, maintained, and consistently applied. The present invention also provides an automated staff scheduling system and method which can be operated by relatively unskilled operators and which requires little technical knowledge or supervision. Also, the present invention provides an automated staff scheduling system which represents and utilizes a coφoration's staffing policy when creating staff schedules at each remote location. In addition, the present invention provides a method which incoφorates state, federal and local labor regulations (referred to herein as 'state' regulations) and coφorate policy when creating schedules.
Accordingly, the present invention obviates the above mentioned drawbacks ofthe prior art systems and provides a system and method for generating optimum staff schedules that are unique to each of a plurality of remote locations given a plurality of variables. These optimum schedules take into account: the tasks that need to be scheduled and when they should be scheduled; the skill levels of employees that are available to perform the tasks; the resources available to facilitate tasks; the relationships between tasks; calculations to combine unique location values with unique location historical data and coφorate policy to determine the length, start time, and positive and negative slide for a task; employee availability by day ofthe week, and hours ofthe day, skill level, and priority of seniority levels; and applicable 'state' labor regulations. As used herein, positive and negative slide for a task refers to the latitude or tolerance of shifting the end point(s) of a task forward or backward in time. The present system and method thus minimizes the training times required for location managers and brings more expertise to bear on this complex task than is possible with traditional manual scheduling schemes.
Figure 2 A is a flowchart illustrating one embodiment ofthe present invention which organizes resources for effective utilization in task completion. First, in operation 200, a list of tasks requiring completion is generated after which a list of employees is correlated to the list of tasks requiring completion in operation 202. Next, in operation 204, a list of resources are associated with the list of tasks requiring completion. Resource information is specified in operation 206, including which ofthe resources are to be used for facilitating the completion ofthe tasks by the employees. Also specified is employee information including compensation and scheduling conditions based on labor regulations. See operation 208. Next, a schedule is generated in operation 210 based on the resource information and the employee information in order to complete the tasks. The schedule is then stored in a storage in operation 212.
In one embodiment, the task list may indicate when each task requires completion. Further, the employee list may indicate a skill level and a seniority level of each ofthe employees. An availability ofthe employees may be specified by days of the week and hours of the day. In yet another embodiment, the employee information may include a minimum and a maximum time the employees may work before the labor regulations require a break, a maximum time the employees may work before being paid overtime per the labor regulations, and/or minimum and maximum shift lengths as required by the labor regulations. As an option, the schedule may be generated based on policies of a business entity.
In the Initialization Phase, a preferred embodiment in accordance with the invention loads the Scheduler Resource File and the State File from a storage into a computer RAM as shown in Figure 1. The Scheduler Resource File specifies which resources will be used in the schedule and where to find the initial values of these resources. A resource is an item that may be of limited supply, or a reference value or a value that is modified as the other values on the schedule change. The Scheduler Resource File contains the resource type, the name ofthe resource and whether the particular resource is being created or updated. There are three types of resources: Decreasing (the resource is 'consumed' or committed as a task is scheduled, for example, equipment), increasing (the resource is accumulated as a task is scheduled, for example, people), and Constant (the resource must simply exist with no regard to its capacity in order for the task to be scheduled).
The State File defines the minimum and maximum time an employee may work before the applicable labor regulation requires a paid or unpaid break, the maximum hours an employee may work before being paid overtime by day and week, and also defines the minimum and maximum shift lengths as required by applicable labor regulations.
Load Definition of Each Task After the Scheduler Resource File and the Break Logic Shift Length File have been loaded into the RAM, as shown in Figure 1, the Process loads the definition for each task. This routine loads the Task Definition File, the Task Relation File, the Task Resource File and the Calculation File from the Mass Storage Device into the Memory in Figure 1. The Task Definition File defines the tasks that are to be scheduled. It contains information about the day ofthe week on which the task is to be performed, the required skill level for this task, the percentage of an employee's time that it takes to do a particular task (from 1% to 100%), flags for task type and task placement, and the letter code (e.g., P, S, C, D, and the like) to represent the task on the Schedule Bar Chart. The task type flags indicate whether a task can be split, whether a task is a pool task, whether the task skill level can be changed when an employee is moved from this task, and whether a task allows a break to replace this task. Task placement flags change the way a task is placed on the schedule. A preferred embodiment in accordance with the invention utilizes task type flags and task placement flags to improve the performance of each task while optimizing the schedule. It optimizes the schedule by taking into account the duration of a task, each task's start-time, and the positive and negative slide for a task. The Task Relation File defines the relationships between tasks and events. It describes how each task is related to other tasks or events. For example, certain tasks can only be performed after another task has been completed, but before closing time for that location. When defining the relationships between tasks and events, the invention is able to define multiple groups of relationships. During the process of placing a task on a schedule, each group of relations are tested and if no relation is violated in that group, the task is placed on the schedule. Otherwise, the next group of relations are tested.
The Task Resource File defines the resources that are referenced by each task. It contains the resource type and the quantities and capacities of each resource that can restrict or enable a task to be scheduled. Resources are tracked every fifteen minutes on the schedule and are used to determine if an item is available for a particular task. The Task Resource File references resource definitions in one of three files: (i) the Location Master File 10 which contains values unique to each location that are then used to define resources or are used in calculations to define task attributes; (ii) the Daily File 7 which contains values for a specific day which deviate from the normal values and which may cause additional tasks to be scheduled; and (iii) the Sales Curve File 8 which contains values for a particular location's past performance which is stored by time period during the day, by each day of the week and for each season ofthe year.
The Calculation File contains information which allows the invention to access data from various files and perform operations to calculate a task's start-time, the duration ofthe task, the positive and negative slide for the task, and the task manpower percent. The calculations feature uses data from the Calculation File to perform calculations on the values retrieved from the Parameter File, the Location Master File, the Sales Curve File and the Daily Questions and Response File.
Five math functions can be used on or between any of these values, such as addition, subtraction, multiplication, division and remainder. The calculations feature can also perform other calculation sets to achieve a nesting or parenthetical structure of calculations and logic. The Parameter File contains look-up table values and is used to incoφorate various coφorate standards into the scheduling process. The Parameter File also contains the skill level matrix which cross references a given skill level to other skill levels to determine which other skill levels a given skill level is able to perform. One aspect of a preferred embodiment is the flexibility provided to modify the values that affect the way a task is scheduled without altering the program logic. This is possible because the Task Relation File, the Task Resource File, and the Calculation File are located in separate external files.
Create Preliminary Schedule
Each task is processed in the order of its priority, as defined in the Task Definition File. A preferred embodiment in accordance with the invention accesses the Task Definition File and retrieves the skill level required for each task. Next, the invention determines the task's duration, the percentage of an employee s time that it takes to do a particular task (from 17% to 100%), and defines the boundaries of a window which reflects the task's start-time and stop-time, taking into account the positive and negative slide for each task. If these values are not defined in the Task Definition File, then they will be retrieved from either the resource constraints, or from calculations in the Calculation File.
After the priorities ofthe tasks are determined, the process determines the required manpower by skill level. The skill level matrix in the Parameter File is accessed to determine the highest skill level that can perform the task. Using placement logic for each task, it places the task on the schedule within the Task Placement window, which is defined by the schedule's start-time, task duration, and the positive and negative slide for the task. The placement logic has the ability to look at what shifts are currently on the schedule and the current task's placement window, and then find the best existing shift to which to append the current task. Due to the limited computational power available at a remote location, it is not possible to solve multiple simultaneous equations which are typical ofthe linear programming nature of scheduling. Therefore, the representation of calculations and placement logic in a rules fashion serve to incoφorate as much human reasoning and logic into the process to minimize the computational power required to solve the problem in a timely fashion. By combining the task priority and the placement logic, the relative placement of a task on the schedule can be controlled to include coφorate policy and expertise in the ordering of tasks on the schedule. Optimize Schedule by Shifts and Breaks
Once the Preliminary Schedule is created, the process continues in the Schedule Optimization Phase. In an optimal fashion, this phase divides the schedule into different shifts and inserts breaks in the shifts where necessary. First, the invention accesses the Skill Shift File and retrieves the preferred minimum and maximum shift lengths as well as any preferences in order to build minimum, maximum, or average length shifts. The Skill Shift File defines the skills that are expected to be generally available at the particular location and also contains values which define the preferences on the length of a shift by skill level. A shift can be defined in numerous ways such as (i) the duration ofthe shift is only as long as the length ofthe tasks; (ii) fill the shift to the maximum shift length or the minimum shift length; or (iii) must be the first shift or the last shift. The coφorate policies may be incoφorated and optimized by allowing this logic to define the minimum and maximum length of time for a shift in accordance with coφorate policies for each skill level.
The Schedule Optimization Phase is able to remove any sudden increased requirements in a location's demand for a given skill level. This occurs when the created schedule positions persons with the same skill level to perform different tasks at the same time. The process smooths this sudden demand requirement for a given skill level by taking the sudden increased requirement for the given skill level and testing it for the following conditions: (i) if sudden increased demand for a given skill level is less than fifty percent ofthe length ofthe minimum shift of that skill level, and
(ii) the sudden increased demand for a given skill level is more than two-thirds of a minimum shift away from a shift which is eligible to be appended to the shift with the sudden increased demand for a given skill, and (iii) the sudden increased demand for a given skill level is less than the product ofthe total number of available employees with this skill level multiplied by the threshold of the shift which is defined in the Skill Shift File, in order to alter the schedule to accommodate the sudden increased demand for a given skill level. This tends to even the demand for a given skill level on the assumption that an individual can perform at more than 100% of capacity for a short period of time.
A preferred embodiment in accordance with the invention divides the schedule into shifts in the following manner. Starting with the highest skill level, the tasks to be done are allocated to different shifts according to the shift logic defined in the Skill Shift File. As each shift is created, the remaining tasks on the task line for that skill level are evaluated to see if they can be pushed to a lower skill level. The process of first placing the task at the highest skill level and then trying to move the task to a lower skill level when creating shifts ensures that a full shift will be built around a task that requires the higher skill level, but will move other tasks to a lower skill level to minimize costs. After every task by its required skill level has been separated into shifts, the applicable state, federal, local regulations are retrieved from the State Master File, and this information is used to insert breaks into each shift. Using the applicable labor regulations, the optimization process inserts a break between the start-time and stop-time for each shift, where the interrupted tasks will best append to the beginning or end of another shift. Finally, any dangling or isolated tasks whose length does not entirely fill the time between the start-time and stop-time of a shift, are combined with designated filler tasks to completely fill this empty time.
At the completion ofthe Schedule Optimization Phase, different portions ofthe schedule are saved into three different records so that the schedule can be printed or edited at a later time, which records include the Schedule Header Record, the Employee Schedule Record and the Task
Schedule Record. The Schedule Header Record contains one record per schedule and each record contains summary information of the schedule. The Employee Schedule Record contains one record per scheduled employee with that employee's name, skill level and the start-time and stop-time for that employee's shift. The Task Schedule Record contains the task information for each employee, and holds, among other things, the schedule date, the employee skill level, the name ofthe task, the task's start-time, the task's duration, the skill level required by the task, and the positive and negative tolerances ofthe task.
The Assign Name Phase assigns worker names by the week or days ofthe week. The information is accessed from the Schedule Header Record, the Employee Schedule Record, and the Task
Schedule Record. For each ofthe selected days of the week, the total employee availability is determined and the Employee Master File and the Employee Availability File are accessed to obtain information concerning the employees. The Employee Master File contains basic information about the employee such as the employee's name and address as well as the employee's pay rate, and the address of the location where the employee works. The Employee
Availability File contains information for each employee by day ofthe week. It contains the skill level and priority of the employee, and the availability by hours ofthe employee. A preferred embodiment in accordance with the invention initially assigns employee names to the day with the least total employee availability, followed by the next most restrictive day and so on. Within a given day, employees names are assigned by skill level. Within a given skill level, the available employees on that day that can perform the skill level will be sorted by their priority and the percentage of their minimum or maximum hours which have been already scheduled. Once all employees of equal skill and priority have reached their minimum requested hours for the week, the employees are sorted by such preferences as the percentage of requested maximum hours for a week. The State File is retrieved to ensure that no minor is assigned to a shift in violation of any applicable labor regulations.
Employees are assigned to shifts based on this sort order as long as they are available for the entire duration ofthe shift. If no employee possess the skill level or no employee with the skill level is available, a message is displayed to notify the operator. This logic, first processes each skill level in the day, and then processes each selected day in the week. After the assignment of names to shifts is finished, the data is sent back to the Schedule Header Record, the Employee
Schedule Record and the Task Schedule Record. A Scheduler Chart for a given day of the week, designating tasks by one-letter codes is utilized in accordance with a preferred embodiment. The chart, including the letter codes, is displayed and printed out on a printer or plotter to provide an indication of the tasks and manpower requirements, for example on fifteen minute intervals, throughout a given day across the top ofthe chart, there appears the business hours ofthe day along the abscissa axis, with quarter-hour intervals inteφosed between one-hour time lines. The chart utilizes a value which constitutes a projected total business demand distributed by hour, and additionally illustrates on the right border the time duration ofthe various skill level requirements for the tasks involved that day.
On the left border ofthe chart, there is illustrated the skill levels for the tasks throughout the day (before assigning employee names), and these skill-level designations will be replaced by applicable employee names after the Assign Names procedure. Selected time intervals may also include several tasks with assigned employees performing the letter-coded tasks for designated intervals between the scheduled start and stop times.
A computer system for operation according to a preferred embodiment in accordance with the invention at a remote location and including a network communication port for connection to a host computer, for example, via telephone dial-up network. The system includes a central processing unit which is connected to control the display device in response to inputs supplied to the microprocessor via the user's manipulation ofthe keyboard, or via other inputs supplied through a conventional network interface (e.g., modem, bar-code readers, standard network bus, and the like) as illustrated in Figure 1. The microprocessor accesses memory which contains information that is supplied via the keyboard or the network (e.g., Internet or other network connection), or is transferred thereto in conventional manner from storage medium or working memory. The memory contains instructions for executing the routines on information that is stored in the several fields according to the present invention previously described. The memory also includes main menu functions and buffer storage or interactive display control for synchronously displaying lines of data bits on display device in conventional manner.
Permanent records and periodic reports may be plotted or printed out under control of a processor. In accordance with a preferred embodiment, several files of information in data base are gathered and stored regarding applicable labor regulations, employee information, task definitions, task relations, and the like, as previously described, and these files are accessed and modified under control ofthe processor in response to the scheduling routines such as the initialization, create preliminary schedule, optimization, assign names, and the like, as previously described for controlling the display on display device of a chart ofthe tasks and required manpower at prescribed time periods throughout the day.
STAGES OF CHANGE MANAGEMENT'S GROWTH
Change management as a branch of management consulting has been through several stages in its development. As knowledge and experience increased, the next stage did not always make the older ones obsolete, but more often built upon the previous one to expand the work and extend its impact. Figure 2B summarizes how these different strands of thought have evolved, in each case resulting in greater impact on the business as they evolved to the next stage. Figure 2B illustrates the various stages of change management and the impact made on business in accordance with a preferred embodiment. Each ofthe stages illustrated in the Figure are elaborated below in accordance with a preferred embodiment.
Stage 1 : HR and Training
Change management began as a professional field with two primary emphases: one having to do with traditional human resources work, and another with educational and training endeavors. Both emphases were fairly straightforward, because companies generally had both a human resources department and a training department.
Stage 2: Support for Strategic and Technological Change. The second stage of change management growth began when both HR and training consulting began to have an impact beyond the specialized departments and moved closer to the boardroom on the one hand, and to the IT shop on the other. First, the work that came to be known as "strategic human resources management" began to address in a consistent way the challenges of increasing competition, scarcity of resources, and a professional, highly-educated workforce that soon came to be known as "knowledge workers." As Charles Fombrun has written, strategic human resources management was born under the assumption that "the untapped contributions of the human resources in organizations could make the difference between efficiency and inefficiency, death and survival in the marketplace."
Second, training and education consulting began to support other kinds of initiatives, most often related to the implementation of new technology. The transition from mainframe-based computing solutions to client/server especially made this work important. Technology drives new ways of working. People needed help assimilating the technology and learning to work with it, and the systems themselves had to be designed with usability in mind. Change management developed new methods for ensuring that coφorate investment in technology paid off with a workforce that could perform better.
Stage 3: Organizational Journey Management.
Recent times has been marked by a recognition that the pace of marketplace change and the intensity of competition demand new ways to move an entire organization through major change.
Coφorate executives have been growing increasingly frustrated at strategic initiatives that have failed, in large part because the coφorate culture could not or would not embrace the change. In the words of one Fortune 500 executive, "over the past five years we have spent millions working with one ofthe best strategy firms. What they suggest is right, but our share price hasn't moved because we cannot implement these good ideas." A great many models, tools, and techniques have arisen in recent years to organize and manage the many different components of major organizational change. The third stage of change management growth has also been marked by the development of new and more sophisticated approaches to HR and training work. "Human Capital Transformation" initiatives, as we call them, integrate a suite of interventions that continuously align the workforce with a company's evolving business strategy and work environment Our organizational leaning initiatives such as business simulation are now coming to the attention of boardroom executives because ofthe demonstrated ability to these solutions to translate mto increased business value
Stage 4: A Comprehensive Framework for Human Performance. Today we are on the brink of a new way of linking vaπous techniques and research into a comprehensive understanding of human performance within organizations Here we have something to learn from other fields that are further up the maturity curve After a number of years, and after a certain amount of expeπence and knowledge has been gained in real-life applications, a field of endeavor begins to arrange that experience, codify it, and bπng to the field a degree of πgor, consistency, and predictability We can call this step the development of an "architecture" or a "framework " This framework can not only optimize the performance of an organization's workforce, but also identify where new forms of value can be created within the human dimension ofthe company To understand this framework, we first must understand what human performance really means m an organization setting m accordance with a preferred embodiment
HUMAN PERFORMANCE AS A "SYSTEM" Any business entity can be thought of as multiple systems working together to produce an economic result Among the many systems that make up a business, the system that descπbes the entities, influences and relationships relating to workforce performance is, perhaps, the most complex of all This system - the system of human performance - is also likely to be that which receives the least attention and is the least well understood The consequences of failing to understand the human performance system of an organization are steep As Geary Rummler and
Alan Brache wπte in their work, Improving Performance, "An organization behaves as a system, regardless of whether it is being managed as a system If an organization is not being managed as a system, it is not being effectively managed "
A systems understanding of organizations is one ofthe hottest approaches in organizational theory today Such books as Peter Senge's The Fifth Discipline, Margaret J Wheatley's Leadership and the New Science, and Gareth Morgan's Images of Organization have asked us to think in more organic ways about organizational life This approach leads naturally to thinking of change management work not as a simple, programmatic approach with direct cause and effect relationships, but as a series of complex influences - as one might think about influencing an ecosystem, for example.
Michael Porter's concept of "complementary activity systems" is a way of helping companies overcome the error of trying to locate competitive advantage in operational improvement measures — single and isolated efforts. Even when these are successful, says Porter, they are too easily imitated by others and so are never a source of sustained competitive advantage. Sustainable advantage comes only from systems of activities that are complementary. These "complementarities" can be seen in operation because an activity that provides an advantage in one area will also provide advantages in other areas. This is how we think of organic entities: one cannot isolate effects in one part of an organism, but must consider the influences of any part on the whole. "Companies with sustainable competitive advantage," says Porter, "integrate lots of activities within the business: their marketing, service, designs, customer support. All those things are consistent, interconnected, and mutually reinforcing."
What exactly does it mean to say that human performance in organizations is a "complex adaptive system"? The quickest way to understand this point is by analogy: an ecosystem, for example, or the human body, is made up of many components at many different levels. If we wish to change or influence such a system, we have to be aware that there are different levels, and that any actions taken will have multiple consequences of which we have to be aware. As
Rummler and Brache write, "The anatomy ofthe human body includes a skeletal system, a muscular system, and a central nervous system. Since all of these systems are critical and interdependent, a failure in one subsystem affects the ability ofthe body to perform effectively." Thus, just as an understanding of human anatomy is required for a physician to diagnose and treat ailments, so an understanding ofthe entire system of human performance is necessary for an executive to diagnose a company and make it fully healthy.
We can understand human performance, then, as a system involving a number of related "layers" (see Figure 3).
• The environment represents a set of influences over which the company generally does not have direct control, but which affects the company and, ultimately, its people. These influences may be economic, regulatory, social, technological, or physical. • The strategy ofthe company, which includes the coφorate and business unit strategy, as well as the operational strategy.
• The operations ofthe company, which include the processes and work performed, the technological enablers for that performance, and the physical setting in which the work is performed.
• The organization, meaning the structure of the organization and the programs and interventions designed to influence people and their performance of work.
• The individuals themselves - acting either alone or as a member of a team, driven by their ability and motivation.
Figure 3 illustrates the Layers ofthe Human Performance System in accordance with a preferred embodiment. Each ofthe components is described in the sections following to assist one of ordinary skill in the art to make and use the invention without undue experimentation.
INFLUENCING THE HUMAN PERFORMANCE SYSTEM: A FRAMEWORK
But how does one influence a system and optimize its performance? Here we return to the research data spoken of in the introduction. It is one thing to be aware ofthe importance of human performance . . . and quite another thing to know how to do something practical about it. Here we must be careful about how we use metaphors. A metaphor like an "ecosystem," for example, is extremely powerful to get people to understand the fullness of what human performance means. However, at the same time, we may unwittingly be contributing to a sense of futility among our target buyers. "If it's all that complex," they may well think, "then how can we ever hope to influence it in any way that is not almost accidental, or a non-repeatable success? How can we predict in any way the multiple loops of cause and effect that make up a complex adaptive system?"
The "sell" has to be made very quickly after the insight. And the sell involves using the picture of the human performance system to create a framework of interventions that links investments in human performance to more optimal performance of work, and thus better alignment with the strategic direction of a company and its overall value. In other words, it's not enough just to say that we can see something the right way. The right kind of vision or mindset is no good if one only has the old tools. Systemic understanding must be accompanied by systemic tools with which to influence the system. If we had such tools, what would they look like? These tools include: • Comprehensive, distilling knowledge and experience both from internal client experience and external expertise.
• Clear as to how different components or layers interact with one another.
• Easily understood and communicated (that is, its complexity must be hidden in deeper layers).
• Consistent with, and supportive of, Business Integration Methods.
Such a tool is the human performance framework. In any field, there comes a time when enough experience has been gained to abstract the knowledge and experience gained from practical experience, and then group that knowledge into components of a generic solution. In the field of information systems delivery, for example, there came a time when the IT world had delivered enough of these systems that it could find common aspects of solutions, identify these, and then re-use them in building other systems. Solutions, then, can be analyzed; repeatable components of those solutions, found across many particular environments, can be identified and abstracted into a "framework." A framework is an aid to understanding and structuring a problem. It is a generic grouping of reusable components, which then serves as a basis for the detailed design needed to construct a solution for a particular organization.
BUILDING THE HUMAN PERFORMANCE FRAMEWORK The Human Performance Framework is architected from the inside out in accordance with a preferred embodiment.
THE INDIVIDUAL LAYER
At the center ofthe framework is the Individual performing work - and that work performance involves things we can see (behavior) as well as things we cannot see (thoughts, feelings). In order to influence performance - to optimize it, maximize it, bring it into alignment with the objectives ofthe entire organization - we have to understand what performance derives from. To use an organic metaphor, growing a plant is not primarily about rearranging its leaves after it is out ofthe ground; it is more a matter ofthe right soil, the right growing environment, the right amounts of water and fertilizer, and so forth. What are the "soils and fertilizers" of human performance?
An individual is a complex set of "influenceable" characteristics, understood at the highest level as abilities and motivations, which interact and give rise to the actual performance itself (see Figure 4). Figure 4 illustrates the Individual Layer in accordance with a preferred embodiment. Ability and motivation ultimately drive the work of human beings. These concepts are extremely complex subjects in their own right and we do not intend to be comprehensive in our discussion here, but we can suggest the general dimensions ofthe topics.
Simply put, performance quality at the individual level is a function of skill plus will. That is, management interventions to increase the quality of human performance must seek to influence not only the ability of people (skill) but also their motivation (will). The question that ability asks is, "Can the workforce perform at the desired level of competence?" The questions that motivation asks are, "Does the workforce intend to behave in the ways desired by the organization," and "Will the workforce perform at the desired level of competence?" Further, ability and motivation must work in concert to produce targeted performance levels. An earnest, well-intentioned, highly-motivated person, who nevertheless lacks the necessary knowledge and skills to do a job, cannot succeed. At the same time, the brightest and most talented people, who nevertheless lack the will to apply themselves to their work, will not succeed, either.
Ability
The two most important dimensions of ability are knowledge and skills.
Knowledge is a mental state that can also be called "understanding"; it's the result of a process of integration - integrating external facts and information, as well as internally synthesized experience and discovery.
Skills are the mental and physical processes of thinking, doing, and learning.
Knowledge is the "know-how" ability, and skills are the "can-do" ability. Both are required for optimal performance. To take a simple example, an aiφlane pilot in training must read, listen, and acquire a great deal of abstract knowledge about flying. But this alone does not constitute the ability to fly the plane. At the same time, one does not generally put first-time students directly into a plane and send them up before they have acquired some knowledge about what they are to do. Know-how and can-do must come together as the student flies the plane.
We can further define skills as having three types: • thinking skills • doing skills
• learning skills
Thinking skills relate to the ability to structure thoughts in the mind. These skills are typically applied in solving problems based on facts, and in analyzing and choosing alternatives. They involve genetic traits, yet they are also influenced through training /learning in forms of deductive and inductive reasoning.
Doing skills are those we most often link to the successful performance of tasks in the workplace. These skills include both "harder," technical skills and "soft" skills, often described as social skills or professional qualities. Doing skills enable the quality of actions performed in the Operations layer, including hard skills like the productive use of technology or manipulation of information, as well as the softer skills like communication, necessary to deliver process value.
Learning skills - which include not just learning but also behavior change skills — include experiential learning that is not directly linked to on-the-job doing. Character traits that are not genetically linked to personality but evolve with experience, environmental exposure, and learning also may be considered learning and behavior change skills.
A third dimension of ability - creativity — is somewhat more controversial, at least from the standpoint of academic study. Not all cognitive scientists would place creativity in the realm of ability. However, there is no doubt that creativity plays a huge role in high-quality performance. The ability to look beyond received notions of how to do something, and to find a way that results in a new, leading-edge solution, is critical to organizational success.
Related to this is the ability to take existing knowledge and use it in new ways to solve problems or accomplish tasks. Intuition, or intuitive conceptualization, is the ability to synthesize an almost spontaneous, holistic, integrated, breakthrough visualization, idea or hunch. This shaφly contrasts with the more sequential and fragmenting analysis characterized by thinking skills.
Finally, there is a dimension of individual characteristics over which management has more limited control, but which is nonetheless important. We have included this dimension as traits within the ability component ofthe individual. Traits are the genetic, unique individual predisposition of abilities in the realms ofthe
• intellectual (brain function),
• physical (prowess), and
• personality (behavioral and attitudinal predilection, or temperament).
Traits are most often thought of as the drivers of human potential — the natural or inborn talents or weaknesses.
Intellectual traits are based on the "wiring" ofthe nerve cells that make up the brain, and include aptitude ("IQ"), "mental quickness," and inductive reasoning (i.e., moving from parts to the whole). The genetic basis of IQ has been clearly and consistently exhibited in research, most popularly using the Stanford-Binet intelligence scale. Physical traits include appearance, metabolism (often perceived as "energy level"), body type, height, strength, dexterity, tonal memory, color blindness and structural visualization. Personality traits are the most recent and the most rigorously studied of traits. Recent research by scientists involved in the Human
Genome Experiment (a multi-university research effort decomposing DNA to identify the human characteristics carried by genetic material) has traced four personality traits to genetics: novelty seeking, harm avoidance, reward dependence, and persistence.
Motivation
Motivation is a very complex dimension of human performance, as attested to by the hundreds of definitions of motivation developed over the last fifty years. The discussion of motivation here is intended to cut across many or most of these definitions and, in addition, establish a meaningful way to address the subject.
In summary, motivation is the willful intention to achieve an outcome or goal. Think of motivation as a two-step process: First comes the initial thought. This creates a sort of tension in the status quo of a person, a tension that demands action of some sort. Second, then, that tension is translated into energy, yielding behavior and new levels of performance. There are many sorts of stimuli coming from many places that cause that tension-to-action movement - and in this context, the stimuli from people within the organization (or the structures and rules created by people) are particularly relevant. Organizations can influence motivation in their people: they can create positive willful intention; they can also create negative intention. Two levels of awareness shift when a new thought is introduced to a person's status quo. Attention focuses the awareness to a local perception. Intention brings about a change in that localization and attaches greater importance to it. Intention is an expression of focus and thought. Intentions that originate inside a person are immediately important and relevant, and are usually processed emotionally. Intentions conceived internally are typically expressed as aspiration, dream, or fantasy.
Intention originating from the organization - that is, externally to the individual — often takes the form of a vision or message communicated to relevant stakeholders. The individual employee receives the vision and screens it for "relevance." The intention is typically processed intellectually by a person - although we all know cases where a vision is so inspirational or the leader so charismatic that the person is engaged emotionally. A typical error in organizational motivation, however, is to over-rely on the emotional component. This must be followed up, or augmented, by motivation that engages people intellectually. Emotions are powerful: they can flame up, but they can also flame out.
How does a person screen for relevance? An individual analyzes an externally-introduced intention on the basis of "fit" with the person's job, role, or tasks within the organization. This screening may also occur at the team or group level: does the intended outcome fit more broadly within a team or group set of expectations or preferences? As relevance is established and as intentions begin to be more deeply considered and processed by the individual, they are questioned at the level of values, beliefs, and norms.
Values are the deeply-held goals, ideals, and principles ofthe individual that typically lead and guide willfulness. At this stage of processing, a person assesses the "fit" of an organization's intention. The individual filters out those intentions that are relevant, but not deeply desired. When an individual's values are supportive ofthe organization's intention, the intention evolves to a deeper level of anticipated commitment — a willfulness to begin the pursuit of that intention.
Beliefs also serve as a guide, though in this case they constitute more of an assurance that one's actions occur within a system that has meaning - that life is not fruitless or useless.
Norms can be thought of as the collective attitude or behavioral expectations of a group, and are often what we mean when referring to an organizational "culture." They represent a critical motivational component in many (but not all) jobs and roles, since the degree of external affiliation can be a major driver of team performance. For more solitary, "solo flyer" employees, norms are less likely to play as significant a motivational role as for others with more need or desire for external affiliation and acceptance or approval.
At this stage of deeper reflection and inquiry regarding the organization's intention, the individual conducts an internal questioning or mapping ofthe intention to his/her values, beliefs, and norms. If the values, beliefs, or norms are in conflict with the intention, additional resistance builds. "How much energy should I invest in the pursuit ofthe intention?" This resistance is added to the tension already created from the introduction ofthe external intention.
If the mapping of intention to values, beliefs and or norms is successful — i.e., in alignment - "activation energy" may be aroused. This activation energy, conviction, describes the extent to which the social filters of beliefs, values, and norms are internalized so as to drive individual energy to pursue the, now willful, intention. In turn, conviction can be indexed by the degree of effort an individual is willing to exert to reach a goal. As conviction energizes the pursuit of productive behavior change on the path toward the now deeply desired intention, the concept of comfort enters the emotional and physical picture.
In emotional terms, comfort represents the degree of resistance or pain one is willing to tolerate or overcome in order to achieve a goal. There are two forms of resistance that tend to be considered, differing mainly in the degree of discomfort they create. The first is the anxiety resulting from the anticipation of an unknown or frightening future state possibly less comfortable (more painful) than the status quo. The second, even more powerful, form of resistance is the fear in the current moment as an employee faces the immediate anticipation prior to the trial of a new behavior. This immediate and specific emotional reaction of fear is in anticipation of a specific threatening stimulus: for example, investing in a new behavior, practice or study on the path toward new performance.
The short-circuit emotion-based deliberation uses a shortcut to the more primitive emotional brain, causing a more dramatic flee or fight response in the individual. This stressful survival response leaves inadequate time for the more intricate and recently evolved thinking brain, to fully deliberate. If this emotional energy can be used to constructively engage effort we may consider the tension productive — for example, nervous energy that stimulates thought, effort, and creativity. If excessive stress and discomfort result, the brain may seek to protect the employee, enabling rationalization ofthe status quo and denial ofthe relevance or belief in the organization's new intention. As the motivation level meets the comfort level in a productive engagement, the individual begins the active learning and experimentation process associated with trying out new behaviors.
Confidence is the person's internal model of how well his/her current ability to perform a job or task addresses the new job or task requirements. Confidence is regarded as a largely internal assurance that individual effort expended will yield anticipated outcomes. It is, however, influenceable both (a) by feedback from respected sources and (b) through self-observation and reflection. The bolstering of confidence contributes to comfort or the mitigation of tension or anxiety that typically accompanies change. In turn, this may lead to additional risk-taking, collaboration and curiosity, as learning and change become less risky and less painful processes. As behaviors are successfully pursued and feedback yields additional confidence, learning and achievement derived from challenge and experience may yield satisfaction. Satisfaction is the degree of fulfillment of meaningful needs and desires. It is critical to make this needs/desires distinction, since the satisfaction of more basic needs has only a partial impact on potential performance but are necessary prerequisites for fulfillment of meaningful desires.
THE ORGANIZATION LAYER
The organization layer represents the suite of activities - organizational design as well as many other management actions - that most directly influence the ability and motivation of people (see Figure 5). Figure 5 illustrates the organizational framework in accordance with a preferred embodiment. The presumption here is that management can take actions, can be directive, in influencing human performance. And the suite of interventions listed under the organization layer acknowledges - in fact, demands agreement about - the truth that there is no "silver bullet" solution to the problem of optimizing human performance. No piece by itself will accomplish the goal. Everything must be present for an optimal solution.
Within the organization layer are eight primary components in accordance with a preferred embodiment.
1. Organization Structure
2. Resourcing
3. Performance Management 4. Learning/Training/Knowledge Support
5. Performance Support
6. Leadership
7. Communication 8. Culture
Organization Structure
In general, organization structure refers to the suite of activities that involve selecting the workforce competencies needed to enact business strategies, and then designing jobs, roles, and team structures to ensure that those competencies can be present in the workforce. There are four subcomponents to organization structure:
Competency Planning. Competencies are the overall skill sets that are required, by the workforce, in order to achieve strategic business objectives and to optimize business performance. Within this subservice, strategic goals ofthe organization are analyzed and monitored to ensure that the proper competencies are built in to the workforce.
Job/Role Design. Based on the set of competencies identified as critical for aligning the workforce with business strategy, particular jobs and roles are designated that provide the necessary competencies.
Team/Group Design. Based, then, on the design of jobs and roles within the workforce, particular groupings of individuals are designed in order to achieve maximum synergy among people directed toward particular tasks.
Workforce Planning. Organization Structure activities must be directed not only to current needs ofthe business, but to future needs, as well. Consequently, workforce planning must take place that is aligned with the company's growth plans and other relevant strategies.
Resourcing Organization structure ensures that structures are in place to build competencies. Resourcing ensures that a company has the actual people with the potential to spread those competencies throughout the company, and that they are deployed so those competencies are properly directed. Resourcing involves two primary subcomponents: Recruiting/selection ■ Deployment/redeployment
Recruiting/Selection. The recruiting and selection subcomponent includes all activities related to the hiring of people from the outside. In recruiting/selection, people are matched to general categories of jobs and roles in the organization.
Deployment/redeployment. In deployment/redeployment (also called "staffing") all members of the workforce are deployed to particular jobs, and/or shifted to new responsibilities. The organization's puφose plays a critical role in the deployment process. Redefinition ofthe company's business domain has strategic implications for its human resource management system. Thus, serious thought must be given to defining the qualifications that are mandatory for managing the new organization. Specification ofthe qualifications, identification of persons possessing those skills, and moving people into jobs should be guided by the organization's strategic plans and its overall staffing strategy.
Three concerns are particularly important with regard to the resourcing component. The first involves the design of a selection system that supports the organization's strategy. For example, if a company plans to diversify in the next decade, a careful analysis should be made ofthe types of people who will be needed to staff the new business or businesses. The second concern is to monitor the internal flow of personnel to match emerging business strategies. The third concern is with matching key executives to business strategies. In large companies where businesses are thought of as portfolios, as opposed to single product ventures, there has been an increasing interest in matching people to types of business.
Performance Management
Performance management is focused on a set of consequences for different kinds of performance. It also focuses on altering, encouraging, and directing performance through either positive or negative reinforcement. This is also where career management for individuals takes place. The alignment of individual performance with a company's strategic objectives is found here more than in any other component of the organization layer.
Performance Management is comprised of seven subcomponents in accordance with a preferred embodiment:
• Evaluation/ Appraisal • Feedback
• Recognition
• Compensation
• Promotion/Advancement • Career Management
• Termination
Evaluation/Appraisal. Evaluation/appraisal is a formal process to provide workers with an assessment of job performance relative to targets. The term "evaluation" is used here because ideally, this component includes not only judgment (appraisal), but also a set of actions designed to remediate, counsel, and direct people toward improved performance.
Strategically, evaluation can be used to promote a variety of goals. For instance, evaluation systems could drive employees toward increased productivity, to identify fast-trackers, and identify poor work behavior, while at the same time providing information to other human resource systems by systematically compiling data. The increased popularity of computer-based HR information systems is a case in point. Many companies are concerned with building a link between the evaluation (or performance appraisal systems) and other human resource systems such as recruitment, compensation, career planning, and training.
Feedback. Formal evaluation cannot suffice as the sole means to reward good performance and discourage poor performance, because such evaluation comes at a time generally far removed from the moments of performance themselves. Feedback (often in the form of coaching, which is also discussed under Leadership) is extremely effective because it is linked closely with the actual perfoimance being discussed. A number of subcomponents found in the performance management component are generally termed "reward systems" in the HR literature. These include the following:
Recognition. This refers to a set of consequences that are primarily non-monetary. These may be formal programs (employee recognition programs) or informal actions such as highlighting certain people during meetings, in official communications, or even simply in conversation.
These informal forms of recognition represent another important link to leadership within the human performance system. Compensation. This refers to monetary consequences - both regular salary and other financial incentives (bonuses, trips, other "perqs"). Although compensation is generally thought of in terms of its rewards for positive performance, a raise in compensation thought to be subaverage has other effects on worker incentive - perhaps encouraging them to attain perfoimance levels seen in other workers at their level.
Promotion/ Advancement. This represents consequences which, though linked to monetary reward, nevertheless link in to issues of status within an organization and to new challenges necessary for employees to feel they are growing professionally. Promotion refers to official moves up the "coφorate ladder." However, new kinds of job assignments, new challenges, also represent a form of advancement that is vital to the larger puφoses of performance reinforcement.
Career Management. Related to promotion/advancement, career management takes the "long view" for workers, ensuring that advancement takes place within some larger plan, both for the individual and the company's needed competencies.
Termination. This, finally, represents the ultimate form of negative reinforcement (short of ritual execution) within an organization. This aspect of organizational design is often overlooked, yet the manner in which an organization turns employees into non-employees has profound effects on current workers. Although this aspect of organizational life is rarely pleasant, termination of employees for poor performance often has the effect of assuring other workers that the organization is aware of employees who are not performing well, particularly when this poor perfoimance puts additional pressure on co-workers to pick up the slack.
Together, the components of perfoimance management have a profound impact on organizational behavior, in at least five ways:
• Attrition and retention: research on job choice, career choice, and turnover clearly shows that the kind and level of rewards an organization offers influences who is attracted to work for an organization and who will continue to work for it..
• Motivation: those rewards that are important to individuals can influence their motivation to perform in particular ways. People in work organizations tend to behave in whatever way they perceive leads to rewards they value. Thus an organization that is able to tie value rewards to the behaviors it needs to succeed is likely to find that the reward system is a positive contributor to its effectiveness.
• Culture: reward systems are one feature of organizations that contributes to their overall culture or climate. Depending upon how reward systems are developed, administered, and managed, they can cause the culture of an organization to vary quite widely. For example, they can influence the degree to which it is seen as a human resource-oriented culture, an entrepreneurial culture, an innovative culture, a competence-based culture, and a culture of participation.
• Reinforce and Define Structure: the reward system of an organization can reinforce and define the organization's structure. Often this feature of reward systems is not fully considered in the design of reward systems. As a result, their impact on the structure of an organization is unintentional. This does not mean, however, that the impact ofthe reward system on structure is usually minimal. Indeed, it can help define the status hierarchy, the degree to which people in technical positions can influence people in line management positions, and it can strongly influence the kind of decision structure that exists.
• Cost: reward systems are often a significant cost factor. Indeed, the pay system alone may represent over 50% ofthe organization's operating cost. Thus, it is important in strategically designing the reward system to focus on how high these costs should be and how they will vary as a function ofthe organization's ability to pay.
Learning/ Training/Knowledge Support
The learning component ofthe organization layer is focused on the knowledge and skills necessary for individuals and teams to perform. It is comprised of two primary subcomponents in accordance with a preferred embodiment: • Training
• Knowledge Support
Although there is not, and should not, be a clean separation here, training generally refers to ways in which skills are acquired. Knowledge sharing refers, obviously, to the manner in which new knowledge is acquired.
Training. Training refers to the formal training content, instructional design, and opportunities for individuals and teams to learn efficiently and effectively. This subcomponent prepares workers for performing new tasks at "day one" proficiency levels, or for performing the same tasks at higher proficiency levels. Instructional and delivery methods represented here range widely, and will usually be used in combination with many techniques.
Training is, in turn, comprised of ormal and informal components.
Formal. Formal training consists of the following main elements:
• Curricula
• Courses
• Just-in-Time Learning
Curricula identifies the formal learning opportunities that should be provided to the organization. Usually these learning opportunities consist of courses, seminars, or conferences that use various instructional methods and media. Within the curricula component, these individual learning opportunities are organized into curriculum paths that individuals should follow. These paths ensure that individuals have learned the more basic material, often reinforced through actual job performance, before proceeding to more advanced learning opportunities. Curriculum plans include course descriptions, dependencies between courses (e.g., prerequisites), performance objectives, and audience descriptions.
Courses is the subcomponent that identifies the specific delivery method(s) for a given curriculum path, and provides the instructional content, organized in a way that promotes learning and delivers individuals who can achieve "day one" performance targets.
Just-in-Time (JIT) Learning provides information that is accessed as people perform their jobs. Through perfoimance support this training is delivered to individuals at the point of need
(although the training itself is designed within the training component of the framework). JIT Learning content is often organized by task; it is also highly focused, because the task performance requirements may preclude a thorough exploration ofthe topic. (Consider, for example, a customer service representative for an airline on the phone with an irate passenger, and the CSR's limited ability to absorb new information in this situation).
Informal. Informal learning provides opportunities for improving skills in situations that cannot or do not need to be accounted for in advance. Although less structured and more ad hoc, they often are the most salient and productive learning experiences, because they arise at the point and time of need. Informal Learning includes the following elements in accordance with a preferred embodiment:
• Incidental Learning
• Self-Directed Learning • Coaching
Incidental Learning arises from workers' everyday experiences as they perform their jobs or simply as they perceive their world in a reflective manner. Information gained this way is often not captured in formal learning programs, or even other informal learning settings, but is invaluable in improving an individual's performance, and an organization's understanding of its competitive environment. "Learning how to learn" (more formally, "meta-cognition") is fundamental to effective incidental learning because it helps workers recognize and make sense of information, and relate it to their existing knowledge. Incidental learning can increase the rate of overall organizational learning significantly.
Self-Directed Learning occurs when workers themselves develop new skills, by asking for coaching, or by reading trade journals or attending seminars and conferences. Self-Directed Learning is often influenced by others within an organization. For example, a coach might suggest a direction for an individual's self-development.
Coaching is usually inteφersonal, where one person provides solicited or unsolicited advice to an individual on any topic related to job performance, including career counseling. This coaching can be formalized into mentoring relationships or can simply be an informal discussion between colleagues on a topic. Coaching provides salient information at the point of need (either the worker has asked for advice, or the coach has identified a "teachable moment") in the right context. Effective coaches are respected for their expertise, concern for others, and their ability to send difficult messages regarding perfoimance in a constructive manner. Loosely speaking, coaching can also be provided through technology and tools, found in the work layer ofthe human performance framework.
Knowledge Support. Knowledge support provides useful information in varying degrees of "packaging" and types of media, and also provides ready access to that content. This content is provided by individuals and groups within the organization, or entities from outside ofthe organization. Knowledge support aids the process of converting tacit knowledge held by a few individuals into explicit knowledge that can be shared throughout the organization.
Knowledge support is comprised of three primary subcomponents: content creation, content evaluation, and content indexing.
Content can take many forms: presentations, white papers, case studies, lessons learned, or responses to a specific question or situation. Media ranges from simple text and graphics to sophisticated animation, audio, and video. • Creation is performed either by an individual or group for a specific business puφose (e.g., a sales proposal to a customer), then "repuφosed" as share-able, explicit knowledge. This act of creation makes the content explicit. Organizations can sometimes accelerate this process through formal projects or groups to package knowledge.
• Evaluation verifies that the information supplied is high-quality and relevant to the organization's needs. This quality assessment can be done by expert reviewers or, in a more emergent fashion, through assessments by users of this information, or through determining the frequency of use of a piece of knowledge (the more frequently an item is used, the more valuable it presumably is to other individuals).
• Indexing organizes and categorizes the information in ways that other people in the organization will find useful. To be fully effective, indexing goes beyond mere keyword matching; it needs to understand the semantics ofthe information. Access and dissemination ofthe content is obviously required also. This is found in the tools and technology components of the work execution layer.
Performance Support
Perfoimance Support provides the day-to-day tools and access to relevant knowledge that helps workers accomplish tasks. This support is immediate and very fine-grained; ideally it is perfectly relevant to the task at hand. A key design decision is: who will initiate support under which circumstances, the system or the worker? The more proactive the system is in supplying support, the smarter it needs to be, because the chance of unnecessarily interfering with the work increases with proactiveness.
Advice provides the relevant information "nuggets" and determines the circumstances (situations, user actions, errors, degree of criticality) under which the advice would be offered. Indexing may be necessary to organize and relate information appropriately. This information might be in the form of stories, but can also be textual or an animation to illustrate a principle. In theory, a well-integrated, well-indexed knowledge management service could provide the advice. However, most knowledge management processes (other than case-based reasoning systems used in product support settings) are not rigorous enough (and probably shouldn't be) to support advice creation for a mission-critical business process.
Access Paths provide the workers with the ability to acquire relevant information for their specific task at the point and time of need. In a well-designed performance support environment, this access would appear to workers to simply be a natural part of their work. Access paths are provided to:
• Tools. These are the most commonly used parts of Enablement Services, because some tools (a transaction system, for example) are an integral part ofthe business process. Other tools - e.g., a calculator — might be used only occasionally. • Reference information. Well-indexed information and properly-designed access paths enable real-time support for perfoimance.
• JIT Learning (see also its description under the formal training components) provides short, focused learning modules that workers can access either in the course of work, or away from primary job perfoimance. Leadership
Leadership is a difficult concept to manage, especially given the plethora of theories about it in management literature. Sometimes leadership is spoken of in a way that makes it difficult to assign to any one person or set of persons. That is, "coφorate leadership" may mean simply being accountable for a company's performance — setting goals and perfoimance targets to be achieved and communicating the strategies to be followed.
However, leadership within the human perfoimance framework refers to leadership shown by identifiable individuals within the organization. Leadership is necessary at all levels of an organization, but particularly for those individuals identified as having a high impact on the workforce or on a team. Leadership involves people interacting on an individual basis, acting as coach and mentor as well as supervisor, to demonstrate to all employees that their contribution to the work ofthe group is valued. It involves helping each individual and team to achieve its full potential and appropriate recognition of those achievements. Skillful leadership of people is a key component to creating a high perfoimance work group. Leadership is comprised of four subcomponents in accordance with a preferred embodiment:
• Stewardship
• Sponsorship • Mentoring
• Coaching
Stewardship refers to a general sense of leadership that provides assurance to people that there is someone strong at the helm. This is a combination of charisma, communication skills, intelligence, caring, and probably many other characteristics. Yet this kind of leadership can be encouraged within individuals, and it can be designed into the human performance system of an organization. Stewardship is demonstrated at levels throughout the organization, not only at the highest level, but also in teams.
Sponsorship. Sponsorship is that unique aspect of leadership which is directed toward a particular change initiative. Whereas leadership is active in all directions and at all times, sponsorship is focused on active encouragement and facilitation of a program of change.
Sponsorship involves: • deciding which changes will happen
• communicating the new priorities to the organization
• providing the reinforcement to ensure success
Sponsors are responsible for creating an environment that enables change to be made on time and within budget. Although some thinkers in this area maintain distinctions between sponsors (those who have the power to sanction or legitimize change), agents (those individuals or groups who actually perform the work of making change happen), and advocates (those who support the change, but lack the power either to sanction the change or to make it happen), sponsorship within the human perfoimance framework includes all these roles.
Mentoring refers to close professional relationships between more experienced employees and less experienced employees in organizations. Mentoring implies a long-term interest in the professional development of someone. Developing mentoring capabilities within a company involves going well beyond establishing mentoring "programs," because mentoring cannot be established by decree. It involves the serendipity of relationships established by accident as much as by design. Coaching refers to the type of leadership that directs employees very close to the point of perfoimance. It presumes an active role in observing and providing short periods of feedback and direction to an employee.
Communication
Efficient and effective communication is vital to human performance, not only during times of rapid change, but at all times. Communication ensures that employees have a sense of direction, and of connection to the organization and other employees. Communication contains important links to other components in the architecture framework, especially to Leadership and Culture.
Developing a longer-term climate of open communications requires a commitment to continue communicating into the future. By communicating regularly, such events move from being special to "the way we do things around here." Additionally, successful organizations employ mechanisms of regular perfoimance based communications enabled through the system of team briefing.
Communication is comprised oϊ planned communications and ad hoc communications.
Planned communications refer to the "official" communications of a company, with the intent to provide a consistent set of messages to all employees. Although these official communications are generally thought of as one-way, in fact, effective communication programs are only possible where there is a two-way flow and where the audience has the opportunity to question in order to develop understanding.
There are three components to planned communications in accordance with a preferred embodiment:
1. Message. Key messages are the themes that will resonate through all communications, both to a team and to the entire organization. Every communication must have a puφose: to bring the audience to a specific level of awareness or understanding about the project or to announce the reaching of a major project milestone. Organizations should not send out communications when there is no specific puφose. Key messages should be the primary driver of the communication plan. Each key message can address a different audience (stakeholder) or address several audiences at different times. Each message communicated must be customized for its target audience. This will ensure that the information is relevant. 2. Vehicle. Vehicles, or communication channels, are the methods used to deliver messages to stakeholders. The vehicles used can be as informal as a telephone conversation or as formal as a prepared presentation or a newsletter. The vehicles used will differ depending on the stakeholder group and the message being delivered.
3. Feedback. Feedback must be generated and evaluated in order to monitor, check, and improve communications. In order to check that the key messages are reaching their target audiences as well as to provide a means of "self tuning" communications to meet the needs of audiences, feedback should be regularly sought from both audiences and communicators. Achieving such a system may include the development of questionnaires and surveys as well as management debriefs after communications events.
Ad hoc communications refer to informal communications among employees at all levels of an organization. Here we find a strong link to the cultural aspects of the architecture framework. A culture of openness can only be built by encouraging communication links among workers. Within ad hoc communications, the primary work for management is establishing the vehicle by which such communications may take place easily.
Culture
Sustained high levels of performance depend on people supported by a culture that is cohesive, that defines explicit values and encourages work in accordance with those values. This is an area within the framework which many people are apt to treat as "more art than science," and yet this should not blind us to the fact there are proven techniques for building a high-performing, highly- motivated culture. Many ofthe components of the human performance framework affect the culture and values ofthe organization. A positive work experience is affected by effective leadership, workforce planning, and well-targeted training and development programs. Also important is demonstrating a genuine concern for performance issues, including appropriate forms of recognition and reward.
Vital as these measures are, more is required in order to create a strong positive commitment to the consistent achievement of high levels of performance. The additional factors relate to the extent to which employees feel that their needs as individuals are being recognized and responded to. In this regard there is clearly a link to the articulation of organizational values that may take place under Leadership. Other values which might be important in this context are the traditional concerns with equity and merit so that people believe that staffing processes are fair to all; there are genuine attempts to involve staff at all levels in the decisions which affect them; and there is a more positive approach to the way grievances and appeals are handled, treating them as signals of personal distress rather than attacks against the organization.
The importance which the organization places on its people may also be demonstrated by the introduction of employment conditions that show a concern for the health and safety of the workforce and that explicitly recognize the impact on personal and family life of particular work requirements (e.g. the requirement for regular relocation). The adoption of workforce practices that are capable of responding to the particular circumstances of individual employees (e.g. family friendly work practices) is an emerging area where much can be achieved.
The Culture component is comprised of two primary subcomponents in accordance with a preferred embodiment:
• Values
• Cohesion
Values. Values involves both values clarification and values ownership. Organizations often make the mistake of not being explicit about what particular values they wish embodied in their culture. Values clarification involves:
• Definition of the potential values to be considered.
• Assessment of values - that is, a dialogue and determination of which ofthe potential values are relevant or appropriate to the organization's culture. • Reconciliation of differing assessments.
Values are of no benefit if they are simply abstractions, or if they remain simply as policy statements. Values ownership ensures that organizations take specific actions to ensure the development of ownership ofthe values at all levels ofthe organization.
Cohesion. Organizations cannot speak of a "culture" at all without a sense of cohesion or belonging among all personnel. Specific actions must be taken on an ongoing basis to establish and nurture cohesion. THE OPERATIONS LAYER
The operations layer is comprised of the processes performed, the technology and tools that enable that performance, and the physical environment in which the work is performed. The operations layer is comprised, then, of three components (see Figure 6): • Process
• Technology
• Physical Setting
Figure 5 illustrates the Operations Layer in accordance with a preferred embodiment. Each of the components of this critical layer are discussed below in accordance with a preferred embodiment.
Process
The processes performed by individuals and teams are how value is created by the company. The processes are about "doing the right thing." However motivated and able the employees may be, bad processes inhibit their performance. Indeed, able and motivated employees often find workarounds for badly designed processes in an attempt to improve the customer experience or overall value to the company.
Process can be further subdivided into the following components in accordance with a preferred embodiment:
• Activities
• Tasks
• Workflow • Policies
Technology
Technology refers not only to the information systems at hand for workers, but to the equipment, tools, applications, and the particular delivery vehicles for those applications. The tools and technologies made available to the employee when carrying out processes directly influence the perfoimance ofthe individual. Absence of appropriate tools and technology can significantly reduce the effectiveness ofthe individual. Conversely, well-designed tools and technology can leverage human performance and provide a competitive advantage. Physical Setting
The physical setting in which work takes place can have a direct impact on the individual's ability to perform effectively, both directly and through its impact on motivation.
Physical setting includes:
• The work facilities themselves, including buildings, property, and location.
• The layout ofthe facilities, including proper design for team interaction, proper design for incidental knowledge sharing, and proper design (especially proper ergonomics) for an individual's work space.
Physical setting as a suite of management interventions is comprised of three components:
• Physical Layout
• Climate • Tools
Physical Layout. Here, the design ofthe workspace is accomplished. Layout involves different concerns, depending on whether the focus is on a group or team, or on an individual. Group design must be cognizant of a physical workspace that encourages collaboration when it is appropriate. It also must take into account a design of space that encourages informal meetings, where innovation often takes place. Individual design is where ergonomical considerations are highlighted - things such as appropriate seating, proper height of desks and terminals, and so forth.
Climate. The climate ofthe workspace involves such things as:
• Heating, ventilation, and air conditioning
• Lighting
• Ambient noise
Tools. Design of supporting tools may involve primarily the information technology tools for workers. However, all tools supporting work perfoimance must be designed into the total performance solution. THE STRATEGY LAYER
The strategy layer concerns the basic strategic direction for the company. Strategic direction rigorously analyzes the company's or business unit's external environment, market dynamics, and organization. In this layer, the company makes a clear statement about how it intends to serve its markets to achieve competitive advantage and maximize shareholder value. Work in this layer occurs when (1) the strategic direction needs clarifying for some internal reason; and (2) when occurrences in the company's environment (regulation, competitors, economy) dictate strategic change. Our discussion in this section is intended only to sketch the basic outlines of strategy, certainly not to treat the subject in detail.
Strategy in general involves considerations such as: Vision and mission Desired market position Target customers and markets Delivery channels Products, services, and pricing Required capabilities Operating guidelines and structures Sourcing approaches
Figure 7 illustrates the various components ofthe strategy layer in accordance with a preferred embodiment. The strategy layer is comprised of three components that are detailed below.
Corporate Strategy/Vision A coφorate strategy provides the company with a common direction that focuses its collective effort on creating sustainable value in the industries and markets in which it chooses to compete. The coφorate strategy differs from a business unit strategy in that it: focuses the collective effort on its business portfolio; defines how it will structure and govern itself to create and manage synergy across the coφorate center and its business units; and manages relationships with external stakeholder groups.
Business Unit Strategy The business unit strategy clarifies what the business unit aspires to be, what business it is in, what goals it is seeking to achieve, what value proposition it will deliver to customers, which capabilities are required for success, how to distinguish its portfolio of products and services from its competitors, and how it will contribute to achieving the company's vision and objectives. The business unit strategy differs from the coφorate strategy in that it focuses on how to be successful in a particular market, leverages effort within the business unit, and seeks a distinctive marketplace position for its produce/service portfolio.
Organization Strategy Organization strategy concentrates on aligning the entire organization to build and maintain the capabilities required to execute the strategy. Companies must address a number of key questions. Should the company develop the necessary skills and capabilities internally or should it bring them in via alliances and acquisitions? What processes are core to the strategy? Should the organization's structure be oriented toward functions, products, or customers? What should be the structure and composition of governance? What experience and skills are required, and what sort of human resources or human capital approach is needed to develop and maintain them?
THE ENVIRONMENT LAYER
Figure 8 illustrates the various components making up the Environment layer in accordance with a preferred embodiment. The environmental layer is made up of a number of external influences on the company and its people. These are things over which the company has no direct control. So, although we cannot design "interventions" for these occurrences, they nevertheless must be included in the human performance framework as primary influences.
These influences include the following logical components in accordance with a preferred embodiment.
• Economic: global and/or national economic trends; the company's overall financial health; actions by competitors, suppliers, partners; customers; area demographics, from which employees are drawn
• Regulatory: actions taken by government
• Physical: occurrences in the physical environment, such as disasters; and other physical factors, such as proximity to pollution, etc. • Social: cultural values, for example, ofthe people of the area in which the company is located, and the values of customers
• Technological: innovation, new business opportunities enabled by technology
THE KEY PRINCIPLES OF THE HUMAN PERFORMANCE FRAMEWORK
Figure 9 illustrates each ofthe components of a Human Perfoimance Framework in accordance with a preferred embodiment. This is a way of looking at human performance, and a way of communicating its fullness in an integrated manner. As the framework is used, it becomes a tool by which to guide the development of solutions to influence human performance for our clients.
That is, the framework in accordance with a preferred embodiment includes:
• A distillation of our experience in developing solutions, and of our research into human performance within organizations, AND
• A tool that can be used by our professionals to analyze, diagnose, document, and communicate the shape of a solution, AND
• A communication medium, including shared and commonly-understood terminology
A set of key principles about the framework should be top of mind for all those who wish to use the framework in client work. 1. The framework shows that human performance, and the means by which to influence and optimize, is a complex matter. However, neither human performance nor the actions that can be taken to influence is a mystery.
2. There is little that is "new" within the framework. What is new is the holistic manner in which perfoimance is described and communicated, and the holistic manner in which a suite of solutions is designed and implemented.
3. Unlike some gurus in the marketplace, Andersen Consulting shows through this framework that there is no "silver bullet" solution - no single approach or technique applicable to all environments.
4. Human perfoimance involves a number of dimensions that have proven effective. However, accounting for even those factors outside our control must be designed into the solution.
Disasters, for example, cannot be controlled; but we can build disaster recovery into a solution. Death of a spouse or family member cannot be controlled; but we can design jobs and roles, and deploy our people, in such a manner that the temporary absence of any individual does not ripple through to decreased business performance. 5. The individual layer ofthe framework is where human performance arises; they are where our interventions are felt most strongly. All intentional interventions to influence human performance apply either directly to the individual and groups of individuals, or indirectly through the work layer (process, technology, physical setting). 6. The operations layer and the strategy layer identify things that influence human performance, but they are not ultimately designed by a human performance architect (that is, put another way, they are not directly owned by the Change Management competency). In those layers, a human performance architect provides input to the definition of other architectures.
7. The organization layer identifies the elements that are directly implemented by the human performance architect (that is, they are within the "people" element ofthe Business Integration model).
8. The impact of our interventions on human performance are predictable at a macro level, and they can be measured.
This last point brings us to our major challenge today: working with the human perfoimance framework to develop a comprehensive set of measures to demonstrate the added business value of investments made to optimize human performance.
We now can know with certainty that human performance is critical to successful implementation of business strategy. As Jeffrey Pfeffer has written in his book, The Human
Equation, "Success comes from implementing strategy, not just from having one. This implementation capability derives, in large measure, from the organization's people, how they are treated, their skills and competencies, and their efforts on behalf of the organization. Pfeffer's book nicely brings into a single resource the research conducted over the past decades to demonstrate the value of human perfoimance interventions.
While various embodiments have been described above, it should be understood that they have been presented by way of example only, and not limitation. Thus, the breadth and scope of a preferred embodiment should not be limited by any of the above described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.

Claims

CLAIMSWhat is claimed is:
1. A method for organizing resources for effective utilization in task completion, comprising the steps of:
(a) generating a list of tasks requiring completion;
(b) correlating a list of employees to the list of tasks requiring completion;
(c) associating a list of resources to the list of tasks requiring completion;
(d) specifying resource information including which ofthe resources are to be used for facilitating the completion ofthe tasks by the employees;
(e) defining employee information including compensation and scheduling conditions based on labor regulations;
(f) generating a schedule based on the resource information and the employee information in order to complete the tasks; and (g) storing the schedule in a storage.
2. A method as recited in claim 1, wherein the task list indicates when each task requires completion.
3. A method as recited in claim 1, wherein the employee list indicates a skill level and a seniority level of each ofthe employees.
4. A method as recited in claim 1, wherein an availability of the employees is specified by days ofthe week and hours ofthe day.
5. A method as recited in claim 1, wherein the employee information further includes at least one of a minimum and a maximum time the employees may work before the labor regulations require a break, a maximum time the employees may work before being paid overtime per the labor regulations, and minimum and maximum shift lengths as required by the labor regulations.
6. A method as recited in claim 1, wherein the schedule is further generated based on policies of a business entity.
7. A computer program for organizing resources for effective utilization in task completion, comprising:
(a) a code segment that generates a list of tasks requiring completion;
(b) a code segment that correlates a list of employees to the list of tasks requiring completion;
(c) a code segment that associates a list of resources to the list of tasks requiring completion;
(d) a code segment that specifies resource information including which ofthe resources are to be used for facilitating the completion ofthe tasks by the employees;
(e) a code segment that defines employee information including compensation and scheduling conditions based on labor regulations;
(f) a code segment that generates a schedule based on the resource information and the employee information in order to complete the tasks; and
(g) a code segment that stores the schedule in a storage.
8. A computer program as recited in claim 7, wherein .e task list indicates when each task requires completion.
9. A computer program as recited in claim 7, wherein the employee list indicates a skill level and a seniority level of each ofthe employees.
10. A computer program as recited in claim 7, wherein an availability of the employees is specified by days of the week and hours ofthe day.
11. A computer program as recited in claim 7, wherein the employee information further includes at least one of a minimum and a maximum time the employees may work before the labor regulations require a break, a maximum time the employees may work before being paid overtime per the labor regulations, and minimum and maximum shift lengths as required by the labor regulations.
12. A computer program as recited in claim 7, wherein the schedule is further generated based on policies of a business entity.
13. A system for organizing resources for effective utilization in task completion, comprising: (a) logic that generates a list of tasks requiring completion; (b) logic that correlates a list of employees to the list of tasks requiring completion;
(c) logic that associates a list of resources to the list of tasks requiring completion;
(d) logic that specifies resource information including which ofthe resources are to be used for facilitating the completion ofthe tasks by the employees; (e) logic that defines employee information including compensation and scheduling conditions based on labor regulations;
(f) logic that generates a schedule based on the resource information and the employee information in order to complete the tasks; and
(g) logic that stores the schedule in a storage.
14. A system as recited in claim 13, wherein the task list indicates when each task requires completion.
15. A system as recited in claim 13, wherein the employee list indicates a skill level and a seniority level of each ofthe employees.
16. A system as recited in claim 13, wherein an availability ofthe employees is specified by days ofthe week and hours ofthe day.
17. A system as recited in claim 13, wherein the employee information further includes at least one of a minimum and a maximum time the employees may work before the labor regulations require a break, a maximum time the employees may work before being paid overtime per the labor regulations, and minimum and maximum shift lengths as required by the labor regulations.
18. A system as recited in claim 13, wherein the schedule is further generated based on policies of a business entity.
19. A method for organizing task information during schedule generation comprising the steps of:
(a) providing a task list which defines a plurality of tasks which require completion;
(b) determining task relations among the tasks;
(c) determining resources required for completion ofthe tasks;
(d) generating a schedule for completion of the tasks based on the task relations and the resources; and (e) outputting the schedule.
20. A method as recited in claim 19, wherein the task list indicates when each task requires completion, a required skill level of an employee for completion of each task, and a percentage of an employee's time that it takes to complete each task.
21. A method as recited in claim 20, wherein the task list indicates whether each task may be split, whether each task is a pool task, whether the required skill level may be changed, and whether a break is permitted during completion of each task.
22. A method as recited in claim 20, wherein the task relations include a relative order in which the tasks may be completed.
23. A method as recited in claim 19, wherein the task relations are grouped.
24. A method as recited in claim 19, wherein the schedule is further generated based on policies of a business entity.
25. A method as recited in claim 19, wherein quantities and capacities ofthe resources are determined and the schedule is based on the quantities and the capacities ofthe resources.
26. A computer program for organizing task information during schedule generation comprising:
(a) a code segment that provides a task list which defines a plurality of tasks which require completion;
(b) a code segment that determines task relations among the tasks;
(c) a code segment that determines resources required for completion ofthe tasks; (d) a code segment that generates a schedule for completion of the tasks based on the task relations and the resources; and (e) a code segment that outputs the schedule.
27. A computer program as recited in claim 26, wherein the task list indicates when each task requires completion, a required skill level of an employee for completion of each task, and a percentage of an employee's time that it takes to complete each task.
28. A computer program as recited in claim 27, wherein the task list indicates whether each task may be split, whether each task is a pool task, whether the required skill level may be changed, and whether a break is permitted during completion of each task.
29. A computer program as recited in claim 26, wherein the task relations include a relative order in which the tasks may be completed.
30. A computer program as recited in claim 26, wherein the task relations are grouped.
31. A computer program as recited in claim 26, wherein the schedule is further generated based on policies of a business entity.
32. A computer program as recited in claim 26, wherein quantities and capacities ofthe resources are determined and the schedule is based on the quantities and the capacities ofthe resources.
33. A system for organizing task information during schedule generation comprising:
(a) logic that provides a task list which defines a plurality of tasks which require completion;
(b) logic that determines task relations among the tasks;
(c) logic that determines resources required for completion ofthe tasks; (d) logic that generates a schedule for completion ofthe tasks based on the task relations and the resources; and (e) logic that outputs the schedule.
34. A system as recited in claim 33, wherein the task list indicates when each task requires completion, a required skill level of an employee for completion of each task, and a percentage of an employee's time that it takes to complete each task.
35. A system as recited in claim 34, wherein the task list indicates whether each task may be split, whether each task is a pool task, whether the required skill level may be changed, and whether a break is permitted during completion of each task.
36. A system as recited in claim 33, wherein the task relations include a relative order in which the tasks may be completed.
37. A system as recited in claim 33, wherein the task relations are grouped.
38. A system as recited in claim 33, wherein the schedule is further generated based on policies of a business entity.
39. A method for generating a preliminary draft of a schedule comprising the steps of: (a) providing a task list which defines a plurality of tasks which require completion;
(b) prioritizing each ofthe tasks ofthe task list;
(c) defining time boundaries for completion of each ofthe tasks;
(d) generating a schedule by placing each ofthe tasks on the schedule in order of priority and based on the time boundaries; and (e) outputting the schedule.
40. A method as recited in claim 39, wherein the time boundaries for each ofthe tasks are defined by a start time of the schedule, a duration of each ofthe tasks, and a slide of each of the tasks.
41. A method as recited in claim 39, wherein the schedule is generated using rule-based logic.
42. A method as recited in claim 39, wherein the schedule is further generated based on policies of a business entity.
43. A method as recited in claim 39, and further comprising the step of optimizing the schedule.
44. A method as recited in claim 43, wherein the step of optimizing the schedule includes the steps of: dividing the preliminary draft of the schedule into different shifts; inserting breaks in the shifts; determining a level of skill required during each shift; and adjusting the preliminary draft ofthe schedule based on the level of skill required in order to generate an optimized schedule.
45. A computer program for generating a preliminary draft of a schedule comprising:
(a) a code segment that provides a task list which defines a plurality of tasks which require completion;
(b) a code segment that prioritizes each ofthe tasks of the task list;
(c) a code segment that defines time boundaries for completion of each ofthe tasks; (d) a code segment that generates a schedule by placing each ofthe tasks on the schedule in order of priority and based on the time boundaries; and
(e) a code segment that outputs the schedule.
46. A computer program as recited in claim 45, wherein the time boundaries for each ofthe tasks are defined by a start time of the schedule, a duration of each ofthe tasks, and a slide of each ofthe tasks.
47. A computer program as recited in claim 45, wherein the schedule is generated using rule- based logic.
48. A computer program as recited in claim 45, wherein the schedule is further generated based on policies of a business entity.
49. A computer program as recited in claim 45, and further comprising a code segment that optimizes the schedule.
50. A computer program as recited in claim 49, wherein the code segment that optimizes the schedule is executed by: a code segment that divides the preliminary draft ofthe schedule into different shifts; a code segment that inserts breaks in the shifts; a code segment that determines a level of skill required during each shift; and a code segment that adjusts the preliminary draft of the schedule based on the level of skill required in order to generate an optimized schedule.
51. A system for generating a preliminary draft of a schedule comprising:
(a) logic that provides a task list which defines a plurality of tasks which require completion;
(b) logic that prioritizes each of the tasks of the task list;
(c) logic that defines time boundaries for completion of each of the tasks;
(d) logic that generates a schedule by placing each ofthe tasks on the schedule in order of priority and based on the time boundaries; and
(e) logic that outputs the schedule.
52. A system as recited in claim 51 , wherein the time boundaries for each of the tasks are defined by a start time ofthe schedule, a duration of each of the tasks, and a slide of each ofthe tasks.
53. A system as recited in claim 51, wherein the schedule is generated using rule-based logic.
54. A system as recited in claim 51 , wherein the schedule is further generated based on policies of a business entity.
55. A system as recited in claim 51, and further comprising a logic that optimizes the schedule.
56. A system as recited in claim 55, wherein the logic that optimizes the schedule is executed by: logic that divides the preliminary draft ofthe schedule into different shifts; logic that inserts breaks in the shifts; logic that determines a level of skill required during each shift; and logic that adjusts the preliminary draft ofthe schedule based on the level of skill required in order to generate an optimized schedule.
57. A method for optimizing a schedule comprising the steps of:
(a) providing a preliminary schedule for a predetermined location;
(b) dividing the preliminary schedule into different shifts; (c) inserting breaks in the shifts;
(d) determining a level of skill required during each shift at the predetermined location;
(e) adjusting the preliminary schedule based on the level of skill required in order to generate an optimized schedule; and
(f) outputting the optimized schedule.
58. A method as recited in claim 57, wherein the preliminary schedule is generated by: providing a task list which defines a plurality of tasks which require completion; prioritizing each ofthe tasks ofthe task list; defining time boundaries for completion of each ofthe tasks; generating a schedule by placing each ofthe tasks on the schedule in order of priority and based on the time boundaries.
59. A method as recited in claim 57, wherein the schedule is divided into different shifts based on predetermined minimum shift lengths and maximum shift lengths.
60. A method as recited in claim 57, wherein the schedule is divided into different shifts based on employee preferences.
61. A method as recited in claim 57, wherein the preliminary schedule is adjusted in order to reduce a maximum level of skill required during the shifts at the predetermined location.
62. A method as recited in claim 61, wherein the preliminary schedule is adjusted in order to reduce the maximum level of skill required so as not to exceed an available level of skill at the predetermined location.
63. A computer program for optimizing a schedule comprising:
(a) a code segment that provides a preliminary schedule for a predetermined location; (b) a code segment that divides the preliminary schedule into different shifts;
(c) a code segment that inserts breaks in the shifts;
(d) a code segment that determines a level of skill required during each shift at the predetermined location;
(e) a code segment that adjusts the preliminary schedule based on the level of skill required in order to generate an optimized schedule; and
(f) a code segment that outputs the optimized schedule.
64. A computer program as recited in claim 63, wherein the preliminary schedule is executed by: a code segment that provides a task list which defines a plurality of tasks which require completion; a code segment that prioritizes each ofthe tasks ofthe task list; a code segment that defines time boundaries for completion of each ofthe tasks; a code segment that generates a schedule by placing each ofthe tasks on the a schedule in order of priority and based on the time boundaries.
65. A computer program as recited in claim 63, wherein the schedule is divided into different shifts based on predetermined minimum shift lengths and maximum shift lengths.
66. A computer program as recited in claim 63, wherein the schedule is divided into different shifts based on employee preferences.
67. A computer program as recited in claim 63, wherein the preliminary schedule is adjusted in order to reduce a maximum level of skill required during the shifts at the predetermined location.
68. A computer program as recited in claim 67, wherein the preliminary schedule is adjusted in order to reduce the maximum level of skill required so as not to exceed an available level of skill at the predetermined location.
69. A system for optimizing a schedule comprising:
(a) logic that provides a preliminary schedule for a predetermined location;
(b) logic that divides the preliminary schedule into different shifts; (c) logic that inserts breaks in the shifts;
(d) logic that determines a level of skill required during each shift at the predetermined location;
(e) logic that adjusts the preliminary schedule based on the level of skill required in order to generate an optimized schedule; and
(f) logic that outputs the optimized schedule.
70. A system as recited in claim 69, wherein the preliminary schedule is executed by: logic that provides a task list which defines a plurality of tasks which require completion; logic that prioritizes each ofthe tasks ofthe task list; logic that defines time boundaries for completion of each ofthe tasks; logic that generates a schedule by placing each ofthe tasks on the a schedule in order of priority and based on the time boundaries.
71. A system as recited in claim 69, wherein the schedule is divided into different shifts based on predetermined minimum shift lengths and maximum shift lengths.
72. A system as recited in claim 69, wherein the schedule is divided into different shifts based on employee preferences.
63. A system as recited in claim 69, wherein the preliminary schedule is adjusted in order to reduce a maximum level of skill required during the shifts at the predetermined location.
64. A system as recited in claim 63, wherein the preliminary schedule is adjusted in order to reduce the maximum level of skill required so as not to exceed an available level of skill at the predetermined location.
65. A method for assigning a plurality of employees to a schedule comprising the steps of:
(a) providing a schedule including a plurality of a shifts each having an associated required skill level;
(b) determining a skill level, priority, and availability of each of a plurality of employees;
(c) assigning the employees to the shifts ofthe schedule based on the skill level, priority, and availability ofthe employees; and
(d) storing the schedule in a storage.
66. A method as recited in claim 65, and further comprising the step of determining a total employee availability for various time increments on the schedule, wherein the employees are first assigned to shifts having a lowest employee availability.
67. A method as recited in claim 66, wherein the time increments are days of the week.
68. A method as recited in claim 65, and further comprising the steps of:
(a) determining preferences ofthe employees; and
(b) assigning the employees to the shifts of the schedule based on the preferences.
69. A method as recited in claim 65, and further comprising the steps of: (a) determining labor regulations; and
(b) assigning the employees to the shifts ofthe schedule based on the labor regulations.
70. A method as recited in claim 65, and further comprising the step of generating a notification upon an inability to assign the employees to one ofthe shifts ofthe schedule.
71. A computer program for assigning a plurality of employees to a schedule comprising:
(a) a code segment that provides a schedule including a plurality of a shifts each having an associated required skill level;
(b) a code segment that determines a skill level, priority, and availability of each of a plurality of employees; (c) a code segment that assigns the employees to the shifts ofthe schedule based on the skill level, priority, and availability ofthe employees; and
(d) a code segment that stores the schedule in a storage.
72. A computer program as recited in claim 71, and further comprising a code segment that determines a total employee availability for various time increments on the schedule, wherein the employees are first assigned to shifts having a lowest employee availability.
73. A computer program as recited in claim 72, wherein the time increments are days ofthe week.
74. A computer program as recited in claim 71, and further comprising: (a) a code segment that determines preferences ofthe employees; and
(b) a code segment that assigns the employees to the shifts ofthe schedule based on the preferences.
75. A computer program as recited in claim 71 , and further comprising: (a) a code segment that determines labor regulations; and (b) a code segment that assigns the employees to the shifts ofthe schedule based on the labor regulations.
76. A computer program as recited in claim 71 , and further comprising a code segment that generates a notification upon an inability to assign the employees to one ofthe shifts of the schedule.
77. A system for assigning a plurality of employees to a schedule comprising:
(a) logic that provides a schedule including a plurality of a shifts each having an associated required skill level;
(b) logic that determines a skill level, priority, and availability of each of a plurality of employees; (c) logic that assigns the employees to the shifts ofthe schedule based on the skill level, priority, and availability of the employees; and (d) logic that stores the schedule in a storage.
78. A system as recited in claim 77, and further comprising logic that determines a total employee availability for various time increments on the schedule, wherein the employees are first assigned to shifts having a lowest employee availability.
79. A system as recited in claim 78, wherein the time increments are days ofthe week.
80. A system as recited in claim 77, and further comprising:
(a) logic that determines preferences ofthe employees; and
(b) logic that assigns the employees to the shifts ofthe schedule based on the preferences.
81. A system as recited in claim 77, and further comprising: (a) logic that determines labor regulations; and (b) logic that assigns the employees to the shifts ofthe schedule based on the labor regulations.
82. A system as recited in claim 77, and further comprising logic that generates a notification upon an inability to assign the employees to one of the shifts ofthe schedule.
PCT/US2000/024828 1999-09-09 2000-09-08 Resource-based task scheduling system and method WO2001018683A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU71298/00A AU7129800A (en) 1999-09-09 2000-09-08 Resource-based task scheduling system and method

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
US39324099A 1999-09-09 1999-09-09
US39382799A 1999-09-09 1999-09-09
US39385299A 1999-09-09 1999-09-09
US39321999A 1999-09-09 1999-09-09
US39384699A 1999-09-09 1999-09-09
US09/393,846 1999-09-09
US09/393,219 1999-09-09
US09/393,827 1999-09-09
US09/393,240 1999-09-09
US09/393,852 1999-09-09

Publications (2)

Publication Number Publication Date
WO2001018683A2 true WO2001018683A2 (en) 2001-03-15
WO2001018683A8 WO2001018683A8 (en) 2001-11-15

Family

ID=27541431

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/024828 WO2001018683A2 (en) 1999-09-09 2000-09-08 Resource-based task scheduling system and method

Country Status (2)

Country Link
AU (1) AU7129800A (en)
WO (1) WO2001018683A2 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2873830A1 (en) * 2004-07-30 2006-02-03 Commissariat Energie Atomique TASK PROCESSING ORDERING METHOD AND DEVICE FOR CARRYING OUT THE METHOD
WO2015111023A1 (en) * 2014-01-27 2015-07-30 Kesarwani Gyan Prakash An improved method of appraisal system, performance analysis and task scheduling in an organization
US9418348B2 (en) 2014-05-05 2016-08-16 Oracle International Corporation Automatic task assignment system
US9423943B2 (en) 2014-03-07 2016-08-23 Oracle International Corporation Automatic variable zooming system for a project plan timeline
US9710571B2 (en) 2014-03-07 2017-07-18 Oracle International Corporation Graphical top-down planning system
US10083412B2 (en) 2015-05-14 2018-09-25 Atlassian Pty Ltd Systems and methods for scheduling work items
US10496943B2 (en) 2015-03-30 2019-12-03 Oracle International Corporation Visual task assignment system
US10643157B2 (en) 2015-02-03 2020-05-05 Oracle International Corporation Task progress update history visualization system
US10853746B2 (en) 2015-05-14 2020-12-01 Atlassian Pty Ltd. Systems and methods for scheduling work items
US20230095600A1 (en) * 2021-09-24 2023-03-30 Hexagon Technology Center Gmbh Scheduling multiple work projects with a shared resource

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106411990B (en) * 2016-05-13 2019-11-29 陕西师范大学 A kind of the network insertion management-control method and system of group activity

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
No Search *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2873830A1 (en) * 2004-07-30 2006-02-03 Commissariat Energie Atomique TASK PROCESSING ORDERING METHOD AND DEVICE FOR CARRYING OUT THE METHOD
WO2006021713A1 (en) * 2004-07-30 2006-03-02 Commissariat A L'energie Atomique Task processing scheduling method and device for implementing same
US8522243B2 (en) 2004-07-30 2013-08-27 Commissariat A L'energie Atomique Method for configuring resources and scheduling task processing with an order of precedence
WO2015111023A1 (en) * 2014-01-27 2015-07-30 Kesarwani Gyan Prakash An improved method of appraisal system, performance analysis and task scheduling in an organization
US9710571B2 (en) 2014-03-07 2017-07-18 Oracle International Corporation Graphical top-down planning system
US9423943B2 (en) 2014-03-07 2016-08-23 Oracle International Corporation Automatic variable zooming system for a project plan timeline
US9418348B2 (en) 2014-05-05 2016-08-16 Oracle International Corporation Automatic task assignment system
US10643157B2 (en) 2015-02-03 2020-05-05 Oracle International Corporation Task progress update history visualization system
US10496943B2 (en) 2015-03-30 2019-12-03 Oracle International Corporation Visual task assignment system
US10083412B2 (en) 2015-05-14 2018-09-25 Atlassian Pty Ltd Systems and methods for scheduling work items
US10853746B2 (en) 2015-05-14 2020-12-01 Atlassian Pty Ltd. Systems and methods for scheduling work items
US20230095600A1 (en) * 2021-09-24 2023-03-30 Hexagon Technology Center Gmbh Scheduling multiple work projects with a shared resource
US11948107B2 (en) * 2021-09-24 2024-04-02 Hexagon Technology Center Gmbh Scheduling multiple work projects with a shared resource

Also Published As

Publication number Publication date
WO2001018683A8 (en) 2001-11-15
AU7129800A (en) 2001-04-10

Similar Documents

Publication Publication Date Title
Englund et al. Creating an environment for successful projects
Swanson Analysis for improving performance: Tools for diagnosing organizations and documenting workplace expertise
Wiig Introducing Knowledge
Chenhall et al. The role of management control systems in planned organizational change: An analysis of two organizations
Coetzee et al. Career counselling and guidance in the workplace: A manual for career practitioners
Dillard et al. Enterprise resource planning systems and communicative action
Sauber et al. Developing supply chain management program: a competency model
Wiig The intelligent enterprise and knowledge management
Hughes et al. Managing human resource development programs: Current issues and evolving trends
Martin et al. Realigning top management's strategic change actions for ERP implementation: how specializing on just cultural and environmental contextual factors could improve success
Loo Training in project management: a powerful tool for improving individual and team performance
WO2001018683A2 (en) Resource-based task scheduling system and method
Humphreys Designing a management development programme for procurement executives
Kennedy et al. Enabling the management accountant to become a business partner: Organizational and verbal analysis toolkit
WO2000067179A2 (en) System, method and article of manufacture for a human performance framework with a holistic approach to linking
Phillips et al. ROI fundamentals: Why and when to measure return on investment
Monger Managerial Decision Making with Technology: Highlights of the Literature
Shayo et al. An exploratory study of the value of pretraining end‐user participation
Daghfous Industrial modernisation initiatives: a technology transfer, organisational learning, and knowledge management perspective
Viardot Human resources management in large information-based services companies: towards a common framework?
Levonen The beginnings of a new normal: A large-scale agile transformation in a technology company
Bondarouk et al. Implementation of collaborative technologies as a learning process
Bikson et al. Computer-Mediated Work
Smeltzer A behavior systems analysis approach to designing a high-impact knowledge management system
Yaure A case study analysis of technology decision making at a higher education institution

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CU CZ DE DK DZ EE ES FI GB GE GH GM HR HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
AK Designated states

Kind code of ref document: C1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CU CZ DE DK DZ EE ES FI GB GE GH GM HR HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: C1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

D17 Declaration under article 17(2)a
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase in:

Ref country code: JP