It is important to plan the business logic before implementing them at all stages of the business flow. For example, when adding a new Folder or Job definition, modifying requirements for an existing job definition, setting up a new production environment or when developing a testing environment.
To help you to plan and implement the business flow in the production environment, you must consider the following scheduling tasks:
Get information about production Jobs (workflow, tasks, priorities, and other criteria).
Determine whether you can group Jobs according to:
Scheduling criteria: If Jobs run on similar schedules, or need to run at the same time, it is advantageous to group them into the same Folder. All Jobs in a Folder are ordered for scheduling at the same time. In addition, you can you use a SMART Folder to use more capabilities, such as, use of conditions and actions at the SMART Folder level.
Examples of scheduling Folders: End of year Jobs, daily Jobs, and Jobs that must run to produce reports for an audit
Applications: You can group Jobs that are related to each other, but do not necessarily have to run at the same time under Applications.
Examples of Applications: Inventory, Accounting, and Payroll.
Sub Applications: Similar to Applications, Sub Applications are another level of categorization that you can use to organize your Jobs.
Examples of Sub Applications: Jobs in an accounting application can be divided into Sub Applications such budgets, finance, and expenditures.
Determine the type of Job you are automating, for example, is it an OS Job or File Transfer Job.
Determine other criteria such as:
Where the Job should run, on which Control-M/Server.
When the Job should run. Determine whether it should run daily, on specific days, or repeatedly throughout the day (cyclic). If the Job takes precedence over other Jobs, determine information such whether the Job is high priority. You can also use calendars that contain predefined scheduling criteria.
Whether the Job depends on other Jobs, or whether other Jobs depend on it. Determine if the Job depends on the successful completion of other Jobs, or if this Job triggers other Jobs.
Required resources, such as physical resources; and whether the Job needs exclusive access to these resources.
Actions that should be taken if the Job runs as expected, or if the Job does not complete as expected.
Determine whether any Jobs represent batch tasks that seriously impact business services if delayed. In this case, define these Jobs as SLA Jobs.
Validate the workflow to ensure it implements business logic. To test your design, you can temporarily identify the Job processing definitions as type Dummy,which executes the batch flow without actually running the Jobs.
When the workflow is implemented correctly, you can then save it and check-it in to make it available for use.