VC>Перечитал еще раз ваш текст, первый раз пропустил некоторые детали. VC>По моему мнению, у студентов программерских специальностей должна быть общая базовая подготовка (дискретная математика, алгоритмы, структуры данных, низкоуровневое программирование, компиляторы, базы данных, ОС, сети, безопасность, графика, AI и т.п.). Базовый уровень широкий но поверхностный плюс специализация по выбору. В рамках специализации должны выполняться курсовые работы очень приближенные к реальным проектам, и по заданию и по процессу разработки.
К сожалению, так было в СССР в чистых универах.
В настоящее время в нашем техническом универе чел поступает на специальность (направление) СРАЗУ.
В результате, наш учебный отдел обычно СВОДИТ в одной дисциплине разные специальности.
Например, дискретка читается сразу нескольким специальностям одной кафедрой.
В Советском Союзе я на матфаке учился по описанной вами схеме: сначала общая подготовка 2.5 года, потом — специализация по направлениям кафедр.
VC>По окончанию ВУЗа в идеале такой человек должен без проблем найти работу по своей специализации. Для того чтобы это работало, в ВУЗе должны быть люди понимающие как работает софтверный бизнес, которые понимают не только теорию, но и процессы разработки, распределение ролей и т.п. Все эти ЕСПД и ГОСТ отсутствуют в бизнесе как класс, за исключением небольшой прослойки предприятий работающих еще по советским процессам — в оборонке, космической промышленности и т.п. Если вы ориентируетесь на них то так и скажите, всем будет все ясно. В бизнесе почти везде сейчас agile разработка в том или ином виде. Большинство программистов не пишут ТЗ и никогда не писали, и это в принципе не то чему должны учить на программерской специальности. На уроках литературы в школе скорее. В больших компаниях ТЗ пишут аналитики, им могут помогать тех писатели, в мелких как правило никто не заморачивается скрупулезным документированием всего и вся. Есть наверное такие отрасли где это критично, как тот же космос авиастроение или военка. Как максимум можно сделать специализацию по тех документации для тех кто хочет стать программистом бортового ПО ракет или танков. Ну или например аналитиком — в принципе тоже профессия требующая понимания технической части
У нас преподают наши выпускники непосредственно с предприятий.
В Образовании и Науке я дал ссыль на астраханские стартапы — там упоминаются люди из Адептика, которые у нас ведут дисциплины. Например, дисциплина Коллективный проект — ведет Морозов.
Он сам — технический директор в Адептике, ему на работе приходится всем этим управлять.
Он и у нас ведет курс по той же рабочей схеме.
Но насколько я помню — требовал док (не формальный, на гитхабе), где ПЕРЕД разработкой были сформулированы все основные принципы и функциональность.
А потом в течение семестра каждая команда собиралась и отчитывалась неоднократно о проделанной работе. И прописывала работу для следующего отчета.
В финале все равно док писать — для той самой аккредитации-аттестации.
VC>К чему делать демонстрационные программы по одному алгоритму в виде курсовых — не очень понятно. Или тренажеры. Это ни рыба ни мясо — практической пользы мало, с точки зрения теории эти же алгоритмы надо на лабах разбирать и практиковаться как тут выше уже писали, время будет потрачено с большей пользой. В виде курсовых надо давать более практические задания. VC>Зависит от курса — или разработать какую-либо систему с базой данных и UI к ней (имеющую практический смысл), или драйвер устройства, или интерпретатор/компилятор несложного языка и т.п. Прочитав дальше я вижу что у вас что-то подобное есть, для особо продвинутых студентов. Ну хорошо хоть так.
Зависит от народа.
Если народ способен писать — грузим реально работой для кафедры. И оформляем в качестве курсовых.
Если не способен — пишет учебные курсовые.
Но док — всегда. Отчетный документ потому что...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!