пятница, 2 марта 2018 г.

Читателям

Студенты, которым не нужна эта книга

Эта книга не для тех, кто хочет списать.  Их цель – не знания и саморазвитие, а бумажка для показа начальству или куда там она требуется. Если вы учитесь без желания «прокачать себя», если диплом вам нужен по какой-то бюрократической причине или просто «чтобы был», если осталась неделя до защиты, то нет смысла мучать себя и своего научного руководителя. Вам эта книга не поможет.
Вы и сами знаете, как легко заказать дипломную работу на одном из многочисленных сайтов «помощи студентам» или скачать диплом, защищенный пару лет назад в другом вузе. Например, сегодня по фразе «заказать дипломный проект» Google выводит 115 тыс. ссылок, а Яндекс – 76 млн. Стоимость заказов в 2017 году составляет 10-15 тыс. рублей, сроки – от месяца, реклама обещает 70% уникальности текста. Но, вступая на этот путь, знайте, что вы выбираете путь лжи, который неизбежно приводит в ад. Возможно, вы не верите в бога, но это закон природы, который вы можете при желании проверить на себе.
Самые маленькие из неприятностей:
Во-первых, вероятно, что ваши знания по профессии не велики, вы торопитесь и вам «очень надо», то есть налицо все признаки потенциальной жертвы обмана. Интернет-сайты отзывов забиты жалобами тех, кто понадеялся на такой сервис и получил текст, который некачественно написан, или не по теме, или не проходит обязательный ныне антиплагиат, не представлен в нужный срок и т.п.
Во-вторых, даже если вы получили хороший проект, не так легко разобраться в 100 страницах чужой работы, с большой вероятностью вы «поплывете» при ответах на вопросы во время защиты.
В-третьих, мысль, что обман может в любой момент раскрыться, не добавит вам уверенности в себе. Даже если вы успешно защититесь и получите диплом о высшем образовании, вы всегда будете помнить, что он не вполне ваш. Что вы не смогли сделать то, что сделали другие. И, наконец, вы упустите возможность стать умнее, гордиться своим трудом и устроиться работать по профессии.

Возможно, вы уже далеко продвинулись по пути обмана и привыкли считать его нормой, все годы учебы списывая контрольные работы или заказывая курсовые. Вы сколь угодно можете убеждать себя и других, что «все так делают», что «работа дураков любит», что «мне важнее мое время», однако внутреннее ощущение ущербности непременно повлияет на ваш характер и отношения с людьми не в лучшую сторону. Наверняка вы встречали людей, которые с наслаждением гнобят подчиненных и пресмыкаются перед начальством. Также достаточно много программистов, которые не только в силах написать одну-две страницы русского текста «из головы», но и программный код предпочитают "слизнуть". Скорее всего, это бывшие троечники с купленными тем или иным способом дипломами, занимающие не свое место. Так что, тщательно взвесьте все «за» и «против» и, выбирая нечестный путь, далее можете эту книгу не читать. Однако, никогда не поздно остановиться и выбрать более путь более трудный, но который доставит вам интеллектуальную радость и повод для гордости и самоуважения.

Каким студентам эта книга может помочь

Эта книга – для тех, кто решился сам писать дипломную работу, но не имеет достаточного опыта и поддержки своего научного руководителя. При этом у вас должно быть в запасе хотя бы 2 (для бакалавров), а лучше – 4 месяца (для магистров), и вы сможете посвящать диплому несколько часов каждый день.
Мои советы предназначены в основном для таких студентов, кто был вынужден учиться урывками, не удостаивается должного внимания своего руководителя, кто хочет, но не уверен, что может самостоятельно сделать дипломную работу. Всем этим читателям я сообщу вместе с Умберто Эко, что 
  •  вы можете сделать достойную работу, даже стартовав со слабых позиций;
  •  вы можете получить удовольствие от дипломной работы и сделать ее предметом своей гордости, а также выработать в себе необходимые для ИТшника способности: определять проблему, находить пути и средства ее решения, грамотно излагать свои мысли.

