Sabtu, 22 Oktober 2016

(6.1) [Revisi] CRC card, class diagram, sequensial diagram dan penerapan aplikasi

1. CRC card


2.Use Case Diagram

3.Class diagram


4. Sequensial diagram
5.Activity Diagram



6. Penerapan


#include<string>
using std::string;
using std::getline;

#include <vector>
using std::vector;

#include <iostream>
using std::cout;
using std::endl;
using std::cin;

#include <iomanip>
using std::setw;
using std::left;
using std::right;

#include <fstream>
using std::ofstream;
using std::ifstream;

#include <sstream>
using std::stringstream;

#include <ctime>

class List {
    private:
    string _identification;
    string _category;
    string _itemDescription;
    string _price;
    string _quantity;
    string _total;
    string _newprice;
    string _VAT;
    public:
    List();
    List(string id, string category, string itemDescription, string price);
    List(string id, string quantity, string price, string total, string VAT );
    string toString();
void display();
    void Bill();
};
class ListItem {
    private:
    int _identification;
    string _price;
    vector<List> _items;
    vector<List> _itemSlot;
    public:
    void displayAll();
    void ListBill();
    void getFile();
    void showMenu();
    void StopProgram();
};
class Menu {
    private:
    ListItem _Li;
    string _file;
    public:
    Menu();
    bool select();
};

const string currentDateTime() {
    time_t     now = time(0);
    struct tm  tstruct;
    char       buf[80];
    tstruct = *localtime(&now);
    strftime(buf, sizeof(buf), "%Y-%m-%d.%X", &tstruct);
    return buf;
}


//***************************************************************
// Displaying and string data to the document
//****************************************************************
List::List(string id, string itemDescription, string category, string price)
:_identification(id), _itemDescription(itemDescription), _category(category), _price(price){      }
List::List(string id, string quantity, string price, string total, string VAT)
:_identification(id), _quantity(quantity), _price(price), _total(total), _VAT(VAT) { }
string List::toString(){
    return string(_identification + ":" + _quantity +  ":" + _price + ":" + _total + ":" +  _VAT);
}
void List::display(){
    cout << _identification << " " << left << _category << " " << left << _itemDescription << " " << left << _price <<setw(2) << left << endl;
}
void List::Bill(){
    cout << _identification << " " << _quantity << " " << _price << " " <<  _total << " " << _VAT;
}
void ListItem::displayAll(){
    for(size_t i = 0; i < _items.size(); ++i){
        _items[i].display();
    }
    cout << endl;
}
//***************************************************************
// Read file
//****************************************************************
void ListItem::getFile(){
    //Opens the file and reads the file
    char ch;
    while(ch = 'y')
    {
        cout << "Enter File name: ";
        system("color 1f");
        string name = "menu";
        cin >> name;
        name += ".txt";
        ifstream fin(name.c_str());
        if(fin){
            ch = 'n';
            while(!fin.eof()){
                string IdNo;
                getline(fin,  IdNo, ':'); // Finds "IDNO://
                string category;
                getline(fin, category, ':');
                string itemDescription;
                getline(fin, itemDescription, ';');
                string price;
                getline(fin, price);
                if(!fin.eof()){
                    _items.push_back(List(IdNo, category, itemDescription, price));
                }
            }
        }
        if (ch = 'n')
        {
            break;
        }
    }
}
//***************************************************************
// Allows other functions to link up with each other!!
//****************************************************************
Menu::Menu(){
    select();
}
//***************************************************************
// Entering the details
//****************************************************************
void ListItem::showMenu(){

 
system ("cls");
    int ch, quantity;
    double price,total, VAT;
    char choice;
char buffer[80];

string _quantity, _total, _VAT, _ch;


    // User enters data

cout<<"\nn============================";
    cout<<"\n PLACE YOUR ORDER";
    cout<<"\n============================";
    cout << "\nEnter the ID, Quantiy and Price" <<endl;
    while((choice = 'y') || (choice = 'Y'))
    {
        cout << "\nItem ID: ";
    cin >> ch;
        cout << "\nQuantity; ";
        cin >> quantity;
        cout << "\nprice: ";
        cin >> price;
     
total = price * quantity;
        VAT = total * 1.2;
     
cout << "\ntotal: " << total << endl;
        cout << "\nVAT: " <<VAT << endl;
   
   
    stringstream  stream;
       stream << quantity;   //String Streams, passes data into the attribute in the class which then gets stored in a vector
       stream >> _quantity;
       stringstream stream2;
       stream2 << price;
       stream2 >> _price;
       stringstream  stream3;
       stream3 << total;
       stream3 >> _total;
      stringstream  stream4;
     stream4 << VAT;
     stream4 >> _VAT;
     stringstream  stream5;
     stream5 << ch;
     stream5 >> _ch;
   
    cout << "\nCurrent time: ";
     cout << currentDateTime() << std::endl;
     getchar();
        _itemSlot.push_back(List(_ch, _quantity, _price, _total, _VAT) );
   cout << "\n To continue press Y, else to quit press N " << endl;
        cin >> choice;
cin.ignore();

        if(choice == 'n' || choice == 'N')
        {
            system("cls");
break;
        }
    }
}
//********************************************************************************************************
// Gets the information he user enters which is then sent to endMenu when the close it and it saves the file
//**********************************************************************************************************
void ListItem::ListBill(){
    cout << "ItemID" << " Quantity" << " Price" << " total" << "VAT" << endl;
    for(size_t i = 0; i < _itemSlot.size(); ++i){
        _itemSlot[i].Bill();
    }
    cout <<endl;
}
void ListItem::StopProgram(){
system("color 2f");
    string _bill = "Transaction";  // For some unknown strange reason, it saves the file as 5.txt
    cout << right <<  "Bill has been saved " <<endl;
    _bill += ".txt";
    ofstream fout(_bill.c_str());
    for(size_t i = 0; i < _itemSlot.size(); ++i) {
        fout << i+1 << " : " << _itemSlot[i].toString() << endl;
    }
    fout.close();
    cout << endl;
}
bool Menu::select(){
    system("color 1f");
cout << "Menu====\n" << endl;
    cout << "(1) Read a file \n(2) Add a "
    "bill \n(3)  Display Bill\n(4) Display all data\n(5) Save file and leave  the Program\n" << endl;

cout << "Select: ";
    char ch;
    cin >> ch;
    cin.ignore(256, '\n');
    cout << endl;
    switch(ch)
do
{
        case '1' : _Li.getFile();
        return true;
        case '2' : _Li.showMenu();
        return true;
        case '3' : _Li.ListBill();
        return true;
        case '4': _Li.displayAll();
        return true;
        case '5': _Li.StopProgram();
        return false;
default : cout << "Enter an '1', '2' ,'3', '4' or '5' without"
        " the qoutes.n";
        return true;
}while(ch!=1 || ch !=2 || ch != 3 || ch !=4 || ch!=5);
 
}
int main(){
    //all of the functions are run through menu4
    Menu menu;
    while(menu.select()) {
        // empty body
    }
    return 0;
}

                                                 

