Questions
Case study: WIM’s transition to ERP Welding Industries Malaysia (WIM) is the only local Malaysian company...

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.

  1. What problems led WIM to implement an ERP system?
  2. What strategic objectives (refer to chapter 1) WIM was trying to achieve through the implementation of the ERP system? Thoroughly analyze these strategic objectives by providing details.
  3. How did WIM manage the change from a local MRP system to Epicor’s ERP system? Identify specific phases of ERP implementation discussed in the case.

In: Computer Science

n Java, Create a class called Complex for performing arithmetic with complex numbers. Complex numbers have...

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.

  1. The first Complex function does not take any data. (or call no argument constructor) It initializes 0s to the private data members.
  2. The second Complex function takes two double numbers. (or call two-argument constructor) It assigns the two numbers to the private data members.
  3. The add function takes one Complex object and returns one Complex object. The function does two complex numbers addition.
  4. The subtract function takes one Complex object and returns one Complex object. The function does two complex numbers subtraction.
  5. The multiply function takes one Complex object and returns one Complex object. The function does two complex numbers multiplication.
  6. The division function takes one Complex object and returns one Complex object. The function does two complex numbers division.
  7. The toString function returns a String object but does not take any data. The function returns a parenthesis string which represents complex number. The numbers are in floating point format with only one digit after decimal point.

ComplexTest.java

It contains main function (driver) for this assignment. In the main function you have to do

  1. Create two Complex objects with value of (9.5, 7.7) and (1.2, 3.1).
  2. Print a proper formatted headline “A complex number in the form (x, y) is equal to x + yi, where i is square root of -1.”
  3. Print a second headline "*-Complex numbers calculations-*".
  4. If an object contains (9.5, 7.7 ) and b object contains ( 1.2, 3.1 ). The program will use System.out.printf function to display information by calling a.toString(), b.toString(), a.add( b ).toString(), a.subtract( b ).toString(),a.multiply( b ).toString(), and a.division( b ).toString() as arguments.

In: Computer Science

Using a text editor, create a file english.txt containing the following words: yes no go come...

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...

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...

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...

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...

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...

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:

  1. HTML tags:
    1. An <input> tag labeled "Timer Duration" with the initial value 0
    2. A <button> tag labeled "Start"
  2. Script: When the user presses the button (1b), a function will begin that does the following:
    1. Reads the value from the input field (1a)
    2. Removes the <input> and <button> tags (1a & 1b)
    3. Creates a new <p> tag, initialized to show the input value
    4. Starts a timer that ticks down to zero. For every second that elapses, the paragraph tag (2c) will show the updated timer value (i.e., one less)
    5. When the timer reaches zero, the countdown will stop and the paragraph tag (2c) will be removed and be replaced by a <button> tag labeled "New Timer"
    6. When the <button> tag (2e) is pressed, it will be removed and the <input> and <button> tags (1a, 1b) will be recreated with their original formats

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

what would you do if you forget your password for Access database

what would you do if you forget your password for Access database

In: Computer Science

Javascript: Create a loop that counts from 1 to 20. // If the current number is...

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...

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...

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...

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...

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...

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