Endüstriyel E-Ticaret Platformu Takım Üyeleri: 07.12.2015
İçindekiler 1. GİRIŞ... 4 1.1. Amaç... 4 1.2. Kapsam... 4 1.3. Genel Bakış... 4 2. SİSTEM GENEL TANIMLAMALARI... 5 3. SİSTEM MİMARİSİ... 6 3.1. Mimari Tasarım... 6 3.2. Decomposition Description... 7 3.3. Design Rationale... 7 4. VERİ TASARIMI... 8 4.1. Veri Tanımlama... 8 4.2. Veri Sözlüğü... 8 5. BİLEŞEN TASARIMI... 11 5.1. Context ViewPoint... 11 5.4. Logical ViewPoint... 12 5.10. Interaction ViewPoint (.)... 13 5.10.1. Interaction ViewPoint: Üye Modülü (.)... 13 5.10.2. Interaction ViewPoint: Ürün Modülü (..)... 14 5.10.3. Interaction ViewPoint: Sipariş Modülü (..)... 15 5.10.4. Interaction ViewPoint: Stok Modülü ( )... 16 5.10.6. Interaction ViewPoint: Rapor Modülü (..)... 17 5.10.7. Interaction ViewPoint: Yönetim Modülü / Sipariş Yönetimi (.)... 18 5.10.8. Interaction ViewPoint: Yönetim Modülü / Stok Yönetimi ( )... 19 5.10.9. Interaction ViewPoint: Yönetim Modülü / Üye Yönetimi ( )... 20 5.11. State Dynamics ViewPoint (.)... 21 6. İNSAN ARAYÜZ TASARIMI... 22 6.1. Kullanıcı Arayüzüne Genel Bakış... 22 6.2. Ekran Resimleri... 23 6.2.1. Ekran Resimleri (..)... 23 6.2.2. Ekran Resimleri ( )... 24 6.2.3. Ekran Resimleri ( )... 25 6.2.4. Ekran Resimleri (.)... 26 6.2.5. Ekran Resimleri (..)... 27 6.2.6. Ekran Resimleri (.)... 28 2
6.3. Ekran Objeleri ve Olayları... 29 6.3.1. Ekran Objeleri ve Olayları ( )... 29 6.3.2. Ekran Objeleri ve Olayları ( )... 29 6.3.3. Ekran Objeleri ve Olayları (..)... 30 6.3.4. Ekran Objeleri ve Olayları ( )... 31 6.3.5. Ekran Objeleri ve Olayları (.)... 31 6.3.6. Ekran Objeleri ve Olayları ( )... 32 3
1. GİRİŞ 1.1. Amaç Bu SDD (Software Design Document) dokümanı ETP projesinin componentları ve SRS dokümanı ile belirlenen gereksinimlerin implementasyonunun başarılı bir şekilde gerçekleştirilmesi için gerekli açıklamaları bulundurmaktadır. 1.2. Kapsam Endüstriyel E-Ticaret Projesi, kobilerin kendi bünyelerindeki ürünlerini elektronik ortama taşıyarak, işgücünü azaltıp, büyük pazarlara açılmasını sağlayan bir bütünleşik sistem platformudur. Firmalar, ürünlerini kendi e-mağazalarında satışa sunarak sipariş alabilecekleri, stoklarını takip edebilecekleri, satış ve stok raporlamaları yapabilecekleri bir platformda iken, Kullanıcılar herhangi biriyle muhatap olmadan, istediği ürünü istediği kobi firmasından sipariş edebilecek ve bu siparişin takibini rahatlıkla yapabilecektir. 1.3 Genel Bakış ETP ile firmalar, kendi ürünlerini e-mağazalarında listeleyerek sipariş alabilecekleri, stoklarını takip edebilecekleri, satış ve stok raporlamaları yapabilecekleri bir platform tasarlanmaktadır. ETP, firmalara ürün satışlarını arttırmak, sipariş ve stok takibini kolaylaştırmak için etkin ve verimli bir çözüm sunmaktadır. ETP projesi ASP.NET ile geliştirilecektir ve sunucu üzerinde çalışan bir veritabanı bulunacaktır. Bu bölümde sistem tasarım ve analizinin ilerlemesi kavramsal dökümanının ve sistemin genel hatlarının iyice belirlenmesi için hazırlanan bu dökümanın bölümlerinden genel bir bakış halinde bahsedilecektir. Dökümanın ilgili bölümlerinde yapılacaklar hakkında verilen bilgilerle ilgili kişilerin doküman hakkında bilgi sahibi olmaları amaçlanmaktadır. 4
Yazılım Dizayn Dökümantasyonunda; 1.Bölümde ETP nin amaçları ve doküman hakkında genel bilgi verilmektedir. 2.Bölümde ilgili sistemin genel tanımlamaları yapılarak çalışma şekli hakkında bilgi verilmektedir. 3.Bölümde sistem mimarisinin nasıl dizayn edileceği ve kullanılacak mimari tasarım hakkında detaylı bilgi verilmesi planlanmaktadır. 4.bölümde veri dizaynı tanımlamaları kullanıcı, firma, müşteri vs. bilgilerin tamamı primary key ve foreign key olarak verilen id ler ve tüm gerekli bilgiler veritabanında belirtilen parametreler veri tipleri ile birlikte tanımlanacaktır. 5.bölümde sistem tasarımının belirlenmesinde kullanılacak diagramlar çizilir. 6.bölümde insan arayüz tasarımları yapılacak ekran tasarım dizaynlarının nasıl olacağı belirlenecektir. 2. SİSTEM GENEL TANIMLAMALARI Endüstriyel E-Ticaret Platformu öncelikli olarak küçük ölçekli kobilerin,firmaların ürünlerini online ortamda pazarlamasını sağlayan bir platformdur. Sistemin Çalışması Prensibi: Sistem, bir çok modülden oluşmaktır.üyelik,ürün görüntüleme vb... Sistemin çalışma prensipleri bu modüllere dayanmaktadır. 1.Müşteriler, üyelik sistemi modülü sayesinde müşteriler yeni üyelik oluşturabilirler. 2.Üye olan müşteriler, ürün ve sipariş modüllerinden yararlanabilirler. 3.Üye olan müşteriler, profil bilgilerini görüntüler ve profile bilgilerini değiştirebilir. 4.Yönetim modülü, sadece sistem tarafından görülebilir. 5
5.Müşteri alacağı ürünün stok takibini yapabilmektedir. 6.Müşteriye az stoklu ürünler ve kampanyalı ürünler için mail bildirimi gerçekleştirilecektir. 3.SİSTEM MİMARİSİ 3.1 Mimari Tasarım ( ) ETP bir ASP.NET projesi olarak geliştirilecektir. Aşağıdaki ETP projesi Deployment Diagram'ı ile sistemin fiziksel ve fiziksel olmayan parçaları arası ilişkiler ifade edilmiştir. ETP'nin gerçekleştireceği fonksiyonlar: Sunucu üzerindeki veri tabanı ile etkileşimde bulunarak kullanıcı bilgileri, stok ve sipariş bilgilerini güncelleyecektir. Kullanıcılarının sistem ile etkileşimini sağlayacaktır. Deployment diagramı ile belirtilen componentlar arası iletişim HTTP protokolü üzerinden sağlanacaktır. ETP Database, ETP Modülleri doğrultusunda modellenecektir. Ayrıca platformumuzun arka planında Varnish Web Cache kurulumu yapılacaktır. Varnish cache, Web üzerinde gezinmelerimizi hızlandıran bir Web Proxy Sunucusudur. Sunucuya gelen işlemleri cache leyip 6
istemciye dönen ve 2.kez gelen aynı isteği (Request) tekrar sunucuya dönmeden kullanıcıya cevap veririr.(respond). 3.2 Decomposition Description 7
3.3 Design Rationale ETP'de mimari olarak client-server mimarisinin web browserlar ile kullanılmasının en büyük avantajı; web sayfalarında ya da veri tabanına yapılacak değişikliklerin tüm kullanıcılara doğrudan yansımasıdır. ETP'nin bir masaüstü uygulaması ya da mobil uygulama olarak geliştirilmesinin tercih edilmemesinin nedeni budur. Böylece kullanıcıların versiyon güncellemediği durumlarda ortaya çıkabilecek farklı kullanıcı deneyimlerinin önüne geçilmek hedelenmiştir. Her kullanıcı aynı versiyona sahip olacak ve güncellemeleri edinmek için web sayfasını güncellemesi yeterli olacaktır. 4. VERİ TASARIMI 4.1. Veri Tanımlama Endüstriyel E-Ticaret Projemizde veritabanı olarak MS-SQL kullanılacaktır. Veri girişleri yapıldığı an ilgili tablolar arası varsa triggerlar devreye girecek loglar günlük olarak alınacaktır. İstenildiğinde ilgili raporlar veritabanından çekilerek ekrana yansıyacak şekilde tasarlanacak Id ler header(ana) tablolarda primary key, detay tablolarında foreign key olarak tutulacak şekil ilişkisel veritabanı oluşturulacaktır. Procedure ler ve triggerlar yardımıyla sipariş ve stok tabloları arası düzen otomatik olarak sağlanacaktır. Job lar kur, aktarım vb. görevler için belirli saat aralıklarında düzenli olarak çalışacak şekilde planlanacak sistemin çalışma hızını engellememesi için yazılan scriptlere göre düzenlenecektir. Header ve det tablolarının logları düzenli olarak tutulacaktır. 8
4.2. Veri Sözlüğü OBJECT NAME TYPE DETAIL USER id int Uygulama için kullanıcı oluşturulurken database tarafından oluşturulan tekil değişken User_name string Uygulama için kullanıcının ismi User_password string Uygulama icin kullanici sifresi e-mail string Uygulama icin kullanici e-maili phone_number long Uygulama icin kullanici telefon bilgileri iletisim_bilgileri string Uygulama icin kullanici adress bilgileri OBJECT NAME TYPE DETAIL PRODUCT id int Her bir ürün veritabanı tarafından ürüne atanan tekil numara product_name string Ürünün sahip olduğu isim product_attribute string Ürünün özellikleri product_unit string Ürünün birimi purchase_price int Ürünün alış fiyatı sale_price int Ürünün satış fiyatı 9
OBJECT NAME TYPE DETAIL ORDER id int Her bir sipariş için veritabanı tarafından oluşturulan tekil id userid int Her bir sipariş için kullanıcı bilgileri ilişkilendirilmesi order_tracking string Sipariş takibi order_detail string Siparişin detayı order_type string Siparişin türü order_add void Siparis ekle order_delete void Siparis sil OBJECT NAME TYPE DETAIL STOCK id int Her bir stok urun icin veritabani tarafindan olusturulan tekil id stock_add void Stok bolumunde urunekleme stock_delete void Stok bolumunde urun silme stock_view void Stok bolumundeki urunleri goruntuleme stock_control void Stok kontrol OBJECT NAME TYPE DETAIL REPORT id int Her raporlanan urun veya siparis icin veritabaninda olusturulan tekil id order_report void Siparis raporlama product_report void Urun raporlama 10
OBJECT NAME TYPE DETAIL MANAGEMENT id int Her bir yonetim uyesi icin tekil id. user_id int user bilgilerinin görüntülenmesi için foreign key bilgisi product_id int Ürün detaylarının görüntülenmesi için foreign key bilgisi order_id int Sipariş detalarının görüntülenmesi için foreign key bilgisi stock_id int Stok detalarının görüntülenmesi için foreign key bilgisi report_id int Raporlanan urun veya siparislerin detaylarının görüntülenmesi için foreign key bilgisi 11
5.BİLEŞENLER TASARIMI 5.1 Context ViewPoint ( ) Endüstriyel E-Ticaret Platformu Kullanıcı giriş yaptıktan sonra isteği doğrultusunda kullanıcı ve ya firma bilgilerine ulaşabilir, stok listelerini görüntüleyerek stok miktarlarındaki değişiklikleri stok ekleme, silme ve listeleme ekranlarında görüntüleyebilir. Firma stok sistemindeki değişiklikler database üzerinden tetikleyiciler sayesinde bağlantılı tablolarda da değiştirilir. Veritabanında ilgili alanlar kullanıcı işlemleri doğrultusunda güncellenir. 12
5.4 Logical ViewPoint ( ) 13
5.10. Interaction ViewPoint Endüstriyel E-Ticaret Platformu 5.10.1. Interaction ViewPoint: Üye Modülü () 14
5.10.2. Interaction ViewPoint: Ürün Modülü () 15
5.10.3. Interaction ViewPoint: Sipariş Modülü ( ) 16
5.10.4. Interaction ViewPoint: Stok Modülü () 17
5.10.6. Interaction ViewPoint: Rapor Modülü () 18
5.10.7. Interaction ViewPoint: Yönetim / Sipariş Yönetimi () 19
5.10.8. Interaction ViewPoint: Yönetim / Stok Yönetimi () 20
5.10.9. Interaction ViewPoint: Yönetim / Üye Yönetimi () 21
5.11. State Dynamics ViewPoint () Endüstriyel E-Ticaret Platformu 22
6. İNSAN ARAYÜZ TASARIMI 6.1. Kullanıcı Arayüzüne Genel Bakış ETP içerisinde bulunan modüller için arayüzler tasarlanırken kullanıcının kolay adapte olabilmesine önem verilmiştir. Böylece, kullanıcı kaynaklı beklenmedik durumlarda bir azalma ön görülmüştür. Arayüzler için işlevsellik, estetik ve sürdürülebilirlik ön planda tutulmuştur. Kullanıcı bir işlem gerçekleştirdikten sonra, işlemin sonucu mutlaka bir feedback olarak kullanıcıyı bildirilecektir. ETP için tasarlanan arayüzler modül adları ile sınıflandırılmıştır. Bu arayüzler: Üyelik Sistemi Üye Profil Ürün Stok Sipariş Raporlama Yönetim Üyelik Sistemi arayüzünde kullanıcı sisteme kendi kullanıcı bilgileri ile giriş yapabilir ya da sistemde yeni bir kullanıcı oluşturabilir. Oturum açma bilgisi ya da kullanıcı oluşturma bilgisi kullanıcıya iletilir. Üye Profil arayüzü kullanıcının sistemde oturum açtıktan sonra kullanıcı bilgileri üzerinde değişiklik yapmasını sağlar. Ürün arayüzü satıcı konumundaki firma kullanıcıları için stoklarına eklemek üzere önce ürün oluşturdukları arayüzdür. Stok ve ürün modülleri birbirlerinin devamı şeklinde çalışırlar. Stok arayüzünde firma eklediği ürün için belirli bir stok bilgisi girer. Böylece stok bilgisi bulunan ürün alıcılar tarafından seçilebilir hale gelir. 23
Sipariş arayüzü ise alıcıların sepetlerini düzenleyebilecekleri, onaylayabilecekleri arayüzdür. Sepetin onaylanması ile sipariş bilgisi satıcının ekranına düşer. Raporlama arayüzlerinde alıcılar için belirli tarihler arasındaki siparişleri raporlama fonksiyonu bulunurken, satıcılar için belirli tarihler arası stok bilgilerini raporlama fonksiyonu bulunur. Yönetim arayüzleri yöneticiler için üyelik, sipariş ve stok tanımlamaları üzerinde doğrudan değişiklik yapmayı sağlar. Bu arayüzler sadece yönetici hesaplarına açıktır. 6.2. Ekran Resimleri 6.2.1. Ekran Resimleri Üyelik Modülü () 24
6.2.2. Ekran Resimleri Ürün Modülü () 25
6.2.3. Ekran Resimleri Sipariş Modülü () 26
6.2.4. Ekran Resimleri Stok Modülü () 27
6.2.5. Ekran Resimleri - Rapor Modülü Rapor Oluşturma Ekranı: Rapor Sonuç Ekranı: 28
6.2.6. Ekran Resimleri Yönetim Modülü 29
6.3. Ekran Objeleri ve Olayları Endüstriyel E-Ticaret Platformu 6.3.1. Ekran Objeleri ve Olayları Üyelik Modülü Ekran Arayüz No SDD-ETP-6.3.1 Ekran Arayüz Adı ÜYELİK SİSTEMİ Tanımlayan Ana Akış Referans Kodu Not Kullanıcı sisteme giriş yapmak ister. Üye ol() geri bildirimi admine gönderilir. Sistem girişi için üye olmalıdır. Üyelik için gerekli olan bilgileri sisteme girer. Sistem de üye profil bölümü oluşur. Bu bölümde olması gereken bilgiler sisteme kayıt edilir. Üyeprofil() bilgileri kullanıcıya return edilir. SDD-6.2.1 6.3.2. Ekran Objeleri ve Olayları Ürün Modülü Ekran Arayüz No SDD-ETP-6.3.2 Ekran Arayüz Adı Ürün Modülü Tanımlayan Ana Akış Referans Kodu Not Kayıtlı Ürün Listelerinin görüntülenmesi durumudur. Firma Kullanıcısı sisteme oturum açar. Panel üzerinden ürün sekmesini seçer. Veritabanındaki kayıtlı ürünler, Ürün listesinde, sırasıyle ürün no, ürün adı, ürün özellikleri, birimi, alış ve satış fiyatı listview şeklinde sıralanır. Ayrıca Kullanıcı isterse, yandaki menüden Ürün Ekleme (urunekle()), Düzenleme (urunduzenle()) ve Silme (urunsil()) İşlemlerini gerçekleştirebilir. Eğer bu sekmelerden birini kullanırsa, kullanıcıya güncelleme sonrası işlemin tamamlandığına dair bir bildiri ekranda görüntülenir. SDD-6.2.2 30
6.3.3.Ekran Objeleri ve Olayları Sipariş Modülü Ekran Arayüz No Ekran Arayüz Adı Tanımlayan Ana Akış SDD-ETP-6.3.3 SİPARİŞ MODÜLÜ (Sipariş Verme, Verilen Siparişleri Görüntüleme) Yöneticinin bir siparişe ait bilgileri düzenlemek istemesi durumudur. Yönetici, yönetici paneli üzerinden sipariş yönetimini seçer. Gelen arayüz üzerinden görüntülemek istediği siparişin ID'sini textbox'a girer. ID'si girilen siparişe ait bilgiler datagrid üzerinde görüntülenir. Yönetici, sipariş bilgilerinde yapacağı değişikliği datagrid üzerinde yapar ve değişiklikleri kaydet butonuna basar. Değişiklikler kontrol edilir ve veri tabanı güncellenir. Güncelleme sonrası işlemin tamamlandığına dair bir bildiri ekranda görüntülenir. Referans Kodu SDD-6.2.3 Not 31
6.3.4. Ekran Objeleri ve Olayları Endüstriyel E-Ticaret Platformu Ekran Arayüz No SDD-ETP-6.3.4 Ekran Arayüz Adı Stok Modülü (Ekleme Silme Listeleme) Tanımlayan Ana Akış Ürün stok ekleme bölümünde öncelikle eklenecek ürünün kategorisi combobox içinde listelenen kategorilerden seçilir. Sonrasında aynı şekilde marka ve model bilgileri seçilir ve ardından ürünle alakalı açıklama girişi yapılır. Ürün görselleri ilgili görsellerin sürekle bırak yoluyla ve yahut dosyadan seçilerek eklenmesi mümkün kılınacaktır. Gerekli ürün bilgileri seçilip açıklama ve görsellerinin eklenmesinin ardından Ürünü Stoka Ekle butonu kullanılarak ilgili firma stokuna eklenir ve veritabanına kaydı gerçekleşir. Stok düzenlenme işlemleri için stok listeleme ve ya düzenleme ekranları üzerinden adet seçilerek stok miktarındaki değişiklikler kaydet butonuyla kaydedilir. Referans Kodu Not SDD-6.2.4 6.3.5. Ekran Objeleri ve Olayları () Ekran Arayüz No SDD-ETP-6.3.5 Ekran Arayüz Adı Tanımlayan Ana Akış Referans Kodu RAPOR YÖNETİMİ (Sipariş,Stok Raporu) Müşteri ve admin tarafından oturum açılır. Müşteri siparişini tanımladıktan sonra sipariş raporlaması yapar. Admin stok raporlamasını yapar. Tedarikçiden satıcı stok bilgisini alır. SDD-6.2.5 Not 32
6.3.6. Ekran Objeleri ve Olayları Ekran Arayüz No SDD-ETP-6.3.6 Ekran Arayüz Adı Yönetim Modülü Admin Paneli (Üyelik/Sipariş/Stok) Tanımlayan Ana Akış Referans Kodu Not Üyeliklerde, siparişlerde ve stok bilgilerinde yönetici tarafından değişiklik yapılması durumudur. Yönetici sistemde oturum açar. Gerekli yönetim arayüzünü seçer. Gelen arayüz üzerindeki ID alanı doldurulur ve bilgiler listelenir. Yönetici bilgilerin listelendiği grid üzerinde değişiklik yapıp, bu değişiklikleri kaydedebilir ya da girmiş olduğu ID'ye ait kaydı tamamen silebilir. SDD-6.2.6 33