Minggu, 16 Oktober 2016

(6) CRC card, class diagram, sequensial diagram dan penerapan palikasi

1. CRC card


2.Class diagram


3. Sequensial diagram















4. Penerapan


#include<string>
using std::string;
using std::getline;

#include <vector>
using std::vector;

#include <iostream>
using std::cout;
using std::endl;
using std::cin;

#include <iomanip>
using std::setw;
using std::left;
using std::right;

#include <fstream>
using std::ofstream;
using std::ifstream;

#include <sstream>
using std::stringstream;

#include <ctime>

class List {
    private:
    string _identification;
    string _category;
    string _itemDescription;
    string _price;
    string _quantity;
    string _total;
    string _newprice;
    string _VAT;
    public:
    List();
    List(string id, string category, string itemDescription, string price);
    List(string id, string quantity, string price, string total, string VAT );
    string toString();
void display();
    void Bill();
};
class ListItem {
    private:
    int _identification;
    string _price;
    vector<List> _items;
    vector<List> _itemSlot;
    public:
    void displayAll();
    void ListBill();
    void getFile();
    void showMenu();
    void StopProgram();
};
class Menu {
    private:
    ListItem _Li;
    string _file;
    public:
    Menu();
    bool select();
};

const string currentDateTime() {
    time_t     now = time(0);
    struct tm  tstruct;
    char       buf[80];
    tstruct = *localtime(&now);
    strftime(buf, sizeof(buf), "%Y-%m-%d.%X", &tstruct);
    return buf;
}


