Computer Science: It Is Not Programming But Problem Solving

Saya mendapat kesenangan dan kesempatan untuk melakukan salah satu hobi favorit saya dalam dua tahun terakhir, dan itu adalah mengajar. Saya memiliki kesempatan untuk mengajar beberapa topik berbeda di bidang ilmu komputer, dari kursus pengantar hingga kursus divisi atas, dan saya telah melihat pola di sepanjang siswa yang menjadi teka-teki bagi saya terutama di kelas divisi atas.

Salah satu fakta mengejutkan utama yang saya perhatikan, adalah sebagian besar siswa memiliki sedikit atau tidak ada pengalaman praktis dalam pengembangan perangkat lunak, terutama di kelas divisi atas. Artinya, mereka belum diberi kesempatan yang cukup untuk melakukan proyek langsung untuk meningkatkan dan menyempurnakan keterampilan pemrograman mereka di kelas divisi bawah, dan ketika mereka mengambil kursus seperti Rekayasa Perangkat Lunak, kebanyakan dari mereka tidak memiliki kemampuan untuk membuat sistem yang berfungsi penuh dari bawah ke atas.

Sekarang saya bisa mengerti jika ini adalah tahun pertama bagi siswa dan mereka baru memulai dan mengenal bahasa komputer pertama mereka dan semua alat dan lingkungan yang tersedia bagi mereka. Dan juga dapat dimengerti bahwa ada tingkatan siswa yang berbeda dengan tingkat keahlian dan motivasi yang berbeda. Tetapi berada di kelas atas dan masih merasa tidak nyaman dengan dasar-dasarnya sedikit menakutkan bagi saya.

Apa yang juga saya perhatikan dan sejujurnya mengejutkan saya adalah bahwa sebagian besar siswa yang baru memulai kurikulum ilmu komputer tidak tahu apa itu ilmu komputer. Sekarang mungkin ini adalah pernyataan yang tidak adil, Anda mungkin berpendapat bahwa mereka masih tidak yakin atau ragu-ragu, tetapi menurut saya bukan itu masalahnya. Jika Anda berada dalam kurikulum sains atau teknik, maka ada hal-hal tertentu yang penting untuk diketahui siswa, seperti dasar yang baik adalah matematika dan fisika.

Sekali lagi mungkin, masalahnya adalah bagaimana kita mempersiapkan masa muda kita di tahun-tahun awal kehidupan mereka.

Misalnya, sebagai bagian dari kurikulum ilmu komputer, para siswa diharuskan mengambil mata kuliah Rekayasa Perangkat Lunak. Saya tidak akan membahas apa itu rekayasa perangkat lunak, tetapi untuk mencerahkan Anda, berikut adalah deskripsi dari Wikipedia: Rekayasa perangkat lunak (SE) adalah penerapan pendekatan yang sistematis, disiplin, terukur untuk desain, pengembangan, operasi, dan pemeliharaan perangkat lunak. perangkat lunak, dan studi tentang pendekatan ini; yaitu, penerapan rekayasa pada perangkat lunak. Istilah rekayasa perangkat lunak pertama kali muncul pada Konferensi Rekayasa Perangkat Lunak NATO tahun 1968 dan dimaksudkan untuk memprovokasi pemikiran tentang “krisis perangkat lunak” yang dirasakan pada saat itu. Pengembangan perangkat lunak, istilah yang banyak digunakan dan lebih umum, tidak harus memasukkan paradigma rekayasa.

Di kelas seperti itu, siswa diharapkan memiliki pemahaman yang baik tentang setidaknya satu bahasa pemrograman seperti JAVA, C#, C++ dan lain-lain… serta pemahaman yang baik tentang Metodologi dan Desain Berorientasi Objek. Di atas keterampilan pemrograman, siswa harus memiliki pemahaman yang baik tentang struktur data dan algoritma. Jangan lupa, Program = Struktur Data + Algoritma! Ini juga akan membantu jika siswa memiliki pengetahuan basis data dan lain-lain …

