İnternetYazılım

Yazılım nedir ?

Sayfa İçerik Tablosu

Yazılım nedir

Yazılım nedir, bilgisayarları çalıştırmak ve belirli görevleri yürütmek için kullanılan bir dizi talimat, veri veya programdır. Bir bilgisayarın fiziksel özelliklerini tanımlayan donanımın tersidir. Yazılım, bir cihazda çalışan uygulamalara, komut dosyalarına ve programlara atıfta bulunmak için kullanılan genel bir terimdir . Bir bilgisayarın değişken parçası olarak düşünülebilir, donanım ise değişmez parçadır.

Yazılımın iki ana kategorisi, uygulama yazılımı ve sistem yazılımıdır . Uygulama, belirli bir ihtiyacı karşılayan veya görevleri yerine getiren yazılımdır. Sistem yazılımı, bir bilgisayarın donanımını çalıştırmak üzere tasarlanmıştır ve uygulamaların üzerinde çalışması için bir platform sağlar.

Diğer yazılım türleri arasında, yazılım geliştiricilerinin ihtiyaç duyduğu programlama araçlarını sağlayan programlama yazılımı; sistem yazılımı ve uygulamalar arasında yer alan ara katman yazılımı; ve bilgisayar aygıtlarını ve çevre birimlerini çalıştıran sürücü yazılımı.

İlk yazılımlar belirli bilgisayarlar için yazılmış ve üzerinde çalıştığı donanımla birlikte satılmıştır. 1980’lerde, yazılımlar disketlerde ve daha sonra CD ve DVD’lerde satılmaya başlandı. Günümüzde çoğu yazılım satın alınmakta ve doğrudan internet üzerinden indirilmektedir. Yazılım, satıcı web sitelerinde veya uygulama hizmeti sağlayıcı web sitelerinde bulunabilir.

Yazılım örnekleri ve türleri

Çeşitli yazılım kategorileri arasında en yaygın türler aşağıdakileri içerir:

  • Uygulama yazılımı. En yaygın yazılım türü olan uygulama yazılımı, bir kullanıcı için veya bazı durumlarda başka bir uygulama için belirli bir işlevi yerine getiren bir bilgisayar yazılım paketidir. Bir uygulama bağımsız olabilir veya uygulamayı kullanıcı için çalıştıran bir program grubu olabilir. Örnekleri Modern uygulamalar ofis suit, grafik yazılımı, veri tabanları ve veri tabanı yönetim programları, web tarayıcıları, kelime işlemciler, yazılım geliştirme araçları, görüntü editörleri ve iletişim platformları bulunmaktadır.
  • Sistem yazılımı. Bu yazılım programları, bir bilgisayarın uygulama programlarını ve donanımını çalıştırmak için tasarlanmıştır. Sistem yazılımı, donanım ve yazılımın faaliyetlerini ve işlevlerini koordine eder. Ayrıca, bilgisayar donanımının işlemlerini kontrol eder ve diğer tüm yazılım türlerinin çalışabileceği bir ortam veya platform sağlar. İşletim sistemi, sistem yazılımının en iyi örneğidir; diğer tüm bilgisayar programlarını yönetir. Sistem yazılımının diğer örnekleri arasında ürün yazılımı , bilgisayar dili çevirmenleri ve sistem yardımcı programları bulunur .
  • Sürücü yazılımı. Aygıt sürücüleri olarak da bilinen bu yazılım, genellikle bir tür sistem yazılımı olarak kabul edilir. Aygıt sürücüleri, bir bilgisayara bağlı aygıtları ve çevre birimlerini kontrol ederek belirli görevlerini gerçekleştirmelerini sağlar. Bir bilgisayara bağlı olan her aygıtın çalışması için en az bir aygıt sürücüsüne ihtiyacı vardır. Örnekler, özel oyun denetleyicileri de dahil olmak üzere herhangi bir standart olmayan donanımla birlikte gelen yazılımların yanı sıra USB depolama aygıtları, klavyeler, kulaklıklar ve yazıcılar gibi standart donanımları etkinleştiren yazılımları içerir.
  • Ara yazılım. Ara yazılım terimi , uygulama ve sistem yazılımı arasında veya iki farklı türde uygulama yazılımı arasında aracılık eden yazılımı tanımlar. Örneğin, ara yazılım, Microsoft Windows’un Excel ve Word ile konuşmasını sağlar. Aynı zamanda, bir tür işletim sistemine sahip bir bilgisayardaki bir uygulamadan, farklı bir işletim sistemine sahip bir bilgisayardaki bir uygulamaya uzaktan çalışma isteği göndermek için de kullanılır. Ayrıca daha yeni uygulamaların eski uygulamalarla çalışmasına olanak tanır.