//***************************************************************
// Displaying and string data to the document
//****************************************************************
List::List(string id, string itemDescription, string category, string price)
:_identification(id), _itemDescription(itemDescription), _category(category), _price(price){      }
List::List(string id, string quantity, string price, string total, string VAT)
:_identification(id), _quantity(quantity), _price(price), _total(total), _VAT(VAT) { }
string List::toString(){
    return string(_identification + ":" + _quantity +  ":" + _price + ":" + _total + ":" +  _VAT);
}
void List::display(){
    cout << _identification << " " << left << _category << " " << left << _itemDescription << " " << left << _price <<setw(2) << left << endl;
}
void List::Bill(){
    cout << _identification << " " << _quantity << " " << _price << " " <<  _total << " " << _VAT;
}
void ListItem::displayAll(){
    for(size_t i = 0; i < _items.size(); ++i){
        _items[i].display();
    }
    cout << endl;
}
//***************************************************************
// Read file
//****************************************************************
void ListItem::getFile(){
    //Opens the file and reads the file
    char ch;
    while(ch = 'y')
    {
        cout << "Enter File name: ";
        system("color 1f");
        string name = "menu";
        cin >> name;
        name += ".txt";
        ifstream fin(name.c_str());
        if(fin){
            ch = 'n';
            while(!fin.eof()){
                string IdNo;
                getline(fin,  IdNo, ':'); // Finds "IDNO://
                string category;
                getline(fin, category, ':');
                string itemDescription;
                getline(fin, itemDescription, ';');
                string price;
                getline(fin, price);
                if(!fin.eof()){
                    _items.push_back(List(IdNo, category, itemDescription, price));
                }
            }
        }
        if (ch = 'n')
        {
            break;
        }
    }
}
//***************************************************************
// Allows other functions to link up with each other!!
//****************************************************************
Menu::Menu(){
    select();
}
//***************************************************************
// Entering the details
//****************************************************************
void ListItem::showMenu(){

   
system ("cls");
    int ch, quantity;
    double price,total, VAT;
    char choice;
char buffer[80];

string _quantity, _total, _VAT, _ch;
 

    // User enters data

cout<<"\nn============================";
    cout<<"\n PLACE YOUR ORDER";
    cout<<"\n============================";
    cout << "\nEnter the ID, Quantiy and Price" <<endl;
    while((choice = 'y') || (choice = 'Y'))
    {
        cout << "\nItem ID: ";
  cin >> ch;
        cout << "\nQuantity; ";
        cin >> quantity;
        cout << "\nprice: ";
        cin >> price;
       
total = price * quantity;
        VAT = total * 1.2;
       
cout << "\ntotal: " << total << endl;
        cout << "\nVAT: " <<VAT << endl;
     
     
   stringstream  stream;
     stream << quantity;   //String Streams, passes data into the attribute in the class which then gets stored in a vector
     stream >> _quantity;
     stringstream stream2;
     stream2 << price;
     stream2 >> _price;
     stringstream  stream3;
     stream3 << total;
     stream3 >> _total;
     stringstream  stream4;
    stream4 << VAT;
    stream4 >> _VAT;
    stringstream  stream5;
    stream5 << ch;
    stream5 >> _ch;
     
   cout << "\nCurrent time: ";
    cout << currentDateTime() << std::endl;
    getchar();
        _itemSlot.push_back(List(_ch, _quantity, _price, _total, _VAT) );
  cout << "\n To continue press Y, else to quit press N " << endl;
        cin >> choice;
cin.ignore();
 
        if(choice == 'n' || choice == 'N')
        {
            system("cls");
break;
        }
    }
}
//********************************************************************************************************
// Gets the information he user enters which is then sent to endMenu when the close it and it saves the file
//**********************************************************************************************************
void ListItem::ListBill(){
    cout << "ItemID" << " Quantity" << " Price" << " total" << "VAT" << endl;
    for(size_t i = 0; i < _itemSlot.size(); ++i){
        _itemSlot[i].Bill();
    }
    cout <<endl;
}
void ListItem::StopProgram(){
system("color 2f");
    string _bill = "Transaction";  // For some unknown strange reason, it saves the file as 5.txt
    cout << right <<  "Bill has been saved " <<endl;
    _bill += ".txt";
    ofstream fout(_bill.c_str());
    for(size_t i = 0; i < _itemSlot.size(); ++i) {
        fout << i+1 << " : " << _itemSlot[i].toString() << endl;
    }
    fout.close();
    cout << endl;
}
bool Menu::select(){
    system("color 1f");
cout << "Menu====\n" << endl;
    cout << "(1) Read a file \n(2) Add a "
    "bill \n(3)  Display Bill\n(4) Display all data\n(5) Save file and leave  the Program\n" << endl;
 
cout << "Select: ";
    char ch;
    cin >> ch;
    cin.ignore(256, '\n');
    cout << endl;
   switch(ch)
do
{
        case '1' : _Li.getFile();
        return true;
        case '2' : _Li.showMenu();
        return true;
        case '3' : _Li.ListBill();
        return true;
        case '4': _Li.displayAll();
        return true;
        case '5': _Li.StopProgram();
        return false;
default : cout << "Enter an '1', '2' ,'3', '4' or '5' without"
        " the qoutes.n";
        return true;
}while(ch!=1 || ch !=2 || ch != 3 || ch !=4 || ch!=5);
   
}
int main(){
    //all of the functions are run through menu4
    Menu menu;
    while(menu.select()) {
        // empty body
    }
    return 0;
}

                                                   

Sabtu, 15 Oktober 2016

[5] RSUD Dr. Soetomo


kesempatan kali ini kita akan membahas visi misi dan struktur organisasi beserta SOP dari RSUD Dr. Soetomo, namun sebelum itu ada baiknya kita akan melihat sejarah dari rumah sakit ini.

Sejarah RSUD Dr. Soetomo:
29 Oktober 1938
Peletakan batu pertama RS Central Buggerlijk Ziekenhuis (CBZ) oleh Pemerintah Belanda di Desa Karangmenjangan.
1943 – 1945
Pada masa penjajahan Jepang, pembangunan Rumah Sakit Karangmenjangan dijadikan Rumah Sakit Angkatan Darat.
1945 – 1949
Rumah sakit dikuasai Belanda kembali, kemudian namanya diubah menjadi Marine Hospitaal (RS AL Belanda).
1950
Rumah Sakit Oemoem Soerabaja di bawah Departemen Kesehatan RI, telah berganti nama menjadi Rumah Sakit Umum (RSU) Pusat.
1951 – 1954
RS Simpang pindah ke Karangmenjangan. Pelayanan Bedah Akut tetap di RS Simpang.
1964
Berdasarkan SK. Menkes RI. 20 Mei 1964 No.26769/KAB/76. RSUP Surabaya menjadi RS Dr. Soetomo.
1965
Berdasarkan PP. No.4 Tahun 1965, penyelenggaraan RSUP Dr. Soetomo diserahkan kepada Pemda Tk.I Jawa Timur.
1979
SK Menkes menetapkan RSU Daerah DR. Soetomo sebagai RS Klas A dan dikenal sebagai:
• Rumah Sakit Pelayanan, Pendidikan dan Penelitian
• Rumah Sakit Pusat Rujukan Wilayah Indonesia Timur (Top Referal)
• Rumah Sakit terbesar di wilayah Indonesia bagian Timur
1980
Semua kegiatan pelayanan dijadikan satu di RSU Dr. Soetomo karena RS Simpang dijual dan jadi Plaza Surabaya.
2002
Perda Provinsi Jatim menetapkan perubahan nama menjadi Rumah Sakit Umum Daerah Dr. Soetomo.
2012
Saat ini RSUD Dr. Soetomo menempati lahan seluas 163.875 m2 dengan kapasitas tempat tidur (TT) 1.449, yang terdiri dari:
• Graha Amerta : 123 TT IRD : 88 TT
• Ruangan : 1209 TT GBPT : 29 TT



VISI
Menjadi Rumah Sakit yang Bermutu Internasional dalam Pelayanan, Pendidikan, dan Penelitian.  

MISI
Menyelenggarakan pelayanan kesehatan, pendidikan, dan penelitian yang profesional, akuntabel yang berorientasi pada kastemer untuk menuju pelayanan kesehatan berstandar internasional. 

