Post on 21-Mar-2017
transcript
EXPLOITING DYNAMIC RESOURCE ALLOCATION
FOR EFFICIENT PRODUCTION SCHEDULER
A Dissertation submitted in partial fulfilment of the requirements for the
award of degree
MASTER OF COMPUTER APPLICATIONS
of
Visvesvaraya Technological University
By
SACHIN. M.
4MC12MCA27
Under the Guidance of
Mr. PRASANNA K.S
Department of Master of Computer Applications
Malnad College of Engineering
Hassan - 573202 2014-15
EXPLOITING DYNAMIC RESOURCE ALLOCATION FOR
EFFICIENT PRODUCTION SCHEDULER
A Dissertation submitted in partial fulfilment of the requirements for the
award of degree
MASTER OF COMPUTER APPLICATIONS
of
Visvesvaraya Technological University
By
SACHIN. M.
4MC12MCA27
Under the Guidance of
Internal Guide External Guide
Mr. Prasanna K.S, M.C.A, Mr. ChandanSrivastava,
Assistant Professor, Dy. Manager,
Dept. of M.C.A, IT Department,
Malnad College of Engineering, HAL Engine Division,
Hassan –573202. Bangalore –560093.
Department of Master of Computer Applications
Malnad College of Engineering
Hassan - 573202 2014-15
ACKNOWLEDGEMENT
Apart from the efforts of me, the sources of my project depend largely on the encouragement
and guidance of many others. I take this opportunity to express my gratitude to the people who
have been instrumental in the successful completion of this project.
I would like to thank my institution, Malnad College of Engineering, Hassan and I am thankful
to Dr. K. S Jayantha, B.E., M.Tech., Ph.D., Principal, for their support in completing this project.
I am thankful to Mr. H. V. Shashidhara, B.E.,M.E., Associate Professor and Head, Department
of Master of Computer Applications, for extending his support in completing this project.
I sincerely thank my project guide Mr. Prasanna K.S, M.C.A, Assistant Professor for guiding
and correcting various documents of mine with attention and care. He gave moral support and
guided me in different matters regarding the project. I thank him for overall support.
Thanks and appreciation to the all helpful people at Engine Division, HAL Bangalore for
their support. Especially I would like to show my greatest appreciation and thanks to
Ms. Niranjana Devi, Manager of IT Department, Engine Division, HAL Bangalore and
Mr. ChandanSrivastava, Dy. Manager IT Department, Engine Division, HAL Bangalore,
who encouraged me in completing the project.
Finally I would like to thank all our teaching and non-teaching staffs of M.C.A department
who have directly or indirectly helped me in the completing of this project. I also extend my
heartfelt thanks to my parents and well wishers.
Sachin. M
4MC12MCA27
ABSTRACT
At the core, production planning represents the beating heart of any manufacturing process. Its
main purpose is to minimizes the production time and costs and also to maximize the profit in
a limited constraint, and also efficiently organize the use of resources and maximize efficiency
in the workplace and the Machineries. Production planning incorporates a multiplicity of
production elements, ranging from the everyday activities of staff to the ability to realize
accurate delivery times for the customer. With an effective production planning operation at
its nucleus, any form of manufacturing process has the capability to exploit its full potential.
The main goal of every manufacturing company is to earn the best profit and to satisfy the
customers. To achieve these things planning and analysis are most important. Every company
faces a problem of allocating the limited amount of resources to the products [Engine
machinery products]. Application aims at eliminating resource allocating problems
encountered in products production so as to ensure the best profit to the company. Effective
production planning means one has to make use of available resource to produce products in
an effective way which leads to best profit.
In the project consisting of three main modules i.e., Administrator, Manager, Site visitor. All
are performing their tasks for the growth of the company as well as to get the maximum profit
of the company.
When the site visitor get registered by paying some amount of money then the site visitor
becomes the Manager. After registering for the manager will carry out the remaining tasks.
Manager will allocate the resources for the problem. Considering some Machines to produce
the Products, Availability and Total profit for the production for the respective product in a
given constraints and carry out the Linear Programming Technique (Simplex Method),
problem for the optimal solution.
Admin can manage the further tasks such that managing the manager. Website maintenance
and respond to Managers queries. Admin also look after the liner programming model to check
for the optimality of the solution in the model. This is how project works.
CONTENTS Page No
1. INTRODUCTION
1.1 Project Overview 1
1.2 Problem Definition 1
1.3 Company Profile 2
2. LITERATURE SURVEY
2.1 Existing and Proposed System 4
2.2 Feasibility Study 5
2.3 Tools and Technologies Used 7
2.4 Hardware and Software Requirements 8
3. SOFTWARE REQUIREMENTS SPECIFICATION
3.1 Functional Requirements 9
3.2 Non-Functional Requirements 13
4. SYSTEM DESIGN
4.1 System Perspective 15
4.2 Architectural Design 15
4.2 Context Diagram 16
5. DETAILED DESIGN
5.1 Use Case Diagrams 18
5.2 Sequence Diagrams 19
5.3 Data Flow Diagrams 20
5.4 Entity Relationship Design 21
6. IMPLEMENTATION
6.1 simplex Algorithm Method 23
6.2 Screen shots 28
7. SOFTWARE TESTING
7.1 Different level of Testing 36
7.2 Test Cases 37
8. CONCLUSION 39
9. FUTURE ENHANCEMENTS 40
Appendix I: BIBLIOGRAPHY 41
Appendix II: USER MANUAL 42
LIST OF FIGURES
Serial No. Figure No. Figure Name Page No.
1 Figure 4.2 Three Tier Architecture 16
2 Figure 4.3 Context Diagram 16
3 Figure 5.1 Use Case Diagram 18
4 Figure 5.2.1 Sequence Diagram(Admin) 19
5 Figure 5.2.2 Sequence Diagram(Visitor/Manager) 19
6 Figure 5.3 Data Flow Diagram 20
7 Figure 5.4 E-R Diagram 21
8 Figure 6.1.2 Simplex Algorithm Method 24
9 Figure 7.1 Different Levels of Testing 36
LIST OF TABLES
Serial No. Table No. Table Name Page No.
1 Table 2.1.2 Problem Example 5
2 Table 6.1 Problem Example 26
3 Table 6.1.1 1st Iteration of Problem 26
4 Table 6.1.2 2nd Iteration of Problem 27
5 Table 6.1.3 Final Iteration of Problem 27
6 Table 7.2.1 Test Cases table 1 37
7 Table 7.2.2 Test Cases table 2 37
8 Table 7.2.3 Test Cases table 3 38
LIST OF SCREENSHOTS
Serial No. Screenshot No. Screenshot Name Page No.
1 Screenshot 1 Application Home page 28
2 Screenshot 2 Administrator login page 28
3 Screenshot 3 Administrator Home page 29
4 Screenshot 4 Manage Production Manager Profile 30
5 Screenshot 5 Management of Manager’s queries 30
6 Screenshot 6 Login page of Registered Managers 31
7 Screenshot 7 Manager Home page 31
8 Screenshot 8 Manage Products 32
9 Screenshot 9 Manage Machines 32
10 Screenshot 10 Problem Details 33
11 Screenshot 11 Problem Formulation and
Mathematical Model
34
12 Screenshot 12 Initial Iteration and Final Iteration of
Problems
35
Exploiting dynamic resource allocation for efficient production scheduler 1
MCE, Hassan Department of MCA 2014-15
Chapter 1
INTRODUCTION
In today’s competitive business world many companies manufactures many type of products.
In the situation all company’s main intention is to manufacture their products and for their
product they get a maximum profit. Production planning represents the beating heart of any
manufacturing process. Its purpose is to minimize production time and costs and to maximize
the profit, efficiently organize the use of resources and maximize efficiency in the workplace.
Production planning incorporates a multiplicity of production elements, ranging from the
everyday activities of staff to the ability to realize accurate delivery times for the customer.
Effective production planning means one has to make use of available resource to produce
products in an effective way which leads to best profit.
In product mix selection process, the production department manager strives to determine the
combination of the products [Engine machinery products in HAL], which will maximize the
profit without violating the resource constraints used in HAL (production mix problem).
1.1 Project Overview
It is an interactive software-based system intended to help Managers. For the complete useful
information of raw data, documents, and personal knowledge, or business models and also to
identify and solve problems and make decisions.
1.2 Problem Definition
In the production mix selection, the Manager strives to determine the combination of products
and that will be produced by their respective machines which will maximize the profit without
violating the resources and to get a best profit.
Exploiting dynamic resource allocation for efficient production scheduler 2
MCE, Hassan Department of MCA 2014-15
1.3 Company Profile
Hindustan Aeronautics Limited is Indian Aerospace and Defence Company situated at
Bangalore. It is under the management of Indian Ministry of Defence. HAL is involved in the
aerospace industry.
HAL is the 1st military aircraft in South Asia. HAL produces some fabrication, assembly parts
of aircraft, engines for jet aircrafts, and parts of helicopters. HF-24 the fighter bomber was
designed by the Germen engineers KURT TANK and it was the first fighter aircraft made in
India.
Hindustan Aeronautics Limited was established as Hindustan Aircraft in Bangalore in
1940. In 23 December 1940 HAL was taken controlled by Mysore companies as a Private Ltd
Company. HAL’s first director was Mr.Walchand Hirachand. The Indian government bought
a 1/3 stake in April 1941 by investing 25 lakhs for a strategic imperative. In 2 April 1942 the
company was nationalised and bought out the stakes of Seth Walchand Hirachand and other
promoters.
1.3.1 Operations
Hindustan Aeronautics Limited (HAL) is one of the largest Aerospace companies in Asia,
HAL has announced that their annual turnover is US$2 billion. More than 40% of HAL's
revenues come from international deals to manufacture aircraft engines, spare parts, and other
aircraft materials.
1.3.2 About Engine Division
The Engine division, is ISO-9002 Certified, engine division was set up in 1957 to manufacture
Orpheus turbo jet engines under licence from Rolls Royce. In 1959, licence agreement was
signed with Rolls Royce to manufacture Dart engines to power HS-748 passenger aircraft and
overhaul Avon engines fitted on Canberra & Hunter aircraft. It is now engaged in the
manufacture of Artouste engines for Chetak/Cheetah helicopters, Adour engines for Jaguar
aircraft and Garrett engines for Dornier aircraft. Engine division also undertakes repair and
overhaul of various aero engines operated by Indian Air force, Indian Navy, Indian Army,
Coast Guard, Border Security Force, Corporate sector, State Government and other civil
Exploiting dynamic resource allocation for efficient production scheduler 3
MCE, Hassan Department of MCA 2014-15
customers. The engine division has manufactured more than 2,100 aero engines and repaired
11,000 engines.
1.3.3 New Programmes
Kaveri Engine
Engines for AJT, IJT and ALH.
HAL has 19 Production units, 10 Research and Development centres 8 locations in India. The
company has an product track record 15 type of Aircraft/Helicopters manufactured with in-
house R and D and 14 types produced under licence. HAL has manufactured over 3658
Aircraft/Helicopters, 4178 Engines Upgraded 272 Aircraft and overhauled over 9643 Aircraft
and 29775 Engines.
Exploiting dynamic resource allocation for efficient production scheduler 4
MCE, Hassan Department of MCA 2014-15
Chapter 2
LITERATURE SURVEY
2.1 Existing and Proposed System
2.1.1 Existing System
Existing system is based on manual work and all the process are done manually, so they
maintain a registers and calculations for recording all the details of the system. They maintain
the record of their regular calculations in the separate module.
The problems faced by the existing system are described as below
• Resources are allocated to the products based on the experience.
Randomly allocating the fixed amount of resources to the products.
Manually analyzing and determining all standards for production lines and ensure
compliance to all schedules for processes and develop and maintain all production
orders effectively.
2.1.2 Proposed System
In the production mix selection, the Manager strives to determine the combination of products
which will maximize the profit without violating the resources.
Description
HAL Company faces a problem of allocating the limited amount of resources to the
products.
Main goal of every company is to gain the best profit. One way of making profit is to
make use of available resources in an efficient way – what application does.
Exploiting dynamic resource allocation for efficient production scheduler 5
MCE, Hassan Department of MCA 2014-15
HAL Company produces 4 different types of products (machinery products) namely
product1, product2, product3, product4 and the company used the following resources to
produce these products [Engine machinery products] namely;
Machine1
Machine2
Machine3
Question here is by using these resources in an efficient way, how many different types of
products can be produce to ensure best profit.
Example
PRODUCTS
RESOURCES
Product1 Product2 Product3 Product4 Total
Availability
Machine1 2hrs 3hrs 2hrs 5hrs 300 hrs
Machine2 2 hrs 3 hrs 1 hrs 1 hrs 200 hrs
Machine3 20 hrs 10 hrs 5 hrs 5 hrs 350 hrs
Profit 50 hrs 55 hrs 45 hrs 60 hrs
Table 2.1.2 Problem example
Now the question is how best way these resources can be utilized in order to produce best
profit to the company.
Application finds the solution to these kinds of problems using Operation Research-Linear
Programming Technique.
2.2 Feasibility Study
Feasibility study is made to see if the project on completion will serve the purpose of the
organization for the amount of work, effort and the time that spend on it. Feasibility study lets
the developer foresee the future of the project and the usefulness. A feasibility study of a system
proposal is according to its workability, which is the impact on the organization, ability to meet
their user needs and effective use of resources. Thus when a new application is proposed it
normally goes through a feasibility study before it is approved for development. The document
provide the feasibility of the project that is being designed and lists various areas that were
Exploiting dynamic resource allocation for efficient production scheduler 6
MCE, Hassan Department of MCA 2014-15
considered very carefully during the feasibility study of this project such as Technical,
Economic and Behavioural feasibilities.
The following are its features
2.2.1 Technical Feasibility
The system must be evaluated from the technical point of view first. The assessment of this
feasibility must be based on an outline design of the system requirement in the terms of input,
output, programs and procedures. Having identified an outline system, the investigation must
go on to suggest the type of equipment, required method developing the system, of running the
system once it has been designed.
Technical issues raised during the investigation are Does the existing technology sufficient for
the suggested one? Can the system expand if developed? The project should be developed such
that the necessary functions and performance are achieved within the constraints. The project
is developed within latest technology. Through the technology may become obsolete after some
period of time, due to the fact that never version of same software supports older versions, the
system may still be used. So there are minimal constraints involved with this project. The
system has been developed using .Net the project is technically feasible for development.
2.2.2 Economic Feasibility
The developing system must be justified by cost and benefit. Criteria to ensure that effort is
concentrated on project, which will give best, return at the earliest. One of the factors, which
affect the development of a new system, is the cost it would require. The following are some
of the important financial questions asked during preliminary investigation the costs conduct a
full system investigation. The cost of the hardware and software. The benefits in the form of
reduced costs or fewer costly errors. Since the system is developed as part of project work,
there is no manual cost to spend for the proposed system. Also all the resources are already
available, it give an indication of the system is economically possible for development.
Exploiting dynamic resource allocation for efficient production scheduler 7
MCE, Hassan Department of MCA 2014-15
2.2.3 Behavioural Feasibility
This includes the following questions
Is there sufficient support for the users?
Will the proposed system cause harm? The project would be beneficial because it satisfies the
objectives when developed and installed. All behavioural aspects are considered carefully and
conclude that the project is behaviourally feasible.
2.3 Tools and Technologies Used
2.3.1 Visual studio 2010
Visual studio is used to develop the web based application in this project. Design part of web
pages is done by make use of the visual studio 2010. By make use of C# the coding part is done
in the same tool. C# is the programming language developed by Microsoft Corporation. It is
simple, and efficient productive type language.
2.3.2 SQL Server 2005
SQL server is used to main the entire data’s in a particular database. So in this project only one
database is created. For each and entire work that had been done in the project will be stored
in the database. Microsoft SQL Server Management studio Express (SSMSEE) Is the server
used in this project.
Steps to connect to Database
Run Microsoft SQL Server Go to START >> PROPGRAMS >> MS SQL Server
2005 >>SQL Server Management Studio and Click. The MS SQL Server
management studio will appear.
Select the SQL Server Authentication from drop-down and type login “sa” and its
password. In case Server type will be Database Engine means add the server name of
the particular computer name. In Windows XP you can connect SQL Server for
authentication will be using ‘Windows Authentication’ where password is not
required. And Press “Connect” button
Exploiting dynamic resource allocation for efficient production scheduler 8
MCE, Hassan Department of MCA 2014-15
After connecting your SQL Server , you can create a new database here by right
clicking the “Databases” object and select “New Database”
A new window will appear as given below, type the name of the database
“productionDatabase” and press OK button to create a new database.
2.4 Hardware and Software Requirements
2.4.1 Hardware Requirements
Processor : Pentium IV onwards
RAM : 2GB +
Hard disk space : 40GB +
Standard PC configuration to carryout challenging computing
2.4.2 Software Requirements
Operating System : Windows XP version & Higher
Platform : DOTNET
Design Tool : Visual Studio 2010
Presentation : ASP.NET 4.0
Language : C#.NET
Database : SQL Server 2005
Exploiting dynamic resource allocation for efficient production scheduler 9
MCE, Hassan Department of MCA 2014-15
Chapter 3
SOFTWARE REQUIREMENT SPECIFICATION
This Chapter describes the various requirements that are desired for accomplishment of this
project. A system is a collection of interrelated components that work together to achieve some
objectives. Systems are not independent entities but exist in an environment. This environment
affects the functioning and performance of the system. A system development environment is
nothing but the software and hardware environment in which the system has been developed.
3.1 Functional Requirements
3.1.1 Modules Used
This section outlines all the main feature of “Production Planning System”.
Site visitor
The visitor can view the basic information of the website like Start Up page, About Us
page, Contact Us page, Services, Admin as well as Login and the Registration page.
Manager
Manager will get all services of the website.
Administrator
Administrator maintains all the services of the website.
Exploiting dynamic resource allocation for efficient production scheduler 10
MCE, Hassan Department of MCA 2014-15
3.1.1.1 User Class Administrator
The Administrator has the following Modules
Admin Home
Managers
Queries
FAQs
Change Password
Admin Home
In the Admin home page brief explanation of the operation research problem and tasks along
with what are all the remaining modules that are present in the admin module.
Managers
In this modules that is going to manage the Production managers Profiles. If once the manager
get paid and become the manager if he did not satisfies the admin requirement then admin has
the authority to delete the manager from the production manager list.
Queries
In this Queries module Admin is going to manage all the company queries that had been posted
by the Production Manager. And also he can view the pending and answered queries in the
module.
FAQs
In this module administrator adds up the frequently asked questions about how to use the
website services and all which helps to understand the website better, and can be viewed by
the visitors.
Change Password
In this module by default the admin id and password will be saved in the database. Later admin
can change his password of his own.
Exploiting dynamic resource allocation for efficient production scheduler 11
MCE, Hassan Department of MCA 2014-15
3.1.1.1 User Class Site Visitor
Home
Registration
About Us
Contact Us
FAQs
Home
In site visitor Home page it details information to use the website.
Registration
In this module visitor gets registered to the website by providing the registration details like
the Manager Id, Password, Company Name, Company Details, Company Logo, Address,
contact number, emailed. In this module site visitor gets a Manager ID and the password which
can be used in login module to use website services. The registration will be done by payment
through online. After the competition of transaction Site visitor will become the Manager.
About Us
In About Us module the detail information of the company details will be specified.
Contact Us
In Contact Us module the contact details of company as well as Admin is mentioned in the
module.
FAQs
In this module, site visitor can view the FAQs posted by the administrator, FAQs may be
regarding the website services.
Exploiting dynamic resource allocation for efficient production scheduler 12
MCE, Hassan Department of MCA 2014-15
3.1.1.3 User Class Manager
Manager Home page
Login
Products & Machines
Simplex-method
Problem History/Solution
Queries
Manager Home page
In Manager Home page the detail information of the Manager module.
Login
In this module decision maker has to provide the authentication information to get login into
his account to use the website services.
Products & Machines
In this module, Manager has to provide the requirements to use the website services. The
requirements are like how many products to produce, product profit, and how many resources
are required, total availability and the allocation details in three major requirement steps
namely Specify Problem product Details, Specify Problem Resource Details and the Allocation
steps.
Simplex-method
As we know, we are using simplex algorithm to solve the Production Mix problems. This
module shows the mathematical model for the decision maker requirements.
Problem History/Solution
In this module, decision maker gets the optimal solution for his requirement using the operation
research technique – linear programming technique. In this module, he can view the solution
details along with the requirements details.
Exploiting dynamic resource allocation for efficient production scheduler 13
MCE, Hassan Department of MCA 2014-15
Queries
This module provides facility for members to post Queries. Here Admin will answer the queries
of the member.
3.2 Non-Functional Requirements
3.2.1 Security management in organization
In the corporate world, various aspects of security were historically addressed separately by
distinct and often non communicating department for IT security, physical security and fraud
prevention.
3.2.2 Performance
Performance is characterized by the amount of useful work accomplished by a computer system
or computer network compared to the time and resources used. Depending on the context, good
computer performance may involve one or more of the following
Short response time for the given piece of work.
Low utilization of computer resources.
High availability of the computer system or application.
High bandwidth/ short data transmission time.
3.2.3 Maintainability
Maintainability is the ease with which a product can be maintain in order to
Isolate defects or their causes.
Correct defects or their causes.
Prevent unexpected breakdowns.
Maximize a products useful life.
Make feature maintenance easier.
Copy with a changed environment.
Exploiting dynamic resource allocation for efficient production scheduler 14
MCE, Hassan Department of MCA 2014-15
3.2.4 Usability
Usability is the ease of use and learn ability of a human made object. The object of use can be
a software, website, book, tool, machine, process or anything a human can interacts with. In
this application we can find
More efficient to use- take less time to accomplish a particular task.
Easier to learn- operation can be learned by observing the object.
More satisfy to use.
Exploiting dynamic resource allocation for efficient production scheduler 15
MCE, Hassan Department of MCA 2014-15
Chapter 4
SYSTEM DESIGN
In the design phase the architecture is established. This phase starts with the requirement
document delivered by the requirement phase and maps the requirement into architecture. The
architecture defines the components, their interfaces and behaviours. The deliverable design
document is the architecture. The design document describes a plan to implement the
requirements.
4.1 System Perspective
Large systems are always decomposed into modules/sub-systems that provides some related
set of services. Design process is nothing but the representation of the system, or a process of
producing a model, which will be used to develop or build the system. Design is essentially a
bridge between the Requirement specification and the final solution for satisfying the
requirements. Thus it is essentially a blueprint for a solution for the system.
A system design is a schedule or plan to develop a new system. The analyst plans the Input and
the Output of the new system, its logical and physical devices to receive data, generate
information and store the results. It specifies how to meet the requirements of the user as
pointed out during the System Analysis phase.
Software design sits at the technical kernel of the software engineering process and is applied
regardless of the development that is used. Once the software requirements are specified,
software design is the first of the three technical activities – Design, Coding and Testing.
4.2 Architectural Design
In this project 3 tier architecture is used.
4.2.1 Three tier Architecture
3tier architecture consists of three layers. They are
Exploiting dynamic resource allocation for efficient production scheduler 16
MCE, Hassan Department of MCA 2014-15
Figure 4.2 Three tier Architecture.
The presentation tier contains the UI (User Interface) elements of the site, and includes all the
logic that managers the interaction between the visitor and the client’s business. (ASP.NET
Web Forms, Web User Controls, ASP.NET Master Pages)
The business tier receives requests from the presentation tier and returns a result to the
presentation tier depending on the business logic it contains. (C# Classes)
The data tier is responsible for storing the application’s data and sending it to the business tier
when requested. (SQL Server Stored Procedures).
4.3 Context Diagram
Figure 4.3 Context Data Flow Diagram. (Level 0)
Exploiting dynamic resource allocation for efficient production scheduler 17
MCE, Hassan Department of MCA 2014-15
It is common practice to draw a context diagram first, which shows the interaction between the
system and external agents which act as data sources and data sinks. On the context diagram
(also known as the 'Level 0 DFD') the system's interactions with the outside world are modelled
purely in terms of data flows across the system boundary. The context diagram shows the entire
system as a single process, and gives no clues as to its internal organization. This context-level
DFD is next "exploded", to produce a Level 1 DFD that shows some of the detail of the system
being modelled. The Level 1 DFD shows how the system is divided into sub-systems
(processes), each of which deals with one or more of the data flows to or from an external
agent, and which together provide all of the functionality of the system as a whole. It also
identifies internal data stores that must be present in order for the system to do its job, and
shows the flow of data between the various parts of the system.
Exploiting dynamic resource allocation for efficient production scheduler 18
MCE, Hassan Department of MCA 2014-15
Chapter 5
DETAILED DESIGN
5.1 Use Case Diagram
Figure 5.1 Use case Diagram.
In use case diagram internal and external agents are known as actors. So use case diagrams are
consisting of actors, use case and their relationships. The diagram is used to model the
system/subsystems of an application. A single use case diagram captures a particular
functionality of a system. So to model the entire system numbers of use case diagrams are used.
There are two actors one is admin and other is manager. These are the actors consisting of their
respective modules so they can make use of their modules and perform the respective tasks.
This is detailed shown in the fig 5.1 Use case Diagram.
Exploiting dynamic resource allocation for efficient production scheduler 19
MCE, Hassan Department of MCA 2014-15
5.2 Sequence Diagrams
Figure 5.2.1 Sequence Diagram of Production Planning System-Administrator
Figure 5.2.2 Sequence Diagram of Production Planning System-Manager/Visitor
A sequence diagram in Unified Modelling Language (UML) is a kind of interaction diagram
that shows how processes operate with one another and in what order. It is a construct of a
Message Sequence Chart.
Exploiting dynamic resource allocation for efficient production scheduler 20
MCE, Hassan Department of MCA 2014-15
Sequence diagrams are sometimes called event diagrams, event scenarios, and timing
diagrams.
A sequence diagram shows, as parallel vertical lines (lifelines), different processes or objects
that live simultaneously, and, as horizontal arrows, the messages exchanged between them, in
the order in which they occur. This allows the specification of simple runtime scenarios in a
graphical manner.
5.3 Data Flow Diagram
A data flow diagram (DFD) is a graphical representation of the "flow" of data through an
information system. DFDs can also be used for the data processing (structured design). On a
DFD, data items flow from an external data source or an internal data store to an internal data
store or an external data sink, via an internal process. A DFD will operate in sequence or in
parallel.
Level 1 (high level diagram)
Figure 5.3 Data Flow Diagram. (Level 1)
Exploiting dynamic resource allocation for efficient production scheduler 21
MCE, Hassan Department of MCA 2014-15
This level (level 1) shows all processes at the first level of numbering, data stores, external
entities and the data flows between them. The purpose of this level is to show the major and
high-level processes of the system and their interrelation. A process model will have one, and
only one, level-1 diagram. A level-1 diagram must be balanced with its parent context level
diagram, i.e. there must be the same external entities and the same data flows, these can be
broken down to more detail in the level1.
5.4 Entity-Relations established in database tables
Figure 5.4 Database structure of the production planning system
Admin_Details
A dmin_ID
Password
Company_Products
Product_ID
C ompany _ID
Product_Name
Feedbacks
Feedback_ID
C ompany _ID
Feedback
Posted_Date
Response
Response_Date Products_Calculations
Pro_C al_ID
Problem_ID
Product_ID
Profit_Unit
FK_Products_Calculations_Company_Products
Resource_Calculations
Res_C al_ID
Problem_ID
Resource_ID
Toatl_A v ailibility
Resource_Allocation
A llocation_ID
Problem_ID
Resource_ID
Product_ID
Product_Resource
FK_Resource_Allocation_Company_Products
Problem_Specification
Problem_ID
C ompany _ID
O bjectiv e_Function
C onstraints
O ptimal_Solution
Posted_Date
FK_Resource_Calculations_Problem_Specification
FK_Resource_Allocation_Problem_Specification
FK_Products_Calculations_Problem_Specification
Company_Resources
Resource_ID
C ompany _ID
Resource_Name
FK_Resource_Calculations_Company_Resources
FK_Resource_Allocation_Company_Resources
Company_Details
C ompany _ID
Password
C ompany _Name
C ompany _Details
C ompany _Logo
A ddress
C ontactNO
Email_ID
Registration_Date
FK_Company_Resources_Company_Details
FK_Problem_Specification_Company_Details
FK_Company_Products_Company_Details
FK_DM_Questions_Company_Details
Exploiting dynamic resource allocation for efficient production scheduler 22
MCE, Hassan Department of MCA 2014-15
An entity-relationship model is a symatric way of describing and defining a business process.
The process is modeled as components(entities) that are linked with each other by relationship
that express the dependencies and requirements between them, such as one building may be
divided into zero or more apartments, but one apartment can only be located in one building.
Entities may have various properties (attributes) that characterized them. Diagrams created to
represent these entities, attributes and relationships graphically are called entity-relatioship
diagram.
An ER model is typically implimented as a Database. In the case of relational database, which
stores data in tables, which represents the entities. Some data fields in these tables point to
indexes in other tables; such pointers represents the relationships. The ER model is also
normally used to design modifications to the relational database objects and to maintain the
structural metadata of the datadase.
Exploiting dynamic resource allocation for efficient production scheduler 23
MCE, Hassan Department of MCA 2014-15
Chapter 6
IMPLEMENTATION
6.1 Simplex Algorithm Method
This method is applicable to any problems that can be formulated in terms of linear objective
function subjected to the set of linear constraints. In the simplex method we first find the initial
basic feasible solution (extreme point) and then continue till we obtain optimal solution.
6.1.1 Pseudo code
Insert slack variables and find slack equations
I. Rewrite the objective function and put it below the slack equations
II. Write the initial simplex tableau Write the initial simplex tableau
III. Find the pivot element by finding the most negative indicator in last row and using the
smallest quotient rule.
IV. Perform the pivot operation.
V. Are there any more negative indicators in the last row? If yes move to step IV else,
VI. The maximum has been reached.
Exploiting dynamic resource allocation for efficient production scheduler 24
MCE, Hassan Department of MCA 2014-15
6.1.2 Flow chart
Figure 6.1.2 Flow chart of simplex Algorithm Method
Exploiting dynamic resource allocation for efficient production scheduler 25
MCE, Hassan Department of MCA 2014-15
6.1.3 Steps of Simplex Algorithm
Step 1: Formulate the problems
converting real world problem into mathematical model.
Write the objective function in the standard form.
Convert inequality constraints into the equality constraints by adding the slack variable.
Step 2: Find out the initial basic solution
Step 3: Test for optimality.
Calculate Zj-Cj.
If values of Zj-Cj are positive current basic solution itself is the optimal
solution else choose variable corresponding to the least Zj-Cj value.
Variable Column --> Key Column.
Step 4: Test for feasibility.
Divide XB Column by the corresponding positive coefficient in the key column
and compare ratios.
Row with min ratio --> Key Row.
Step 5: Identify the key element.
Always non zero positive number.
Step 6: Determine the new solution.
Numbers in the replacing row may be obtained by dividing the key row elements
by the key element. New numbers in the remaining rows may be calculated using the
following formulae;
New Number old Number - (Corresponding number in key row)*(Corresponding
number in key column)/ (Key Element).
Step 7: Revise solution.
Exploiting dynamic resource allocation for efficient production scheduler 26
MCE, Hassan Department of MCA 2014-15
Example
ADOUR GNOME Total
Availability
M1 30 20 300
M2 5 10 110
Profit 6 8
Table 6.1 Problem example
Objective function is represented in standard form
Maximize Z=6x1+8x2
Constraints
30x1+20x2<=300
5x1+10x2<=110
Converting inequality constraints into equality by adding slack variables
Z’=6x1+8x2+0s1+0s2
30x1+20x2+s1=300
5x1+10x2+s2=110
Cj 6 8 0 0
B x1 x2 s1 s2 Xb
0 s1 30 20 1 0 300
0 s2 5 10 0 1 110
zj-cj -6 -8 0 0
Table 6.1.1 1st iteration of the problem
In the first iteration we will find the key column key row and key element.
x2 enters-pivot column
s2 leaves-pivot row
10-pivot element [key element]
Exploiting dynamic resource allocation for efficient production scheduler 27
MCE, Hassan Department of MCA 2014-15
Cj 6 8 0 0
B x1 x2 s1 s2 xb
0 s1 20 0 1 -2 80
0 x2 0.5 1 0 1 11
zj-cj -2 0 0 0
Table 6.1.2 2nd iteration of the problem
Here we will replace the old elements by the new elements using the formula. Now we will
check zj-cj values, If they are positive we will stop the iteration otherwise we will continue
the iteration until we get positive values.
cj 6 8 0 0
B x1 x2 s1 s2 xb
6 x1 1 0 0.05 -0.1 4
8 x2 0 1 0.05 0.15 9
zj-cj 0 0 0.5 0.6
Table 6.1.3 Final iteration of the problem
This is the last iteration of the problem where the iteration will stop because zj-cj values are
positive. The elements in the xb column will be the required products are manufactured.
Products to be produced: 2
Resources utilized: 2
Total amount of Adour engine to be produced: 4
Total amount of Gnome engine to be produced: 9
Optimal profit: 96
Exploiting dynamic resource allocation for efficient production scheduler 28
MCE, Hassan Department of MCA 2014-15
6.2 Screen shots
Screen shot 1 Application Home Page
This Screen shot illustrates that when the project is debugged successfully that companies
webpage is going to open in that contains an About company details, Contact details, FAQ’s,
login, Registration links can be viewed.
Exploiting dynamic resource allocation for efficient production scheduler 29
MCE, Hassan Department of MCA 2014-15
Screen shot 2 Administrator Login Page
This Screen shot illustrates the administrator login page where in which the admin id and
password should match with the id and password which is stored in database in the backend of
the application. If it is invalid then display alert message stating that invalid id and password.
Screen shot 3 Administrator home page
This Screen shot illustrates the administrator home page. This page shows administrator tasks.
On clicking a particular icon (task), the respective page is displayed to carry out further process.
Exploiting dynamic resource allocation for efficient production scheduler 30
MCE, Hassan Department of MCA 2014-15
Screen shot 4 Manage Production Manager profiles
This Screen shot illustrates the user management page which is used for the verification of the
Site Visitor’s registration. Here the administrator will reject the site visitor. Once the Site
Visitor is paid some money through online then he will become the Manager of the application
else he remains as Site Visitor itself.
Screen shot 5 management of Manager Queries
This Screen shot illustrates the questions posted by various Managers along with the user name
and date. Pending button shows the Manager questions that are not answered by the
Administrator whereas answered button shows the Manager questions that are answered by
Administrator.
Exploiting dynamic resource allocation for efficient production scheduler 31
MCE, Hassan Department of MCA 2014-15
Screen shot 6 Login page for the registered Manager
This Screen shot illustrates the login page for the Manager in which the Manager id and the
password of the Manager should match with the user name and password which is stored in the
database in the backend of the application.
Screen shot 7 Manager Home page
This Screen shot illustrates the Manager Home page in which the different tasks of the Manager
are displayed. On clicking the particular icon (task) the respective page is displayed to carry
out further processing.
Exploiting dynamic resource allocation for efficient production scheduler 32
MCE, Hassan Department of MCA 2014-15
Screen shot 8 Manager-Company Products
This Screen shot illustrates the company products Screen shot in which the product id, product
name entered will be displayed in the form of table, the additional products can be added and
the present products can be deleted.
Screen shot 9 Manage-Company Machines
This Screen shot illustrates the company Machines in which the resource id, resource name
entered will be displayed in the form of table, the additional resources can be added and the
present resources can be deleted.
Exploiting dynamic resource allocation for efficient production scheduler 33
MCE, Hassan Department of MCA 2014-15
Screen shot 10 Manager’s Problem details
This Screen shot illustrates the Manager Problem Specification in which product name and
corresponding profit is displayed in gridview1, resources name and corresponding availability
is displayed in gridview2 along with the allocation set in gridview3. When we click the button
then it will be redirected to next screen shot.
Exploiting dynamic resource allocation for efficient production scheduler 34
MCE, Hassan Department of MCA 2014-15
Screen shot 11 Problem formulation and Mathematical model
This Screen shot illustrates the simplex method inventory problem formulation by specifying
problem statement as the objective function, constraints, and the initial basic solution will be
shown in this model.
Exploiting dynamic resource allocation for efficient production scheduler 35
MCE, Hassan Department of MCA 2014-15
Screen shot 12 Initial Iteration and the Final Result of the problem
This Screen shot illustrates the initial iteration of the simplex method problem which is
represented in the tabular form and the final result.
Exploiting dynamic resource allocation for efficient production scheduler 36
MCE, Hassan Department of MCA 2014-15
Chapter 7
SOFTWARE TESTING
Testing is a process of executing a program to ensure that defined input will produce actual
results that agree with required outputs. In developing a software project, error can be initiated
at any stage during the development. For each phase of the software development cycle there
are different techniques for detecting and elimination errors that originate in that phase.
However some errors will reflect in the code. Testing performs a very crucial role for quality
assurance and for ensuring the reliabilities of the software. The quality of the system depends
on its design, development, testing and implementation. Weaknesses in any of these areas will
seriously affect the quality and therefore value of the system to its users. Once the code has
been generated, testing of the modules begins implementation ends with formal tests.
7.1 Different Levels of Testing
Figure 7.1 Different Levels of Testing
Exploiting dynamic resource allocation for efficient production scheduler 37
MCE, Hassan Department of MCA 2014-15
7.1.1 Unit Testing
Unit Testing is a level of the software testing process where individual units/components of a
software/system are tested. The purpose is to validate that each unit of the software performs
as designed.
7.2 Test Cases
Serial number of test case 1
Item/ feature being tested Verification of login page of
Manager, Admin.
Expected output Entering the Manager Id, Admin Id
and Password. It should verify with
the database.
Actual output by referring to snapshot number Screen shot 2 and Screen shot 6
Remarks PASS
Table 7.2.1 Test case table 1
Serial number of test case 2
Item/ feature being tested Problem Specification
Expected output Managers inputs the products,
machines, profit, total availability,
allocation set to the application.
Actual output by referring to snapshot number Screen shot 8, Screen shot 9,
Screen shot10
Remarks PASS
Table 7.2.2 Test case table 2
Exploiting dynamic resource allocation for efficient production scheduler 38
MCE, Hassan Department of MCA 2014-15
Serial number of test case 3
Item/ feature being tested Solution
Expected output Application must give Optimal
Profit, Total number of products
manufactured with the given
constraints
Actual output by referring to snapshot number Screen shot 11, Screen shot 12
Remarks PASS
Table 7.2.3 Test case table 3
Exploiting dynamic resource allocation for efficient production scheduler 39
MCE, Hassan Department of MCA 2014-15
Chapter 8
CONCLUSION
Resource allocation problem is one of the main problems faced by any organization for which
the system finds the solution. Production planning system aims at how best the resource can be
allocated to the finished products in such a way that company attains the maximum profit using
the Operation Research– Linear Programming Technique.
Leading organization effectively & efficiently delivers key department results and ensuring
high standards is one of the goals of the system.
The website “Exploiting dynamic resource allocation for efficient production scheduler” is
developed and tested successfully and satisfies all the requirement of the client [HAL].
The goals that have been achieved by the developed system are:
Simplified and reduce the manual work.
Large volumes of data can be stored.
It provides smooth workflow.
Maximum Profit
Exploiting dynamic resource allocation for efficient production scheduler 40
MCE, Hassan Department of MCA 2014-15
Chapter 9
FUTURE ENHANCEMENT
In the proposed system we are solving maximization problem using Operation Research
technique but in real time we get many other objectives like minimize investment, minimize
duration, minimize risk, etc. So we can also add up this module as the future enhancement to
the application where in which we can solve minimization problem.
We can add up the mailing facility modules as the future enhancement where in which we can
intimate the Manager regarding the approval/rejection through mails.
Exploiting dynamic resource allocation for efficient production scheduler 41
MCE, Hassan Department of MCA 2014-15
BIBLIOGRAPHY
Books
Beginning ASP.NET 1.1 in c# - Mathew MacDonald
• ASP.net complete reference - Pearson Publication
Introduction to Operations Research - Fredick S Hillier
Websites
http://msdn.microsoft.com/asp.net
http://www.asp.net
http://www.w3schools.com
http://www.dotnetjunkies.com
http://www.dotnetspider.com
http://www.webservicex.net
http://www.csharphelp.com
http://www.geekpedia.com
http://www.script20.com
Exploiting dynamic resource allocation for efficient production scheduler 42
MCE, Hassan Department of MCA 2014-15
USER MANUAL
In reference to Screen shot 1 when the application is opened, home page of the application is
displayed. In the home page contains an about company details, Contact details, FAQ’s, login,
Registration links can be viewed.
In reference to Screen shot 2 illustrates the administrator login page where in which the admin
id and password should match with the id and password which is stored in database in the
backend of the application. If it is invalid then display alert message stating that invalid id and
password.
In reference to Screen shot 3 illustrates the administrator home page. This page shows
administrator tasks. On clicking a particular icon (task), the respective page is displayed to
carry out further process.
In reference to Screen shot 4 illustrates the user management page which is used for the
verification of the Site Visitor’s registration. Here the administrator will reject the site visitor.
Once the Site Visitor is paid some money through online then he will become the Manager of
the application else he remains as Site Visitor itself.
In reference to Screen shot 5 illustrates the questions posted by various Managers along with
the user name and date. Pending button shows the Manager questions that are not answered by
the Administrator whereas answered button shows the Manager questions that are answered by
Administrator.
In reference to Screen shot 6 illustrates the login page for the Manager in which the Manager
id and the password of the Manager should match with the user name and password which is
stored in the database in the backend of the application.
In reference to Screen shot 7 illustrates the Manager Home page in which the different tasks of
the Manager are displayed. On clicking the particular icon (task) the respective page is
displayed to carry out further processing.
In reference to Screen shot 8 illustrates the company products Screen shot in which the product
id, product name entered will be displayed in the form of table, the additional products can be
added and the present products can be deleted.
Exploiting dynamic resource allocation for efficient production scheduler 43
MCE, Hassan Department of MCA 2014-15
In reference to Screen shot 9 illustrates the company Machines in which the resource id,
resource name entered will be displayed in the form of table, the additional resources can be
added and the present resources can be deleted.
In reference to Screen shot 10 illustrates the Manager Problem Specification in which product
name and corresponding profit is displayed in gridview1, resources name and corresponding
availability is displayed in gridview2 along with the allocation set in gridview3. When we click
the button then it will be redirected to next screen shot.
In reference to Screen shot 11 illustrates the simplex method inventory problem formulation
by specifying problem statement as the objective function, constraints, and the initial basic
solution will be shown in this model.
In reference to Screen shot 12 illustrates the initial iteration of the simplex method problem
which is represented in the tabular form and the final result.