Суть вопроса: Что и как правильно требовать разработчику от алгоритмиста?
По работе занимаюсь реализацией ЦОС алгоритмов на ПЛИСах. Процесс разработки внутри отдела протекает следующим образом. Имеется сектор алгоритмистов, которые на основе ТЗ на НИР, ОКР придумывают алгоритмы. Чаще всего они обкатывают эти алгоритмы на моделях в Матлаб. В результате своей работы они приносят в наш сектор разработчиков-программистов документ под названием "Описание алгоритма ...". Этот документ обычно выглядит как то так:
Введение: космические корабли бороздят просторы вселенной...
Входные данные: А - массив на 1000 элементов (что за элементы, какого типа, какой разрядности?) K - переменная для цикла (очень полезная информация) с - скорость света и т. д.
Основная часть: переписывают листинг программы на матлабе на русский язык
Выходные данные: В - массив на 1000 элементов (что за элементы, какого типа, какой разрядности?)
Я понимаю, когда с такими листочками приходят и просят прикинуть, сколько времени будет выполняться этот алгоритм на плисине, влезет ли по ресурсам. Можно считать это рабочим процессом. В ходе обсуждений и замечаний удается выяснить многие уточнения и ограничения.
Но в конце концов точно такой же алгоритм даже без тех самых уточнений приносят на подпись. Начальство умоляет подписать, так как срочно (ну как всегда) требуется хоть чем то отсчитаться. И все вокруг уверяют, что это только первая версия, предварительная, и потом выйдет настоящий полный алгоритм. А потом про это все забывают, кроме реализатора, то есть меня.
Что-то много букав написал. Суть вопроса вот в чем. Нашел я ГОСТ 24.211-82 Требования к содержанию документа "Описание алгоритма". Пролистал, проникся, зародилась у меня идея, каждый раз, когда приносят мне на ознакомление очередной алгоритм, требовать от его автора соблюдения этого стандарта. Одно смущает, ГОСТ старенький (я не в теме, этот советский гост все еще действителен у нас в современной России?) и относится он к АСУ (лучше бы конечно что-то обобщенное). Может кто подскажет, что посвежее или потематичнее.
Может так же кто поделится своим опытом взаимодействия с коллегами внутри предприятия.
|