Wednesday, September 6, 2023

Model Evolusi


 CSS Closed Source Software 



FLOSS - Free Libre Open Source Software






Taxonomy Software Maintenance dan Software Evolution

Taxonomy (taksonomi) adalah sistem pengelompokan dan klasifikasi yang digunakan untuk mengorganisasi dan memahami konsep atau objek tertentu. Dalam konteks perangkat lunak, kita dapat menguraikan taksonomi perawatan perangkat lunak (software maintenance) dan evolusi perangkat lunak (software evolution) sebagai berikut:

Taxonomy Perawatan Perangkat Lunak (Software Maintenance):

Perawatan perangkat lunak adalah aktivitas untuk menjaga, memperbaiki, dan meningkatkan perangkat lunak yang sudah ada. Taksonomi perawatan perangkat lunak dapat dibagi menjadi empat kategori utama:

  1. Perawatan Korektif (Corrective Maintenance): Ini melibatkan perbaikan bug, kerentanan keamanan, dan masalah lain yang ditemukan setelah perangkat lunak digunakan.
  2. Perawatan Adaptif (Adaptive Maintenance): Aktivitas ini terkait dengan penyesuaian perangkat lunak untuk beradaptasi dengan perubahan lingkungan, seperti perubahan perangkat keras atau sistem operasi.
  3. Perawatan Perfective (Perfective Maintenance): Ini mencakup peningkatan perangkat lunak dalam hal kinerja, efisiensi, dan fungsionalitas tanpa mengubah fitur utamanya.
  4. Perawatan Preventif (Preventive Maintenance): Aktivitas ini bertujuan untuk mencegah kerusakan atau masalah di masa depan dengan melakukan tindakan pencegahan, seperti pembersihan kode atau perbaikan kecil.







Taxonomy Evolusi Perangkat Lunak (Software Evolution):

Evolusi perangkat lunak mengacu pada perubahan dan perkembangan perangkat lunak selama siklus hidupnya. Taksonomi evolusi perangkat lunak mencakup tiga kategori utama:

  1. Evolusi Fungsional (Functional Evolution): Ini melibatkan penambahan fitur baru, perubahan dalam fungsi yang ada, dan adaptasi terhadap kebutuhan pengguna yang berkembang.
  2. Evolusi Struktural (Structural Evolution): Aktivitas ini terkait dengan perubahan dalam struktur internal perangkat lunak, seperti perubahan arsitektur atau restrukturisasi kode.
  3. Evolusi Eksternal (External Evolution): Ini mencakup perubahan dalam antarmuka pengguna, pengalaman pengguna, dan integrasi dengan teknologi eksternal, seperti perangkat keras atau perangkat lunak pihak ketiga.

Taksonomi ini membantu dalam memahami dan mengklasifikasikan berbagai jenis perawatan perangkat lunak dan perubahan evolusi perangkat lunak sesuai dengan tujuan dan fokus masing-masing. Perawatan perangkat lunak berfokus pada pemeliharaan dan perbaikan perangkat lunak yang sudah ada, sementara evolusi perangkat lunak lebih luas, mencakup perubahan strategis dan inovasi dalam mengembangkan perangkat lunak seiring waktu.


SPE Taxonomy
Specified, Problem, Evolving
(i) how a program interacts with its environment and 
(ii) the degree to which the environment and the underlying problem that the program addresses can change.








Laws Software Evolution

Absensi



Video




Latihan


Sistem Informasi Pelanggan - CRM

Sebuah perusahaan yang menggunakan sistem manajemen basis data (DBMS) untuk mengelola data pelanggan mereka. Awalnya, DBMS ini dirancang untuk hanya menyimpan dan mengambil data pelanggan seperti nama, alamat, no telpon, pekerjaan, instansi. Namun, seiring berjalannya waktu, perusahaan ini ingin mengembangkan fungsionalitas aplikasi sistem informasi mereka untuk memenuhi kebutuhan yang lebih luas.

Pada tahap awal, DBMS hanya dirancang untuk mengelola informasi dasar pelanggan seperti nama, alamat, dan nomor telepon. Namun, perusahaan ini mulai menyadari bahwa mereka perlu melacak lebih banyak informasi, seperti riwayat transaksi pelanggan dan preferensi produk.