Ini hanya beberapa dari keterampilan teknis yang harus mereka miliki dan terus menyempurnakannya setiap hari. Aspek yang lebih penting dari ilmu komputer tidak ada hubungannya dengan pemrograman JAVA atau C# atau semacamnya. Ini ada hubungannya dengan kemampuan MENGANALISIS dan MENYELESAIKAN MASALAH!

Di kelas terakhir saya, saya telah membuat enam tim berbeda yang masing-masing terdiri dari tiga anggota. Setiap kelompok diberi pilihan untuk membuat proyek mereka sendiri untuk dirancang dan dikembangkan selama kursus, dan jika mereka tidak dapat melakukannya, saya akan menugaskan mereka sebuah proyek.

Para siswa sangat pandai dalam menentukan proyek mereka sendiri. Kami memiliki beragam proyek mulai dari Sistem Manajemen Rumah Sakit, Sistem Manajemen Hotel, aplikasi iPad untuk Belanja Ritel dan Inventaris, hingga aplikasi Android untuk game 2D sederhana, hingga Sistem Manajemen Pembelajaran di web, dan pembuatan aplikasi berbasis Windows MIME yang disesuaikan.

Sekarang saatnya untuk memulai real deal! Mari kita mulai Merekayasa Produk kita!

Sepanjang kursus, para siswa bertanggung jawab untuk menentukan: persyaratan dan spesifikasi, desain dan implementasi, dan akhirnya pengujian dan peluncuran (demo) proyek perangkat lunak mereka.

Hal yang mengejutkan bagi saya adalah sebagian besar siswa tidak tahu harus mulai dari mana! Diberikan masalah tertentu, bagaimana seseorang mengambilnya dan membedahnya menjadi bagian-bagian yang lebih kecil untuk dapat menyelesaikannya dalam bagian-bagian kecil dan keluar dengan solusi akhir dengan metode bagi dan taklukkan!

Seperti yang telah disebutkan beberapa tim melakukan pekerjaan yang sangat baik di setiap langkah, dan yang lain memulai dengan lemah, dan kemudian meningkatkan upaya dan keefektifan mereka selama kursus. Seperti yang Anda lihat, proyek itu sendiri agak rumit untuk siswa dan semuanya membutuhkan pengetahuan Desain Antarmuka Pengguna yang baik, Desain Berorientasi Objek, Desain Database, dan untuk sebagian besar semacam Komunikasi Jaringan!

Beberapa siswa bahkan tidak memiliki keterampilan pemrograman, dan faktanya, mereka benar-benar tidak terlalu peduli untuk menginvestasikan waktu untuk mempelajarinya! Mengandalkan sebagian besar pada rekan-rekan mereka untuk aspek teknis proyek! Sekarang kita seharusnya tidak mengharapkan setiap orang menjadi seorang guru, tetapi mereka setidaknya harus menunjukkan minat dan memiliki motivasi diri untuk belajar sendiri.

Secara keseluruhan mayoritas siswa di kelas adalah pekerja keras dan mereka benar-benar mencurahkan banyak waktu dan tenaga dalam proyek masing-masing. Kebanyakan dari mereka ingin belajar dan ditantang. Mereka hanya kekurangan keterampilan yang tepat yang diperlukan sebelum mengikuti kelas ini.

Ada banyak hal yang terlibat untuk siswa di kelas khusus ini, dan ini memberi banyak tekanan pada siswa untuk mendorong diri mereka sendiri dan menjadi motivasi diri dan memulai diri sendiri. Dan itulah tujuan saya tidak hanya di kelas ini tetapi semua kelas saya. Saya ingin murid-murid saya untuk mendorong lebih keras dan berpikir lebih besar dan menjelajahi lebih banyak area dan ide karena ini adalah satu-satunya cara untuk tumbuh dan menjadi kompetitif di kemudian hari dalam karir profesional mereka.

Saya sendiri sedang mempelajari cara dan metode yang lebih baik untuk memberi kuliah dan berinteraksi dengan siswa di setiap semester. Saya berharap para siswa juga melakukan upaya yang diperlukan untuk memperluas wawasan mereka tidak hanya di dalam kelas, tetapi juga di luar kelas!



Source by Vahe Karamian

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *