Ana içeriğe atla

Kayıtlar

Ekim, 2009 tarihine ait yayınlar gösteriliyor

FMEA (Failure Mode Effect Analysis) – Bölüm 2

İlk makalemizde FMEA’ya genel giriş yapmıştık. Bu makalemizde FMEA türlerine değineceğiz. FMEA temel olarak 4’e ayrılır: Sistem FMEA Tasarım FMEA Proses FMEA Servis FMEA 1. Sistem FMEA Sistem ve alt sistemleri analiz ederek, sistemin eksiklerinden doğan sistem fonksiyonları arasındaki potansiyel hata türlerini belirlemeye odaklanır. Hedefi, sistemin kalitesini, güvenirliğini ve korunabilirliğini artırmaktır. Sistem FMEA’nın faydaları şunlardır: Sistemi etkileyen potansiyel problemlerin bulunabileceği alanlar daralır. Sistem içerisinde uygulanacak prosedürler için bir temel oluşturulmasına yardımcı olur. Sistem içerisindeki fazlalıkların tespit edilmesine yardım eder. Optimum sistem tasarım alternatiflerinin seçilmesinde yol gösterir. 2. Tasarım FMEA Tasarım hatalarından doğan hata türlerine yönelik olarak üretime başlamadan önce ürünlerin analiz edilmesinde kullanılır. Hedefi, tasarım kalitesini, güvenirliğini ve korunabilirliğini artır

FMEA (Failure Mode and Effects Analysis) – Bölüm 1

FMEA (Failure Mode and Effects Analysis), Türkçe’ye “Olası hata veya başarısızlık türleri ve etkilerinin analizleri” olarak çevrilebilir. Sistem ve donanım hatalarının etkilerinin belirlenmesi ve bu etkileri değerlendirme amacı ile ABD ordusunda geliştirilmiştir. FMEA metodu, genellikle sistemin yazılımsal parçaların ve donanımsal ekipmanların analizine odaklanır. FMEA analizi yardımıyla olası zarar meydana getirecek durumlar önceden sezilerek önlemler geliştirilir. Böylece olası zararların artış olasılığı da giderilmiş olur. FMEA çalışmasında, yeni bir ürün geliştirirken veya dizaynı oturmuş bir üründe önemli bir değişiklik veya geliştirme yapılırken, prototip üretiminde ya da seri üretimde özellikle sonuncu kullanıcıya ulaşabilecek olası hatalar, bunların cinsi, sebepleri, etkileri, kritikliği, frekansı, ortaya çıkma sıklıkları, tahmin edilebilir. FMEA terimi bünyesinde bir grup sistematik faaliyeti barındırır. Bu faaliyetler 3 ana grupta incelenebilir; Bir ürünün tasarımı,imalatı ve

Proje Yönetimi – Bölüm 4 (Projeler Neden Başarısız Olur?)

Yazılım projelerini başarısızlığa uğratan çeşitli nedenler sayılabilir; Müşteri memnuniyetsizliği Projeler, müşterilerin ve son kullanıcıların gereksinimlerini tam anlamıyla karşıladıkları zaman başarılı sayılırlar. Proje bütçeye uygun ve zamanında bitmiş bir proje olsa bile müşteri memnuniyeti üst düzeyde değilse başarılı değildir. Projenin zaman ve bütçe kısıtlarının fazlasıyla aşması Proje ekibinin, proje kısıtlarını göz önünde bulundurmadan geliştirmeleri başarısızlığı da beraberinde getirecektir. Bütçe ve zaman, proje kısıtlarından en önemlileridir. Proje, uygun olmayan bir bütçe ve/veya tahmin edilen zamandan çok sonra tamamlanırsa başarılı kabul </CITY> edilmez. Gereksinim analizlerinin proje genelindeki belirsizlikler yüzünden gerektiği gibi yapılamaması ve bunun neden olduğu sürekli değişiklikler Gereksinim analiz süreci, yazılım mühendisliği disiplinlerinin en önemli safhalarından biridir. Proje takımı, analiz süresince gereksinimleri

Web Servisleri – Bölüm 1