Untuk memenuhi kebutuhan baru ini, perusahaan memutuskan untuk melakukan perubahan fungsionalitas dalam DBMS mereka. Mereka menambahkan tabel baru untuk menyimpan riwayat transaksi pelanggan dan mengintegrasikan sistem dengan aplikasi lain yang memerlukan informasi ini.

  1. Tuliskan Fase Evolusi yang terjadi pada sistem informasi pelanggan tersebut.
  2. Sebutkan fungsionalitas sistem informasi pelanggan dalam studi kasus di atas.
  3. Buatlah desain struktur tabel awal, dan tabel baru untuk memenuhi perubahan fungsionalitas.
  4. Gambarkan UI, desain form, report dari aplikasi

Monitoring Kelas





Evolusi dan Maintenance Perangkat Lunak

Software evolution mengacu pada proses perubahan dan perkembangan perangkat lunak selama siklus hidupnya. Ini mencakup berbagai aspek, seperti peningkatan fitur, perbaikan keamanan, penyesuaian dengan perubahan lingkungan, dan adaptasi terhadap kebutuhan pengguna yang berubah. Software evolution adalah respons alami terhadap perubahan dalam kebutuhan bisnis atau teknologi, serta tanggapan terhadap masalah dan tantangan yang muncul seiring waktu.








Di sisi lain, software maintenance adalah salah satu aspek dari software evolution. Ini adalah kegiatan yang terkait erat dengan perbaikan dan pemeliharaan perangkat lunak yang sudah ada. Software maintenance mencakup aktivitas seperti perbaikan bug, peningkatan performa, perbaikan keamanan, dan perubahan kecil pada perangkat lunak untuk menjaga kualitas dan kinerjanya seiring waktu. Tujuan utama dari software maintenance adalah memastikan bahwa perangkat lunak tetap berjalan dengan baik dan memenuhi kebutuhan pengguna tanpa mengubahnya secara signifikan.



Jadi, perbedaan utama antara software evolution dan software maintenance adalah bahwa software evolution lebih luas dalam cakupannya, mencakup perubahan dan perkembangan perangkat lunak secara keseluruhan, sementara software maintenance adalah bagian dari software evolution yang fokus pada pemeliharaan dan perbaikan perangkat lunak yang sudah ada. Software evolution lebih menekankan perubahan strategis dan inovasi, sedangkan software maintenance lebih menekankan perbaikan dan pemeliharaan rutin.

Sistem Operasi Windows

Sistem operasi Windows telah mengalami berbagai evolusi dan perubahan signifikan sepanjang sejarahnya. Beberapa dari evolusi utama yang telah terjadi dalam OS Windows meliputi:

Antarmuka Pengguna: Windows telah mengalami perubahan besar dalam antarmuka pengguna selama bertahun-tahun, mulai dari Windows 1.0 yang awalnya berbasis karakter hingga antarmuka berbasis grafis yang lebih modern yang diperkenalkan dengan Windows 95. Kemudian, Windows mengalami evolusi menuju antarmuka Metro UI dengan Windows 8, lalu berlanjut ke antarmuka Modern UI di Windows 10.

  • Kinerja dan Keamanan: Setiap versi Windows berikutnya mencoba untuk meningkatkan kinerja dan keamanan. Ini mencakup peningkatan kecepatan boot, manajemen memori yang lebih baik, dan peningkatan sistem keamanan seperti Windows Defender.
  • Kompatibilitas Aplikasi: Windows telah berusaha untuk mempertahankan kompatibilitas aplikasi yang lebih lama seiring berjalannya waktu. Ini memungkinkan aplikasi yang dibuat untuk versi Windows sebelumnya masih dapat dijalankan pada versi Windows yang lebih baru.
  • Integrasi Internet: Windows semakin terintegrasi dengan internet seiring berjalannya waktu. Hal ini termasuk pengenalan Internet Explorer sebagai browser bawaan, kemudian digantikan dengan Microsoft Edge pada Windows 10. Windows juga telah mengintegrasikan layanan online seperti OneDrive dan Windows Store.
  • Penambahan Fitur: Setiap versi Windows biasanya membawa penambahan fitur baru. Contohnya, Windows 7 membawa Aero Snap dan Taskbar yang ditingkatkan, Windows 10 memperkenalkan Cortana dan virtual desktops, sementara Windows 11 membawa perubahan besar dalam antarmuka pengguna.
  • Dukungan Perangkat Keras: Windows selalu berusaha untuk mendukung perkembangan perangkat keras terbaru. Ini termasuk dukungan untuk prosesor, kartu grafis, dan perangkat keras lainnya yang lebih baru dan canggih.
  • Model Distribusi: Windows telah mengalami perubahan dalam model distribusinya. Misalnya, Windows 10 memperkenalkan model "Windows as a Service" yang menyediakan pembaruan reguler secara daring.

