Systems Programming Assignment 1 overview Due date: 23.11, 23:59 Rotem Golan, Carmel Bregman,
Department Manager Post projectsTake projects Project Task Post Tasks Notify Tasks completion Worker Take Task Manager Board Working Board Resource Warehouse Acquire Resources Release Resources
project Order List of tasks Task Type for manager Type for workers size List of resources
Warehouse Hold all the resources Workers tack resources and release them Dead lock can occur here
Manager Board Projects arranged bye next Task In the begging the main add all the projects to the manager board Department manager tack and add projects to the manager board It’s the department manager responsibility to tack care of the projects in the manager board
Working Board Hold all the task that the department manager published department manager publish and remove task from the working board Worker find task to perform in the working board
Department Manager Tack project from the manager board that the next task of the project type is the same as the department manager Publish the task in the working board Wait for the task to be done bye workers Publish the project in the manager board and bye the type of the next Task
Worker Find a task in the working board that he can work on (bye type) Get the resource he need to work on the task from the warehouse Work on the task If the task is done he notify the department manager
Observer Tack commend from the consol The observer is a way to know what is happening in the program He can stop the program anytime
Startup read config file name and log file name set up the logger read config file and project file set-up the system –Create manager board –Create working board –Create warehouse –Create all the projects and add them to the manager board –Create all the workers and department managers –Create observer Start the observer, workers and department managers
Tests and interfaces You need to submit interfaces and tests: Warehouse Working board Manager board
Don’t forget Checkstyle Pmd Ant
common questions Can I add more classes –yes Do you require checkstyle also for our tests? –we will not grade you on it, but it’s better Can I change the interfaces in the final program? –yes, but you will be graded on the first one Can we have a delay? –collective: no. –specific: use If you have Question please post it in the forum so everyone can see. Question that you will send in the will not be answered
Questions