Если вы преподаватель

Предлагаемая книга может быть полезна и для преподавателей, которым некогда или надоело отвечать студентам на одни и те же вопросы. Просто предложите им воспользоваться теми моими советами, по поводу которых вы разделяете мое (и / или Умберто Эко) мнение.

А те места, против которых вы категорически возражаете, заклеймите проклятьем.  Я не возражаю. В науке, педагогике и информатике всегда есть место не только нулю и единице, но и разнообразным их сочетаниям.  

Ваши замечания, дополнения, ваше мнение по поводу прочитанного сообщите автору, в комментариях к постам на блоге, в facebookе, по email или лично :-).

Какие вопросы освещены в книге

 В этой книге вы найдете ответы на такие вопросы:
1) что такое дипломная работа, чем бакалаврская ВКР отличается от магистерской диссертации;
 2) как выбрать ее тему и составить план (содержание),
3)  зачем нужен обзор литературы и как его делать;
4) что такое предметная область и как провести ее исследование,
5) что писать про информационное и программное обеспечение;
 6) чем хорошее руководство пользователя отличается от плохого,
7) как сформулировать выводы,
8) как сократить время на подготовку текста на компьютере.

Кроме того, в списке литературы вы найдете ссылки на статьи и книги в интернете, которые помогут вам по некоторым конкретным вопросам.

Чего нет в этой книге

Какие именно языки и среды программирования, инструменты проектирования информационных систем, какие именно модели использовать в вашем дипломе – это вы решаете сами.


вторник, 9 января 2018 г.

Честность, смирение и достоинство

Наука – очень демократичное занятие в плане того, что вы, как любой исследователь, имеете право опровергнуть любые взгляды, оспорить любые мнения, критиковать любую научную работу. То же касается и вашей работы. Главное правило – критика должна быть серьезно обоснована.
Никогда не делайте необоснованных заявлений и выводов, так как они легко могут быть оспорены оппонентами, могут открыть вашу недостаточную компетентность, поскольку часто нам трудно понять тексты, в которых стиль изложения или взгляды отличаются от привычных нам. Ваши вчерашние «гениальные» мысли, которые восхищали вас вчера, часто кажутся смешными через месяц, если не на следующее утро. Будьте терпимы, осторожны и уважительны в своей критике чужих трудов, так как даже скромная работа малоизвестного автора может подсказать вам интересную идею.  Это качество называют научным смирением, научной скромностью.
Например, когда я писала программу трассировки микросхем, то выбрала метод Аккерса для кодирования ячеек матрицы, которая моделировала слои проводников. Программа упорно не работала, и когда я поняла, что ошибка не в программе, а в классическом алгоритме, я стала бурно возмущаться и даже написала статью с опровержением кода Акерса. Научный руководитель смирил мое тщеславие, и статья состоялась, но не в первом варианте, а с описанием ограничений применимости кода Акерса. Это был для меня урок научного смирения.

Когда вы пишете свою дипломную работу, вы наверняка используете тексты других авторов. Научитесь пользоваться ими правильно:
  • не списывайте всё подряд, а излагайте основные идеи своими словами; 
  • не искажайте мысли тех авторов, на которых вы ссылаетесь; 
  • заключайте скопированные фразы в кавычки и указывайте источник в сноске; 
  • не придумывайте библиографические ссылки «с потолка» и не исправляйте год издания книг и статей;
  • статьи из википедии и других сайтов интернета использовать можно, указав их в списке литературы.

 Что касается экспериментов, не подгоняйте опытные данные под доказываемую гипотезу, проводите статистически значимое количество экспериментов, так как единичный случай ничего не доказывает и не опровергает. Если не успеваете, то хотя бы не делайте никаких выводов из такого эксперимента, а просто опишите его постановку как предмет дальнейшего исследования.  Все это носит название научной честности.