Web servisleri,  web üzerinden servis veren program parçalarıdır. Bir kullanıcının, HTTP protokolü üzerinden web servisini kullanmasına RPC (Remote Procedure Call) denmektedir. HTTP üzerinden yapılan bu çağrımlara karşı SOAP (Simple Obect Access Protocol) dediğimiz protokol ile XML çıktıları üretilir. Bu sayede standart bir veri paylaşım aracı olan XML ile istediğimiz verileri alıp kullanırız. SOAP standartları, W3C standartlar komitesi tarafından belirlenmiştir. Bütün bu standartları uygulamaya geçiren SOAP sayesinde web servisine, platformdan bağımsız çağırımlar yapılabilmektedir. Yani .NET ortamında geliştirilen bir web servisine JAVA ile geliştirilen bir programdan ulaşmak mümkündür. SOAP dışında bazı standartlar da vardır, bunlar XML, WSDL, DISCO ve UDDI olarak sıralanabilir. XML, web servislerinin veriyi sunmak için kullandığı bir standarttır. WSDL (Web Service Description Language), web servisinin sunduğu arayüzü tanımlamak için kullanılır, bir web servisinde bulunan fonksiyonla

UML ve Modelleme – Bölüm 2 (Diyagramlar)

Bir önceki makalemizde UML’e giriş yapıp özelliklerinden ve diyagramların neden kullanıldığından bahsetmiştik. Bu makalemizde diyagram türlerine değineceğiz. UML modellemede nesneler arasındaki ilişki kurmak için gereken 9 adet diyagram türü bulunmaktadır. Şekil 1. UML Model ve Diyagramlar 1. Use Case Diyagram:  Bir kullanıcı ve bir sistem arasındaki etkileşimi anlatan senaryo topluluğudur. Use case diyagramlarda use case’ler ve aktörler adını verdiğimiz iki ana bileşen bulunmaktadır. Şekil 2. Use Case Diyagram

Veri Madenciliği

Bilgi sitemleri üzerinden üretilen veri miktarının büyük  artış  gösterdiğini ve  firmaların veritabanlarının  boyutlarının  terabytelar seviyesine ulaştığını  görmekteyiz.  Veritabanlarındaki teknolojik gelişmeler ve hacimlerindeki olağanüstü artış, firmaları,  bu verilerden nasıl faydalanılacağını ve bu  verilerin  nasıl  anlamlı hale  getirileceği  sorunuyla  karşı  karşıya  bırakmıştır. Bilgisayar  sistemleri  ile  üretilen  bu  veriler tek başlarına  değersizdirler.  Ancak belli  bir amaç  doğrultusunda  işlendikleri  zaman  anlamlı  hale  gelirler. İşte ham  veriyi  bilgiye veya anlamlı  hale  dönüştürme  işini veri madenciliği ile yapabiliriz.

Sanal POS (V-POS)

Web üzerinden ödeme söz konusu olduğunda, sanal POS’lar devreye girer. Klasik alışverişlerde kullandığımız POS  (Point of sale - ödeme noktası) cihaz ve sistemlerinin, web siteleri üzerinden alışveriş yapmaya olanak sağlayan şekline sanal POS-VPOS (Virtual point of sale) denmektedir. Kısaca “Internet´e uyarlanmış POS da diyebiliriz”. Internet üzerindeki alışverişlerinizde kredi kartı ile ödeme yapabilmenizi on-line olarak sağlayabilmektedir. Üye işyeri için, müşterinin yaptığı ödemeler VPOS sisteminden yararlanılan bankadaki firma hesabına geçmektedir. Sanal POS ile alıcı-satıcı ya da satıcı-tedarikçi arasında online bir ödeme sistemi ve altyapısı kurulmuş olur. Sistem basit olarak, firmanın web sitesi üzerinden bilgilerini giren alıcının banka ve kredi kuruluşlarında olan hesabından, aldığı ürün veya hizmetin bedeli olan paranın firmanın kendi banka hesabına geçmesine dayanır. Ürün ve hizmetlerini web üzerinden pazarlamayı düşünen bir firma, öncelikle ticari hesabının bulunduğu bir b

UML ve Modelleme – Bölüm 1

