The Tech Support System

Pada blog kali ini, kita akan membuat sebuah program support center untuk pada customer sebagai sebuah contoh penggunaan library pada Java di BlueJ. Pada program Tech Support kali ini, program ini akan menghasilkan beberapa variasi respon secara random sehingga customer tidak akan merasa terganggu, seperti :

 

Pada project kali ini kita akan membuat 3 class, yaitu SupportSystem sebagai main class, InputReader untuk mengambil input String dari customer, dan Responder untuk membuat respon secara random. Jika di blueJ akan menjadi seperti ini :

 

Source code class Support System :

1.  /**

2.  * Class untuk mengimplementasi technical support system.

3.  *

4.  * @author Aufi Fillah

5.  * @version 0.1

6.  */

7.  public class SupportSystem

8.  {

9.      private InputReader reader;

10.     private Responder responder;

11.     /**

12.     * Membuat technical support system.

13.     */

14.     public SupportSystem()

15.     {

16.         reader = new InputReader();

17.         responder = new Responder();

18.     }

19.     /**

20.     * mulai technical support system dengan print sebuah kalimat

21.     * pembuka

22.     */

23.     public void start()

24.     {

25.         boolean finished = false;

26.         printWelcome();

27.         while(!finished) {

28.             String input = reader.getInput();

29.             if(input.startsWith("bye")) {

30.                 finished = true;

31.             }

32.             else {

33.                 String response = responder.generateResponse();

34.                     System.out.println(response);

35.             }

36.         }

37.         printGoodbye();

38.     }

39.     /**

40.     * Print sebuah welcome message

41.     */

42.     private void printWelcome()

43.     {

44.         System.out.println(

45.             "Welcome to the DodgySoft Technical Support System.");

46.         System.out.println();

47.         System.out.println("Please tell us about your problem.");

48.         System.out.println(

49.             "We will assist you with any problem you might have.");

50.         System.out.println(

51.             "Please type 'bye' to exit our system.");

52.     }

53.     /**

54.     * Print sebuah good-bye message.

55.     */

56.     private void printGoodbye()

57.     {

58.         System.out.println("Nice talking to you. Bye...");

59.     }

60. }

 

Pada class tersebut kita hanya mengundang class lain dan tidak perlu mengundang sebuah library karena boolean, string, dan print sudah ada dalam Java tanpa di import sekalipun.

Lalu source code class Responder :

1.  import java.util.ArrayList;

2.  import java.util.Random;

3.  /**

4.  * Class untuk membuat respon secara random dan otomatis

5.  *

6.  * @author Aufi Fillah

7.  * @version 0.1

8.  */

9.  public class Responder

10. {

11.     private Random randomGenerator;

12.     private ArrayList<String> responses;

13.     /**

14.     * Membuat responder.

15.     */

16.     public Responder()

17.     {

18.         randomGenerator = new Random();

19.         responses = new ArrayList<String>();

20.         fillResponses();

21.     }

22.     /**

23.     * Membuat sebuah response.

24.     * return string

25.     */

26.     public String generateResponse()

27.     {

28.         // Pick a random number for the index in the default response

29.         // list. The number will be between 0 (inclusive) and the size

30.         // of the list (exclusive).

31.         int index = randomGenerator.nextInt(responses.size());

32.         return responses.get(index);

33.     }

34.     /**

35.     * Build up sebuah list default responses dengan random

36.     */

37.     private void fillResponses()

38.     {

39.         responses.add("That sounds odd. Could you describe \n" +

40.         "that problem in more detail?");

41.         responses.add("No other customer has ever \n" +

42.         "complained about this before. \n" +

43.         "What is your system configuration?");

44.         responses.add("That’s a known problem with Vista." +

45.         "Windows 7 is much better.");

46.         responses.add("I need a bit more information on that.");

47.         responses.add("Have you checked that you do not \n" +

48.         "have a dll conflict?");

49.         responses.add("That is explained in the manual. \n" +

50.         "Have you read the manual?");

51.         responses.add("Your description is a bit \n" +

52.         "wishy-washy. Have you got an expert \n" +

53.         "there with you who could describe \n" +

54.         "this more precisely?");

55.         responses.add("That’s not a bug, it’s a feature!");

56.         responses.add("Could you elaborate on that?");

57.     }

58. }

 

Pada class Responder, kita membutuhkan ArrayList untuk membuat sebuah respon dan Random untuk mengoutput salah satu reson secara random.

Lalu, source code class InputReader :

1.  /**

2.   * Class untuk mendapatkan input dari user

3.   *

4.   * @author Aufi Fillah

5.   * @version 0.1

6.   */

7.   

8.  import java.util.Scanner;

9.  import java.lang.String;

10.  

11. public class InputReader

12. {

13.     /** membuat method untuk menginput sebuah String.

14.      *

15.      */

16.     public String getInput()

17.     {

18.         Scanner reader = new Scanner(System.in);

19.         String awawa = reader.nextLine();

20.         return awawa;

21.     }

22. }

 

Pada class InputReader kita Cuma membuat sebuah class untuk mendapatkan input dari customer. Maka dari itu, kita mengimport sebuah package java.util.Scanner lalu membuat sebuah method getInput() dan menyimpan dalam sebuah variabel String awawa yang kemudian akan digunakan pada main class (SupportSystem Class).

Untuk menjalankan program Support Center ini, pertama-tama kita klik kanan pada class SupportSystem dan pilih new SupportSystem()

 

Dan kita namai object tersebut dengan nama supportS1

 

Klik kanan pada object yang telah dibuat dan pilih void start()

 

Lalu BlueJ akan menampilkan :

 

Lalu, apabila kita ingin menyampaikan sesuatu, kita akan mendapatkan respon yang berbeda-beda secara random, seperti :

 

Dan apabila kita mengetik “bye”, program akan menjalankan fungsi printGoodbye(), program dihentikan dan tidak akan bisa mendapatkan input lagi.

 

Sekian adalah contoh program dengan mengimport package dalam Java. Terimakasih.

Komentar

Postingan populer dari blog ini

Game Java Rapid Roll

ETS PBO (Bagian 1) - membuat Sistem ATM