Programlama yazılımı. Bilgisayar programcıları kod yazmak için programlama yazılımı kullanır. Programlama yazılımı ve programlama araçları, geliştiricilerin diğer yazılım programlarını geliştirmesine, yazmasına, test etmesine ve hatalarını ayıklamasına olanak tanır . Programlama yazılımı örnekleri arasında birleştiriciler, derleyiciler, hata ayıklayıcılar ve yorumlayıcılar bulunur.

Yazılım nasıl çalışır?

Tüm yazılımlar, bilgisayarların çalışması ve kullanıcıların ihtiyaçlarını karşılaması için gereken yönergeleri ve verileri sağlar. Ancak, iki farklı tür – uygulama yazılımı ve sistem yazılımı – belirgin şekilde farklı şekillerde çalışır.

Uygulama yazılımı

Uygulama yazılımı, son kullanıcılar için rapor yazma ve web sitelerinde gezinme gibi belirli işlevleri gerçekleştiren birçok programdan oluşur. Uygulamalar, diğer uygulamalar için de görevler gerçekleştirebilir. Bilgisayardaki uygulamalar kendi başlarına çalışamazlar; çalışması için diğer destekleyici sistem yazılım programlarıyla birlikte bir bilgisayarın işletim sistemine ihtiyaç duyarlar.

Bu masaüstü uygulamaları, bir kullanıcının bilgisayarına yüklenir ve görevleri gerçekleştirmek için bilgisayar belleğini kullanır. Bilgisayarın sabit diskinde yer kaplarlar ve çalışmak için internet bağlantısına ihtiyaç duymazlar. Ancak masaüstü uygulamaları, üzerinde çalıştıkları donanım aygıtlarının gereksinimlerine uymalıdır.

Web uygulamaları ise çalışmak için yalnızca internet erişimi gerektirir; çalıştırmak için donanım ve sistem yazılımına güvenmezler. Sonuç olarak, kullanıcılar web tarayıcısı olan cihazlardan web uygulamalarını başlatabilir. Uygulama işlevinden sorumlu bileşenler sunucuda olduğundan, kullanıcılar uygulamayı Windows, Mac, Linux veya başka herhangi bir işletim sisteminden başlatabilir.

Yazılım nedir ? 2
Yazılım Nedir

Sistem yazılımı

Sistem yazılımı, bilgisayar donanımı ile uygulama yazılımı arasında yer alır. Kullanıcılar, arka planda çalıştığı ve bilgisayarın temel işlevlerini yerine getirdiği için sistem yazılımıyla doğrudan etkileşime girmez. Bu yazılım, bir sistemin donanımını ve yazılımını koordine eder, böylece kullanıcılar belirli eylemleri gerçekleştirmek için üst düzey uygulama yazılımını çalıştırabilir. Sistem yazılımı, bir bilgisayar sistemi açıldığında yürütülür ve sistem açık olduğu sürece çalışmaya devam eder.

Tasarım ve Uygulama

Yazılım geliştirme yaşam döngüsü proje yöneticileri yazılım tasarımı ile ilişkili aşamaları ve görevleri tarif etmek için kullandıkları bir çerçevedir. Tasarım yaşam döngüsündeki ilk adımlar, çabanın planlanması ve ardından yazılımı kullanacak kişilerin ihtiyaçlarının analiz edilmesi ve detaylı gereksinimlerin oluşturulmasıdır. İlk gereksinim analizinden sonra, tasarım aşaması bu kullanıcı gereksinimlerinin nasıl karşılanacağını belirlemeyi amaçlar.

Bir sonraki adım, geliştirme çalışmasının tamamlandığı ve ardından yazılım testinin gerçekleştiği uygulamadır. Bakım aşaması, sistemi çalışır durumda tutmak için gereken tüm görevleri içerir.

Yazılım tasarımı, uygulanacak yazılımın yapısının, veri modellerinin, sistem bileşenleri arasındaki ara yüzlerin ve potansiyel olarak yazılım mühendisinin kullanacağı algoritmaların bir tanımını içerir.

