реклама на сайте
подробности

 
 
> ДВОЕ ИЗ ЛАРЦА, Квалификация исполнителей. Качественный программный код.
Hirer
сообщение Jul 1 2016, 06:38
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 20-02-16
Пользователь №: 90 531



Добрый день !
Хочется спросить совета у форумчан по одному вопросу, хотя не совсем уверен, что выбранная тема четко соотносится с ним.

Я — заказчик. Проект небольшой – ATmega168 + PCF7991, пара реле, пара ключей и десяток входных сигналов (логика). На выходе должен появится работающий образец в предфинальном варианте для запуска в серию + вся исходная информация.
Исполнителей двое, электронщик и программист. С каждым из них - своя история взаимодействия.

При отправке ПП на изготовление выяснилось, что все проводники на плате были сделаны не трассой а графикой (линии), которые естественно нормальному редактированию не поддавались. При увеличении была заметна небрежность — нахлесты, несведение в точку и т.п. Ну и апофеозом всего — невозможность автоматической проверки корректности дизайна платы в контексте правил разводки (DRC ). На мой вопрос «почему так» было сказано, что Altium в котором он работал с очень ограниченной лицензией и по другому никак ... Потратив несколько часов на обзор и вникание в имеющейся доступный софт, был сделан выбор в пользу DipTrace. Цена вопроса - 10 тыс.р (1000 выводов, 4 слоя). Плата была переделана в приемлемый срок и с надлежащим качеством. Пре передаче в Резонит выяснилось, что теперь формат DipTrace в качестве входного не принимается.
На мое указание транслировать проект в гербер и сверловку, электронщик заявляет, что это работа технолога и ничего в этом случае гарантировать не может.
Пришлось делать самому, заняло примерно пять минут с проверкой полученных герберов сторонним вьювером. Из Резонита все пришло как задумывалось и без вопросов.

Программист ... Тут сложнее — ломаный IAR. Попытка разговора в стиле «ай-яй-яй, а давай делать в Atmel Studio» (4.18 например) не привела ни к чему. Хотя изначально было сказано, что проект будет развиваться и необходим грамотный и качественный подход к проектированию и железа и софта. Ну Си он и в Африке Си, махнул на это рукой, запланировав по окончанию этой фазы переехать в студию за короткое время.
Наконец пришло время тестирования полученного образца. Детали описывать не стану. Выяснилось, что устройство при провалах питания ведет себя непредсказуемо, но чаще всего намертво «зависает». Посовещавшись пару дней и проводя какие-то эксперименты ими было заявлено, что это «плохие» микроконтроллеры ... - Не вопрос, - сказал я и приобрел с десяток ATmega168 из разных мест и партий. Снова испытания и проверки, но — безуспешно. На мой вопрос «а включен ли внутренный BOD?» было бодро ответили - «пробовали по всякому, ничего не помогает» и предложили - «а давайте на вход по питания поставим отсечку», чтобы ниже 8 вольт устройство просто отключалось.
Время поджимало — снова махнул рукой (зря) ... Прошло несколько дней на протяжении который электронщик как в старые добрые времена СЮТов взяв в руки паяльник плодил вариант за вариантом схему, приговаривая «вот уже почти ...»

Делать мне было нечего и я взялся чтение классики и истоков. Изучив варианты построения схемотехники UVLO (under voltage lock out) и внимательно почитав datasheet на микроконтроллер решил взять инициативу в свои руки ...
На моем рабочем столе помимо компьютера разместились : опытный образец, программатор, паяльная станция и лабораторный источник питания. Получив по запросу от программиста исходный код и прошивку (IAR я не устанавливал) взялся за тщательную проверку всего и вся. Собственно все заняло минут десять. За это время я убедился, что fuse bits прошиты мягко говоря странным образом. На вопрос «Это правильно?» был четкий ответ - «Да ! У нас так все устройства работают».
Пришлось распечатать нужные страницы даташита и попросить пояснить наглядно. Случился таймаут по окончании которого мне было выдано две разные версии с новыми комбинациями и «пояснениями» в стиле «а можно и вот так» ...
Я пригласил грамотного специалиста который мне шепотом сообщил, что ошибка на самом деле на генетическом уровне. Им же аргументировано объяснил, что все не так, как они себе представляли и нужно просто вдумчиво читать документацию, т.к. там все-все написано. Закончив объяснения он запрограммировал fuse bits как нужно. Устройство перестало себя вести неадекватно на что программист заявил, что он — программист а не железячник и эти конфигурационные биты не его проблемы. Электронщик в ответ показал пальцем на программиста ... Еще не занавес.
Напоследок я потратил пару часов на анализ исходного кода (лучше бы я это не делал).
Вновь не стану описывать увиденное. Сообщу только одну деталь (программная реализация SPI – это мелочи) — сбросов watchdog-а я насчитал целых 70 ! ...
На высказанное мое недоумение был ответ «Ну работает же!» ©
Занавес ...