Nilai Dasar  
1. Etika 
2. Profesionalisme 
3. Integritas 
4. Kemitraan 
5. Keadilan 
6. Kemandirian 

Kebijakan Dasar
  • Perbaikan mutu pelayanan.
  • Perbaikan manajemen (SDM) internal rumah sakit.
  • Pemantapan kelembagaan (struktur dan sistem).
  • Pemantapan nilai dasar menjadi budaya organisasi.
  • Pemantapan sistim akuntansi keuangan.
  • Pengendalian biaya dan struktur anggaran.
  • Perbaikan manajemen logistik medik dan non medik.
  • Pemantapan manajemen pendidikan klinik dan penelitian rumah sakit.
  • Pengembangan aliansi strategis.


Berikut ini contoh SOP pengaduan pelayanan publik di RSUD Dr. Soetomo:
     Setiap pengaduan yang masuk ke RSUD Dr Soetomo diterima oleh petugas melalui telpon No. 5501239, 5501259 dan 70813188 dan dicatat data pengadu dan isi pengaduan (nama, alamat dan telepon)

Pengaduan dari masyarakat yang masuk akan dipilah, apabila pengaduan dari masyarakat tersebut dapat dijawab  maka petugas penerima akan menjawab  pengaduan masyarakat tersebut secara langsung. Dan apabila pengaduan dari masyarakat tidak dapat dijawab langsung maka pengadu (masyarakat) diminta menelepon ulang 10-60 menit kemudian.

Petugas akan mencari informasi langsung menghubungi sumber informasi yang dikenal dan diketahui ( Dokter, paramedik, staf RSUD Dr Soetomo ). Sehingga pengadu sewaktu menelepon ulang petugas sudah dapat menjawab.