Yazılım tasarım süreci bilgisayar programcıları kodlama ve uygulama yazılımını yapmak için kullanabileceği bir forma kullanıcı gereksinimlerini dönüştürür. Yazılım mühendisleri, yazılım tasarımını yinelemeli olarak geliştirir, ayrıntı ekler ve tasarımı geliştirirken düzeltir.

Farklı yazılım tasarımı türleri şunları içerir:

    • Mimari tasarım. Bu, mimari tasarım araçlarını kullanarak sistemin genel yapısını, ana bileşenlerini ve bunların birbirleriyle olan ilişkilerini tanımlayan temel tasarımdır .
    • Üst düzey tasarım. Bu, sistemin tüm bileşenleriyle birlikte bir yazılım yığını tarafından desteklenen modüller biçiminde nasıl uygulanabileceğine odaklanan ikinci tasarım katmanıdır . Üst düzey bir tasarım, veri akışı ile sistemin çeşitli modülleri ve işlevleri arasındaki ilişkileri tanımlar.
    • Detaylı tasarım. Bu üçüncü tasarım katmanı, belirtilen mimari için gerekli tüm uygulama ayrıntılarına odaklanır.

Yazılım kalitesi nasıl korunur

Yazılım kalitesi, yazılımın hem işlevsel hem de işlevsel olmayan gereksinimlerini karşılayıp karşılamadığını ölçer.

İşlevsel gereksinimler , yazılımın ne yapması gerektiğini tanımlar. Teknik ayrıntıları, veri işleme ve işlemeyi, hesaplamaları veya bir uygulamanın neyi başarmayı amaçladığını belirten diğer herhangi bir özel işlevi içerirler.

Kalite nitelikleri olarak da bilinen işlevsel olmayan gereksinimler, sistemin nasıl çalışması gerektiğini belirler. İşlevsel olmayan gereksinimler taşınabilirlik, olağanüstü durum kurtarma, güvenlik, gizlilik ve kullanılabilirliği içerir.

Yazılım testi , yazılım kaynak kodundaki teknik sorunları tespit eder ve çözer ve gereksinimlerini karşıladığından emin olmak için ürünün genel kullanılabilirliğini, performansını, güvenliğini ve uyumluluğunu değerlendirir.

Yazılım kalitesinin boyutları aşağıdaki özellikleri içerir:

  • Ulaşılabilirlik. Ses tanıma ve ekran büyüteçleri gibi uyarlanabilir teknolojilere ihtiyaç duyan bireyler de dahil olmak üzere farklı bir grup insanın yazılımı rahatça kullanabilme derecesi.
  • Uyumluluk . Yazılımın farklı işletim sistemleri, cihazlar ve tarayıcılar gibi çeşitli ortamlarda kullanıma uygunluğu.
  • Yeterlik. Yazılımın enerji, kaynak, çaba, zaman veya para harcamadan iyi performans gösterme yeteneği.
  • İşlevsellik. Yazılımın belirtilen işlevlerini yerine getirme yeteneği.
  • Kurulabilirlik. Yazılımın belirli bir ortama kurulabilme yeteneği.
  • Yerelleştirme . Bir yazılımın çalışabileceği çeşitli diller, saat dilimleri ve benzeri diğer özellikler.
  • Sürdürülebilirlik. Özellikler eklemek ve geliştirmek, hataları düzeltmek vb. için yazılımın ne kadar kolay değiştirilebileceği.
  • Verim. Yazılımın belirli bir yük altında ne kadar hızlı performans gösterdiği.
  • taşınabilirlik Yazılımın bir konumdan diğerine kolayca aktarılabilmesi.
  • Güvenilirlik. Yazılımın, belirli koşullar altında belirli bir süre boyunca hatasız olarak gerekli bir işlevi yerine getirme yeteneği.
  • Ölçeklenebilirlik. Yazılımın, işleme taleplerindeki değişikliklere yanıt olarak performansı artırma veya azaltma yeteneğinin ölçüsü.
  • Güvenlik. Yazılımın yetkisiz erişime, gizliliğin ihlaline, hırsızlığa, veri kaybına, kötü amaçlı yazılımlara vb. karşı koruma yeteneği.
  • Test edilebilirlik. Yazılımı test etmek ne kadar kolay.
  • Kullanılabilirlik. Yazılımı kullanmak ne kadar kolay.