А теперь собственно суть вопроса.

Как при наличии двух исполнителей найти ответственного за косяк и доказать, что это именно он а не другой ?
Каким образом добиться от программиста качественного программного кода ?

P.S. Спасибо за терпение, проявленное при прочтении текста выше sm.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Hirer   ДВОЕ ИЗ ЛАРЦА   Jul 1 2016, 06:38
- - spectr   Я так понимаю, никаких промежуточных точек приемки...   Jul 1 2016, 07:12
- - Corvus   Цитата(Hirer @ Jul 1 2016, 09:38) Каким о...   Jul 1 2016, 07:15
|- - spectr   Цитата(Corvus @ Jul 1 2016, 10:15) Сменит...   Jul 1 2016, 07:18
|- - Hirer   Цитата(spectr @ Jul 1 2016, 08:18) Иные п...   Jul 1 2016, 08:56
- - Kabdim   Нисколько не оправдывая исполнителей. Да и не осуж...   Jul 1 2016, 07:17
|- - iosifk   Цитата(Kabdim @ Jul 1 2016, 10:17) Нискол...   Jul 1 2016, 08:09
|- - MrYuran   Цитата(iosifk @ Jul 1 2016, 11:09) у кажд...   Jul 1 2016, 08:32
|- - Tpeck   Цитата(iosifk @ Jul 1 2016, 11:09) Как Ва...   Jul 1 2016, 10:10
|- - iosifk   Цитата(Tpeck @ Jul 1 2016, 13:10) А где м...   Jul 1 2016, 11:49
|- - bogaev_roman   Цитата(iosifk @ Jul 1 2016, 14:49) А инже...   Jul 1 2016, 12:02
|- - Hirer   Цитата(iosifk @ Jul 1 2016, 12:49) ... Но...   Jul 1 2016, 12:23
- - gerber   Живут же люди! Атмеги в 4 слоях разводят. Цита...   Jul 1 2016, 07:44
|- - spectr   Цитата(gerber @ Jul 1 2016, 10:44) Живут ...   Jul 1 2016, 07:50
- - AlexandrY   Цитата(Hirer @ Jul 1 2016, 09:38) Как при...   Jul 1 2016, 08:12
- - EvilWrecker   На мой взгляд наиболее типовая ситуация из наиболе...   Jul 1 2016, 08:26
|- - Hirer   Цитата(EvilWrecker @ Jul 1 2016, 09:26) ....   Jul 1 2016, 08:59
- - ViKo   И я того же мнения. За все отвечает руководитель. ...   Jul 1 2016, 08:35
- - Aner   Cтандартная ситуация для "лимонадных" пр...   Jul 1 2016, 08:40
- - Hirer   Цитата1) А что за Альтиумм такой который платки ри...   Jul 1 2016, 08:41
|- - EvilWrecker   Это не альтиум а скорее всего пикад. Тогда случай ...   Jul 1 2016, 08:42
||- - Hirer   Цитата(EvilWrecker @ Jul 1 2016, 09:42) Э...   Jul 1 2016, 08:54
||- - MrYuran   Цитата(Hirer @ Jul 1 2016, 11:54) Так вед...   Jul 1 2016, 08:56
||- - AlexandrY   Цитата(Hirer @ Jul 1 2016, 11:54) Наверно...   Jul 1 2016, 09:01
||- - Hirer   Цитата(AlexandrY @ Jul 1 2016, 10:01) ......   Jul 1 2016, 09:02
||- - iosifk   Цитата(Hirer @ Jul 1 2016, 12:02) Оптимал...   Jul 1 2016, 09:26
|- - AlexandrY   Цитата(Hirer @ Jul 1 2016, 11:41) Конденс...   Jul 1 2016, 08:58
- - EvilWrecker   ЦитатаКогда руками делать не получается, два пути ...   Jul 1 2016, 09:00
- - agregat   Цитата(Hirer @ Jul 1 2016, 09:38) Как при...   Jul 1 2016, 09:05
|- - Maverick   про электронщика-схемотехника здесь говорить сложн...   Jul 1 2016, 09:35
|- - Hirer   Цитата(agregat @ Jul 1 2016, 10:05) 1. Ес...   Jul 1 2016, 10:00
|- - Maverick   Цитата(Hirer @ Jul 1 2016, 13:00) Отчеты ...   Jul 1 2016, 10:16
|- - Maverick   Цитата(Hirer @ Jul 1 2016, 13:00) Отчеты ...   Jul 1 2016, 10:24
- - EvilWrecker   ЦитатаЯ напишу еще немного о том, что такое ...   Jul 1 2016, 10:01
- - Hirer   Кстати, говоря о пользе сторонних специалистов - п...   Jul 1 2016, 10:20
|- - Aner   QUOTE (Hirer @ Jul 1 2016, 14:20) Кстати,...   Jul 1 2016, 11:23
|- - AlexandrY   Цитата(Aner @ Jul 1 2016, 14:23) Первый в...   Jul 1 2016, 12:14
|- - Hirer   Цитата(AlexandrY @ Jul 1 2016, 13:14) Не ...   Jul 1 2016, 12:16
|- - Dog Pawlowa   Цитата(AlexandrY @ Jul 1 2016, 15:14) реч...   Jul 1 2016, 12:23
|- - Aner   QUOTE (AlexandrY @ Jul 1 2016, 16:14) ......   Jul 1 2016, 12:48
- - EvilWrecker   ЦитатаНу есть же определенное количество успешно з...   Jul 1 2016, 12:38
|- - Hirer   Цитата(EvilWrecker @ Jul 1 2016, 13:38) ....   Jul 1 2016, 12:49
|- - AlexandrY   Цитата(Hirer @ Jul 1 2016, 15:49) Там гра...   Jul 1 2016, 12:57
|- - demiurg_spb   Цитата(AlexandrY @ Jul 1 2016, 15:57) Да ...   Jul 1 2016, 20:22
- - EvilWrecker   ЦитатаТам графика. С обратной стороны - сплошная з...   Jul 1 2016, 12:51
- - www...   Слушайте, вы где таких олухов нашли? Можете озвучи...   Jul 1 2016, 18:00
|- - VNS   Цитата(www... @ Jul 1 2016, 22:00) ...Нор...   Jul 12 2016, 07:02
|- - agregat   Цитата(VNS @ Jul 12 2016, 10:02) Разработ...   Jul 12 2016, 07:42
|- - Lagman   Цитата(agregat @ Jul 12 2016, 10:42) ... ...   Jul 13 2016, 11:52
- - EvilWrecker   ЦитатаОчень часто замыкать и не надо, т.к. получит...   Jul 1 2016, 21:10
|- - MiklPolikov   Было бы очень полезно услышать от топикстартера, с...   Jul 3 2016, 05:01
|- - ARV   Цитата(MiklPolikov @ Jul 3 2016, 09:01) Т...   Jul 6 2016, 18:16
- - Hirer   Добрый день ! Тут нарисовалось небольшое прод...   Jul 14 2016, 12:41
|- - MiklPolikov   Цитата(Hirer @ Jul 14 2016, 15:41) Они пр...   Jul 14 2016, 12:58
||- - Hirer   Цитата(MiklPolikov @ Jul 14 2016, 13:58) ...   Jul 14 2016, 13:17
||- - MiklPolikov   Цитата(Hirer @ Jul 14 2016, 16:17) Соглас...   Jul 14 2016, 13:34
||- - agregat   Цитата(Hirer @ Jul 14 2016, 16:17) Вот фр...   Jul 14 2016, 13:58
|- - prig   Цитата(Hirer @ Jul 14 2016, 15:41) Добрый...   Jul 14 2016, 17:19
|- - MiklPolikov   Жаль, что Hirer так и не раскрыл коммерческую тайн...   Jul 14 2016, 21:33
|- - Hirer   Цитата(MiklPolikov @ Jul 14 2016, 22:33) ...   Jul 15 2016, 05:07
|- - prig   Цитата(MiklPolikov @ Jul 15 2016, 00:33) ...   Jul 15 2016, 12:52
|- - MiklPolikov   Цитата(prig @ Jul 15 2016, 15:52) Но что ...   Jul 15 2016, 14:19
|- - muravei   Цитата(prig @ Jul 15 2016, 15:52) Финансо...   Jul 16 2016, 10:34
|- - MiklPolikov   Цитата(muravei @ Jul 16 2016, 13:34) Когд...   Jul 16 2016, 15:31
|- - AlexandrY   Цитата(MiklPolikov @ Jul 16 2016, 18:31) ...   Jul 16 2016, 22:19
- - one_eight_seven   ЦитатаМетодика Agile отрицает всякое ТЗ. Невнимате...   Jul 17 2016, 07:40
|- - AlexandrY   Цитата(one_eight_seven @ Jul 17 2016, 10...   Jul 17 2016, 08:46
|- - Ruslan1   Цитата(AlexandrY @ Jul 17 2016, 10:46) На...   Jul 17 2016, 09:35
- - one_eight_seven   ЦитатаЧто я невнимательно читал? Ну есть вариант, ...   Jul 17 2016, 19:00
|- - AlexandrY   Цитата(one_eight_seven @ Jul 17 2016, 22...   Jul 17 2016, 19:19
||- - Hirer   Цитата(AlexandrY @ Jul 17 2016, 19:19) .....   Jul 18 2016, 04:48
|||- - MiklPolikov   Цитата(Hirer @ Jul 18 2016, 07:48) Хотело...   Jul 18 2016, 15:42
||- - one_eight_seven   Цитата(AlexandrY @ Jul 17 2016, 22:19) А ...   Jul 18 2016, 15:54
|- - VNS   Цитата(one_eight_seven @ Jul 17 2016, 22...   Aug 20 2016, 03:28
- - Hirer   Чтобы более полно проконсультироваться на форуме п...   Jul 19 2016, 05:50
|- - adnega   Цитата(Hirer @ Jul 19 2016, 08:50) Новый ...   Jul 19 2016, 06:34
- - prig   Цитата(AlexandrY @ Jul 17 2016, 11:46) .....   Jul 19 2016, 10:29
- - TSerg   Я как представил разработку авианосца и всего его ...   Jul 20 2016, 11:00
- - Elsystems   Цитата(Hirer @ Jul 1 2016, 09:38) Каким о...   Aug 23 2016, 04:43
- - Kabdim   Фееричная помесь стиля кодирования и запретов на о...   Aug 23 2016, 08:27
|- - AlexandrY   Цитата...Подобный документ можно прикрепить прилож...   Aug 23 2016, 09:10
|- - zltigo   QUOTE (AlexandrY @ Aug 23 2016, 12:10) Са...   Aug 23 2016, 09:16
|- - Kabdim   Цитата(AlexandrY @ Aug 23 2016, 12:10) Са...   Aug 23 2016, 10:56
- - Elsystems   Непонятно еще что понимается под "качественны...   Aug 23 2016, 10:34
|- - MiklPolikov   Цитата(Elsystems @ Aug 23 2016, 13:34) По...   Aug 26 2016, 15:20
|- - Elsystems   Цитата(MiklPolikov @ Aug 26 2016, 18:20) ...   Aug 26 2016, 17:21
- - BackEnd   Цитата(MiklPolikov @ Aug 26 2016, 15:20) ...   Aug 27 2016, 13:46
- - MiklPolikov   Вот тут толковый перечень правил. "10 правил,...   Aug 28 2016, 08:24
- - VNS   Цитата(MiklPolikov @ Aug 28 2016, 12:24) ...   Aug 29 2016, 07:07


Reply to this topicStart new topic
4 чел. читают эту тему (гостей: 4, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 09:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01483 секунд с 7
ELECTRONIX ©2004-2016