Наконец, о научном достоинстве: не прибедняйтесь, не принижайте себя и своей работы, убедите себя и других в том, что никто в целом мире не разобрался лучше вас в том, что написано в вашем дипломе.

Короче, не обижайте своих коллег и себя самого!

Сравнительный анализ как источник научной новизны

Если вы пишете магистерскую диссертацию на основе своей выпускной квалификационной работы бакалавра, то в ней, как правило, не хватает научности. При этом ваше преимущество в том, что вы уже знаете объект исследования, и у вас уже есть какая-то программная разработка. Например, вы разработали некую программу (конфигурацию системы, сайт), чего вполне достаточно для ВКР. Но какую научную новизну можно найти в такой теме?
Предлагаю вам рассмотреть следующие варианты:

  • Исследуйте в деталях бизнес-процессы на том же предприятии:  постройте их качественные и количественные модели,   проведите имитационное моделирование бизнес-процессов, на основе которого определите узкие места и предложите изменения в процессах обработки информации. Вам только нужно убедиться, что ранее никто не делал аналогичного исследования тех же бизнес-процессов или описать, что вы внесли нового в модель. Модель может быть впервые создана для данного предприятия, но даже в существующую модель вы можете внести изменения, например, предложите какие-то другие показатели качества / эффективности / надежности при моделировании, которые не были учтены предшественниками. Например, все до вас исследовали трудоемкость обработки данных, а вы рассмотрите показатели надежности: вероятность внесения ошибок, вероятность сбоев и потери данных. Также рассчитайте риски, связанные с потерей и искажением данных, а заодно предложите метод автоматизации расчета рисков.
  • Проведите сравнительный анализ существующих типов моделей (бизнес-процессов, данных) и выберите оптимальные варианты именно для вашего случая. 
  •   Исследуйте всевозможные инструменты разработки и моделирования предметной области с целью выбора подходящего инструмента, новизна может быть в сравнении какого-то нового, недавно появившегося на рынке инструмента с другими. 
  • Рассмотрите и сравните различные виды архитектуры вашей информационной системы (разные виды клиент-серверной, веб-сервисы, облачные сервисы, локальные приложения).

Все приведенные примеры не требуют от вас сбора большого количества экспериментальных данных, так как на сбор требуется время. Общее для всех этих видов исследования – применение метода экспертных оценок для выбора из нескольких альтернативных вариантов. 

