Chapter 4: Underlying Concepts of Microsoft Project
In the vast and complex world of science, a lot of value is placed on the elegant simplicity of scientific equations. Everybody has heard of Einstein's simple but profound equation. In the world of Microsoft Project, there exists a similar, simple formula. This simple formula is the bedrock upon which Project performs a multitude of calculations involving tasks, resources, assignments, calendars, tracking, and so on. But Microsoft did not invent this formula; it has been known to Project Managers from a very long time. You will recognize this formula, and begin to understand how Project really works, in this chapter.
Then, we will explore calendars in Project. If you can compare "managing a project" to "conducting an orchestra", you will find a great deal of similarities. It is the role of the conductor (project manager) to synchronize skilled musicians (team members) to create beautiful music (achieve project objectives). You can take this analogy a long way further. In this context, the calendar is like the metronome of your project. The Project Calendar keeps track of time ticking constantly, and every single aspect of your complex schedule should comply and synchronize with this constant ticking. Every component of Project is connected directly or indirectly to the calendar. Successful project execution requires an understanding of the Project Calendar to build effective and realistic schedules.
In this chapter, we're going to cover the following main topics:
Demystifying the Basic work Formula
Identifying, customizing, and using different types of Tasks
Understanding Project scheduling algorithms
Learning all about Calendars – creating, setting, and customizing them to your needs
All along the way, you are invited to practice what you learn, right at the place where you're learning it, hands-on. There are also some additional practice assignments at the end of this chapter that will help you understand everything better.
Demystifying the Basic Work Formula
Most Project users expect it to act like a spreadsheet and are often surprised to find that Project appears to have a mind of its own. This is because Project operates within an elegant framework of rules, algorithms, and solid project management techniques. The key to understanding this framework is a simple formula, which we will call the Basic Work Formula. Starting from complete basics, let's now proceed to understand this formula and see how it drives complex scheduling behavior.
There are three key parameters associated with every task to be executed in a schedule:
work is the effort required to finish a task, usually measured in person-hours.
duration is the span of working time required to finish a task, usually measured in working days.
Unit is the measure of resources allocated to a specific task, measured by percentage in Project.
These three parameters are related by the Basic Work Formula of Microsoft Project:
Using simple algebra, it can also be written as follows:
Alternatively, it can be written as follows:
All three forms are equivalent, mathematically. If you know the total effort (work) required to execute a task, and the units of resources that will be assigned to the task, then you can compute the duration of work time consumed by that task. Furthermore, using simple algebra, you will be able to deduce any unknown parameter if the other two parameters are known.
Let's now break down the meaning of this formula through a few simple examples. Please observe the following screenshot:
As highlighted in box 3, we have a task that is 7 days in duration. This is shown on the corresponding taskbar in the Gantt chart. I have also opened the Task Information dialog box to show you the Resources tab (which houses the Units field).
There are some important observations to be made:
duration is neither a consecutive count nor a straightforward elapsed time on the calendar! Observe that the Gantt taskbar extends over 9 elapsed days (as seen in box 1 of the preceding screenshot), even though the duration is 7 days. This is because only the working days of a week are considered, even though the taskbar in the Gantt chart is unbroken over the non-working weekend days. The intervening Saturday and Sunday are excluded from calculations because they are not working days.
It is possible to customize the working/non-working days and times for your project, as we will see in the latter part of this chapter (in the Understanding Project Calendars section).
One unit denotes one person working full time on your project. In Project, this is denoted as 100%. Similarly, a resource working only half their available time is denoted as 50%. So, this can be considered as follows:
1 Unit = 100% (that is, one resource working full time)
2 Units = 200% (that is, two resources working full time)
0.5 Unit = 50% (that is, one resource working half their available time)
The work column is not visible by default on the Gantt table area, though all fields are always available to you. I have included it explicitly in the preceding screenshot. You can see that it shows 56 hrs. This is derived from the following formula:
Project expects that, by default, for a task, you will start by entering the task's duration. This means that you will have estimated, offline, the work and resources available to begin with. You can, however, choose to start by entering a work estimate in Project instead; for example, if it is mandated by your organization.
Tip
You can enter the duration using several shortcuts for measures of time, as shown in the following table. This is true for other time measurement fields as well, such as work.
Practice mental math and calculating multiples of basic work hours at different magnitudes. Understand the project metrics of your business domain. What is considered a small/medium/large project in your expertise area? Also, there are some basic numbers you can use to make quick approximations. These are invaluable in quick calculations and verbal negotiations, and help you easily size up tasks and projects:
Now, let's really cement our understanding of the Basic work Formula by considering some simple examples. Let's say our testing team must execute 80 automated test cases for the company's software. One engineer can execute one test case in 1 hour. How long does the whole task take?
From the preceding problem statement, we know the following:
work = 80 person-hours (because one test case can be executed in 1 hour)
Units = 1 (because we have one test engineer working 100% on this project)
We can now compute this by applying the Basic work Formula:
duration = 80 person-hours / 1 Unit (this is the Basic Work Formula)
duration = 2 work weeks (which is 80 person-hours).
Now, just to make this more interesting, let's say a duration of 2 work weeks is not acceptable to you, and you want to reduce this time further. You decide to speed things up by adding one more test engineer to the task.
Now, we have the following:
work = 80 person-hours (this has not changed)
Units = 2 (because we now have two test engineers working 100% on this project)
We can now compute this again:
duration = 80 person-hours / 2 Units (this is the Basic Work Formula)
Therefore, duration = 1 work week (which is 40 person-hours).
By doubling the number of resources, we have halved the duration.
This isn't exactly rocket science but let's continue with yet another example.
A third test engineer has become available to work on your project. But they can only work 50% of their time on your project. Now, your Units is 2.5 (which is the same as 250% within Project) and, of course, work is the same at 80 person-hours. What will the new duration of your task be? Take a moment to compute the answer by applying the Basic Work Formula. You should get an answer of 4 workdays (or 32 hours).
An example Project for this chapter – creating online departmental manuals
Now that you have gotten a handle on the Basic work Formula, you are ready to see it in action within Project. Let's start with our next hands-on project, so fire up your Project instance and let's go!
Let's begin with a case study. You are the CEO of a small greenspace management company. You are required to create two online operating manuals, which consist of 100 web pages each. One is a Quality Manual, while the other is a Technical Manual. Remember that the objective of this exercise is for you to observe how Project uses the Basic work Formula to manipulate duration and work automatically, based upon your inputs. So, we will keep this project super simple with only two tasks.
The following are the constraints for these tasks:
Task 1: Ten web pages can be created by one engineer in one day.
Task 2: The manuals are independent of each other, and only worked upon by engineers of that department.
With this much information, we are now ready to start our project. The kinds of simple manipulation we will perform now are very common in real-life scenarios, so this is exactly how you will experience Project's algorithms.
Case 1 – Change of duration
Assign two different engineers to both tasks. Since 10 pages can be created in a single day, by each resource, the duration is 10 days to begin with. You already know that when you create a task, the default duration of 1 day? is auto populated. The question mark appears because Project has assumed this default value for us. As soon as you change the duration, Project's algorithms kick in. A small green informational symbol appears in the duration field of the specific task:
When you click on the symbol, Project wants to know the reason you increased the duration. There are two reasons you can choose from:
There's more work to do.
There are fewer Units (that is, fewer resources).
In both cases, the duration of a task can potentially increase, and Project is not sure what option best reflects your reality. Project is asking you to clarify this in the dialog box. In our case, we modified duration because our task's work requires more time than the defaulted 1 day. Even if you just ignore this query from Project, the defaulted option (increased duration) has already been applied. If you adopt this mode of creating schedules, then it is perfectly fine to ignore this warning when you change the duration of many tasks at once, at the beginning stages of your project.
Note that, if you choose the second option, then duration will increase and work will remain the same, but Unit percentage will decrease. This means that the assigned resource will do less work on the task every day. If this gets confusing, refer to the Basic work Formula from earlier.
Case 2 – Adding additional resources
Now, we will assign an additional resource to the first task. Once again, the first option is the default and it complies with the Basic work Formula. Because we have doubled the number of resources (from one to two), our duration is halved, as shown in the following screenshot:
This is the expected behavior and it is defaulted by Microsoft. Observe the other two options carefully. They both allow you to retain the same duration without changes, even with an additional resource, but at the cost of either reducing the Units or increasing the work— all under the precepts of the same Basic work Formula. These other options are rarely used, typically in special situations in your real-life projects, but this task customization is available, should you choose to use it.
Case 3 – Increasing Units
There is another technique we can use to increase Units, without adding a new additional resource. We will look at this now. Double-click on Task 2 and bring up the Task Information dialog box. Select the Resources tab and increase Units to 200%. Refer to the following screenshot:
The effect of performing this change is to halve the duration, similar to what you saw in Case 2. You can observe the decreased duration in the following screenshot:
However, be careful here: this is an interesting and dangerous situation, as I'll explain soon.
What exactly is the meaning of increasing the resource's units to 200%? Can we use this technique everywhere to perform miraculous reductions in duration, without adding extra resources? When you increase the Units of a resource, this means that the resource is working proportionately longer work hours. In our case, we just set the resource's working hours to 200% – and no wonder the duration was halved! And no, we should not use this technique of increasing Units as a standardized practice, even by a fraction, because systemic overallocation causes burnout in people, destroys motivation, eliminates all buffers, and also causes hard-to-debug scheduling issues.
This potentially dangerous situation is highlighted to you by Project in the Indicators column for the specific task, as shown in the following screenshot:
It is perfectly normal to expect short periods of crunch time in everyday commercial projects. We are all aware of pulling long hours before a demo, or a weekend in the office during a big launch. During the execution of a project, you might have short periods of increased Units for your team. But it is not a good practice to hardcode overwork (or underwork) into the planning phases of a project. Project buffers are to be added later if required, in the Planning phase of your project.
This is the first instance where we have encountered significant overallocation, though there are other ways overallocations can occur. It is the single biggest bane of project managers while using Project. In this book, first, we will learn to identify and avoid them. Then, we will also examine many techniques and tools we can use to combat overallocations.
working smart with Project
There are many methods of working successfully with Project. Every practitioner will eventually evolve their own ways, and so will you. It is my humble attempt in this book to teach you how to flow with and around Project's default values, assumptions, and algorithms with the least possible friction. This method happens to require your hands-on participation.
If needed, adjust your estimation techniques, Units, and standards so that they closely match the defaulted expectations of Microsoft Project. This will save you a lot of conversion and translation efforts. If, for some reason, you can't alter your own techniques, then customize Project to your expectations. This is why it is important to learn how to customize features.
If you choose to pursue neither of these options, then a lot of time will be wasted converting estimations, Units, and so on at runtime. At the same time, you will have a ton of feature customizations available for your tasks. All this increases management complexity.
Deeper scheduling
Now, we will briefly jump into a few more complex topics. You will exercise these task type features and algorithms very rarely in normal projects, but it will be good for your confidence to handle such requirements.
Exploring task types
When you observe your project's real-life tasks in closer detail, you will find that they often have either implicit or explicit restrictions placed upon them. Let's say that you're managing a team of 20 software engineers. Here, you will want maximum utilization for your complete team, which you can do by keeping all of them productively engaged with your project. This is often called Resource Balancing or Resource Leveling. On the other hand, you cannot sporadically increase your team head count either (for example, to reduce duration). You will want to fix the number of engineers who are working on a specific task. Likewise, you may also have senior experts in your team whose skills might get shared across multiple projects. So, they will be available in fractional resource units to any project. Moreover, you must carefully manage their entry and exit into your different projects. These are only some of the implicit and explicit restrictions you will face, and we haven't even started talking about budget management.
How closely you reflect these team realities/restrictions into your schedule, with the least complexity, will largely determine your efficiency with Project. The Task Information dialog box that we have been using so far allows you to finely tweak the behavior of your tasks so that they closely reflect your realities. You can open it by double-clicking on any task in the Entry table. Refer to the following screenshot:
You can instruct Project to keep one of the three parameters from the Basic Work Formula, as a constant – either duration, Units, or work. Project will comply with your guidelines for that specific task unless you want to overrule it by yourself. But what does this mean? In the following sections, we'll look at when and how you will need to apply this feature to your schedules.
Understanding the concept of Fixed Units
The meaning of making Resource Units Fixed is that you have a pre-decided number of people (or machinery) working on a specific task. This is a common situation in real life and, in fact, is the default setting of Project.
You will be familiar with this situation from your working life, where you, as the manager, have been assigned a fixed number of resources, with specific skillsets, whom you can draw upon to execute a project. This is true even in the case of organizations with a Resource Pool concept.
Fixed duration
On rarer occasions, you will come across tasks that will take a fixed number of days to complete. The most common example for this condition is the Curing of Concrete task, from the world of civil construction. For example, once the roof is laid, a curing period of, say, 7-20 days is often required for the concrete to properly harden as per the requirements. Now, you might assign n resources to this task to make sure the concrete is properly maintained during this time, but adding another resource will not reduce the duration beyond the curing period.
You will also come across tasks like this in the world of Information Technology. For example, Automated Backup and Restore is a task that will take a fixed amount of time. In your own business domains, you will be sure to find tasks like these, which have an irreducible duration.
When you encounter tasks like these, make sure that they are properly configured so that they're of the Fixed duration task type.
Fixed work
The Fixed work task type is when the total amount of effort of the task is known and fixed upfront. This is, once again, very common in actual practice and often forms the bulk of your tasks in a project. Once the task's effort is known and your Resource Units are known, you will be able to compute the duration in Project.
If this type of task is very common, then why is Fixed Units the default type used by Project? One plausible reason for this is that during the estimation process, using a Fixed Units-based calculation enables you to directly proceed to duration computation next – the field that Project expects by default.
Are your tasks effort-driven or not?
At this point, in the Task Information dialog box, you might have noticed the Effort driven checkbox. An effort-driven task means that if you increase the resources for a task, you can expect a proportional decrease in the duration. Most tasks that you will encounter will be effort-driven in nature and that is the reason, by default, this option will be selected to begin with. Every task that we've discussed so far are all effort-driven tasks. An example of an effort-driven task is as follows: if it takes 10 days to build a wall with one person, then the same task will take 5 days with one resources. That is, if we add more effort, we drive the duration of the task. In short, this is what we call effort-driven.
Now, let's look at a non-effort driven task. Consider a 1-day training session, as a task, that you must conduct. Whether two people attend your training or 20 people do, you can expect it will remain a 1-day training session (of course, you might need a bigger venue). Such tasks are not impacted by the number of resources and are statistically rare occurrences in projects. These tasks are non-effort driven.
Later in this book, we will look at a more detailed example of a recurring and non-effort driven task.
The impact of using task types
At this point, you might be wondering if you must inspect and modify the task types for every task in your schedule. The answer is no. Instead, you must only identify and modify the exceptions. Even if the size of your project is very large, you will typically set exceptional tasks only once during the initial stages of your project. The reason for this ease is that Microsoft Project has carefully curated, as far as possible, real-life usage into its default values and default behavior. You will understand the significance of this fact in the next section.
Underlying algorithms – How project scheduling works
The big question now is, how do the three task types affect the Basic work Formula? We will examine this aspect now. This algorithmic behavior is captured concisely in the following table, for your reference. Note that this table is specifically for making modifications to existing assignments:
Is it necessary to memorize this table for everyday usage of Project? The answer is no. If you stick with the defaulted Fixed Units and the common form of Basic work Formula, you will be completely conversant with Project scheduling behavior. However, you might occasionally need to cross-check this table when you are modifying assignments for an exceptional task. With that, we have finished our discussion of advanced scheduling features. Now, we will take a look at Project Calendars.
Understanding Project Calendars
By now, you have comprehensively examined the three dimensions of scheduling – work, duration, and Units. But which is the implicit fourth dimension that is hidden within all of these? This fourth dimension is Time. In this section, we will learn how to handle time through the Calendar feature of Project.
For the sake of simplicity, so far, we have started all our practice projects by directly entering the tasks into the Entry table. This is fine for practice projects, but not for your real-life commercial projects. In the latter case, you should always start by setting a start date for your project.
The proper usage of Project requires that you configure your Calendar. In the sections to follow, we will learn how easy it is to match the calendar to the working time conditions of your organization. Although this will be simple for you, Project, in turn, translates your configurations into internal rules for its algorithms.
When using the calendar that you configure, Project will determine whether work can be scheduled or not for a day, resource, or task. Calendar affects literally every aspect of your schedule. We'll see how this happens and works in the following sections.
Setting the Project Start Date
You can set the start date for your project from the Project Information dialog box. The button is aptly located on the Project tab. Refer to the following screenshot:
The Project Information dialog box is chockful of date-related UI controls, as shown in the following screenshot:
It is not very easy to use until you understand the following simple sequence:
Select whether you want to schedule from a Start date or a Finish date. You will almost always schedule in the forward direction of time – from a Start date.
Select a Start date for your project from the Calendar dropdown.
Current date is picked from your computer's date. You should only change this when you want the Current date marker on the Gantt chart to reflect the day of your choice. It is a rarely used feature.
Notice that if you choose to schedule from a Start date, then Finish date is deactivated and vice versa.
Status date is useful but only significant when we wish to track a project (we will cover this later in this book). You can ignore it for now.
Finally, as shown in the following screenshot, there is a Calendar dropdown. A Standard calendar is selected by default. The whole magic of Microsoft Project's algorithms will dance to the tune of the calendar that you select here:
We will do a deep dive into calendars in the sections that follow, where we will revisit this option.
However, there is a pitfall to setting this date.
Don't use Project Finish Date scheduling in a casual manner if you don't have a grasp of all its implications. This reverse direction of scheduling is useful only on rare occasions, typically when you want to calculate the span of a project. This technique is used only during the initiation and planning stages of the project (just for design and calculation) and never in actual project execution. There are two reasons why it is not used. First, it greatly hampers your ability to interpret the schedule on a day-to-day basis. Second, it affects Project's scheduling and resource algorithms, and you will often be hard pressed to interpret the automatic changes on your schedule. Specifically, it affects the algorithmic constraints designed within Project's scheduling algorithms. For example, when you use normal scheduling from a start date, Project uses a default constraint called As Soon As Possible (ASAP). But when you reverse this scheduling, the default constraint type changes to As Late As Possible (ALAP). We will learn more about date constraints in Chapter 8, Mastering Link Dependency and Constraints.
Pro Tip
You can also set the project start to a back date. It is quite common for project managers to take charge of a project that has already started, and that's when you set a back date to the start date. No matter when you start the project, always ensure that an accurate start date is configured for your schedule.
Creating your new calendar
When you create a new blank project, it will already have made several assumptions about your standard default working times and days. This will be the universal 8 A.M. to 5 P.M., Monday through Friday, with an hour for lunch in-between. Saturday and Sunday are non-working weekends.
These default settings will not include national holidays, company holidays, resource holidays, or any other customized date and time information that might be vital for your project. So, one of the very first activities for you to complete, as a prudent user of Project, will be to configure your calendar customizations, very early in the schedule creation process.
If your organization already provides you with a Project calendar, then use it. Otherwise, you can create a new calendar, as described here:
Click on the Change working Time button from the ribbon's Project tab:
This opens the following important Change working Time dialog box:
In the top-left dropdown, the Project is pre-packaged with three base calendar instances named Standard, 24 Hours, and Night Shift. The Standard calendar is the default selected calendar that you'll see in this dialog box. It is also the default calendar for the project:
Pitfall
Do not modify the pre-packaged base calendars. Instead, create a new calendar that follows your organizational holiday and working policy, based on the existing base calendars.
Take a moment to read through the details provided in the Change working Time dialog box, but don't change anything yet. It displays, among other details, the working times for the currently selected calendar (Standard calendar).
Click on the prominent Create New Calendar button. This opens a new, smaller dialog box:
Give the calendar a distinct name that you will be able to recognize easily as a trial calendar. Name it Srikanth Lesson Trial for now.
Pitfall
Every calendar you create ends up in your Project's base data, in a longer storage. So, do not create too many sandbox calendars.
Make sure you are creating a copy of a base calendar (the second radio button option) instead of creating a new base calendar (the first radio button option).
After clicking OK, you will have created a new calendar. Verify this in the main dialog box's dropdown:
Now that you have created a new experimental calendar, you can modify it. We'll create new working timings on this calendar in the next section.
Customizing your new calendar
There are two main types of customizations that you can perform on a new calendar – changing the daily working time and adding holidays. In Project-speak, these holidays are exceptions to a normal working week. In the following steps, you will learn how to perform both customizations:
Make sure the new calendar is selected in the For Calendar: dropdown. You do not want to accidentally modify the base calendar.
Open the work Weeks tab.
Select Default in the corresponding listing and click on the Details button. Refer to the following screenshot for these steps:
Select the day names you want to modify.
You can then set these selected days to weekly holidays (nonworking time) or you can set custom working times for them. The latter is shown in the following screenshot:
Click OK and return to the main dialog.
You can add holidays (exceptions to the normal work week) by selecting the date in the calendar and typing the holiday's name into the Name field. Refer to the following screenshot:
After you have marked out all the organizational holidays, click OK to save your new calendar.
Now, you are all set to use this calendar for its basic settings. In the next section, we will learn how to use it for the current project.
Setting the Project Calendar
Even though you have created a new calendar, it is not linked to your current running project. Linking a calendar to the open project can be done in the Project Information dialog box, which we looked at earlier when we learned how to set the project's start date. Open it once again from the ribbon's Project tab, as shown in the following screenshot:
When you open the Calendar dropdown, your newly created calendar will show up. Select it and click the OK button to set the project calendar. You can now doubly-check that your calendar has been set correctly by once again opening the Change working Time dialog box. Refer to the following screenshot:
Your calendar name should have the designation label Project Calendar appended to the end of it. This verifies that you have set up the project calendar correctly.
With that, you have learned enough about Project calendars to cover most of the situations you will encounter in real-life projects. In the next section, we will delve even deeper into the inner workings of calendars.
How calendars really work in Project
Calendars are a major cause of discontent and issues with users of Project. This is because it is a complex feature and users do not take the time to understand it thoroughly.
Calendars are categorized into four essential types:
Base calendar: Think of these as templates shipped with Project. Every other calendar instance is derived from these base calendars.
Project calendar: This is the calendar associated with the entire project and is derived from a base calendar. Organizational-level details are then added to the project calendar.
Note
This calendar is set via the Project Information dialog box, as we saw in the previous section.
Resource/Shift-level calendar: A calendar can be associated with an individual resource, or a group of resources working in a shift, to show their own holiday plans, working times, and so on. This calendar is typically derived from the base calendars, namely Night Shift and 24 Hours.
Resource-specific calendars are set via the Resource View interface. The following screenshot shows this:
Task calendar: Sometimes, a task is performed in a different time zone, or perhaps performed using machinery that is only available during certain days. In such situations where you must maintain task-specific dates, it is prudent to use a task calendar.
Note
A task calendar can be set via the Task Information dialog box, which you can open by double-clicking on any task.
By default, task-level calendars are not set, and tasks follow the project calendar otherwise. This is shown in the following screenshot:
These four calendar types are applied in the same order as we introduced them. First, the base calendar is applied, then the project calendar, followed by the resource and task calendars. Ultimately, on any given day, what, who, and when is decided by Project as it overrides all these calendar settings in the hierarchy.
As a new learner, you must restrict your usage to only the project calendar (which is mandatory for you to configure). As you progress to becoming an intermediate Project practitioner who's handling larger projects, you might also include resource calendars, but only if required. Task-level calendars are rarely used.
Tip
Calendars are a quick way to debug or triage issues with task behavior. Calendar changes not showing up in the Gantt chart.
Sometimes, when you make changes to the calendar framework, such as applying a new project calendar, your exception dates (holidays) might not be reflected on the Gantt chart. This is because the Gantt chart, by default, applies only the default Standard calendar. You can just right-click on the Gantt area and configure the Gantt chart in order to apply the calendar that you wish to be visible there.
Summary
The motive of this chapter was to dig deeper into the inner workings of Project's primary pillars – tasks, scheduling algorithms, and calendars. Throughout this chapter, we saw that it is possible to tweak and fine-tune these aspects of Project through the use of methods, interfaces, and techniques. It is important for you to understand the default values and default behavior of Project first, as they have been carefully designed to cater to the vast majority of the use cases that you will encounter.
In the next chapter, we will look at resource assignments in greater detail. First, we will cover all the basic functionalities before opening up the hood and looking closely at the machinations of the scheduling engine.
Assignment
Create a new blank project that contains 10 dummy tasks of various durations, 1 day through 20 days.
Experiment with the behavior of various tasks that are categorized by the three major task types, as follows:
Increase resources to halve the duration but retain work
Increase resources but retain the same duration and work
Decrease work but retain duration
Tip
Include the work column in your entry table on the Gantt chart view.
Create a new calendar that reflects the year 202x holiday schedule for your organization.
Many countries do not follow the Monday to Friday, 8 A.M. to 5 P.M. work schedule. Create a calendar for your offshore team in Bahrain, who works on a different schedule Sunday to Thursday, 9 A.M. to 6 P.M.. Apply it as a project calendar.
If your new custom calendar does not show in the Gantt area, be sure to right-click in the Gantt area and make the new calendar visible manually.