Dan apabila petugas tidak dapat mendapat  sumber informasi maka petugas akan berkonsultasi dengan koordinator pelayanan publik (Urip Murtejo, dr,SpB, PGD, Pall Med ECU (telp : 0811346418 & 70181401) atau  Sunarso Suyoso, dr.,SpKK(K) (telp : 8663074 & 0818309742).

Setelah  dikonsultasikan  dengan  koordinator  pelayanan  publik  dan  dapat  menjawab langsung pengaduan dari masyarakat maka petugas dapat menyampaikan kepada pengadu.

Dan apabila setelah dikonsultasikan dengan koordinator pelayanan publik juga tidak dapat menjawab maka, pengadu  diminta untuk menunggu selama 1 – 3 x 24 jam.

Selama menunggu 1 - 3 x 24 jam  koordinator pelayanan publik akan mencarikan  sumber informasi utama / supervisor PKRS & Humas.

Setelah dari sumber informasi utama / supervisor PKRS & Humas atau dilakukan rapat koordinasi dari banyak bidang, jawaban akan disampaikan kembali ke koordinator pelayanan publik yang kemudian akan diinformasikan kepada petugas penerima pengaduan untuk disampaikan kembali kepada pengadu. Bagi pengaduan yang lewat media masa akan dibuat surat jawaban tertulis ke media yang bersangkutan.

Untuk kelalaian tindakan medis akan ditangani oleh Komite Medis sendiri. Jawaban kepada pengadu  / masyarakat harus disampaikan  kembali maksimum dalam 5 x 24 jam.

Jawaban yang tidak dapat diselesaikan dalam waktu 5 x 24 jam, baik pengaduan secara langsung, lewat telpon dan melalui media masa, maka pengadu dapat menindak lanjuti ke Komisi Pelayanan Publik.

Untuk pengaduan yang tidak dapat diselesaikan akan diberikan kompensasi dengan perlakuan khusus sesuai kebijakan dari RSUD Dr.Soetomo / Instalasi masing-masing.

Jawaban ditulis didalam form laporan yang sudah ditetapkan.

Semua laporan dikirim ke PKRS tiap bulan, sebelum tanggal 5 bulan berikutnya.

Semua pengaduan yang masuk Ke RSUD Dr.Soetomo baik secara langsung, lewat telpon maupun media masa beserta jawabannya akan dilaporkan ke Sekretaris Daerah Propinsi Jawa Timur sebelum tanggal 10 bulan berikutnya.

Bila jawaban lebih dari 5 X 24 jam, pengadu dapat mengajukan masalahnya ke Komisi Pelayanan Publik.


Mungkin sekian dahulu pemahasan pada kali ini. Kalau misalkan ada kesalahan saya mohon maaf karena saya juga masih belajar.

Sumber:  http://rsudrsoetomo.jatimprov.go.id/id/images/stories/STRUKTUR%20ORGANISASI%20-%20nov2015edit.jpg
       http://rsudrsoetomo.jatimprov.go.id/id/index.php/2014-11-19-04-37-24/2014-11-19-04-39-55
       http://www.slideshare.net/idakomariana1/panduan-informasi-2012




Sabtu, 01 Oktober 2016

[4] CRC, Inisialisasi class dan Relasi class dari Sistem Management Event

Setelah pada [2] kita membahas tentang event management. Pada kesempatan ini kita akan mencoba membuat CRC card dan Class diagram sesuai dengan use case diagram di post [2]. Sebelum membuat CRC card dan Class diagram, terlebih dahulu kita akan membahas pengertian dari CRC dan Class diagram.

Class-responsibility-collaboration
 (CRCcards adalah alat yang dgunakan di desain software berorientasi objek untuk brainstorming.


Class diagram adalah model statis yang menggambarkan struktur dan deskripsi class serta hubungannya antara class.

Ada baiknya sebelum membuat CRC cards dan class diagram dari event management, kita melihat use case diagram dari event management terlebih dahulu.


Use case diagram event management




CRC CARDS EVENT MANAGEMENT
Terdapat 6 CRC cards yang dibuat pada sistem managemen event ini, yaitu Rules, Participant, Event, Event Organizer, Registration, dan Email








Setelah kita membuat CRC cards tersebut, barulah kita dapat membuat relasi dari masing-masing CRC cards.



Barulah setelah CRC Cards tersebut memiliki relasi, kita dapat membuat Class Diagramnya.

Class Diagram Event Management


Sekian dulu pembahasan pada kali ini, Kalau misalkan ada kesalahan saya mohon maaf karena saya juga masih belajar.

[3] Enam Keuntungan dari Sistem Mobile Banking & SWOT-nya

Setelah pada post [1] kita membahas tentang sistem informasi internet banking(E-Banking). Pada kesempatan ini kita akan berfokus kepada sub sistem informasi E-Banking, yaitu sistem mobile banking. 

SWOT

Strength:

Dalam pembuatan mobile banking tentunya ada beberapa faktor yang dibutuhkan oleh sistem tersebut. Faktor-faktor tersebut ditunjukkan oleh gambar berikut:



1.      Improved service
Servis yang diberikan oleh mobile banking lebih bagus, dikarenakan kita sebagai user dapat mengakses layanan-layanan yang ada selama 24 jam.


2.      Better performance
Mobile banking tentunya ketika dibandingkan dengan proses transaksi perbankan kuno tentunya memiliki performa yang berbeda. Mobile banking membuat transaksi menjadi lebih cepat dan lebih mudah.


3.      Support for new products and services
Mobile banking tentunya memicu adanya produk berupa program baru dan juga layanan-layanan baru yang berada di produk mobile banking tersebut.


4.      More information
Informasi yang diberikan mobile banking memberikan informasi yang lebih realtime dibandingkan dengan ketika kita mengakses melalui bank.


5.      Stronger controls
Dengan mobile banking memberikan informasi yang realtime, kita dari pihak pengguna dapat mengontrol dan juga mengamankan informasi-informasi pribadi yang ada di bank tersebut.


6.      Reduced cost
Dari segi pengguna, jika dibandingkan harus datang ke bank dan mengakses layanan yang ada, dan menggunakan mobile banking, maka cost yang dibutuhkan oleh mobile banking lebih kecil, karena pengguna tidak perlu datang ke bank dan mengantri, juga tidak terikat oleh jam buka dan jam tutup bank.

Weakness:


  1. Rawan ancaman hacker


Opportunity:
  1. Lebih mudah diakses.
  2. Menghemat waktu nasabah.


Threats:
  1. Keamanan mobile banking masih perlu ditingkatkan lagi 


Sekian dulu pembahasan pada kali ini, Kalau misalkan ada kesalahan saya mohon maaf karena saya juga masih belajar.


Sabtu, 24 September 2016

[2] Event Management

Event/acara dilihat dari sudut pandangan programmer hanya merupakan sesuatu yang terjadi pada selang waktu tertentu, namun ketika dilihat dari sudut pandang end user, event dapat berarti sesuatu yang terjadi di hidupnya ataupun pertemuan baik formal maupun non formal ataupun jadwal pribadi seseorang.
Acara/event yang akan dibahas disini adalah event yang sederhana dimana terdapat registrasi, bersifat semi formal dan dimanage via email.

Berikut adalah contoh use case diagram dari sistem  pembuatan, perencanaan dan managemen sebuah acara/event:


Diagram use case sendiri merupakan pemodelan untuk menggambarkan kelakuan (behavior) sistem  secara keseluran yang akan dibuat. Diagram use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem yang akan dibuat. Dengan pengertian yang cepat, diagram use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem dan siapa saja yang berhak menggunakan fungsi-fungsi tersebut.

Dari diagram tersebut terlihat ada 2 aktor penting yang terlibat, yaitu event administrator atau yang lebih sering disebut dengan event organizer dan juga participant atau peserta.

Peserta disini berfungsi sebagai orang yang mendaftar atau mengikuti kegiatan-kegiatan yang ada di event tersebut dan menikmati jalannya acara(apabila peserta tersebut mendaftar).

Sedangkan event organizer/event administrator berfungsi untuk memberitahukan tempat kegiatan juga untuk mengorganisir peserta yang mengikuti acara tersebut.

Untuk managemen acara sendiri diagram use casenya ketika dipisah dari diagram awal akan berubah menjadi seperti ini 



Pihak EO(Event Organizer) akan menanagemen 6 hal yang berhubungan dengan acara.
yang pertama adalah membuat email acara. karena pada contoh ini managemennya melalui email maka pihak EO harus membuat email yang berfungsi untuk mengirim undangan kepada tamu, menerima registrasi dari calon peserta, menyebarkan persyaratan registrasi kepada calon peserta, memberitahukan perubahan-perubahan yang terjadi di acara tersebut kepada peserta dan juga mengorganisir peserta.

Sumber: https://www.google.co.id/url?sa=t&rct=j&q=&esrc=s&source=web&cd=10&cad=rja&uact=8&ved=0ahUKEwjO0Nqug5vPAhUHF5QKHafwAGQQFghHMAk&url=https%3A%2F%2Fgroups.drupal.org%2Ffiles%2FEventsSpec_v2.0.pdf&usg=AFQjCNGCXMlWLODGqoeCjZGbE92Usf4DsA&sig2=LEtZN9bpdGQAwfmtxEbs2w

Jumat, 23 September 2016

[1] SISTEM INFORMASI INTERNET BANKING(E-BANKING)

E-Banking yang juga dikenal dengan istilah internet banking ini adalah melakukan transaksi, pembayaran, dan transaksi lainnya melalui internet dengan website milik bank yang dilengkapi sistem keamanan. 

Sejarah E-Banking

Pertama dikonseptualisasikan dalam pertengahan 1970-an,Inggris Negara pertama yang mempunyailayanan perbankan online, didirikan oleh Bank of Scotland bagi para pelanggan dari Nottingham Building Society (NBS) pada tahun 1983.
 Beberapa bank yang ditawarkan nasabah perbankan elektronik pada tahun 1985.  Namun, kurangnya pengguna internet, dan biaya yang terkait dengan penggunaan online banking, terhambat pertumbuhan.  Ledakan Internet di-akhir 1990-an membuat orang lebih nyaman dengan membuat transaksi melalui web.  Meskipun kehancuran dot-com, E-Banking tumbuh bersama Internet.
Sementara lembaga keuangan mengambil langkah untuk menerapkan E-Banking di pertengahan 1990-an, Stanford Federal Credit Union adalah lembaga keuangan pertama yang menawarkan layanan internet banking online untuk semua anggotanya pada bulan Oktober 1994, banyak konsumen ragu-ragu untuk melakukan transaksi keuangan melalui web.  Butuh adopsi perdagangan elektronik, berdasarkan perusahaan trailblazing seperti America Online, Amazon.com dan eBay, untuk membuat ide membayar untuk barang secara online luas.  Pada tahun 2000, 80 persen dari bank-bank AS yang ditawarkan E-Banking.  Digunakan pelanggan tumbuh perlahan-lahan.  Di Bank of America, misalnya, butuh 10 tahun untuk memperoleh 2 juta E-Banking pelanggan.  Namun, perubahan budaya yang signifikan terjadi setelah ketakutan Y2K berakhir.
 Pada tahun 2001, Bank of America menjadi bank pertama ke atas 3 juta pelanggan online banking, lebih dari 20 persen basis pelanggannya. Sebagai perbandingan, lembaga-lembaga nasional lebih besar, seperti Citigroup mengklaim 2,2 juta hubungan online secara global, sementara JP Morgan Chase memperkirakan memiliki lebih dari 750.000 pelanggan online banking.  Wells Fargo memiliki 2,5 juta pelanggan online banking, termasuk usaha kecil.  Pelanggan online terbukti lebih loyal dan menguntungkan dari pelanggan biasa.  Pada Oktober 2001, Bank of America pelanggan dieksekusi rekor 3,1 juta pembayaran tagihan elektronik, dengan total lebih dari $ 1 miliar.  Pada tahun 2009, sebuah laporan Gartner Group memperkirakan bahwa 47 persen orang dewasa AS dan 30 persen di Inggris bank online.
Tahun 2000, implementasi E-Banking dan mobile banking mulai di lakukan oleh beberapa Bank di Indonesia. Bank di Indonesia mulai memasuki dunia maya.
E-Banking yang ada di Indonesia antara lain :
1998 Sep, Bank Internasional Indonesia https://www.bankbii.com/
2000, Bank Niaga https://secure.bank2home.com/ib-niaga/Login.html
2001, Bank Bukopin https://secure.bank2home.com/appbukopin/login.jsp
2001, Bank Sentral Asia (BCA) https://ibank.klikbca.com/
2003, Bank Mandiri https://ib.bankmandiri.co.id/
2005, Bank PermataNet https://www.permatanet.com
2006, Bank Permata E-Business https://www.permatae-business.com/
2007, Bank Negara Indonesia https://ibank.bni.co.id/
Bank Lippo https://ebanking.lippobank.co.id


Berikut adalah beberapa penerapan dari E-Banking yang telah diterapkan bank-bank di Indonesia:
1.      ATM, Automated Teller Machine atau Anjungan Tunai Mandiri
Penerapan E-Banking paling populer yang kita kenal. Fitur tradisional ATM adalah untuk mengetahui informasi saldo dan melakukan penarikan tunai. Dalam perkembangannya, mungkin untuk melakukan pemindahbukuan antar rekening, pembayaran ( kartu kredit, listrik, dan telepon ), pembelian ( voucher dan tiket ), dan yang terkini transfer ke bank lain (dalam satu switching jaringan ATM). Selain bertransaksi melalui mesin ATM, kartu ATM dapat pula digunakan untuk berbelanja di tempat perbelanjaan, berfungsi sebagai kartu debit. Belakangan muncul pula ATM yang dapat menerima setoran uang, yang dikenal pula sebagai Cash Deposit Machine/CDM.
2.      Phone Banking
Penerapan yang memungkinkan nasabah untuk melakukan transaksi dengan bank via telepon. Pada awalnya hanya bisa diakses melalui telepon rumah, namun seiring dengan makin populernya telepon genggam/HP, maka tersedia pula nomor akses khusus via HP bertarif panggilan flat dari manapun nasabah berada. Pada awalnya, layanan Phone Banking hanya bersifat informasi yaitu untuk informasi jasa/produk bank dan informasi saldo rekening serta dilayani oleh Customer Service Operator/CSO. Namun kemudian berkembang untuk transaksi pemindahbukuan antar rekening, pembayaran ( kartu kredit, listrik, dan telepon), pembelian ( voucher dan tiket), dan transfer ke bank lain, serta dilayani
oleh Interactive Voice Response (IVR). Fasilitas ini boleh dibilang lebih praktis dibandingkan ATM untuk transaksi non tunai, karena cukup menggunakan telepon/HP di manapun kita berada, kita bisa melakukan berbagai transaksi, termasuk transfer ke bank lain.

3.      Internet Banking
Penerapan teranyar E-Banking yang memungkinkan nasabah melakukan transaksi via internet dengan menggunakan komputer/PC atau PDA. Fitur transaksi yang dapat dilakukan sama dengan Phone Banking yaitu informasi jasa/produk bank, informasi saldo rekening, transaksi pemindahbukuan antar rekening, pembayaran ( kartu kredit, listrik, dan telepon), pembelian ( voucher dan tiket), dan transfer ke bank lain. Kelebihan dari internet banking ini adalah kenyamanan bertransaksi dengan tampilan menu dan informasi secara lengkap tertampang di layar komputer/PC atau PDA.

4.      SMS/m-Banking
Penerapan ini pada dasarnya evolusi lebih lanjut dari Phone Banking, yang memungkinkan nasabah untuk bertransaksi via HP dengan perintah SMS. Fitur transaksi yang dapat dilakukan yaitu informasi saldo rekening, pemindahbukuan antar rekening, pembayaran ( kartu kredit, listrik, dan telepon), dan pembelian voucher. Untuk transaksi lainnya pada dasarnya dapat pula dilakukan, namun tergantung pada akses yang dapat diberikan bank. Penerapan ini sebenarnya termasuk praktis namun dalam prakteknya agak merepotkan karena nasabah harus menghapal kode-kode transaksi dalam pengetikan sms.

Jenis-jenis teknologi E-Banking

·         Automated Teller Machine (ATM). Terminal elektronik yang disediakan lembaga keuangan atau perusahaan lainnya yang membolehkan nasabah untuk melakukan penarikan tunai dari rekening simpanannya di bank, melakukan setoran, cek saldo, atau pemindahan dana.
·         Computer Banking. Layanan bank yang bisa diakses oleh nasabah melalui koneksi internet ke pusat data bank, untuk melakukan beberapa layanan perbankan, menerima dan membayar tagihan, dan lain-lain.
·         Debit (or check) Card. Kartu yang digunakan pada ATM atau terminal point-of-sale (POS) yang memungkinkan pelanggan memperoleh dana yang langsung didebet (diambil) dari rekening banknya.
·         Direct Deposit. Salah satu bentuk pembayaran yang dilakukan oleh organisasi (misalnya pemberi kerja atau instansi pemerintah) yang membayar sejumlah dana (misalnya gaji atau pensiun) melalui transfer elektronik. Dana ditransfer langsung ke setiap rekening nasabah.
·         Bill payment Direct Payment (also electronic). Salah satu bentuk pembayaran yang mengizinkan nasabah untuk membayar tagihan melalui transfer dana elektronik. Dana tersebut secara elektronik ditransfer dari rekening nasabah ke rekening kreditor. Direct payment berbeda dari preauthorized debit dalam hal ini, nasabah harus menginisiasi setiap transaksi direct payment.
·         Electronic Bill Presentment and Payment (EBPP). Bentuk pembayaran tagihan yang disampaikan atau diinformasikan ke nasabah atau pelanggan secara online, misalnya melalui email atau catatan dalam rekening bank. Setelah penyampaian tagihan tersebut, pelanggan boleh membayar tagihan tersebut secara online juga. Pembayaran tersebut secara elektronik akan mengurangi saldo simpanan pelanggan tersebut.
·         Electronic Check Conversion. Proses konversi informasi yang tertuang dalam cek (nomor rekening, jumlah transaksi, dll) ke dalam format elektronik agar bisa dilakukan pemindahan dana elektronik atau proses lebih lanjut.
·         Electronic Fund Transfer (EFT). Perpindahan “uang” atau “pinjaman” dari satu rekening ke rekening lainnya melalui media elektronik.
·         Payroll Card. Salah satu tipe “stored-value card” yang diterbitkan oelh pemberi kerja sebagai pengganti cek yang memungkinkan pegawainya mengakses pembayaraannya pada terminal ATM atau Point of Sales. Pemberi kerja menambahkan nilai pembayaran pegawai ke kartu tersebut secara elektronik.
·         Preauthorized Debit (or automatic bill payment). Bentuk pembayaran yang mengizinkan nasabah untuk mengotorisasi pembayaran rutin otomatis yang diambil dari rekening banknya pada tanggal-tangal tertentu dan biasanya dengan jumlah pembayaran tertentu (misalnya pembayaran listrik, tagihan telpon, dll). Dana secara elektronik ditransfer dari rekening pelanggan ke rekening kreditor (misalnya PLN atau PT Telkom).
·         Prepaid Card. Salah satu tipe Stored-Value Card yang menyimpan nilai moneter di dalamnya dan sebelumnya pelanggan sudah membayar nilai tersebut ke penerbit kartu.
·         Smart Card. Salah satu tipe stored-value card yang di dalamnya tertanam satu atau lebih chips atau microprocessors sehingga bisa menyimpan data, melakukan perhitungan, atau melakukan proses untuk tujuan khusus (misalnya validasi PIN, otorisasi pembelian, verifikasi saldo rekening, dan menyimpan data pribadi). Kartu ini bisa digunakan pada sistem terbuka (misalnya untuk pembayaran transportasi publik) atau sistem tertutup (misalnya MasterCard atau Visa networks).
·         Stored-Value Card. Kartu yang di dalamnya tersimpan sejumlah nilai moneter, yang diisi melalui pembayaran sebelumnya oleh pelanggan atau melalui simpanan yang diberikan oleh pemberi kerja atau perusahaan lain, misalnya kartu dengan logo MasterCard.


Manfaat E-Banking

Manfaatnya penggunaannya mirip dengan mesin ATM dimana sarananya saja yang berbeda, seorang nasabah dapat melakukan aktifitas pengecekan saldo rekening, transfer dana antar rekening atau antar bank, hingga pembayaran tagihan-tagihan rutin bulanan seperti: listrik, telepon, kartu kredit, dll.
Dengan memanfaatkan E-Banking banyak keuntungan yang akan diperoleh nasabah terutama apabila dilihat dari banyaknya waktu dan tenaga yang dapat dihemat karena E-Banking jelas bebas antrian dan dapat dilakukan dari mana saja sepanjang nasabah memiliki sarana pendukung untuk melakukan layanan E-Banking tersebut.
Dengan hadirnya E-Banking tidak hanya nasabah saja yang mendapatkan manfaat melainkan juga menciptakan efek manfaat yang lain bagi bank, yakni meningkatkan pendapatan berbasis komisi atau biaya (fee based income). Sebagian besar fee berasal dari layanan transaksi yang ditawarkan E-Banking, misalnya untuk pembayaran tagihan listrik dikenai biaya Rp 2.500 per transaksi.

 Pihak-pihak yang berperan terhadap berlangsungnya E-Banking

Sisi manfaat teknologi yang bermanfaat bagi manusia ini tentunya harus dijaga sebaik mungkin agar pelayanan E-Banking dapat bertahan dengan jangka waktu yang lama. Oleh karena itu, dibutuhkan para ahli, sumber daya manusia, karyawan, alat teknologi dan ilmu manajemen yang baik agar bisa menjaga atau memberikan inovasi terhadap fungsi E-Banking ini. Terutama dari sisi manajemen yang merupakan nyawa dari sebuah perbankan karena melibatkan pihak teratas (Top Manager), pihak menengah (Middle Manager) hingga pihak terbawah (Low Manager). Ketiga elemen itulah yang bertanggung jawab atas keberdayaan manajemen yang baik di perbankan. Khususnya untuk memperoleh respon yang baik dari masyarakat tentang fasilitas E-Banking yang merupakan proyek andalan setiap bank di dunia.

Ancaman keamanan

Meskipun menawarkan kemudahan,tetap saja ada ancaman keamanan yang mengintai. Biasanya, ancaman ini ditujukan kepada pihak pengguna yang notabene lemah dari sisi kesadaran berteknologi. Beberapa ancaman yang sering muncul, antara lain Typo-site atau website forging merupakan teknik membuat situs yang memiliki domain dan tampilan yang mirip dengan situs aslinya. Tujuannya, mendapatkan username dan password pengguna. Misalnya saja, situs dengan nama netbank.com. Kembaran situs ini biasanya memiliki nama-nama yang mirip, seperti net-bank.com, netbank.com, atau netibank.com.

Key-logger adalah virus atau trojan yang tersembunyi dan bertugas merekam setiap input ketikan tombol user keyboard. Aplikasi ini tertanam di komputer tanpa diketahui pengguna dan bertugas mendapatkan username dan password akses pengguna ke suatu situs.Man in the middle attack, aktivitas seorang cracker (sebutan untuk hacker jahat) yang menyadap informasi dari pengguna. Informasi yang disadap bisa berupa password, username, dan pesan elektronik. Kejadian ini biasanya menimpa pengguna yang menggunakan komputer di lingkungan umum seperti warnet dan free hotspot.

Kesadaran berteknologi, meskipun pihak bank selaku penyedia layanan internet banking telah meningkatkan pengamanan layanannya, tetap saja sasaran yang paling empuk adalah pengguna layanan. Titik kelemahannya ada pada minimnya kesadaran berteknologi pengguna. Misalnya, pengguna berbagi kode PIN, selalu mengklik “Yes” ketika muncul notifikasi di komputer, dan lupa logout.


Keamanan dalam menggunakan fasilitas E-Banking

Keamanan merupakan isu utama dalam E-Banking karena sebagaimana kegiatan lainnya di internet, transaksi perbankan di internet juga rawan terhadap pengintaian dan penyalahgunaan oleh tangan-tangan yang tidak bertanggung jawab.
Salah satu teknik pengamanan yang sering dugunakan dalam E-Banking adalah melalui SSL (Secure Socket Layer) maupun lewat protokol HTTPS (Secure HTTP).
BCA salah satu bank pelopor E-Banking di Indonesia contohnya. BCA menawarkan produk perbankan elektronik berupa KlikBCA, yang memberikan kemudahan untuk melakukan transaksi perbankan melalui komputer dan jaringan internet. KlikBCA dilengkapi dengan security untuk menjamin keamanan dan kerahasiaan data dan transaksi yang dilakukan oleh nasabah. Untuk menambah keamanan pihak bank melengkapi juga dengan KeyBCA, yaitu alat pengaman tambahan untuk lebih mengamankan transaksi finansial di KlikBCA. Alat ini berfungsi untuk mengeluarkan password yang selalu berganti setiap kali melakukan transaksi finansial. Dengan demikian, keamanan nasabah bertransaksi akan makin terjaga.
Selain itu untuk ATM, nasabah diberikan kartu ATM dan kode rahasia pribadi (PIN). Sedangkan untuk Phone Banking, Internet Banking, dan SMS/m-Banking, nasabah diberikan kode pengenal (userid) dan PIN. Sebagai pengaman tambahan untuk internet banking, pada bank tertentu diberikan piranti tambahan untuk mengeluarkan PIN acak/random. Sedangkan untuk SMS Banking, nasabah diminta untuk meregistrasikan nomor HP yang digunakan.