Modelleme bir mühendislik tekniğidir. Model sayesinde anlaşılması güç yazılımları basit bir dille ifade edebiliriz. Bu da yazılımın anlaşılmasını kolaylaştırır ve hataları kolaylıkla görüp en düşük seviyeye indirgememizi sağlayacaktır. UML nedir? UML’ in Türkçe deki karşılığı “Birleşik Modelleme Dili” olsa da aslında bir programlama dili değil yazılım mühendisliğinde nesne tabanlı modellemede kullanılan standart olmuş görsel modelleme dilidir. UML’in tarihine söyle bir göz atacak olursak : 90’lı yıllarda yazılım mühendisliğinde birbirine yakın en çok tercih edilen 3 yöntem ön plana çıkmıştır. 1991 yılında Grady Booch tarafından Booch,  aynı dönemde James Rumbaugh   tarafından OMT (Object Modeling Technology) ve 1992 yılında Ivar Jacobson  tarafından OOSE (Object Oriented Software Engineering) modelleme dili geliştirildi.  Bu üç yönteminde birbirine göre artı ve eksileri vardı.  Bu dönem yazılım mühendisliğinde “METHOD SAVAŞLARI” olarak  bilinmektedir. Metho

ASP.Net Durum Yönetimi – Bölüm 2 (State Management)

Sunucu Tabanlı Durum Yönetimi Seçenekleri İlk makalemizde istemci tabanlı durum yönetimini anlatmıştık. Bu makalemizde, sunucu tabanlı  durum yönetimine ait 3 seçeneğin üzerinde duracağız; Application state Session state Profile Properties Sunucu tabanlı durum yönetimi ile istemci tarafındaki durumu korumak için gönderilen bilgi azalır. Ancak sunucunun kaynaklarını kullanma maliyetini ortaya çıkartır. Application State ASP.Net uygulaması bazında değerlerin saklanabilmesine olanak sağlar. Application state, web uygulamasının bütün sayfalarından erişilebilir olan global bir depolama mekanizmasıdır. HTTPApplicationState sınıfının bir örneğinde saklanmak istenen veriler tutulabilir. ASP.NET uygulaması, IIS çalıştıkça application değişkenlerini kullanabilir. Tarayıcı kapatıldığında bile uygulamaya özgü değişkenler bellekte kalır. Application state sunucunun belleğinde tutulur. Bilgiye ulaşmak ve kaydetmek veritabanına kaydetmekten daha hızlıdır. Session state gibi t

ASP.Net Durum Yönetimi – Bölüm 1 (State Management)

Web uygulamaları stateless http protokolü üzerine kurulmuştur.Geleneksel web programlamada, sayfa sunucuya her gönderilişinde sayfanın bir instance’ı yeniden yaratılır. Sayfa ve  kontrollerle ilgili bilgiler her sunucuya gidişte kaybolur. Bu kısıtlamalardan kurtulmak, veriyi, sayfa ve uygulama bazlı koruyabilmek için ASP.Net  bir takım özellikler sunar; İstemci tabanlı View state Control state Hidden fields Cookies Query strings Sunucu tabanlı Application state Session state Profile Properties   View state, control state, hidden fields,cookies ve querystring veriyi istemci tarafında saklarken application state, session state ve profile properties veriyi sunucunun belleğinde tutar. Bu makalemizde “istemci tabanlı” durum yönetim seçenekleri üzerinde duracağız. Bir sonraki makalemizde ise “sunucu tabanlı” durum yönetim seçeneklerini inceleyeceğiz. İstemci Tabanlı Durum Yönetimi Seçenekleri 1.Vie

Proje Yönetimi – Bölüm 3 (Proje Yöneticisi)

