This invention relates to a method and system for constraint-based project scheduling and to a data storage medium containing computer readable code means for instructing a computer system to execute a method for constraint-based project scheduling.
Project planning typically involves at least five stages, namely, strategic, master, phase, look-ahead, and commitment. The focus and method for each stage are different. At present, critical path method (CPM) based project management tools have been widely used in high-level planning (i.e., master and phase). However, these CPM tools are generally unsuitable for low-level planning (i.e., look-ahead and commitment) because these tools ignore many indispensable prerequisite constraints (e.g., resource and information availabilities, contract, and safety), which are trivial at high-level planning but important at low-level planning. Changing the scope of planning leads to a substantial reform of mindset and methodology in terms of shifting the management focus from big activities to smaller tasks and constraints. At low-level planning stage, activities need to be broken down into manageable-sized tasks and the impact of non-precedence constraints should be accounted for in order to make realistic schedules. The basic CPM approach works well in high-level planning but may be ineffective in the scope of low-level planning.
A need therefore exists to provide a method and system for constraint-based project scheduling that addresses at least one of the above-mentioned problems.
In accordance with a first aspect of the present invention, there is provided a method of constraint-based project scheduling comprising maintaining a first database containing project scheduling data associated with at least a current period and a next period of an assignment plan; maintaining a second database containing data associated with a look ahead plan, the look ahead plan covering at least an overlap portion of the next period of the assignment plan such that the look ahead plan overlaps the assignment plan; transferring data associated with one or more shielded tasks having a starting time within the overlap portion of the next period from the second database into the first database as a modification of the project scheduling data associated with the next period of the assignment plan; and executing the project according to the next period of the assignment plan based on the modified project scheduling data associated with the next period in the first database.
The method may further comprise displaying respective portions of the assignment plan and the look ahead plan based on the data contained in the first and second databases respectively and including the overlap portion of the next period.
The method may further comprise generating an advisory schedule path based on processing the project scheduling data in the second database.
The method may further comprise updating the advisory schedule path based on modifications of project scheduling data in the second database.
The advisory schedule path may be generated based on the Augmented Precedence Diagram Method (APDM) or the Augmented Critical Path Method (ACPM).
The method may further comprise displaying the advisory schedule path on the displayed look ahead plan.
The look ahead plan may comprise a pulling period, and the method further comprises manipulating the project scheduling data associated with the pulling period based on analysis of constraints and the advisory schedule path.
The method may further comprise maintaining a third database containing data associated with the constraints, and updating status information of the constraints as a manipulation of the data in the third database.
The data associated with the constraints may comprise a set of verification parameters for each constraint for tracking and managing a hidden flow associated with the project.
Only data associated with tasks shielded from uncertainties in the constraints associated with said respective tasks may be available for transfer into the first database.
Data associated with tasks having uncertainties in the constraints associated with said respective tasks may not be available for transfer into the first database, and data representing starting dates of said respective tasks in the look ahead plan is manipulated to be outside at least the overlap portion of the next period.
In accordance with a second aspect of the present invention, there is provided a system for constraint-based project scheduling comprising a first database containing project scheduling data associated with at least a current period and a next period of an assignment plan; a second database containing data associated with a look ahead plan, the look ahead plan covering at least an overlap portion of the next period of the assignment plan such that the look ahead plan overlaps the assignment plan; and a processor unit for transferring data associated with one or more shielded tasks having a starting time within the overlap portion of the next period from the second database into the first database as a modification of the project scheduling data associated with the next period of the assignment plan.
The system may further comprise a display for displaying respective portions of the assignment plan and the look ahead plan based on the data contained in the first and second databases respectively and including the overlap portion of the next period.
The processor unit may generate an advisory schedule path based on processing the project scheduling data in the second database.
The processor unit may update the advisory schedule path based on modifications of project scheduling data in the second database.
The advisory schedule path may be generated by the processor unit based on the Augmented Precedence Diagram Method (APDM) or the Augmented Critical Path Method (ACPM).
The display may further display the advisory schedule path on the displayed look ahead plan.
The look ahead plan may comprise a pulling period, and the processor unit is utilised to manipulate the project scheduling data associated with the pulling period based on analysis of constraints and the advisory schedule path.
The system may further comprise a third database containing data associated with the constraints, and the data processor is utilised to update status information of the constraints as a manipulation of the data in the third database.
The data associated with the constraints may comprise a set of verification parameters for each constraint for tracking and managing a hidden flow associated with the project.
One data associated with tasks shielded from uncertainties in the constraints associated with said respective tasks may be available for transfer into the first database.
Data associated with tasks having uncertainties in the constraints associated with said respective tasks may not be available for transfer into the first database, and data representing starting dates of said respective tasks in the look ahead plan is manipulated to be outside at least the overlap portion of the next period.
In accordance with a third aspect of the present invention, there is provided a system of constraint-based project scheduling comprising means for maintaining a first database containing project scheduling data associated with at least a current period and a next period of an assignment plan; means for maintaining a second database containing data associated with a look ahead plan, the look ahead plan covering at least an overlap portion of the next period of the assignment plan such that the look ahead plan overlaps the assignment plan; means for transferring data associated with one or more shielded tasks having a starting time within the overlap portion of the next period from the second database into the first database as a modification of the project scheduling data associated with the next period of the assignment plan.
In accordance with a fourth aspect of the present invention, there is provided a data storage medium containing computer readable code means for instructing a computer system to execute a method for constraint-based project scheduling comprising maintaining a first database containing project scheduling data associated with at least a current period and a next period of an assignment plan; maintaining a second database containing data associated with a look ahead plan, the look ahead plan covering at least an overlap portion of the next period of the assignment plan such that the look ahead plan overlaps the assignment plan; and transferring data associated with one or more shielded tasks having a starting time within the overlap portion of the next period from the second database into the first database as a modification of the project scheduling data associated with the next period of the assignment plan.
It is noted that while the terms “first”, “second”, “third” etc databases have been used in the summary and the claims, the present invention is not limited to implementing separate databases, but may also be implemented by integrating the “first”, “second”, “third” etc database contents in a single database structure.
Embodiments of the invention will be better understood and readily apparent to one of ordinary skill in the art from the following written description, by way of example only, and in conjunction with the drawings, in which:
Some portions of the description which follows are explicitly or implicitly presented in terms of algorithms and functional or symbolic representations of operations on data within a computer memory. These algorithmic descriptions and functional or symbolic representations are the means used by those skilled in the data processing arts to convey most effectively the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities, such as electrical, magnetic or optical signals capable of being stored, transferred, combined, compared, and otherwise manipulated.
Unless specifically stated otherwise, and as apparent from the following, it will be appreciated that throughout the present specification, discussions utilizing terms such as “scanning”, “calculating”, “determining”, “replacing”, “generating”, “initializing”, “outputting”, or the like, refer to the action and processes of a computer system, or similar electronic device, that manipulates and transforms data represented as physical quantities within the the computer system into other data similarly represented as physical quantities within the computer system or other information storage, transmission or display devices.
The present specification also discloses apparatus for performing the operations of the methods. Such apparatus may be specially constructed for the required purposes, or may comprise a general purpose computer or other device selectively activated or reconfigured by a computer program stored in the computer. The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus. Various general purpose machines may be used with programs in accordance with the teachings herein. Alternatively, the construction of more specialized apparatus to perform the required method steps may be appropriate. The structure of a conventional general purpose computer will appear from the description below.
In addition, the present specification also implicitly discloses a computer program, in that it would be apparent to the person skilled in the art that the individual steps of the method described herein may be put into effect by computer code. The computer program is not intended to be limited to any particular programming language and implementation thereof. It will be appreciated that a variety of programming languages and coding thereof may be used to implement the teachings of the disclosure contained herein. Moreover, the computer program is not intended to be limited to any particular control flow. There are many other variants of the computer program, which can use different control flows without departing from the spirit or scope of the invention.
Furthermore, one or more of the steps of the computer program may be performed in parallel rather than sequentially. Such a computer program may be stored on any computer readable medium. The computer readable medium may include storage devices such as magnetic or optical disks, memory chips, or other storage devices suitable for interfacing with a general purpose computer. The computer readable medium may also include a hard-wired medium such as exemplified in the Internet system, or wireless medium such as exemplified in the GSM mobile telephone system. The computer program when loaded and executed on such a general-purpose computer effectively results in an apparatus that implements the steps of the preferred method.
Example embodiments of the present invention involve the use of an augmented precedence diagram method (APDM) or Augmented critical path method (ACPM) [see e.g. Chua, K. H. D., Shen, L. J., and Bok, S. H. (2003). Constraint-based Planning with Integrated Production Scheduler over Internet. Journal of Construction Engineering and Management. 129(3), 293-301], a constraint tracking method, and task buffer management for constraint-based planning and scheduling at the ‘pre-production’ stage, in particular the look-ahead and commitment planning stages in project planning. The methods and systems of the example embodiments may be utilised in various industries involving massive project management e.g. Construction, Manufacturing, Engineering, Research, etc. Implementations illustrated in the example embodiments may be integrated as a complement to project planning software such as Primavera, Microsoft Project or the like, or exist on its own as a project planning software.
In an example embodiment of the present invention, there is provided a constraint-based scheduling tool, hereinafter referred to as an Integrated Process Scheduler (IPS), for making reliable plans based on the principles of lean thinking [see e.g. Koskela, L. (1992). “Application of the new production philosophy to construction.” Tech Report No. 72, Center for Integrated Facility Engineering, Dept. Of Civil Engineering, Stanford University, CA., or Ballard, G. and Howell. G. (1998). “Shielding production: essential step in production control.” Journal of Construction Engineering and Management, ASCE, 124(1), 11-17] and theory of constraints [ see e.g. Goldratt, E. M. (1990), What is This Thing Called Theory of Constraints and How Should it be Implemented? North River Press, New York, N.Y.].
The lean thinking philosophy advocates eliminating hidden flows to improve project performance, in terms of quality of work plan, timeliness of delivery, and transparency of production monitoring and control, In particular, the focus of management extends from the traditionally improving task productivity to a more comprehensive transformation-flow-value view that reforms project management in a holistic way.
The theory of constraints discovered that only a small number of constraints are critical from the system point of view, though the rest may be locally important within a particular scope. Critical constraints greatly affect system performance in terms of reliability and productivity. In most cases, they are the binding factors on the system bottlenecks. Eliminating these constraints or reducing their variability can significantly improve the overall system performance. In other words, constraints are not equally important. Higher priority should be granted to the critical constraints, especially when the available resources are limited.
The IPS of the example embodiment can help to address project vulnerabilities due to uncertainties. It manages constraints hidden in, for example, the processes, the supply chain, and information flow, including constraints relating to quality, safety and contracts. Constraints that may cause bottlenecks can be effectively identified and removed in advance.
In the example embodiment a look-ahead plan is implemented as a number of task buffers arranged along a time axis of the look-ahead plan. Task buffer management is employed such that the position of any task is now determined not only by the precedence relationship in the project network, but also by the RI constraint status based on some task buffer policy. Each task buffer subjects the tasks to some policy to filter out unqualified tasks whose constraints status do not satisfy the rules. The tasks are prevented from advancing to subsequent buffers unless the constraint policy is satisfied. This consequently triggers the warning of delays electronically in the schedule. In order to pull the schedule to its original plan, management directives are enforced: either the RI constraints will be expedited or the schedule will be updated to reflect the current reality so that downstream workflow will not suffer from further disturbance.
The Graphical User Interface (GUI) of the IPS comprises two independent windows, an assignment plan window 702 and a look ahead plan window 704. Windows 702, 704 are individual time charts displaying activities, tasks, constraints and the APDM path. A task is represent by a rectangular bar e.g. task 726. Constraints are represented by a dot e.g. dot 728. Activities 730 are placed above the tasks in the IPS GUI. The assignment plan window 702 comprises assigned activities, tasks and constraints. The look-ahead plan window 704 comprises assigned and unassigned activities, tasks and constraints. The assignment plan window 702 consists of a previous period section 706, a current period section 708, and a next period section 710. The look-ahead plan window 704 consists of a previous period section 712, a current period section 714, a shielding buffer 718 which comprises a next period section 716 (also referred to as working buffer), a pulling buffer 720, and a screening buffer 722.
As such, the assignment plan 702 and the look-ahead plan 704 are displayed in a “split” fashion on the GUI, with a temporal “overlap” including an overlap for the next period 710 of the assignment plan 702, with the next period or working buffer portion 718 of the shielding buffer 716 of the look-ahead plan 704. It will be appreciated that the split display may be implemented in a number of different ways, including side-by-side, concatenated etc. and is not limited to the arrangement depicted in the drawings in this description.
The previous period sections 706, 712 of the assignment and look-ahead plans respectively store the historical data of previous weeks or days, depending on the time frame defined by user. The current period sections 708, 714 of the assignment and look-ahead plans respectively represent the current working week in which the purpose is to achieve smooth production and high Percent Plan Completion (PPC), that is the percent of tasks in the assignment plan 702 that is completed with respect to the number of assigned tasks.
There are three types of task schedules represented on the GUI of the example embodiment, namely an advisory schedule as represented by the advisory path task bars 724, a planned schedule as represented by the sequence of tasks 734, 732 in the look-ahead plan 704, and an assignment schedule as represented by the sequence of tasks 726, 736 displayed on the assignment plan 702.
The advisory schedule or path 724 is typically an early start path computed based on the augmented critical path method (ACPM) or the augmented precedence diagram method (APDM). In the example embodiment, the APDM is used. The advisory schedule 724 represents a feasible and reliable schedule accounting for the precedence relationships of tasks and the availabilities of RI constraints. The planned schedule 732 represents an independent fine-tuned production schedule on top of the advisory schedule 724. The assignment schedule 736 in the assignment plan window 702 is created once tasks in the look-ahead plan window 704 are assigned for execution. The assignment schedule 736 is not necessarily the same as the planned schedule 734. It depends on resource availability or other considerations at the time of making the assignment. In
Having the assignment and look-ahead plans in two separate windows and with a temporal overlap advantageously enhances project schedule displaying for improved visualisation and comprehension of the project flow and can aid in ensuring that constraints are resolved and resources are available for each task requiring certain resources before commencement. The look ahead window 704 displays a workable backlog which the user can view and make contingency plans. In contrast, having a backlog being pushed directly in a continuously displayed combined assignment and look-ahead plan, i.e. with no temporal overlap between the assignment and look-ahead plan, in practice often causes contingency planning to involve delaying tasks “at the least minute” at the boundary between the assignment plan and the look-ahead plan, without a convenient visualization and assessment opportunity for possible follow-on effects and/or workable task flow solutions. Furthermore, in the example embodiment, the displayed advisory schedule advantageously facilitates the user coming up with a reliable plan by providing advice that takes into consideration constraints.
In the example embodiment, statuses of constraints are either committed, confirmed or fulfilled. ‘Fulfilled’ means the constraint has already been resolved e.g. a promised resource has been delivered. ‘Committed’ means that the constraint has just been created or a promise or plans (without guarantees) for resolving the constraint has been made e.g. a contract with fixed deadline to deliver a certain resource is made that is subject to change due to certain hidden flows. ‘Confirmed’ is the status where there is full confidence that the constraint can be resolved but is not yet resolved e.g. it is guaranteed by the vendor that the resource will be delivered on time but has not yet been fulfilled. For example, in
In addition, data pertaining to all executed tasks (e.g. task bar 726) will be archived and can be used for generating project reports 744 such as Percent Plan Completion Reports, Variance Reports, ‘To Do’/Watch list of constraints, Key Constraint reports, full Constraint Watch List Summary, etc. Similarly, the reports can be generated from the look-ahead plan 704, and such reports may be used to guide discussion on the work ahead. Reports on the assignment plan for the next period can also be generated to guide site work.
The purpose and features of each task buffer in the example embodiment will now be further described.
An example work flow a user may adopt when using the IPS of the example embodiment is as follow:
The example embodiment described above also incorporates integrated constraints in low-level plans (i.e., look-ahead plan and commitment plan) to model hidden resource and information flows and perform schedule analysis using the APDM or ACPM. The augmented path based on either type of analysis provides advisory information to manage the task and constraints. A pull driven schedule control workflow is implemented through proactively tracking constraint status, selectively expediting certain key constraints, and shielding pre-production work tasks from uncertainties prior to work assignments. A series of task buffers (namely, screening, pulling, and shielding) are employed and customized buffer policies can be assigned to discipline the rules for constraint management, which eventually help achieve reliable plans and better project performance [ see e.g. Chua, K. H. D., Shen, L. J., and Bok, S. H. (2003). Constraint-based Planning with Integrated Production Scheduler over Internet. Journal of Construction Engineering and Management. 129(3), 293-301, or Chua, K. H. D., and Shen, L. J. (2001). Constraint Modeling and Buffer Management with Integrated Production Scheduler. Proceeding of 9th International Conference on Lean Construction, the National University of Singapore]. Compared to existing uses of ADPM or ACPM however, in using the ADPM or ACPM as an advisory path or schedule in conjunction with the split display of overlapping assignment and look-ahead plans in the example embodiments facilitates identification of suitable work flows in project planning.
The IPS of the example embodiment facilitates a method of identifying schedule constraints, creating a constraint library, tracking constraint status, analyzing constraint impact, resolving constraints in multiple stages, expediting key constraints, and establishing reliable work plans attributed to the proactive constraint management workflow. A series of task buffers are defined by the IPS and buffer policies are disciplined to determine realistic task schedules according to the constraint status. With a focus on pre-production planning and scheduling, the IPS provides an integrated environment for constraint identification, classification, tracking, analysis, scheduling, and reporting. Hence, advantageously, uncertainties and conflicts are reduced, smooth production workflow is achieved, and plan reliability is enhanced.
To cope with uncertainties in, for example, a construction process, two measures are often adopted. One is increasing capacity at the right places. The other is adding temporal buffers (or inventories) big enough to reduce disruptions. However, these measures not only demand additional cost but also conceal the real problems that result in uncertainties and delays. Relying too much on redundant capacity and time buffers (as opposed to task buffers in the example embodiments) would inevitably introduce wastage in the process. Moreover, in many cases it is difficult to detect where the bottlenecks in a project are located and how they are formed. In the long run the two measures become ineffective.
In order to systematically get rid of uncertainties, the intrinsic causes should be examined. The conventional view of a project (especially in the construction industry) is represented as a conversion model [ see e.g. Koskela, L. (1992). “Application of the new production philosophy to construction.” Tech Report No. 72, Center for Integrated Facility Engineering, Dept. Of Civil Engineering, Stanford University, CA], in which many other indispensable elements in the project process are absent. One of the missing components in a conventional view of a project is the resource flow, which comprises a series of (non-conversion) activities representing the moving and waiting of resources before being processed, and thereafter inspected. Another instance is the information flow, which consists of (non-conversion) activities related to the deliveries of plans, drawings, and request-for-information (RFI). Other non-conversion activities include inspection, rework, and discard as shown in
In the example embodiment, identifying these “hidden” flows, i.e. the resource flow and information flow, enables to employ a better strategy in handling process uncertainties.
An effective way adopted by the example embodiment to diminish uncertainties is to invest in flow reliability [ see e.g. Koskela, L. (1992). “Application of the new production philosophy to construction.” Tech Report No. 72, Center for Integrated Facility Engineering, Dept. Of Civil Engineering, Stanford University, CA., or Koskela, L. (2000). An exploration towards a Production Theory and its Application to Construction. VTT Technical Research Center of Finland]. In the IPS framework, the Resource and Information (RI) availabilities representing flow constraints are incorporated in the schedule to improve plan reliability. Here, it is noted that IR is used as a generic term for flow constraints not limited to resources and information, but also including e.g. safety, quality, contracts etc.
As schematically illustrated in
The status of flow constraints can be monitored in the IPS as the constraints progress through multiple stages prior to delivery.
By implementing the checking of constraint status, the approach of project management changes from a push to a pull scheduling approach. In a manufacturing process, a push system releases a job precisely according to the prescribed schedule, which is made based on the forecast of demand and remains unmodified within a period of time no matter what is happening in the process. A pull system releases a job according to the request from downstream processes. In practice, the push system may be less effective when the demand varies frequently and radically. The pull system, on the other hand, is not easy to be implemented but can be much more effective when the demand fluctuates. Most real-world systems may have aspects of both push and pull [ see e.g. Hopp, W. J., and Spearman, M. L. (1996). Factory Physics: Foundations of Manufacturing Management. Irwin/McGraw-Hill, Boston, Mass.]. Similarly in a project, a push driven scheduling approach only works well when processes are very stable, which might not be the case in most complex work flow. The pull driven scheduling approach via proactively tracking constraint status and deploying preemptive measures in the example embodiment can be more flexible and effective in its response to delays and disruptions. It shifts the focus of management, from activities alone to both activities and flow constraints. Therefore, implementing a pull approach in the example embodiment greatly increases the opportunity to prevent potential flow problems from disturbing the main project process.
For example, in a construction process, the contrast between push and pull systems is depicted schematically in
In
The pull-driven schedule control is valuable for providing a better alternative to counteract uncertainties from the flow constraint perspective.
RI prerequisite C has to be delivered at EATC 504. Say for some reason, the delivery of RI prerequisite C is delayed, hence EATC 504 is delayed as indicated in
The example embodiment resolves such a problem in push schedule control by adopting the pull-driven schedule approach. That is, to detect the delay of EATC 504 earlier and assess if prerequisite C can be expedited to alleviate the delay of task B 502. If, for example, EATC 504 can be expedited (or pulled) to an earlier time as shown in
In the example embodiment, an Augmented Precedence Diagram Method (APDM) formulated using the concept of incorporating flow constraints (or RI constraints) in the conventional PDM to enhance schedule reliability is used instead of the existing ACPM.
The resulting schedules based on the APDM are more robust because uncertainties in terms of the RI constraints (of hidden flows) are explicitly identified and mitigated upon analysis, and subjected to the additional start and finish precedence constraints.
The following is a list of definitions for the variables used in the equations for APDM in the following description of the example embodiment.
Ti indicates Preceding Task i
Tj indicates Succeeding Task j
ES indicates Early start time, i.e. the earliest time a task can begin, subject to any time constraints (not incorporating RI prerequisite constraints).
LS indicates late start time, i.e. the latest time a task can begin without delaying the project (not incorporating RI prerequisite constraints).
LF indicates late finish time, i.e. the latest time a task can be finished without delaying the project (not incorporating RI prerequisite constraints).
FS indicates Finish to start precedence constraint, i.e. the task can only start after a specified minimum amount of time has elapsed after the preceding task has finished.
SS indicates Start to start precedence constraint, i.e. the task can only start after a specified minimum amount of time has elapsed after the preceding task has started.
SF indicates Start to finish precedence constraint, i.e. the task can only finish after a specified minimum amount of time has elapsed after the preceding task has started.
FF indicates Finish to finish precedence constraint, i.e. the task can only finish after a specified minimum amount of time has elapsed after the preceding task has finished.
FF also indicates Initial time, i.e. the earliest start time of any task in the project network.
FF also indicates Terminal time, i.e. the latest finish time of any task in the project network.
D indicates Task duration
EAT indicates Estimated available time, i.e. the expected time that a RI prerequisite constraint is fulfilled.
ES′ indicates Modified early start time, i.e. the earliest time a task can begin, subject to any time constraints incorporating RI prerequisite constraints.
The scheduled start time Sj for any task Tj in a project P is determined by the following condition to avoid delay in project completion:
ESj≦Sj≦LSj′ ∀Tj⊖P (1)
where
is the early start time of Tj, in which EFi=ESi+Di is the early finish time of Ti, Ti being the predecessors of Tj; Dj denotes the Duration of Tj; LSj=LFj−Dj is the late start time of Tj, in which
where LSk is the late start time of Tk, the successor of Tj. FS, FF, SS, and SF denote the finish-to-start, finish-to-finish, start-to-start, and start-to-finish precedence constraints, respectively.
Incorporating the RI constraint parameters, the APDM can be depicted as:
ES′j≦Sj≦LS′j ∀Tj⊖P (2)
where ES′j is the modified early start time of task Tj to account for reliable plan. The forward path considers the project start, precedence, EATjl and task start conditions. ES′j is given by,
subject to “task start condition” (3a)
Task start condition here include conditions such as “must start on”, “must start before”, “must start no later than” etc and also non-working day conditions.
in which EATjl represents the estimated available time for the lth constraint of task Tj. EF′j, LS′j, and LF′j are the modified early finish, late start, and late finish, respectively,
EF′
j
=ES′
j
+D
j, and (3b)
The backward path considers project finish and precedence. LF′j is given by,
In the above calculation, the APDM explicitly accounts for the constraints in the hidden flow through the EAT which would otherwise be omitted from the traditional PDM or CPM computations. The early and late times provided by the APDM gives the advisory schedule taking into consideration the RI availabilities so that the plan can be made more reliable.
In the example embodiment, a canvas view calculation modification of the APDM is performed as the schedule is displayed on the canvas (i.e. the GUI implemented as described above). This modification is based on the task buffer policies, i.e. subjecting the task to the filters based on the constraint status as described above.
In the example embodiment, the forward path considers project start, precedence, EATjl, task start conditions and buffer policy (to be discussed subsequently). EF′j is given by,
Using Canvas View Calculation, the backward path considers project finish and precedence. LF′j remains the same as equation 3c.
In the example embodiment, constraint tracking and resolving represent repetitive iterations at the low-level planning stage to identify and manage hidden flows. It is achieved through the concept of verificative parameters to represent the hidden flow (diagrammed in
Comparing with the traditional way of activity focused schedule, the constraint-based scheduling approach adopted in the IPS of the example embodiment provides an enhanced framework for pre-production constraint management. It allows for detecting and reducing schedule uncertainties, analyzing the key bottleneck constraints, and diminishing delays with pull-driven schedule control. In implementation, the IPS employs a series of task buffers implemented as databases to identify RI constraints and systematically resolve them so that each task can advance from one buffer to another, thus providing for a stable workflow. Eventually, in the final buffer, the constraints are fully resolved resulting in greater reliability in the work plan. Only when this condition is attained, the tasks can be scheduled for the weekly assignment plan.
With reference to
The system 1400 may further comprise a third database 1408 containing data associated with the constraints, and the processor unit is coupled to the third database for updating status information of the constraints as a manipulation of the data in the third database.
Step 1502 involves maintaining a first database containing project scheduling data associated with at least a current period and a next period of an assignment plan;
Step 1504 involves maintaining a second database containing data associated with a look ahead plan, the look ahead plan covering at least an overlap portion of the next period of the assignment plan such that the look ahead plan overlaps the assignment plan;
Step 1506 involves transferring data associated with one or more shielded tasks having a starting time within the overlap portion of the next period from the second database into the first database as a modification of the project scheduling data associated with the next period of the assignment plan; and
Step 1508 involves executing the project according to the next period of the assignment plan based on the modified project scheduling data associated with the next period in the first database.
Example embodiments of the present invention may have the following features and advantages.
Example embodiments of the present invention can enhance the Project Management function for project managers and project teams. Project managers and teams can gain a task perspective of the plan and be able to ‘get behind’ what was planned as all the necessary details are displayed and made readily available through a Graphical User Interface (GUI) available in the software of the example embodiments (e.g. the IPS GUI). A ‘To Do’/Watch list of constraints can also be generated through the Graphical User Interface available in the software. The project teams simply need to focus on the constraints. When the constraints are resolved, the associated tasks become “can do” and when the constraints are managed, the task is managed. Tracking parameters explain the status of the constraints. The project managers and teams are hence better informed of the status of the project. They can then better decide their actions instead of “fire-fighting” based on a disarrayed plan.
Also, by providing integrated constraint management, which uses tracking parameters to monitor the status of the constraints that have implications on the schedule, example embodiments of the present invention enable project managers and their team to be better informed of the progress of not just the task network but also the “hidden flows” of the project, and thus allows them to be able to take early remedial actions on the delayed “hidden flows”.
Using a series of task buffers to categorize and manage tasks based on their status and in conjunction with an advisory schedule provided by the APDM or ACPM to separate “can do” from “should do”, example embodiments can help project meetings become more organized and productive by enabling the project managers and their team to focus on required actions for each category. Example embodiments also allow for contingency actions by providing a workable backlog automatically controlled or influence by the advisory schedule for swapping of tasks to ensure stable workflow, which is not possible with conventional project planning.
Variations in project communication, the engineering process or any other project sub-process/systems remain obscure and detrimental to the project unless they are identified and corrected. In example embodiments of the present invention, these systemic variations are identified through plan variance analysis, which fosters continual improvement in project systems and delivery.
Furthermore, project meetings are improved because the project team members are now guided by the framework to focus on removing roadblocks instead of shifting blame. Ultimately, the main objectives of the project are accomplished.
Moreover, project teams may also analyse from Percent Plan Completion and Variance reports generated by the GUI of the example embodiments to prevent future occurrence of problems that lead to undesired project performance, and take performance to a higher level. In addition, by generating a Key Constraint report and a full Constraint Watch List Summary, a focused action plan can be determined and executed, resulting in even higher efficiency.
The methods, algorithms, and IPS of the example embodiment can also be implemented on a computer system 1600, schematically shown in
The computer system 1600 comprises a computer module 1602, input modules such as a keyboard 1604 and mouse 1606 and a plurality of output devices such as a display 1608, and printer 1610.
The computer module 1602 is connected to a computer network 1612 via a suitable transceiver device 1614, to enable access to e.g. the Internet or other network systems such as Local Area Network (LAN) or Wide Area Network (WAN).
The computer module 1602 in the example includes a processor 1618, a Random Access Memory (RAM) 1620 and a Read Only Memory (ROM) 1622. The computer module 1602 also includes a number of Input/Output (I/O) interfaces, for example I/O interface 1624 to the display 1608, and I/O interface 1626 to the keyboard 1604.
The components of the computer module 1602 typically communicate via an interconnected bus 1628 and in a manner known to the person skilled in the relevant art.
The application program is typically supplied to the user of the computer system 1600 encoded on a data storage medium such as a CD-ROM or flash memory carrier and read utilising a corresponding data storage medium drive of a data storage device 1630. The application program is read and controlled in its execution by the processor 1618. Intermediate storage of program data maybe accomplished using RAM 1620.
It will be appreciated by a person skilled in the art that numerous variations and/or modifications may be made to the present invention as shown in the specific embodiments without departing from the spirit or scope of the invention as broadly described. The present embodiments are, therefore, to be considered in all respects to be illustrative and not restrictive.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/SG07/00043 | 2/8/2007 | WO | 00 | 12/10/2008 |
Number | Date | Country | |
---|---|---|---|
60771565 | Feb 2006 | US |