Case study: WIM’s transition to ERP
Welding Industries Malaysia (WIM) is the only local Malaysian company that manufactures welding machines for commercial use. WIM’s remarkable success story, which includes surviving the 1997/8 financial crisis and the rise of competition from China, is attributable to the very effective enterprise resource planning (ERP) system it has adopted. In the past, WIM was using a materials resource planning (MRP) system, but this system, while a large advance over paper-based management techniques, nevertheless created many problems as the company’s operations expanded. MRP systems do not integrated information from various divisions within a company, but instead automate processes and information within departments. For WIM this meant there was no platform with which to integrate data from different departments, there was a prevalence of data duplication and redundancy, and inconsistent data were supplied to managers. In addition to this, the departments within the company were acting as separate entities and information was not being shared. The growing size of the firm and the corresponding increase in the sizes of departments also bogged down the flow of information. There were no predefined standards for data communications and information was often lost. In the absence of an enterprise-wide approach to information, WIM had a difficult time meeting production schedules. The lack of communication of vital information resulted in a loss of crucial resources; that is, people, material, and machinery. Senior management could not obtain a complete view of the company as a whole, but instead had to rely on piecemeal reports from each division. As Keng Foon Leong, General Manager, WIM, explained, “The local MRP system had the manufacturing modules, but it couldn’t manage huge data. We could not see our material movement on our previous system”. Overall productivity of the manufacturing process was falling, employees were disengaged and customers did not return. This set alarm bells ringing.
Based on the problems in their existing system, the management at WIM developed a set of objectives to guide the development of a new system. The objectives included an increase in the visibility and sharing of all reports on manufacturing; improved coordination across functional departments to increase efficiency; better management of procurement and inventory processes; the facilitation of day-to-day management; and the 24x7 availability of financial information of the entire firm. Management also demanded standardization of data formats across the company, and greater accuracy, along with remote access and improved security. They also decided that the inclusion of best practices and other vital information could lead to an increase in productivity and greater ownership.
After careful assessment, WIM decided to hire the services of Epicor Software Corporation for their ERP needs. Epicor is a software solutions provider to various enterprises in the manufacturing, distribution, retail, and service industries. Epicor has over 40 years of experience and has more than 20,000 customers in over 150 countries. “We reviewed a number of ERP vendors. We looked at each system and its functionality. Epicor stood out with its ability to link to our operations and provide the data we needed” said Leong. The first step was to put together a functional team comprising project management, IT systems managers, and executive management. The project management team defined the scope of the ERP system, assessed available resources at WIM, and budgeted the cost of implementation. The executive team ensured that the resulting system achieved business objectives and strategies, while technical expertise and support was provided by the IT team. A communication plan was designed to keep each individual member informed about current progress and the next steps in the plan. This was an essential part of change management at WIM. The system was implemented using a phased approach, since Epicor believes that key functionalities of the system need to be implemented in the first phase, followed by less major processes in the second phase, and so on.
ERP at WIM has changed the way the firm functions. The role of ERP in managing manufacturing processes now extends from procurement all the way to consumption. Holistic information on material, machinery, and labor, such as the cost structure of all raw materials, can now be accurately assessed. WIM is now able to utilize its resources to reap maximum profits. ERP has also integrated different departments at WIM, resulting in increased efficiency in operations at the firm. The manufacturing process can now be effectively and minutely planned using ERP, through the identification of the tasks and activities underlying each process, and the time required to complete them. The start and end times of sequences are estimated, and this enables the manufacturing process to be carried out smoothly, with any delays being immediately flagged up for further action, thus minimizing downtime. Better planning also facilitates effective monitoring of the process. In addition to these positive outcomes, the complexity of risk management and issue management is reduced thanks to the increased visibility of process information.
The implementation of Epicor’s ERP software has helped WIM to scale up its operations. As Leong explains, “Epicor provides us with greater visibility over our material movement and having an advanced MRP system within a comprehensive solution like Epicor is very important to the business.” The success of any manufacturing company also lies in how inventory is utilized. The software tracks and controls all procurement activities, schedules production processes, manages costs, and generates information that helps WIM to manage its inventory. It accurately forecasts the demand for materials and provides clear visibility into the lead time of ordered material. WIM purchases materials near the time of consumption, which leads to a reduction in maintenance of inventory levels in the organization. For instance, when quantities of a particular raw material exceed the minimum level or the maximum level respectively, an email alert is generated by the system to notify users, who can then decide whether to procure further quantities.
Furthermore, accurate information from all departments is recorded on the system, and this allows WIM to measure performance against key indicators in order to improve the quality of its business. As Leong notes, “Epicor has helped us to save money because we can make business decisions more clearly. We know that the data is accurate and the reports are correct. We can call on the Epicor system to support our decision-making process and let us make decisions faster and justify our spending.
Instructions: Read the above case and answer all following questions. Your answers must be clear, well-organized, and more importantly display in-depth analysis of the case.
In: Computer Science
n Java,
Create a class called Complex for performing arithmetic with complex numbers. Complex numbers have the form
realPart + imaginaryPart * i
where i is square root of -1
Use floating-point variables to represent the private data of the class. Provide a constructor that enables an object of this class to be initialized when it is declared.
Provide a no-argument constructor with default values in case no initializers are provided. Provide public methods that perform the following operations:
a) Add two Complex numbers: The real parts are added together and the imaginary parts are added together. So, if we have (a + bi) + (c + di)), the result should be (a + c) + (b + d) i.
b) Subtract two Complex numbers: The real part of the right operand is subtracted from the real part of the left operand, and the imaginary part of the right operand is subtracted from the imaginary part of the left operand. So, if we have (a + bi) - (c + di)), the result should be (a - c) + (b - d) i.
c) Multiply two Complex numbers: The real part of the result is the real part of the right operand multiplies the real part of the left operand minus the imaginary part of the right operand multiply the imaginary part of the left operand. The imaginary part of the result is the real part of the left operand multiply the imaginary part of the left operand plus the imaginary part of the left operand multiply the real part of the right operand. So, if we have (a + bi) * (c + di)), the result should be (ac - bd) + (ad + bc) i.
d) Division two Complex numbers: We set the value of square real part of the denominator plus square imaginary part of the denominator is A. The real part of the result is the real part of the numerator multiplies the real part of the denominator plus the imaginary part of the numerator multiply the imaginary part of the denominator and divided by A. The imaginary part of the result is the real part of the left operand multiply the imaginary part of the left operand plus the imaginary part of the left operand multiply the real part of the right operand. So, if we have (a + bi) / (c + di)), the result should be (ac+bd)+i(bc-ad))/(c2+d2).
e) Print Complex numbers in the form (a, b), where a is the real part and b is the imaginary part.
A public class (Complex as in this assignment’s demo programs) should be implemented to do complex number calculation.
In the main function (ComplexTest as in the demo) you will instantiate two Complex class objects, call Complex class’s Addition, Subtraction, Multiply, Division function and print out the result of the calculations.
The following are the specifications for this assignment.
Complex.java
There are two private double data members (real and imaginary). The real stores the real part of a complex number and the imaginary stores the imaginary part of a complex number.
There are seven public functions (two Complex, add, subtract, multiply, division, and toString) in this classes.
ComplexTest.java
It contains main function (driver) for this assignment. In the main function you have to do
In: Computer Science
Using a text editor, create a file english.txt containing the following words: yes no go come thanks goodbye Create a second file chinese.txt contain the following words: shi bu qu lai xiexie zaijian Write a program that reads the words from english.txt so that the successive slots of a char * array english point to them. Use the %s conversion code in a fscanf call to read one word at a time. Similarly, read the words from chinese.txt so that the successive slots of a char * array chinese point to them. Your program should then execute a loop that prompts the user for an English word, reads it in (use scanf), and then displays the corresponding Chinese word. The loop should continue until the user enters the word "done".
In: Computer Science
In C, take the following programming that initializes 2 arrays and swaps them and displays the initial input and output and modify it so that it uses different functions for the swapping and printing, so that the main method only has variables and function calls.
#include<stdio.h> int main() { const int n = 5; int firstArray[n], secondArray[n]; int i, k=0, temp; for(i=0, k=0; k<n; i+=2, k++){ firstArray[k] = i; secondArray[k] = i+1; } printf("Before Swap\n"); for(i=0; i<n; i++) { printf("firstArray[%d] = %d, secondArray[%d] = %d\n", i, firstArray[i], i, secondArray[i]); } //swapping for(i=0; i<n; i++) { temp = firstArray[i]; firstArray[i] = secondArray[i]; secondArray[i] = temp; } printf("After Swap\n"); for(i=0; i<n; i++) { printf("firstArray[%d] = %d, secondArray[%d] = %d\n", i, firstArray[i], i, secondArray[i]); } return 0; }
In: Computer Science
I want to know how can I fix this program so it can work properly....can someone run it and give me the fixed version but do not the entire program bear with this one please and thanks in advance!!!!!
import java.util.Scanner;
public class ifPractice
{
public static void main(String[] args)
{
Scanner KB = new Scanner(System.in);
{
double option;
double option02;
double stu_gradeTest01;
double stu_gradeTest02;
double stu_gradeTest03;
double final_grade;
{
System.out.println("Enter #1 to see what test to grade first, #2
for student's average, #3 " +
"to see what is the final grade for the student: ");
option = KB.nextDouble();
if(option == 1)
{
System.out.println("Let's see which exam to grade
first....");
System.out.println("Now please choose #4 for first exam; #5 for
second exam; #6 for final exam: ");
option02 = KB.nextDouble();
if(option02 == 4)
{
System.out.println("Grade exam one: ");
stu_gradeTest01 = KB.nextDouble();
System.out.println("The first exam: " + stu_gradeTest01);
}
else if(option02 == 5)
{
System.out.println("Grade exam two: ");
stu_gradeTest02 = KB.nextDouble();
System.out.println("The second exam: " + stu_gradeTest02);
}
else if(option02 == 6)
{
System.out.println("Grade exam three: ");
stu_gradeTest03 = KB.nextDouble();
System.out.println("The third exam: " + stu_gradeTest03);
}
else
System.out.println("Invalid entry.... program in lockdown until
further notice....");
}
else if(option == 2)
{
System.out.println("These are all of the grades: ");
stu_gradeTest01 = KB.nextDouble();
stu_gradeTest02 = KB.nextDouble();
stu_gradeTest03 = KB.nextDouble();
final_grade = (stu_gradeTest01 + stu_gradeTest02 +
stu_gradeTest03)/3.0;
System.out.println("The final grade is: " + final_grade);
}
else
System.out.println("Invalid entry...llocking system
down....");
}
else if(option == 3)
{
System.out.println("The final grade the student got was: ");
final_grade = KB.nextDouble();
if(final_grade >= 90)
{
System.out.print("A");
final_grade = KB.nextDouble();
}
else if(final_grade >= 80 )
{
System.out.print("B");
final_grade = KB.nextDouble();
}
else if(final_grade >= 70)
{
System.out.print("C");
final_grade = KB.nextDouble();
}
else if(final_grade <= 65)
{
System.out.println("Your are failing");
final_grade = KB.nextDouble();
}
else if(final_grade >= 64)
{
System.out.println("F");
final_grade = KB.nextDouble();
}
else
{
System.out.println("Invalid enry.....lllocking down....");
}
}
else
System.out.println("Invalid entry");
}
}
}
In: Computer Science
Complete the "Reducing pops and clicks" step-by-step found in Lesson 5 from the textbook “Adobe Audition CC Classroom in a Book.” After performing all the steps (1-9), save the file with the file name MajorPopsFix.wav and submit it.
In: Computer Science
Nice shirt! In Java, write a program that uses a function that takes in the user's name and prints out compliments directed to them. The program should provide a sentinel value by asking if they've had enough compliments and will continue until they type "yes". Include 3 different compliments pulled at random and BE SURE TO USE A FUNCTION/METHOD to take in the user's name.
Sample output:
Enter your name: John Smith
John Smith, you have a great smile!
Would you like another compliment? [yes/no] yes
John Smith, you are tall and handsome!
Would you like another compliment? [yes/no] yes
John Smith, you are a quick learner!
Would you like another compliment? [yes/no] no
Have a nice day!
In: Computer Science
Instructions
Submission Guidelines
This assignment may be submitted for full credit until Friday, October 4th at 11:59pm. Late submissions will be accepted for one week past the regular submission deadline but will receive a 20pt penalty. Submit your work as a single HTML file. It is strongly recommended to submit your assignment early, in case problems arise with the submission process.
Assignment
For this assignment, you will write a timer application in HTML and JavaScript.
Your HTML document should contain the following elements/features:
Evaluation
Your assignment will be graded according to whether all the required elements are present and in the correct formats and all required functionalities are operable.
In: Computer Science
In: Computer Science
Javascript:
Create a loop that counts from 1 to 20. // If the current number is even, add it to this empty array: var myArray = []; // If the current number is odd, log an odd number warning to // the console. // However, if the number equals 19, set a debug breakpoint. // After the loop completes, print the array to the console.
var myArray = []; for (var i = 1; i <= 20; i++) { if (i % 2 === 1) { console.warn("odd number"); } else { myArray.push(i); } if (i === 19) { console.debug(); } } console.log(myArray);
The code is not printing to my screen. help please
In: Computer Science
I wanted c++ program for the question
Problem 6 - Weighted Graph
In the vertex and edge structure defined below
Vertex Edge
Vertex
SFO 2702 BOS
SFO 1846 ORD
ORD 867
BOS
ORD 742
JFK
JFK 189
BOS
SFO 1464 DFW
DFW 802
ORD
DFW 1123 MIA
MIA 1092 JFK
MIA 1258 BOS
SFO 339
LAX
LAX 1235 DFW
LAX 2342 MIA
a) Find the shortest distance between
ORD and LAX.
b) Find the shortest distance between
JFK and SFO.
c) Find the minimum spanning tree.
In: Computer Science
For the problem below, please estimate the worst-case Running Time for a random array of size n, and prove that it is indeed ( ). Please show all your work. Just stating something like "since 2 Binary Search runs in ( ) time, our algorithm has the same runtime estimate" is not enough. A rigorous explanation is expected.
import java.util.*;
public class Main
{
static int binarySearch(int arr[], int l, int r, int x)
{
if (r >= l) {
int mid = l + (r - l) / 2;
// If the element is present at the middle itself
if (arr[mid] == x)
return mid;
// If element is smaller than mid, then it can only
// be present in left subarray
if (arr[mid] > x)
{ int rr= binarySearch(arr, l, mid - 1, x);
if(rr==-1)//modified
{
return binarySearch(arr, mid + 1, r, x);
}
return rr;
}
// Else the element can only be present in right
// subarray
int k =binarySearch(arr, mid + 1, r, x);
//modified part
if(k==-1)
{
return binarySearch(arr, l, mid - 1, x);
}
return k;
}
// We reach here when element is not present in array
return -1;
}
public static int FindIndex(int[] arr, int x)
{
if(arr.length==0)return -1;//if array is empty
return binarySearch(arr,0,arr.length-1,x);
}
public static void main(String[] args) {
int a[] = {3, 17, 28, 935, 1011, -10, 0, 2}
;//declaring array
int r = FindIndex(a,935);
System.out.println("index of
935:"+r);
r = FindIndex(a,-10);
System.out.println("index of
-10:"+r);
r = FindIndex(a,0);
System.out.println("index of
0:"+r);
r = FindIndex(a,1);
System.out.println("index of
1:"+r);
r = FindIndex(a,3);
System.out.println("index of
3:"+r);
r = FindIndex(a,2);
System.out.println("index of
2:"+r);
r = FindIndex(a,17);
System.out.println("index of
17:"+r);
}
}
In: Computer Science
How many types of errors can occur during the execution of a program? Discuss the circumstance when these types of errors can occur. Support your argument with examples.
In: Computer Science
A professor claimed that wire-based secure communication can be made secure using a continuum, grounded shield around the hot wire carrying the signal. He claimed that, if Eve drills a hole into the shield to probe the hot wire, Alice and Bob could detect the change of the shield resistance and uncover the eavesdropping. Consider tamper resistance. Is such secure communication unconditionally secure?
In: Computer Science
Create a python graphics of a smiley face that includes hair and eyebrows.
must start with : from graphics import * or import graphics
code must include these dimensions:
Head: Circle(Point(400,400), 200)
R Eye: Circle(Point(350,350), 20)
L Eye: Circle(Point(450,350), 20)
Mouth1: Oval(Point(300,500),Point(500,400))
Mouth2: Oval(Point(315,475), Point(485,375))
In: Computer Science