Proje ekibini ve rolleri anlattığımız yazımızda kısaca proje yöneticisinden bahsetmiştik. Bu yazımızda görev tanımının detaylarına ineceğiz. Proje yöneticisi; “Riskleri, kaynakları ve kalite standartlarını değerlendirerek, projeyi planlayan, takım organizasyonunu sağlayan ve ilgili teknik ekibi yönlendirip, gerektiğinde motive eden kişidir” . Proje yöneticisinin yerine getirmesi gereken başlıca görevler aşağıdaki gibidir; Kaynakları Yaratır Proje yöneticisi, proje süresince gerekecek tüm kaynakları (kişiler, eğitimler, donanımlar, materyaller vb.) proje başlamadan tahminler. Proje ilerledikçe, yeni gereksinimlerin neden olduğu yeni kaynaklara ihtiyaç duyulabilir (yeni kişilerin projeye eklenmesi, analiz edilmeyen risklerin projeye etkisi, yeni donanım ihtiyacı vb.). Bu durumlarda, proje yöneticisi zaman kaybetmeden gerekli kaynağı bulmalıdır. Kaynağın elde edilmesinin gecikmesi, projede aksaklıklara neden olacaktır. İletişimi Sağlar Proje yöneticisi, üst

Proje Yönetimi – Bölüm 2 (Proje Ekibi ve Roller)

Proje Yönetimi ile ilgili ilk makalemizde Proje Yönetimi Temel Kavramları üzerinde durmuştuk. Bu makalemizde, proje ekibi ve rol dağılımlarını anlatıyor olacağız. Yapılan araştırmalar ve edindiğimiz tecrübeler, yazılım projelerini başarıya götüren en önemli faktörün proje ekibinde görev alan kişiler olduğunu göstermektedir. Proje yaşam döngüsü süresince, istenildiği kadar rahat çalışma ortamı yaratılırsa yaratılsın, en pahalı analiz, dizayn, geliştirme, test ve yönetim araçları kullanılırsa kullanılsın, doğru yetenek ve niteliklere sahip, entegre bir  proje ekibi olmadıkça, projenin başarıya ulaşması beklenemez. Yazılım projelerinin başlatılmasında, geliştirilmesinde ve yaşatılmasında, proje ekibindeki kişilerin rolleri ve birliktelik mekanizmaları, SEI  enstitüsü tarafından PM-CMM (İnsan Yönetimi – Yapılabilirlik Olgunluk Modeli) modelinde tanımlanmıştır. Bu model, CMM “yazılım olgunluk modeli” nin bir uzantısı olarak geliştirilmiş olup, aşağıdaki anahtar alanları (PM-CMM KPAs) incel

Proje Yönetimi – Bölüm 1 (Temel Kavramlar)

Proje yönetimi, hedef, maliyet ve zaman kriterlerine dikkate alarak, mevcut kaynakları verimli bir şekilde organize etme ve kontrol etme sürecidir. Proje yönetimi ile ilgili bu ilk yazımızda, yazılım projelerindeki temel kavramlara kısaca değineceğiz. Yazılım projelerinin kalitesi veya kalitesizliği, temelde 4 ana bileşene ve bu bileşenlerin birbirleri ile olan ilişkilerine bağlıdır. Bu bileşenlerden herhangi birisinde meydana gelecek aksaklık veya bileşenler arası bağlantı kopukluğu, tüm projenin başarısızlığa uğramasına neden olabilir. 4P olarak da adlandırılan bileşenler aşağıdaki gibidir; Kişiler/Kaynaklar (People) Ürün (Product) İşleyiş Mekanizması (Process) Proje (Project)   Şekil 1. Proje Yönetimi Temel Bileşenleri

ASP.NET Güvenlik Üzerine

Yazılım mühendisliğinde “güvenlik” birbirinden çok farklı ve geniş anlamlar ifade eden bir kavramdır. Fakat güvenliği ASP.NET özelinde ele alırsak, güvenliğin erişim kontrolü temelinde yapılandırıldığını görürüz. Bu yapı, kimlik belirleme (Authentication) ve yetkilendirme (Autharization) temelinde yönetilir. Kimlik Belirleme(Authentication) Metodları Kullanıcı kimlik biligisini belirlemek te kullanılan yöntemler aşağıdaki gibidir; Forms (Cookie) Authentication Windows Authentication Basic Digest Integrated (NTLM, Kerberos) Passport Authentication ASP .NET ‘te bu metotlardan herhangi birisinin uygulanabilmesi için web.config dosyasının authentication elementinin mode özelliğinde seçilir. <authentication mode="Windows | Forms | Passport | None" />