Bir kez dağıtıldıktan sonra yazılım kalitesini korumak için geliştiriciler, yeni müşteri gereksinimlerini karşılamak ve müşterilerin belirlediği sorunları ele almak için sürekli olarak uyarlamalıdır. Bu, sorunları önlemek için işlevselliği geliştirmeyi, hataları düzeltmeyi ve yazılım kodunu ayarlamayı içerir. Bir ürünün piyasada ne kadar süre dayanacağı, geliştiricilerin bu bakım gereksinimlerine ayak uydurabilme becerisine bağlıdır.

Bakım yapmak söz konusu olduğunda , geliştiricilerin yapabileceği dört tür değişiklik vardır:

      1. Düzeltici. Kullanıcılar genellikle, kodlama hataları ve yazılımın gereksinimlerini karşılamasını engelleyen diğer sorunlar da dahil olmak üzere geliştiricilerin düzeltmesi gereken hataları belirler ve bildirir.
      2. Uyarlanabilir. Geliştiriciler, işletim sisteminin yeni bir sürümünün çıkması gibi değişen donanım ve yazılım ortamlarıyla uyumlu olduğundan emin olmak için yazılımlarında düzenli olarak değişiklik yapmalıdır.
      3. Mükemmel. Bunlar, performansı artırmak için kullanıcı arabirimini iyileştirmek veya yazılım kodunu ayarlamak gibi sistem işlevselliğini artıran değişikliklerdir.

Önleyici. Bu değişiklikler, yazılımın başarısız olmasını önlemek için yapılır ve kodu yeniden yapılandırma ve optimize etme gibi görevleri içerir.

Yazılım nedir
Yazılım nedir

Yazılım lisanslama ve patentler

Bir yazılım lisansı yazılım kullanımını ve dağılımını kısıtlayan yasal olarak bağlayıcı bir belgedir.

Tipik olarak, yazılım lisansları, kullanıcılara, telif hakkını ihlal etmeden yazılımın bir veya daha fazla kopyasına sahip olma hakkı sağlar. Lisans, sözleşmeye taraf olan tarafların sorumluluklarını ana hatlarıyla belirtir ve yazılımın nasıl kullanılabileceğine ilişkin kısıtlamalar getirebilir.

Yazılım lisanslama hüküm ve koşulları genellikle yazılımın adil kullanımını, sorumluluk sınırlamalarını, garantileri, feragatleri ve yazılımın veya kullanımının başkalarının fikri mülkiyet haklarını ihlal etmesi durumunda korumaları içerir.

Lisanslar genellikle , onu oluşturan kuruluş, grup veya bireyin mülkiyetinde kalan özel mülk yazılımlar içindir ; veya kullanıcıların yazılımı çalıştırabileceği, inceleyebileceği, değiştirebileceği ve dağıtabileceği ücretsiz yazılım için. Açık kaynak, yazılımın ortaklaşa geliştirildiği ve kaynak kodunun ücretsiz olarak erişilebilir olduğu bir yazılım türüdür. İle açık kaynak yazılım lisansları , kullanıcı, kopyalama, paylaşmak çalıştırmak ve ücretsiz yazılıma benzer yazılımları değiştirebilir.

Son yirmi yılda, yazılım satıcıları yazılım lisanslarını tek seferlik satmaktan bir hizmet olarak yazılım abonelik modeline geçtiler . Yazılım satıcıları yazılımı bulutta barındırır ve abonelik ücreti ödeyen ve yazılıma internet üzerinden erişen müşterilerin kullanımına sunar.

Telif hakkı, başkalarının bir geliştiricinin kodunu kopyalamasını engelleyebilse de, telif hakkı, aynı yazılımı kopyalamadan bağımsız olarak geliştirmelerini engelleyemez. Öte yandan bir patent, bir geliştiricinin, yazılımı bağımsız olarak geliştirmiş olsa bile, bir geliştiricinin bir patentte iddia ettiği yazılımın işlevsel yönlerini başka bir kişinin kullanmasını engellemesini sağlar.

Genel olarak, yazılım ne kadar teknikse, patent alma olasılığı o kadar yüksektir. Örneğin, bir yazılım ürününe yeni bir tür veritabanı yapısı yaratıyorsa veya bir bilgisayarın genel performansını ve işlevini iyileştiriyorsa patent verilebilir.

