Değişiklik yönetişimiChange governance

Database Change ManagementDatabase Change Management

Üretime giden her betik aynı kapıdan geçer: doğrulama, risk bandı, politika, onay, çalıştırma ve denetim. Karar kuralı yazılıdır, kanıt işin kendisinden çıkar. Every script bound for production goes through the same gate: validation, risk band, policy, approval, execution and audit. The decision rule is written down and the evidence comes out of the work itself.

SQL Server PostgreSQL Oracle

Bir değişiklik talebinin yoluThe path of a change request

1 TalepRequest Bir talep birden fazla betik ve birden fazla hedef sunucu taşıyabilir. Bilet numarası zorunlu tutulabilir ve biçimi düzenli ifadeyle doğrulanır. A request can carry several scripts and several target servers. A ticket number can be made mandatory and its format is checked with a regular expression.
2 DoğrulamaValidation Betik, hedef sunucunun veritabanı tipine ait ayrıştırıcıyla çözümlenir. Metin arama değil, gerçek dilbilgisi analizi yapılır. The script is parsed with the parser of its target database type. This is real grammar analysis, not text searching.
3 RiskRisk Tetiklenen kuralların en yüksek derecesi talebin bandını belirler. Bulgular toplanmaz veya ortalanmaz. The highest tier among the triggered rules sets the request band. Findings are not summed or averaged.
4 PolitikaPolicy Sunucuya, ortama ve talep tipine uyan politika seçilir. Adımlar bu politikadan üretilir. The policy matching the server, the environment and the request type is selected. The steps come from that policy.
5 OnayApproval Her adımı, gereken rol seviyesindeki bir kullanıcı kapatır. Kilitli adım hiçbir koşulda atlanmaz. Each step is closed by a user at the required role level. A locked step is never skipped.
6 BildirimNotification Sırası gelen onay adımı, onay, red ve çalıştırma sonucu ilgili kişilere bildirilir. Gönderimler kuyruğa alınır ve kaydı tutulur. The approval step that is now due, the approval, a rejection and the execution result are notified to the people concerned. Sends are queued and recorded.
7 ÇalıştırmaExecution Betiği uygulama çalıştırır. Sonuç, süre, etkilenen satır ve hata mesajı kaydedilir. The application runs the script. Result, duration, affected rows and any error message are recorded.
8 DenetimAudit Her adım imzalı denetim izine yazılır ve talep bazlı kanıt dosyasına girer. Every step goes into the signed audit trail and into the per request evidence file.
DoğrulamaValidation

Betik ne zaman durdurulurWhen a script is stopped

Üç ayrı fren vardır ve üçü farklı sertliktedir.There are three brakes and they are not equally hard.

Sözdizimi hatasıSyntax error

Betik ayrıştırılamıyorsa talep hiçbir koşulda kaydedilmez. Bu fren kapatılamaz.If the script cannot be parsed, the request is never saved. This brake cannot be turned off.

Kaydı engelleyen kuralSave blocking rule

Kural setinde "kaydı engeller" işaretli bir standart tetiklenirse kayıt oluşmaz. Kurulumda WHERE içermeyen UPDATE bu şekilde işaretlidir.If a standard marked "blocks save" is triggered, no record is created. An UPDATE without a WHERE clause ships marked this way.

Onay isteyen bulguFinding that needs confirmation

Yüksek dereceli diğer bulgularda kullanıcıya "riskleri gördüm" onayı gösterilir ve talep ancak ikinci gönderimde kaydedilir.For other high tier findings the user is shown an acknowledgement, and the request is only saved on the second submission.

Kural seti kurumun elindedir. Kurulumla 87 SQL standardı gelir. Her biri açılıp kapatılabilir, önem derecesi değiştirilebilir ve hangi veritabanı tiplerinde geçerli olduğu belirlenebilir. Ekran: Ayarlar, SQL Standartları. The rule set belongs to you. 87 SQL standards ship with the product. Each can be switched on or off, its tier changed, and the database types it applies to selected. Screen: Settings, SQL Standards.

RiskRisk

Risk bandı nasıl belirlenirHow the risk band is decided

Her SQL standardı beş dereceden birini taşır: Info, Low, Medium, High, Critical. Bir talebin bandı, o talepte tetiklenen kuralların en yüksek derecesidir.

Every SQL standard carries one of five tiers: Info, Low, Medium, High, Critical. A request's band is the highest tier among the rules it triggered.

Ortalama alınmaz ve puanlar toplanmaz. Bunun sebebi basittir: elli küçük bulgunun ortalaması, tek bir kritik bulguyu gizler. En kötü durum yaklaşımı bu gizlenmeyi engeller.

Nothing is averaged and no points are summed. The reason is simple: the average of fifty small findings hides a single critical one. A worst case approach prevents that.

Ekranda ayrıca 0 ile 100 arasında bir sayı görürsünüz. Bu sayı bandın okunur karşılığıdır ve hiçbir kapı kararında kullanılmaz. Karar bandın ve kural bayraklarının işidir.

The screen also shows a number between 0 and 100. That number is a readable projection of the band and is used in no gate decision. Decisions belong to the band and the rule flags.

Asla atlanamaz kurallar. Altı kural kurulumda bu işaretle gelir: kritik nesne silme, kritik nesneye erişim, kritik nesnede şema değişikliği, işletim sistemi komutu çalıştırma, yetki değişikliği ve bağlı sunucu kullanımı. Biri tetiklendiğinde makine talebi kendi başına çalıştıramaz ve o kurala bağlı onay adımı atlanamaz. Rules that can never be skipped. Six rules ship with this flag: dropping a critical object, accessing a critical object, schema change on a critical object, running an operating system command, permission changes and linked server usage. When one is triggered, the machine cannot execute the request on its own and the approval step tied to that rule cannot be skipped.

