Каква е разликата между дизайна на системата на високо ниво и логическия дизайн на високо ниво?


Отговор 1:

Въпросът засяга различни термини и понятия. Използват се термините „дизайн на високо ниво“ (за разлика от „дизайн на ниско ниво“), „дизайн на система“ и „логически дизайн“ (за разлика от „физическия дизайн“). Нека първо да вляза в отделните термини и след това в връзката между тези термини, подсказана от въпроса.

Силно препоръчителен източник за дефиниции на термини в системите и софтуерното инженерство е стандартът ISO / IEC / IEEE 24765: 2017, който може да бъде изтеглен свободно от тук: Публично достъпни стандарти.

ISO 24765 включва следните определения (цитирани в курсив):

дизайн на високо ниво 1. процес на дефиниране на концепции от високо ниво, които ръководят проектирането и изпълнението на ниско ниво, вж. архитектура. Бележка 1 към запис: Дизайнът на високо ниво обикновено включва организиране на система в подпрограми и уточняване на интерфейсите между тях.

дизайн на системата 1. процес на дефиниране на хардуерната и софтуерната архитектура, компоненти, модули, интерфейси и данни за система, която да отговаря на зададените изисквания […]

концептуален дизайн на системата 1. Дейност по проектиране на системата, свързана с уточняване на логическите аспекти на организацията на системата, нейните процеси и потока на информация през системата […]

В приложение F към стандарта ISO / IEC / IEEE 15288: 2015 Системи и софтуерно инженерство - Процеси на жизнения цикъл на системата ще намерите следното описание, което поставя термините в контекст (цитирани в курсив):

Приложение F Архитектурно моделиране

F.1 Въведение

[…] Архитектурата на една система може да се разбира като съвкупност от структурирани архитектурни единици и на техните взаимоотношения, като функции, функционални потоци, интерфейси, елементи на потока от ресурси, елементи на информация / данни, физически компоненти, контейнери, възли, връзки, комуникационни ресурси и др. Тези архитектурни обекти могат да притежават характеристики като измерения, устойчивост на околната среда, наличност, здравина, ефективност на изпълнение, ефективност на мисията и т.н. […]

F.2 Точки, изгледи и видове модели, използвани в архитектурата

Процесът на архитектурно определение използва различни модели, включително примерните модели, изброени в следващия раздел. (Традиционната системна инженерна практика класифицира някои от тези модели като „логически модели“ или „физически модели“, но таксономичното разграничение е ненужно в прилагането на този международен стандарт.) Използват се различни гледни точки за представяне на начина, по който архитектурата на системата адресира заинтересованите страни. опасения. Изгледите са съставени от модели. Вижте ISO / IEC / IEEE 42010 за определения на термините за архитектура и допълнителни подробности относно архитектурните концепции и модели.

F.3 Логически и физически модели

F.3.1 Функционален модел

Функционален модел на системата представлява представяне на набор от функции, който определя трансформациите на входовете в изходи, изпълнявани от системата за постигане на нейната мисия или цел. Тези функции се определят от това как се очаква системата да се държи, когато се използва по предназначение. Следователно всяка системна функция е свързана с взаимодействие между системата и нейната среда. Функционалните изисквания, производителността, нефункционалността и ограниченията обикновено се анализират, за да се определят функциите и потоците вход-изход. Когато функциите са свързани със системни елементи, процесът на дефиниране на дизайна ще трябва да определи дали всеки системен елемент е достатъчно определен, за да го изгради или купи. Ако системният елемент трябва да бъде допълнително разрешен, за да се постигне тази достатъчност, тогава функциите, свързани със системния елемент, също ще трябва да бъдат допълнително разрешени и правилно свързани с под елементите. Обикновено има множество начини за декомпозиране на функциите, което допринася за определянето на множество архитектури-кандидати.

[...]

В обобщение: логическият (идеен) дизайн е подмножество от системния дизайн, който включва както логически, така и физически дизайн, както на високо, така и на по-ниско ниво. Има различни стандартни органи и стандарти, които използват предпочитаните от тях условия за едни и същи неща.

Ето две диаграми от безплатната текстова книга System Engineering Fundamentals, които добре показват връзката между логическия дизайн (представен чрез функционален анализ / разпределение на фигурите) и физическия дизайн (представен чрез синтеза на фигурата), както и високо ниво и по-ниско нива на проекти (представени от система и ниво на развитие на фигурата на фигурата).

На втората фигура (8–2) можете да видите, че процесът на инженеринг на системи (фигура 3–1) се прилага рекурсивно на системни и артикулни нива.

Вижте и следните отговори, ако се нуждаете от повече информация:

Отговорът на Рохус Келер на Какви са предимствата на подхода отгоре надолу в системния анализ и дизайн?

Отговорът на Рохус Келер има ли разлика между системната архитектура и дизайна на системата?

Отговорът на Рохус Келер на Какви са разликите между функционалните и нефункционалните изисквания?

Отговорът на Рохус Келер на въпроса Какъв е смисълът от система на интерес в системното инженерство?


Отговор 2:

Разработването на повече от тривиални системи изисква редица различни компоненти и за да разберете какво е необходимо, трябва да си зададете някои въпроси.

Какво е предназначена да направи системата? Какъв е екологичният контекст и ограниченията на системата? Има ли предвид времето за функциониране на системата?

На този етап има архитектурни или всеобхватни съображения, които трябва да бъдат взети предвид. Архитектурното е добра дума, защото дава аналогия. Нека си представим, че сте планирали град. Никой още не е построен. Въпросите, които бихте задали, могат да включват:

  • Каква е целта на града? Каква е основната индустрия в града? Къде трябва да се намира градът? Колко хора трябва да живеят там? Какви магазини и удобства са необходими, за да ги поддържат? Какви услуги са необходими? Как хората ще пътуват из града и как хората ще влизат и излизат от града? Как се обработват отпадъците?

На системно ниво бихте избрали конкретна архитектурна подредба въз основа на отговорите на този въпрос. Бихте планирали водоснабдяване, захранване и гориво, канализация, пътища, магазини, училища, медицински грижи и жилища. Бихте сегментирали местоположението на специфичните видове услуги, на определени места, за да обслужвате най-добре населението и индустрията, в която те са основно заети. Това е вашата системна архитектура или високо ниво на проектиране на системата.

На по-подробно ниво ще разгледате каква специфична инфраструктура за доставяне на необходимите функции. Как работи производството на индустрията? Например, представете си фабрика (или офис), която е изградена по предназначение за основната индустрия в града. Какви процеси са необходими, за да се включат в тази индустрия? Какви са стъпките и зависимостите за този процес? Какви са неговите входове? Какви са неговите резултати? Каква е последователността на нещата, които трябва да се случат, техните зависимости и условията, необходими за превръщането на тези входове в изходи? Това е вашият логичен дизайн.

Сложните софтуерно базирани системи са системи от системи. Предизвикателството е подобно на това, което е изправено пред планирането на град или град. Системните решения на високо равнище се вземат за това как се подреждат нещата и като цяло как ще се справят. Картата на компонентите и частите за изпълнение на целта е системата на високо ниво. Картата на последователността, стъпките и потока на активността и информацията вътре и между компонентите е логическият дизайн на високо ниво. Двамата работят заедно, когато целта на системата е постигната.