“Aşağı akış / yukarı akış tasarımı” ne demektir?


20

Yazılım geliştirmedeki "aşağı / yukarı doğru tasarım" ne demektir?


1
Sorduğunuz kullanımın iyi kurulmuş olduğunu bilmiyorum. Sorunuzun bağlamı nedir? Ne problemi çözmeye çalışıyorsun?
Jeremy

"Tasarım" kelimesinin eklendiğinden emin misiniz? Ben yukarı ve aşağı akış duydum, genellikle tasarım değil, "faaliyetler" ile birleştiğinde. Bu anlamda gereksinimler ve tasarım akış yukarı aktivitelerken uygulama, test ve bakım akış aşağı aktivitelerdir.
Thomas Owens

Yanıtlar:


30

Akış yukarı bileşenler, sistemin bileşeninizin işini yapmaya bağlı olduğu diğer parçalarıdır. Bir yukarı akış bileşeninin tasarımı değişirse, bileşeninizin işlev yapma yeteneği etkilenebilir. Bir akış yukarı bileşeninde hata varsa, bu hata bileşeninizde gösterilebilir.

Aşağı akım bileşenleri, sistemin bileşeninizin etkileyebileceği kısımlarıdır. Bileşeninizdeki değişiklikler, bileşeninizden aşağı akıştaki bileşenlere dalgalanabilir.

Bir veritabanı katmanı ve bir uygulama katmanından oluşan bir uygulamayı düşünün. Veritabanı katmanının, uygulama katmanının akış yukarı olduğu kabul edilir.


1
Hatırlaması kolay cevap burada stackoverflow.com/a/38917565/579689
Talespin_Kit

10

Akış yukarı = kuyu yukarı (yazılımın kökeni) Akış aşağı = okyanusa aşağı doğru (kullanım durumları)

"Aşağı akış" olan Açık Kaynak geliştiricileri, bitmiş ürünler üzerinde uygulamalar ve araçlar oluşturur. Memba olanlar serbest bırakılacak ürünler üzerinde çalışırlar.

Yazılım geliştirirseniz: yukarı akış geliştirmenin kararlılığına bağlıdır. Ve yazılımınız üzerinde çalışanlar aşağı yönlü geliştiricilerdir.


2
Bu cevap herkesin katibidir!
Alexander Leon VI

ITIL dilinde bir CMDB hakkında konuşurken bunun tersi görünüyor. : /
Dwev

2

Bunun İngilizceden daha fazla yazılım mühendisliği jargonu olduğunu düşünüyorum, ancak "alt tasarım" ı anlamanın yolu, uygulama geliştiricilerin zaten geliştirilmiş olan araçları aldıkları ve uygulamalarını tamamlamak için kullandıkları yerdir. Kütüphane yeteneklerinin ne yapılacağına dair kararların verileceği yerde, halihazırda üretilmiş yazılım kütüphanelerinin kullanılması aşağı havzadadır.

"Yukarı akış tasarımı" ile uygulama geliştiricisine danışılmakta ve uygulama çalışmaları gerçekten başlamadan önce kütüphanelerin geliştirilmesine katılmaktadır. Örneğin, ses yazılımına odaklanan bir yazılım şirketi olacaksanız, geliştirmeyi planladığınız çeşitli yazılımları kapsayacak şekilde kütüphaneler geliştirmeniz gerekebilir. Uygulama geliştiricilerinin istediklerine girdi sağlayabilmesi için kütüphane geliştiricilerinin uygulama geliştiricileriyle birlikte oturmasını sağlamak güzel olurdu.

Memba daha özelleştirilmiştir, bu da onu daha pahalı hale getirir, ancak potansiyel olarak daha iyi bir son ürün üretir.

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.