Perubahan-perubahan ini adalah sebagian kecil dari evolusi yang telah dialami oleh sistem operasi Windows selama bertahun-tahun. Setiap versi baru mencoba untuk mengatasi kebutuhan dan perkembangan teknologi yang lebih baru sehingga dapat tetap relevan dan bermanfaat bagi pengguna komputer.


Berikut adalah beberapa versi Windows beserta tahun peluncurannya:

  1. Windows 1.0 - 1985
  2. Windows 2.0 - 1987
  3. Windows 3.0 - 1990
  4. Windows 3.1 - 1992
  5. Windows 95 - 1995
  6. Windows 98 - 1998
  7. Windows Me (Millennium Edition) - 2000
  8. Windows 2000 - 2000
  9. Windows XP - 2001
  10. Windows Vista - 2007
  11. Windows 7 - 2009
  12. Windows 8 - 2012
  13. Windows 8.1 - 2013
  14. Windows 10 - 2015
  15. Windows 11 - 2021



Berikut adalah beberapa perubahan fitur utama yang terjadi di beberapa versi Windows yang paling signifikan:

Windows 95 (1995):

Antarmuka pengguna berbasis GUI yang lebih modern.

Penambahan Taskbar dan Tombol Start.

Plug and Play untuk perangkat keras.

Kemampuan multitasking yang ditingkatkan.

Windows XP (2001):

Stabilitas dan keamanan yang ditingkatkan.

Desain antarmuka yang lebih bersih dan terorganisir.

Pembaruan Windows Update otomatis.

Dukungan untuk jaringan nirkabel Wi-Fi.

Windows 7 (2009):

Taskbar yang ditingkatkan dengan fitur Aero Peek.

Jendela snap untuk mengatur tampilan jendela dengan mudah.

Libraries untuk mengelola file dan folder.

Peningkatan kinerja dan efisiensi energi.

Windows 8 (2012):

Antarmuka Metro UI dengan tampilan layar sentuh yang lebih besar.

Start Screen menggantikan Tombol Start.

Windows Store untuk aplikasi modern.

Integrasi lebih erat dengan layanan online.

Windows 10 (2015):

Kembali Tombol Start tradisional.

Desktop Virtuals untuk membuat desktop virtual.

Cortana, asisten digital bawaan.

Pembaruan reguler melalui model "Windows as a Service."

Windows 11 (2021):

Desain antarmuka yang lebih modern dengan sentuhan transparansi.

Start Menu yang ditingkatkan.

Peningkatan kinerja permainan.

Kemampuan menjalankan aplikasi Android melalui Microsoft Store.


 Absensi


Latihan

Buatlah Inforgrafis tentang evolusi perangkat lunak. Pilihlah salah satu software misal Evolusi Microsoft Office, Evolusi Linux, Evolusi Notepad. Kemudian buat poster infografisnya. Setelah selesai dokumentasikan ke blog kemudian isi Form Monitoring.

Monitoring Kelas

Referensi : 

https://www.codingninjas.com/studio/library/software-maintenance-process-models

https://www.tutorialspoint.com/software_engineering/software_engineering_overview.htm

https://www.tutorialspoint.com/software_engineering/images/software_evolution.png

https://blog.scalefusion.com/evolution-of-windows-os-infographic/

Link Buku


Final Project EPL 2023

  Monitoring Form  Monitoring Tugas Hasil Monitoring