Yazılım tarihi

Yazılım terimi 1950’lerin sonlarına kadar kullanılmadı. Bu süre zarfında, farklı türde programlama yazılımları oluşturulmuş olsa da, bunlar genellikle ticari olarak mevcut değildi. Sonuç olarak, kullanıcılar – çoğunlukla bilim adamları ve büyük şirketler – genellikle kendi yazılımlarını yazmak zorunda kaldılar.

Yazılım tarihinin kısa bir zaman çizelgesi aşağıdadır:

  • 21 Haziran 1948. Bir bilgisayar bilimcisi olan Tom Kilburn, İngiltere’deki Manchester Üniversitesi’nde Manchester Baby bilgisayarı için dünyanın ilk yazılımını yazıyor.
  • 1950’lerin başı. General Motors, IBM 701 Elektronik Veri İşleme Makinesi için ilk işletim sistemini oluşturur. General Motors İşletim Sistemi veya GM OS olarak adlandırılır.
  • 1958. İstatistikçi John Tukey, bilgisayar programlama ile ilgili bir makalede yazılım kelimesini kullandı .
  • 1960’ların sonu. Disketler tanıtıldı ve 1980’lerde ve 1990’larda yazılım dağıtmak için kullanıldı.
  • 3 Kasım 1971. AT&T, Unix OS’nin ilk sürümünü yayınladı .
  • 1977. Apple, Apple II’yi piyasaya sürdü ve tüketici yazılımı yola çıktı.
  • 1979. VisiCorp, kişisel bilgisayarlar için ilk elektronik tablo yazılımı olan Apple II için VisiCalc’ı piyasaya sürdü.
  • 1981. Microsoft , ilk IBM bilgisayarlarının çoğunun üzerinde çalıştığı işletim sistemi olan MS-DOS’u yayınladı. IBM, yazılım satmaya başlar ve ticari yazılımlar ortalama bir tüketiciye sunulur.
  • 1980’ler. Sabit sürücüler PC’lerde standart hale gelir ve üreticiler bilgisayarlarda yazılım paketlemeye başlar.
  • 1983. özgür yazılım hareketi oluşturmak için Linux projesi (GNU Unix değildir olduğunu) Richard Stallman’ın GNU başlatılan bir serbestçe kopyalanmasına, değiştirilmesine ve dağıtılabilir kaynak koduyla OS Unix benzeri.
  • 1984. Mac OS, Apple’ın Macintosh serisini çalıştırmak için piyasaya sürüldü.
  • 1980’lerin ortası. AutoDesk AutoCAD, Microsoft Word ve Microsoft Excel dahil olmak üzere önemli yazılım uygulamaları yayınlandı.
  • 1985. Microsoft Windows 1.0 yayınlandı.
  • 1989. CD-ROM’lar standart hale gelir ve disketlerden çok daha fazla veri tutar. Büyük yazılım programları hızlı, kolay ve nispeten ucuz bir şekilde dağıtılabilir.
  • 1991. Açık kaynaklı Linux işletim sisteminin temeli olan Linux çekirdeği yayınlandı.
  • 1997. DVD’ler piyasaya sürüldü ve CD’lerden daha fazla veri tutabiliyor, bu da Microsoft Office Suite gibi program demetlerini tek bir diske koymayı mümkün kılıyor.
  • 1999. Salesforce.com , internet üzerinden yazılım dağıtımına öncülük etmek için bulut bilişimi kullanıyor.
  • 2000. Hizmet olarak yazılım (SaaS) terimi moda oldu.
  • 2007. IPhone piyasaya sürüldü ve mobil uygulamalar yaygınlaşmaya başladı.
  • 2010’dan günümüze. Kullanıcılar internetten ve buluttan yazılım satın alıp indirdikçe DVD’lerin modası geçiyor. Satıcılar abonelik tabanlı modellere geçiyor ve SaaS yaygınlaştı.

Diğer yazılarımız için tıklayın.

BU İÇERİĞE EMOJİYLE TEPKİ VER!
+1
0
+1
1
+1
2
+1
0
+1
0
+1
0
+1
0

İlgili Makaleler

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir


Başa dön tuşu
error: Sayfa yazılarının kopyalanmasına izin verilmiyor. Teşekkürler