PolitikaPolicy

Onay adımları nasıl oluşurHow approval steps are generated

Onay bir alışkanlık değil, yazılı bir kuraldır. Kural talep kaydedilirken talebe dondurulur.Approval is not a habit. It is a written rule, and it is frozen onto the request at save time.

Hangi politika uygulanırWhich policy applies

Aday politika şu özgüllük sırasıyla aranır: belirli sunucu, sonra ortam, sonra genel. Aynı kademede birden çok aday varsa öncelik değeri karar verir. Talep birden çok sunucu içeriyorsa her sunucu için ayrı çözüm yapılır ve en sıkı olan kazanır.Candidate policies are searched in this order of specificity: a specific server, then the environment, then global. When several candidates sit at the same level, the priority value decides. If a request spans several servers, each is resolved separately and the strictest one wins.

Bir adımın altı kaldıracıThe six levers on a step

Onaylayan rol; belirli kural anahtarlarıyla tetikleme; risk bandı eşiğiyle tetikleme; düşük bantta atlama; talep sahibinin rolü yeterliyse atlama; ve adımı her koşulda bekleten kilit.The approver role; triggering on specific rule keys; triggering at a risk band threshold; skipping at a low band; skipping when the requester's own role is high enough; and a lock that makes the step wait under all conditions.

En sık karıştırılan nokta. Bir adımı koşullu yapan yalnız iki alan vardır: kural anahtarı ve bant eşiği. Koşullu bir adım tetiklendiğinde rol üstünlüğüyle atlanamaz; en üst roldeki kullanıcı bile bekler. Buna karşılık koşulsuz bir taban adım, talebi açan kişinin rolü onaylayan rolüne eşit veya üstündeyse atlanır. The point most often misread. Only two fields make a step conditional: the rule key and the band threshold. Once a conditional step is triggered it cannot be skipped by seniority; even the most senior user waits. A plain base step, by contrast, is skipped when the requester's own role is at or above the approver role.

Görevler ayrılığıSeparation of duties

Kendi talebini onaylamaApproving your own request

Kapatıldığında talep sahibi kendi talebini ne onaylayabilir ne de çalıştırabilir.When switched off, a requester can neither approve nor execute their own request.

Onaylayan çalıştıramazApprover cannot execute

Kapatıldığında bir adımı onaylayan kişi aynı talebi çalıştıramaz.When switched off, whoever closed a step cannot execute that same request.

Farklı onaylayanDistinct approver

Açıldığında bir kişi aynı talepte yalnız tek bir adımı kapatabilir.When switched on, one person can close only one step on the same request.

Bu üç ayarın etkin değeri talep kaydedilirken dondurulur. Sonradan yapılan değişiklik, karara bağlanmış talepleri geriye dönük değiştirmez. The effective value of these three settings is frozen when the request is saved. A later change does not rewrite requests that were already decided.

ÇalıştırmaExecution

Onaydan sonra ne olurWhat happens after approval

Elle veya zamanlanmış çalıştırmaManual or scheduled execution

Yetkili bir kullanıcı talebi çalıştırır ya da ileri bir zamana kurar. Sunucu bazında otomatik çalıştırma açılabilir; ancak asla atlanamaz bir kural tetiklendiyse makine çalıştırmaz, bir insanın düğmeye basması gerekir.An authorised user executes the request or schedules it for later. Automatic execution can be enabled per server, but if a never skip rule was triggered the machine will not run it and a person has to press the button.

Geri alma ve izole denemeRollback and sandbox

Ürün betikten geri alma betiği üretebilir. Sunucu bazında "geri alma olmadan çalıştırılamaz" kuralı konabilir. Betik, üretime dokunmadan izole bir sunucuda denenebilir ve sonuç talebe iliştirilir.The product can generate a rollback script from the original. A server can be marked so that nothing runs without one. A script can also be tried on an isolated server without touching production, and the result is attached to the request.

Sürüm paketiRelease package

Birden çok talep tek pakette toplanıp sırayla çalıştırılabilir. Pakete alınan talep artık paketin denetimindedir; tek tek düzenleme ve çalıştırma kapanır.Several requests can be gathered into one package and run in order. A request inside an active package is governed by the package; editing and running it on its own is disabled.

Acil durumEmergency

Acil talep ayrı bir acil durum politikasına yönlendirilir. Gerekçe zorunludur, acil durum ilan etmek bir yetkidir ve acil politikanın en az bir atlanamaz onay adımı içermesi zorunludur.An emergency request is routed to a separate emergency policy. A justification is mandatory, declaring an emergency is a permission in its own right, and an emergency policy must contain at least one non skippable approval step.

EkranlarScreens

Değişiklik talebi ekranı: betik, doğrulama bulguları ve risk bandı
Talep ve doğrulamaRequest and validation Betik, tetiklenen kurallar ve satır numaraları. The script, the rules it triggered and the line numbers.
SQL standartları ekranı: kural listesi, önem derecesi ve asla atlanamaz işareti
SQL standartlarıSQL standards 87 kural, derecesi ve atlanamaz işareti. 87 rules with their tier and never skip flag.
Onay politikaları ekranı: adımlar, onaylayan roller ve tetikleme koşulları
Onay politikalarıApproval policies Adımlar, roller ve tetikleme koşulları. Steps, roles and trigger conditions.
Talep listesi ekranı: durum, risk bandı ve bekleyen onay adımları
Talep listesiRequest list Durum, band ve bekleyen adımlar. Status, band and pending steps.

DevamıNext