Общий порядок экспертной оценки:


  • Сначала перечислите все критерии, по которым будете сравнивать исследуемые модели или инструменты. Для сравнения программных средств годится список критериев качества, приведенный в ГОСТ 28195-89 «Оценка качества программных средств» (http://aquagroup.ru/normdocs/7621) или в лекции на Интуите (http://www.intuit.ru/studies/courses/651/507/lecture/11551).  Для сравнения моделей могут использоваться и другие критерии: адекватность отображения моделируемого объекта (релевантность, полнота и точность), сложность,  удобство использования (интерпретируемость, сложность, наличие справочной информации,  наличие средств автоматизации) и др.  
  • Соберите литературу, в которой приводится более или менее похожее сравнение. Хорошо, если в этой литературе описаны не все  объекты и не все критерии сравнения (это и будет предметом для вашего вклада в науку). 
  • Каждый критерий может иметь определенный приоритет как для вас, так и для других разработчиков, участвующих в процессе создания данного ПО. Назначьте степени весомости критериев качества методом экспертных оценок (экспертами могут выступать ваши коллеги – разработчики и вы сами).  
  • Предложите способ количественного определения каждого показателя (он может быть описан в литературе, но вы можете его предложить сами, тут надо писать формулы, описывать алгоритмы и процедуры получения значений показателей).
  • Предложите вариант расчета интегральных показателей качества, с помощью которых вы будете  выбирать модели или инструменты
  • Проведите все расчеты, сведите их в таблицы.
  • Завершите анализ выводами: что именно вы выбрали на основе расчетов, какие новые методы расчета показателей или сравнительные анализы вы сделали (этот вывод войдет в заключение вашей дипломной работы).


Что такое "обзор литературы"

Исследовательскую часть диплома обычно начинают с обзора литературы. Например, сюда можно отнести анализ аналогов: вы должны найти и описать программные продукты и ИТ, которые решают задачи, похожие на вашу.
Цель этого раздела – доказать, что для решения вашей задачи действительно требуется разработать новую программу или информационную технологию, а также составить список того, чем ваша разработка будет отличаться от аналогов. Если не исследовать аналоги, то вы рискуете изобрести велосипед. Новая программа или информационная технология должна отличаться от существующих в лучшую сторону функциями, качеством или эффективностью.
Например, ваша тема – автоматизация расчета зарплаты на предприятии ХХ. Вы должны исследовать, какие программы существуют для этого на мировом рынке, составить перечень их основных свойств и сравнить с требованиями ваших пользователей. Если какой-то продукт полностью решает вашу задачу сейчас и в ближайшем будущем, то новую программу писать не надо: смените тему работы или сделайте шаг вбок: разработайте проект внедрения найденной программы на предприятии. Возможно, новизна в вашем решении будет состоять в том, как новая программа будет вписана в существующую информационную среду, например, предложите способ переноса имеющихся данных в БД, способ обмена информацией с другими программами, проведите локализацию (перевод на русский язык) иноязычной программы.

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

Иногда исследование аналогов предшествует формулировке требований, так как ни вы, ни заказчик «не в теме» и не можете внятно сформулировать требования к системе. Например, при разработке интернет-магазина можно изучить существующие сайты магазинов как в вашем регионе, так и в целом в мире. Не обязательно ассортимент товаров должен быть таким же, что у вашего магазина, ориентируйтесь на первые 20 сайтов в поисковой выдаче. Результатом обзора аналогов в этом случае будет описание всех функций нового магазина с учетом интересных маркетинговых фишек. Так же вы можете исследовать и программные средства для разработки интернет-магазинов, составив список нужных функций «бэк-офиса».

Сколько аналогов рассмотреть? В идеале вы должны найти все решения, актуальные на сегодняшний момент, то есть поддерживаемые производителями в ближайшие 2-3 года. Те продукты, которые не устраивают вас по какому-то признаку, сразу отбрасывайте, не углубляясь в их описание. Например, если требуется использовать только свободно распространяемое программное обеспечение, то нет смысла описывать характеристики Microsoft Visual Studio, как бы она вам не нравилась.

Дата публикации источника информации не должна быть старше, чем три-пять лет от текущего момента. Причем, учтите, что некоторые статьи на сайтах, в студенческих работах многократно копируются, так что желательно найти дату публикации первоисточника, иначе может оказаться, что вы воспользовались давно устаревшими данными (косвенное свидетельство этого – упоминание «умерших» операционных систем, например,  Windows Vista, XP:  в новом проекте нельзя использовать платформу, которая уже не поддерживается производителем).

Научная новизна

Понятие «научности» было сформулировано еще в XVII веке и по сей день предполагает, что:

  • Предмет научного исследования должен обладать узнаваемостью и поддаваться описанию. Для узнаваемости любого предмета мы приписываем ему некие качества, которые его отличают от других предметов и позволяют его узнать при встрече. Предмет исследования должен соответствовать той специальности, по которой вы защищаете дипломную работу. Описание предметной области должно быть рациональным, то есть составлено на основе наблюдений и измерений, а не на основе эмоций или воображения. 
  • В научном исследовании должно быть сказано о предмете нечто, чего ранее еще не говорилось, или должны быть переосмыслены ранее высказанные кем-то идеи.  Например, руководство по применению системы «1С: бухгалтерия» в АО «Метан» не является научной работой, так как не открывает ничего нового. А вот сравнительно-сопоставительное исследование многообразных бухгалтерских систем может претендовать на научную ценность, если его до вас никто не проводил, или если вы включили в имеющиеся описания что-то новое, например, рассмотрели новейшие версии программ, рассмотрели изменения в этих системах, связанные с только что вышедшим законом. 
  •  Исследование должно быть полезно для других. Например, полезна модель документооборота конкретного предприятия, так как она может описывать индивидуальные особенности этой фирмы и обязательно будет использоваться во всех будущих работах по её  информатизации. Также полезно описание изменений в ранее описанной модели документооборота, которые возникли за время, прошедшее с момента создания модели. В полезности можно выделить два аспекта: актуальность темы (то есть, кто и почему интересуется темой сейчас) и практическая значимость (кто и как сможет пользоваться результатами вашей работы). 
    • Актуальность принято обосновывать ссылками на авторитетные мнения (директивы государства, руководителей предприятия, экспертов в отрасли). Например, актуальность автоматизации складского учета на предприятии Х можно обосновать тем, что тема диплома является составной частью проекта, реализуемого на этом предприятии. 
    • Степень практической пользы  может быть разной: от безусловно необходимых работ, без которых любое дальнейшее исследование этой предметной области не может быть успешным, - до микроскопической научной значимости, например, в подсчете среднего количества студентов, играющих в компьютерные игры на лекциях профессора Х в весеннем семестре 2018 года. Хотя для профессора Х, возможно, это будет открытием, для остального человечества эта информация мало значима. Значимость проблемы можно увеличить, расширив рамки исследования, но это не всегда можно успеть за время подготовки диплома. Так, в последнем примере можно повысить значимость, если проследить количество играющих студентов с распределением по специальностям, вузам, странам, за разные временные периоды, определить ее корреляцию с количеством трудоустроенных по профессии и со средним заработком, предложить средства блокировки игр на уроках и использования игр в учебных целях, но эта тема уже тянет на кандидатскую или даже докторскую диссертацию. 
  • Исследование должно описывать способы проверки и опровержения предлагаемой идеи, которые позволят другим исследователям продолжить ваш труд. Например, вы разработали проект сайта, который пока существует на вашем личном компьютере, а также описываете условия, при которых ваш проект окупится через год. Для проверки вы должны привести в дипломе формулы расчета окупаемости проекта, предложить несколько вариантов хостинга и продвижения сайта, описать возможные риски внедрения сайта в работу предприятия, а также перечислить, при каких условиях ваш сайт будет бесполезным или убыточным. В ИТ-проектах вы можете свою разработку сделать общедоступной, например, выложить файлы проекта на сервисе GitHub. Итак, вы не только предложили свою идею, но и наметили тропинку для последователей: обозначили задачи, предоставили код и предупредили об опасностях. Достоверность результатов можно подтвердить актом внедрения материалов дипломной работы на конкретном предприятии: не стесняйтесь попросить директора подписать эту бумагу, особенно, если вы не претендуете на материальное вознаграждение.
Таким образом, основные критерии дипломной работы с точки зрения научности:

  • соответствие предмета исследования и вашей специальности, 
  • рациональность, 
  • актуальность, 
  • новизна, 
  • практическая значимость, 
  • достоверность результатов.


Значение практического опыта

Я очень рекомендую выбирать знакомый вам объект исследования и подняться хотя бы на одну ступеньку вверх по иерархии управления. Например:
  • если вы бухгалтер-практикант, выбирайте автоматизацию бухучета на смежных рабочих местах;
  • если вы менеджер по продажам или продавец, автоматизируйте торговую или маркетинговую деятельность вашего предприятия или отдела;
  • если вы веб-дизайнер, - проектируйте и оптимизируйте сайты;
  • если вы рабочий на заводе – изучите управление производством на уровне мастера и автоматизируйте его деятельность;
  • если вы программист – выберите одну из ваших программ и подумайте об ее улучшении.
  • Если у вас есть хобби (не важно какое, плетение ли корзинок, пчеловодство, сочинение фантастических рассказов, спорт или туризм), объектом вашего исследования можно выбрать веб-сайты, посвященные  вашему увлечению. 
  • Если вы молодая мама, рассмотрите тему создания сайта для домохозяек в вашем городе на темы: совместные покупки, подработка в отпуске, срочная помощь, обмен вещами и т.п. Годится не только отдельный сайт, но и создание групп в социальных сетях и способы их раскрутки. 
  • Если вы никогда не работали и ничем не увлекаетесь, то превратите в дипломную работу самый последний курсовой проект.

Бывает, чтобы сменить или расширить сферу знаний или просто из соображений доступности магистрант продолжает учиться после бакалавриата по другой специальности. Например, преподаватель информатики решает переквалифицироваться в программиста и поступает на «Прикладную информатику».
 Старая специальность может мешать взглянуть на объект исследования с другой стороны: магистрант должен выбрать предметом исследования не педагогические методы (они используются в обучении), а методы информатики (они используются при разработке новых информационных систем и технологий). Отличается и научный стиль текстов в гуманитарных и прикладных науках: необходимо тщательно «отжимать воду», которой наполнены большинство экономических и педагогических трактатов, удерживать себя от желания писать общеизвестные истины, нельзя детально описывать общепринятые среди специалистов вашей сферы методы и модели, надо стараться излагать мысли не столько «красиво» или "заумно", сколько лаконично, логично, без противоречий.
Однако, прежняя специализация может и помочь магистранту информатики, если его проект будет использоваться в знакомой сфере трудовой деятельности: ему легче описать информационные потребности пользователей и актуальные для них задачи. Итак, при смене специальности вас ждут как трудности адаптации в новой сфере, так и «плюшки» большей широты взгляда по сравнению с другими студентами.
Это касается и тех, кто работает в одной сфере, а получает образование по другой: ваш опыт практической деятельности в любой сфере поможет вам, если тема диплома связана с вашей работой.

Вторая проблема связана с выбором средств разработки ПО. Можно ли использовать не знакомые для вас инструменты разработки?   Ответ:

  • нельзя, если вы намерены уложиться в 1-3 месяца, так как целый месяц уйдет только на то, чтобы разобраться с новым инструментом: изучить новый фреймворк, язык или среду программирования, средство моделирования. А ведь нужно и начать думать в терминах нового инструмента.
  • можно, если у вас в запасе целый год
Итак, предпочитайте инструменты разработки, которые вы уже использовали раньше. 

Надо ли знать иностранные языки?

В программу высшего образования любой степени входит иностранный язык, но насколько он нужен ИТ-специалисту непосредственно при подготовке дипломной работы?
Ответ: вы должны знать английский язык на уровне чтения и понимания «Помощи» при использовании инструментов разработки; вы должны быстро понимать содержание статей по специальности, хотя бы с помощью онлайн-переводчика.

Особенность ИТ-индустрии состоит в том, что чаще всего инструменты разработки (программные среды, CMS, веб-сервисы, программы для моделирования, СУБД) используются «в оригинале», то есть имеют англоязычный интерфейс. Конечно, есть исключения, которые лишь подтверждают общее правило.
Невозможно уложиться в разумные сроки разработки, если каждый пункт меню вам надо переводить со словарем. Выучите 100 самых нужных ИТ-терминов по-английски (выпишите их на листочки крупными буквами, развесьте по своей комнате, на кухне и в туалете, чтобы глазами постоянно натыкаться на эти слова, повторяйте их вслух при каждой возможности. Через неделю вы их запомните, но листочки не снимайте).

Новости ИТ публикуются, как правило, сначала по-английски. Поэтому в магистерской диссертации, где вы должны рассмотреть самые свежие публикации по своей теме, без знания иностранного языка вы не сможете изучить всю необходимую литературу. Если вы в состоянии читать только русскоязычные статьи и переводы, то выбирайте тему из классических и инструменты – из локализованных, не трогая самые «горячие и модные» темы ИТ-индустрии.

Читателям

Студенты, которым не нужна эта книга Эта книга не для тех, кто хочет списать.  Их цель – не знания и саморазвитие, а бумажка для показ...