Eski gereksinimleri BDD'ye geçirin


11

S: İhtiyaç veritabanında en az 15 yıllık eski yazılım gereksinimi ile büyük bir şirketi Salatağa taşımanın en iyi yolu nedir?

Şu anda dikkate alınanlar:

1) Her Şeyi Göç Et

Dezavantajı: Sınırsız zaman / bütçemiz yok, hayatta kalmak için ilerlemeliyiz, her şeyi durduramayız ve eski gereksinimlerimizin ve eski test takımlarımızın GC% 100'ü.

2) İzci Kuralı

Her şeyi bulduğunuzdan daha iyi bırakın. Gereksinimlere dokunursanız veya değiştirirseniz bir Salatalık özelliği yazın / güncelleyin. Dezavantajı: Muhtemelen uzun bir süre dokunulmayan belirli bir uygulamanın köşeleri olduğunu varsaymak için iki kayıt sistemimiz olacak (Salatalık, eski req. DB).

3) İzci Kuralı Artı

# 2 ile aynıdır, ancak net olmadığımız gereksinimleri, beklemede olan tek bir senaryo ile Salatalık'a Özelliklere taşıyın ve eski gereksinimleri açıklama bölümüne kopyalayın / yapıştırın. Bu şekilde, Salatalık tarafından ne kadar "kapsanacağımız" ve ayrıca eski gereksinimler sistemini koruma ihtiyacımızla ilgili metrikler (beklemedeki senaryolar aracılığıyla) alırız. Salatalık içinde büyük bir karışıklık olabilir dışında bunun için herhangi bir dezavantaj bulamıyorum.

4) Fikrinizi buraya ekleyin.

Arka fon:

Salatalık'a taşınan bazı projeler otomatik test paketlerine sahiptir, bazıları sadece şimdiye kadar manuel test kullanmıştır. Hepsi eski bir gereksinim veritabanında gereksinimlerini koruyor. Bunu yapmak zorundayız çünkü gereksinimlerimiz yasalar / düzenlemeler ve finansal araçlar için karmaşık bir mantıktır (risk, fiyatlandırma, yapı vb.).

Unutmayın ki bu çok büyük bir şirkettir ve bu da çözümleri daha da karmaşıklaştırmaktadır.

"Yeni" gereksinimleri için Salatalık kullanan bazı projelerimiz var. Bu yüzden teknolojiye pilot olduk ve şimdiye kadar bizim için çalışıyor. Web ve tamamen veri projelerimizin bir karışımı var.

Teşekkürler

Düzenleme: Soruları yanıtlamak için ... Eski gereksinimler yönetimi DB sınama gereksinimleri bağlanmaz. "Test edilebilir" değildir. Bugün gereksinimleri testlere bağlamak, her bir projenin sonunda gereksinimleri test senaryosu yönetim sistemimize bağlamak için zorlu ve hataya meyilli manuel bir süreçle yapılmaktadır. Salatalık bizim için daha iyi bir çözümdür. Bununla ilgili soru yok. Asıl soru, yasal ve diğer nedenlerle kaybolamayacak önemli miktarda önemli gereksinime sahip büyük bir kuruluş için nasıl harekete geçileceğidir.


1
Soru üzerine +1; ancak daha genel bir ortamda: bir test sisteminden diğerine nasıl geçilir?
Sjoerd İş Postmus

"Eski" gereksinimler veritabanı, gereksinimlerin eşleşmesini kontrol etmede otomatik mi? Salatalık sözdizimiyle eşleşmek için gereksinimleri yeniden yazmanız gerekecek mi (ve eğer öyleyse: yeniden ifadenin gereksinimleri ince bir şekilde değiştirmediğinden emin olun)?
Sjoerd İş Postmus

Sadece merak, bu gereksinimler veritabanı "test edilebilir" mi? evet ise, eski testleri okuyan ve testler okunabilir bir tarzda değilse sizin için bir salatalık testi yazmaya çalışan bir program yaparak işlemi # 4 seçeneği olarak otomatikleştirmeyi deneyebilirsiniz. İki gerçek kaynağı olması genellikle
yanlış eşleşme

1
"Teknolojiyi denedik ve şu ana kadar bizim için çalışıyor" yazdınız, ancak "önceki teknolojiden daha iyi çalıştı" yazmadınız. Peki, bunun bir gelişme olacağından% 100 emin misiniz? Aksi takdirde, en iyi yol bunu yapmamak olabilir ;-)
Doc Brown

Yanıtlar:


8

Pencerelerini değiştirdiğimde çıtçıtlara bir oda sıyırma hatası yaptım. Eski bir ev. Oda kötü durumda idi. Yol boyunca her adımda, sorunlarla karşılaştım. Elimde eski bir boru çöktü. Şu anda sarkan yirmi beş kiloluk tesisat menfezi düştü ve mutfak tavanından düştü. (Neyse ki, kimseye zarar gelmedi ama kız arkadaşımın şarj cep telefonu ezildi. Eğlendirilmedi.) Aynı anda topraklanmış ve topraklanmamış bir devreye karşı fırçaladığımda kendimi cehennemden şok ettim. Üflemeli izolasyondan geçen eski kablolar ortaya çıktı.

Her bir konu ile enerjilerimi yeniden yönlendirmek zorunda kaldım. Sorunu çözmek için durdum. Sonra, bazen günler sonra, ilerlemeye devam ettim. Sonbaharda vazgeçtim. (Yaz sonunda yapmayı planladım.) Az önce durdum ve uzaklaştım. Çok fazlaydı. Kız arkadaşım yüklenici aramak istedi. Çok fazla iş yaptığımdan beri reddettim. Onların "ihtişamını" almalarını istemedim. (Ayrıca, biraz titizim ve kimsenin bilmediğim köşeleri kesmesini istemiyordum.) Yani, oda bitmemiş oturdu.

Neredeyse bir yıl önce, Yeni Yıl'dan sonra bir epifan vardı: Tamamlanıncaya kadar sadece odada çalışmak zorunda olduğumu söyleyen bir kural yoktu. Acele yoktu. Bu kadar önemli bir şey yapmak zorunda değildim. Bunun yerine, biraz boş zamanım olsaydı, yukarı çıkıp odada bir iki saat geçirebilirdim ... bir tabaka Sheetrock asın, çamur ve bir duvara bantlayın, bir kapıyı kesin. Bilmeden önce işim bitti. Kız arkadaşım beni tekrar sevdi. Yüzümde sırıtarak uyudum. Dünyada her şey yolundaydı.

Bence senin çıkmazın için benzer bir şey var. Akıllıca kaplumbağa olun - yavaş ve istikrarlı. "Her Şeyi Geç" yolu çok stresli. Ellerinizi havaya uçuracak ve uzaklaşacak. İzci Kuralı, hiçbir zaman değişmezlerse özellikleri geride bırakır. İzci Kuralı Artı, par. Yaklaşımlarınızdan en iyi şekilde yararlanın:

  1. Bir gereksinime dokunursanız, Salatalık'a taşıyın.
  2. Bu arada, haftalık bir taşıma hedefi belirleyin. Her hafta biraz yap. Bunu ya hep ya hiç teklif etmeyin. Ara sıra yapılan göç işlerinin, taahhüt ettiğiniz diğer tüm çalışmalardan hoş bir şekilde uzaklaştığını görebilirsiniz.

Bilmeden önce, işin bitti. Patronun seni sevecek. Takımın seni sevecek. Yüzünde bir gülümseme ile uyuyacaksın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.