# Enteprise Architecture
## On Okumalar
https://bian.org/servicelandscape-11-0-0/
https://portal.bian.org/dashboard/business-scenario-services
https://www.visual-paradigm.com/guide/enterprise-architecture/what-is-zachman-framework/
https://www.leanix.net/en/wiki/ea/togaf
https://www.leanix.net/en/resources/business-capability-map-library/#/Default
https://en.wikipedia.org/wiki/ArchiMate
## Requiremenst
* ManageEngine otomatik olarak uygulamalarin kurulu oldugu sunuculari tanimali
## To Do List
- ITSM To Do List
- [x] ITSM'de EA Mimarisinin planlanması
- [x] ITSM'de Burgan Application CI'ının oluşturulması
- [x] Azure DevOps Application kartların ITSM'e uygun olarak düzenlenerek import edilmesi
- [x] ITSM Burgan Application kartlarının PLM'lere assign edilmesi ve bilgilendirme maili gönderilmesi
- [x] Güncel Vendor listesinin temin edilerek ITSM'e eklenmesi
- [x] BIAN'dan Service Domain listesinin çıkarılması ve ITSM'e eklenmesi
- [x] ITSM'de Varlık Grubu ve Ana Varlık Grubu CI'larının oluşturulması
- [ ] PLM'lerin ITSM Application CI'larını gözden geçirmesi, sunucu ilişkilerini ve Vendor bilgilerini eklemesi
- [ ] ITSM'deki Varlık Grubu ve Ana Varlık Grubu kartarının DDO anketlerinin doldurulması
- [ ] ITSM'deki Varlık Grubu ve Ana Varlık Grubu kartları ile Application ve diğer varlıklar arasında ilişki kurulması
- [ ] Contract - sözleşme - SLA bilgilerinin PLM'ler tarafından girilmesi
- [ ] ITSM Database kartlarının oluşturulması? (Önce Taylan ile görüşülecek)
- [ ] Database - Sunucu ilişkilerinin kurulması
- [ ] Sunucu - Network ilişkilerinin kurulması
- [ ] PLM'ler ile bire bir görüşerek uygulamalarının hangi BIAN Service Domain'e bağlı olduğunun keşfedilmesi ve ilişkilerin kurulması
- [ ] ITSM'e BIAN senaryolarının girilmesi ve Service Domain'lerle ilişkilerinin kurulması
- [ ] Contract kartına yeni bir type eklenerek PoC çalışmaları için kayıt oluşturulabilmesi ve arşiv oluşması
## Model
### Business Landscape
```plantuml
@startuml
enum ServiceDomain {
Bireysel Krediler
...
}
enum Scenarios {
Bireysel Kredi Degerlendirme,
Bireysel Kredi Takip,
Dokuman Yonetimi
...
}
enum Application {
Internex,
DYS,
Dodge - Krediler
...
}
Application ||..|{ ServiceDomain
ServiceDomain ||..|{ Scenarios
@enduml
```
### Technology Landscape
```plantuml
@startuml
enum Application {
Dodge - Krediler
...
}
enum DatabaseInstance {
SQLSERVER$DODGE
}
enum Database {
RetailLoanApplication
}
DatabaseInstance ||..|| Database
Application ||..|| Database
Application ||..|| Server
DatabaseInstance ||..|{ Server
Server ||..|| NetworkDevices
ExternalServices ||..|| Application
ExternalServices ||..|| SharedDataSet
ExternalServices ||..|| NetworkDevices
ServiceDomain ||..|| Application
Contract ||..|| Application
Contract ||..|| Vendor
Contract ||..|| Server
Contract ||..|| NetworkDevices
@enduml
```
## Business Landscape
### Service Domain
+ Onay Mekanizmalari
+ SLA, DRC Girdisi
+ KVVK Veri konusu ?
https://bian.org/servicelandscape-11-0-0/views/view_53367.html
* En fazla bir birim tarafindan isletilmeli
* Birden fazla surece hizmet edebilir
* Sistem (ve varsa insan) kapasitesi tanimlanir.
Alanlar
+ Business Owner - Kişi
+ Tecnical Owner - Kişi / PLM-Birim Yöneticisi
+
## Application Landscape
:::warning
Bu landscape de her bir entity bir Varlik grubudur. DDO survey isletilmelidir.
DRC ayrimi hangi seviyede yapilacak; Sunucular, Network cihazlari vs.. Mode nedir ? Aktif Aktif, Aktif pasif vs... Oncul islemler?
Contract : Hangi derinlikte olacak
Network Devices: Hangi kirilimda olacak
:::
### Application
Bankanin sureclerinde kullandigi uygulamalari belirler.
| Alan | Aciklama | Not |
| ------------------ | ------------------------------------ | --------------------------------- |
| Name | Uygulama Adı | |
| Custodian | Uygulamanın teknik sorumlusu | Direkt kişi atanır |
| Application-Type | **Business** ya da **IT** olabilir | |
| Contracts | Uygulama dis hizmet ise sozlesmeleri | Cross(n-1) **Contract** referansı |
| Application-Server | Uygulamanın bulunduğu sunucu | Cross(n-n) **Server** referansı |
| Databases | Aktif kullanilan veri tabanlari | Cross(n-n) **Database** referansı |
|Support Team | Destek veren ekip. **Internal** ya da **Vendor** değerini alabilir.| |
|Kimlik Yönetim Uygulaması ile entegre mi? | Evet/Hayır| KPS mi? |
|Separation Type of Development/Test/UAT Environments | Dev/Test/UAT ortam ayrımı. **Fiziksel** ya da **Sanal** değerleri alabilir | |
|Transfer Method Between Environments | **Otomatik** ya da **Manuel** değerlerinden birini alır| |
|Deployment Tool | **Azure DevOps**, **Windge**, **Uygulamanın kendisi** ya da **Manuel** değerlerinden birini alır| |
|Software Development Type | **Internal** ya da **External** değerlerinden birini alır| |
|APM Integrated | Evet/Hayır| |
|Tracking Method | **Sunucu**, **Uygulama**, **Uygulama ve Alert** ya da **Uygulama, Alert ve Healthcheck** değerlerinden birini alır| |
|Storage Duration | DB ve Sunucular için saklama süresi, freetext | |
|Minimum Backup Frequency| **Günlük**, **Haftalık**, **Aylık**, ya da **Yedekleme İhtiyacı Yoktur** değerlerini alabilir. | |
|Deployment Plan| Dağıtım planı | |
|Deployment Rollback Plan| Geri alma planı | |
### Server
Bankanin uygulamalarının ve veri tabanlarının bulunduğu sunucuları tanımlar.
| Alan | Aciklama | Not |
| ---------------- | ------------------------------------------------------------ | ------------------------------------ |
| Name | Sunucu adı | |
| Location | Fiziksel lokasyonu belirler, **Equinix** veya **Ankara DRC** | |
| Operating-System | Sunucu işletim sistemi | |
| Applications | Hizmet veren uygulamalar | Cross(n-n) **Application** referansı |
### Database
+ KVVK Veri konusu ?
+ Yedekleme
| Alan | Aciklama | Not |
| ---- | ------------ | --- |
| Name | Veri tabanı adı | |
| Type | Veri tabanı tipi -MongoDB, Oracle, SQL Server, PostgreSQL vb. değerleri alabilir.-|
| Server | Veri tabanının bulunduğu sunucu | Cross(n-n) **Server** referansı olabilir |
### ExternelServices
Bankanin diger organizasyonlarla veri alisverisi icin kullandigi servis, baglantilari tanimlar.
| Alan | Aciklama | Not |
| --------------- | ------------------------------------------------------------------------------------------ | ------------------------------------ |
| Name | Baglantinin veya servis grubunun adi | |
| Organization | Baglanti kurulan Organizasyon bilgisini icerir. | |
| **Application** | Baglantiyi kullanan uygulamalari tanimlar | Cross(n-n) **Application** refernasi |
| Owner | Baglantinin sahipligini yapan is birimi tarafindaki sorumlusu | Direkt kisi atanir. |
| Custodian | Baglantinin teknik sorumlusu | Direkt kisi atanir. |
| Connection-Type | **REST API**, **Non-Rest API**, **Socket** ve **File Share** tiplerinden uygun olani secilir | |
| Security | Baglantinin guvenliginin nasil saglandigi ile ilgili temel bilgiler paylasilir. | |
### SharedDataset
+ KVVK Veri konusu ?
Bankanin diger organizasyonlarla yaptigi veri alisverisinde kullandigi veri kumelerini tanimlar.
| Alan | Aciklama | Not |
| ------------------- | ------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------- |
| Name | Veri kumesinin adi. Sorgu, rapor, bildirim adi gibi. | |
| **ExternalService** | Haberlesmede kullanilan dis kaynak baglanti noktasina isaret eder. | **ExternalService** refernasi |
| Owner | Veri kumesinin sahipligini yapan is birimi tarafindaki sorumlusu | Direkt kisi atanir. |
| Custodian | Veri kumesinin teknik sorumlusu | Direkt kisi atanir. |
| Request-Schema | Paylasilan veri semasi | |
| Response-Schema | Alinan veri semasi | |
| Query-Type | Anlik sorgular icin **Adhoc**, belli zamanlarda yapilan toplu raporlamalar veya sorgular icin **Frekans** secilir. | |
| Frequence | [CRON](https://crontab.guru) formatinda iletisim frekansi girilir. | Sorgu tipi **Frekans** secildiginde zorunludur. |
| Purpose | Alisverisinin amaci olarak **Yasal** veya **Is Ihtiyaci** secilir. | |
### Contract
Bir sistemin veya uygulamanin vendor ile iliskili olarak sozlesme, SLA bilgilerinin takibinin yapildigi sozlesme tanimlarini iceririr.
### Vendor
Bir sistemin veya uygulamanin vendor ile iliskili olarak sozlesme, SLA bilgilerinin takibinin yapildigi sozlesme tanimlarini iceririr.