Дипломная работа по программированию на заказ
Содержание:
- Специалисты с темным прошлым и светлым будущим
- 3.7 Модуль защиты с привязкой к аппаратной части компьютера.
- Быть, а не казаться
- 4.1 Отладка
- 4.7 Расчет себестоимости разработки методики
- 4.2 Тестирование
- Как выбирать темы курсовых по программированию
- Почему курсы не заменят высшее образование
- 1.1 Описание программы
- 4.14 Движение денежных средств
- 4.6 Порядок проектирования системы
Специалисты с темным прошлым и светлым будущим
Среди сотни разработчиков, работающих у нас в компании, есть люди с классическим вузовским образованием, есть сотрудники с неоконченным высшим, есть выпускники технических колледжей, а есть более нестандартные случаи — как раз те самые самоучки.
Например, Алексей — один из наших самых продвинутых фулстек-разработчиков, работающий в компании уже шесть лет. В свое время он выучился в колледже на автомеханика, потом закончил педагогический институт, стал дипломированным учителем физики, но в школу работать не пошел — начал увлекаться программированием. Поработал какое-то время в небольшой компании, а потом попал к нам.
Другой наш разработчик, Андрей, учился в вузе на технической специальности, но был отчислен после первого семестра. Сменил несколько работ, даже «Газель» одно время водил. Потом друг показал ему программирование, и его затянуло.
Из образования у него по факту только школа, и ему иногда бывает сложно без специализированных знаний, например, без высшей математики. Но помогает характер — любознательный, въедливый, усидчивый, последовательный.
После семинара в офисе MediaSoft. Фото: архив компании
Однажды к нам пришла довольно нетривиальная задача — сделать веб-сервис, который бы взаимодействовал с пользователями в реальном времени, поддерживая сотни тысяч подключений одновременно.
Клиент предлагал реализовать проект на языке PHP, но Андрей почувствовал, что здесь нужна другая технология, и не побоялся этим заняться. Быстро изучил лучшие практики для задач этого типа, развернул несколько тестовых образцов и в итоге выбрал язык Erlang. Время показало, что это был правильный выбор, заказчик оценил нашу рекомендацию.
Вообще далеко не все выпускники вузов способны к работе по специальности, и это справедливо не только для IT. В каждом институте, на каждом курсе есть так называемые «пассажиры», которые учатся средне и к профессии большого интереса не испытывают. Когда я учился (Ульяновский государственный технический университет, кафедра «Вычислительная техника»), на нашем потоке таких было около 30%.
Учиться на программиста они идут по разным причинам: некоторых привлекает престиж профессии, других заставляют родители, но даже красный диплом не сделает человека первоклассным разработчиком, если он сам этого не хочет.
3.7 Модуль защиты с привязкой к аппаратной части компьютера.
Для защиты программы была создан модуль для, безопасности
программы, баз данных. Было сделано следующие: При копировании программы
автоматически устанавливается Демо-версия программы, имеющая ограниченный срок
работы. Для установки зарегистрированной версии программы Создан модуль
регистрация.
Регистрация часть 1
При регистрации программы выдаётся регистрационный файл
несущий зашифрованную информацию о компьютере, этот файл отправляется службы
поддержки программы. И создаёт файлы Reg 1, Reg
2. Специальная программа Генератор ключей при введении полученного файла,
выдаёт файл ключ регистрации. Чтобы зарегистрировать программу выберите пункт
Лицензия, начать регистрацию появится окошко, программа регистраций нажимаем
начать регистрацию смотри,рис. 36, рис.
37, рис.
38
рис. 36- “Регистрация программы”
Далее появится окошко, где надо будет ввести всю о вас
информацию, последовательно заполните все поля смотри,
рис. 37- “Заполните последовательно все поля”
Далее появится окошко. Создан файл registr.stbнеобходимо
его отправить на почту смотри рис.
38
рис. 38-“ Создан
файл registr.stb”
Регистрация часть 2
Далее открываем программу GenReg, туда копируем register.stbтам,
выбираем файл,Project1 появляется
окошко, Программа генератор регистраций,“Дале” вводим пароль и ok
смотри рис.
39, рис.
40
рис. 39- ”Программа генератор регистраций”
Далее заходим в пункт Создать ключ регистрации выбрать из
списка registr.stbи
открыть. Далее появиться окно Project1 и сказано сто был создан файл ключ для
регистрации программы reg.cfg, и okи появится
код определяющий код процессора смотри, рис.
40
рис. 40- “Создан
файл ключ для регистрации программы reg.cfg”
Далее укажите путь к файлу ключ
регистраций reg.cfgили
скопируйте его в папку genregи нажмите ok.Далее
появится пункт открыть, в нём находим присланный от администратора, Ключ reg.cfg ,нажимаем открыть. Появится окно что
программа успешно зарегистрирована. Смотри рис.
41, рис.
42, рис.
43
рис. 41” Укажите путь к файлу ключ регистраций reg.cfg”
рис. 42- “Пункт
открыть”
рис. 43- ” Программа успешно зарегистрирована”
Далее можно посмотреть статус программы, убедится, что
программа зарегистрирована, смотри рис.
44
рис. 44- ” Программа зарегистрирована”
Пользователь, получив файл, ключ регистрации выполняет
окончательную регистрацию, файл ключ регистрации помещается в каталог Windows. При старте программа
читает данные из файла ключ регистраций, в, котором находятся данные о
системных параметрах, сравнивает с определенными автоматически системными параметрами.
И еслиданные сходятся, запускают
программу. Если не сможете зарегистрироваться то можно пользоваться
Демо-версией программы, работает она ограниченно. Когда истечёт срок
ограничения, программа выдаст сообщение программа, не зарегистрирована срок
программы истек, смотри рис.
45
рис. 45- “ Незарегистрированная срок программы истек ”
Быть, а не казаться
На примере самоучек хорошо видно, что для развития в профессии большое значение имеют природные склонности. Я бы выделил четыре основных качества, которые должны быть у человека, желающего стать разработчиком, и которые ему следует развивать с самого начала и в течение всей жизни.
Абстрактное мышление
Программист постоянно имеет дело с абстракциями — отвлеченными понятиями, не имеющими прямых аналогов в реальном мире. Построение правильных логических структур, сложная классификация объектов — все это требует хорошо развитого абстрактного мышления.
Признаки того, что у вас больше развито абстрактное, а не конкретное мышление:
- вы чаще думаете об идеях и допущениях, чем о реально существующих вещах и данностях;
- узнавая новые факты, вы задумываетесь об их скрытом смысле и взаимосвязях с другими фактами;
- вам проще и интереснее запоминать шаблоны и взаимосвязи, чем разрозненные конкретные факты.
Алгоритмическое мышление
Это способность планировать свои действия на несколько шагов вперед, предвидеть результаты и декомпозировать большие задачи на отдельные стадии. Это качество хорошо развивают шахматы и другие виды деятельности, требующие построения стратегий.
Чемпион мира по шахматам Анатолий Карпов в MediaSoft. Фото: архив компании
Коммуникабельность
Даже небольшие проекты, как правило, не делаются в одиночку, поэтому разработчику необходимо уметь работать в команде: учитывать не только свои, но и чужие действия, объективно оценивать и принимать чужие идеи, не бояться попросить помощи.
Мы предпочитаем формировать команду из интровертов и на практике убеждаемся, что люди этого типа умеют общаться крайне эффективно: максимально точно формулируют вопросы, в ответах избегают двусмысленностей и лишней информации.
Описывая суть вопроса, интроверты как бы ставят себя на место другого человека, чтобы он точно понял, о чем ему говорят. Это позволяет потом долго не общаться, отчего производственный процесс всегда очень выигрывает.
Усидчивость
Квалификация разработчика зависит не только от знаний, но и от внимательности, аккуратности, умения доводить дело до конца. Неряшливый код, даже если он работает, влечет за собой более дорогие и сложные процессы поддержки и контроля. Чтобы компенсировать невнимательность разработчиков, компании вынуждены проводить обширное тестирование, код-ревью, усложнять организацию рабочих процессов.
4.1 Отладка
В современных программных системах отладка осуществляется часто с
использованием специальных программных
средств, называемых отладчиками. Эти средства позволяют исследовать внутреннее поведение программы.
Программа-отладчик
обычно обеспечивает следующие возможности:
¾пошаговое исполнение программы с остановкой
после каждой команды или оператора;
¾просмотр текущего значения любой переменной или
нахождение значения любого выражения, в том числе, с использованием стандартных
функций; при необходимости можно установить новое значение переменной;
¾установку в программе «контрольных
точек», т.е. точек, в которых программа временно прекращает свое выполнение, так что можно оценить промежуточные
результаты, и др.
¾При отладке программ важно помнить следующее:
¾в начале процесса отладки надо использовать
простые тестовые данные;
¾возникающие затруднения следует четко разделять
и устранять строго поочередно;
¾не нужно считать причиной ошибок машину, так как
современные машины и трансляторы обладают чрезвычайно высокой надежностью.
Отладка и тестирование в программе Delphi 3.0 происходит автоматически при разработке базы данных.. Программа поддерживаетОперационные системы windowsxp,wndows 2000 , 98 , 95 . Программане тестировалась в ОС vista.
Есть в программе ошибкапри сохранении
кого-нибудь результата, программа автоматически закрывается. Тест показал, что
программа таким способомсохраняет
изменения. При напсании программы генератор регистраций использовался язык высокого
уровняассемблер.Чтобы программа
регистрировалась , программа опредиляет код процессора без нево прогамма
регистраций неработает , тест показал программа прошла тестирования отлчно.
4.7 Расчет себестоимости разработки методики
В себестоимость разработки автоматизированной информационной системы входят следующие статьи затрат:
- основная заработная плата;
- дополнительная заработная плата;
- отчисления на социальное страхование;
- прочие расходы;
- Разработку системы проводят два специалиста: инженер-экономист и программист.
Зарплата инженера-экономиста составляет 80 руб/час, программиста — 100 руб/час. При этом продолжительность рабочего дня каждого из них составляет 8 часов.
34 стр., 16639 слов
Разработка и внедрение в эксплуатацию автоматизированной информационной …
… автоматизированным информационным системам в страховом секторе. Предмет исследования — автоматизированная система управления Stravita от Stravita RDUSP». Цель работы — проанализировать и оценить эффективность внедрения автоматизированной системы управления «Стравита» и на основании полученных данных разработать предложения по совершенствованию системы и …
Расчет основной заработной платы приведен в таблице 4.1.
Таблица 4.1- Расчет основной заработной платы
Этапы |
Виды работ |
Исполнитель |
Часовая ставка |
Длит. выполнения |
Трудоемкость |
Размер зарплаты, руб |
|
Кол-во |
Должн. |
||||||
1. Начальный |
Формулирование требований к программе, описание целей разработки |
1 |
инженер |
80 |
1 |
1 |
640 |
2. Внешнее проектирование |
Разработка архитектуры и структуры программы, алгоритма разработка интерфейса пользователя |
1 |
инженер |
80 |
2 |
2 |
1280 |
1 |
программист |
100 |
2 |
2 |
1600 |
||
3. Разработка и кодирование компонентов |
Разработка каждого компонента и кодирование на языке программирования |
1 |
программист |
100 |
2 |
2 |
1600 |
4. Основной этап |
Отделка модулей |
1 |
программист |
100 |
1 |
1 |
800 |
Тестирование компонентов |
1 |
программист |
100 |
1 |
1 |
800 |
|
Комплексное тестирование программы |
1 |
программист |
100 |
3 |
3 |
2400 |
|
Оформление программной документации |
1 |
программист |
100 |
1 |
1 |
800 |
|
5. Заключительный этап |
Коррекция программной документации |
1 |
инженер |
80 |
2 |
2 |
1280 |
1 |
программист |
100 |
2 |
2 |
1600 |
||
Итого |
17 |
17 |
12800 |
||||
Дополнительная зарплата (20%) |
2560 |
||||||
Всего |
15360 |
12800*0,2=2560 руб.
К отчислениям на социальное страхование относятся отчисления на оплату перерывов в работе в связи с временной нетрудоспособностью и отчисления в пенсионный фонд. Норматив отчислений на социальное страхование составляет 26,2% от величины основной заработной платы:
12800*0,262=3353,6 руб.
К прочим расходам следует отнести расходы на обслуживание ЭВМ и плату за электроэнергию.
Затраты на электроэнергию рассчитываются исходя из потребляемой мощности устройства и тарифа на электроэнергию. В нашем случае предполагается использование компьютера с мощностью 0,8 кВт час. Стоимость одного кВт часа электроэнергии равна 2,11 руб. Время использования электроэнергии в процессе разработки:
17*8=136 часов
Следовательно, плата за электроэнергию составит:
0,8*2,11*136=229,57 руб.
Расходы на обслуживание ЭВМ определяются из стоимости ЭВМ и времени ее эксплуатации, по истечении которого, она подлежит замене(обычно это время не превышает 3-х лет), в течении года ЭВМ использует 254 рабочих дня. Тогда:
Расчет себестоимости разработки системы представлен в таблице 4.2.
Статьи затрат |
Сумма, руб. |
Основная заработная плата |
12800 |
Дополнительная |
2560 |
Отчисления |
3353,6 |
Расходы на обслуживание ЭВМ |
446 |
Плата за электроэнергию |
229,57 |
Итого: |
19389,17 |
4.2 Тестирование
Программа разработана и выполнена на языке Delphi 3.0 ,была протестирована двумя
способами:
методом автоматического поиска ошибок;
протестирована пользователями.
Метод автоматического поиска ошибок заключён в компиляции кода
программы, т.е. в нахождении ошибок в коде программы. Также она была
протестирована пользователями, т.е. была опробована в реальных условиях.
Отладка программы – это процесс поиска и устранения ошибок в программе,
производимый по результатам её прогона на компьютере.
Тестирование программы – это испытание, проверка правильности работы
программы в целом, либо её составной части.
Следует
четко разделять эти понятия:
отладка служит для обнаружения и
исправления ошибок кода программы;
тестирование служит не для показа правильности работы
программы, а специально для обнаружения ошибок программы не имеющих явных
ошибок.
Тестирование
устанавливает факт наличия ошибок, а отладка выясняет её причину. Тестирование Как бы ни была
тщательно отлажена программа, она скорее всего все равно содержит неявные ошибки, и решающим этапом,
устанавливающим ее пригодность для работы, является контроль программы по результатам ее выполнения на системе
тестов.
Как выбирать темы курсовых по программированию
Программирование — это очень современная дисциплина, которая решает актуальные задачи и применяется уже практически в любой сфере человеческой деятельности. Это значительно расширяет возможности студента при выборе темы курсовой работы: от веб-программирования до использования новых технологий в разработке приложений. Как во всём этом не запутаться? Воспользуйтесь нашим алгоритмом.
Всегда выбирайте тему курсовой, которая интересна лично вам
Определите объект исследования
Выбирать тему курсовой работы, например, из области веб-программирования, и рассматривать её в общем можно, но это не практично. Гораздо эффективнее, если вы определите конкретный объект исследования и будете разрабатывать приложение или программу, которые решают реальную задачу. Что может быть таким объектом:
- коммерческая компания;
- крупное предприятие;
- государственное учреждение;
- финансовые учреждения;
- социальные и общественные организации.
Определите предмет исследования
Подумайте, с какими проблемами сталкивается компания или предприятие и как можно было бы их решить? Возможно, необходимо автоматизировать процессы, разработать удобное приложение или настроить систему отчётности. Выбирайте тот вариант темы курсовой работы по программированию, который связан c реальной проблемой. Так, вы сможете найти действительно интересное и полезное решение.
Определите язык программирования
Темы курсовых работ для языка программирования JavaScript будут отличаться от Java, Python, C#, Pascal и других. Так что делайте свой выбор, ориентируясь в том числе и на инструменты, с помощью которых вы планируете решать задачу.
Используйте курсовую работу для демонстрации навыков владения языком программирования, а также как дополнительную тренировку своих скиллов.
Думайте о будущем
Темы курсовых работ по web-программированию или другим областям информатики нужны не просто для того, чтобы проверить знания студентов. Рефераты, контрольные, курсовые и дипломные — ступеньки к будущей успешной карьере в IT-сфере. Помните об этом и выбирайте тему проекта, результаты которого вы сможете показать в качестве примера в портфолио своему первому работодателю.
Кстати! Для наших читателей сейчас действует скидка 10% на любой вид работы.
Бросьте себе вызов
Выбрали объект, определились с предметом и языком программирования, но реализация практической части курсовой кажется вам слишком сложной? Бросьте себе вызов! Любые трудности, которые возникнут у вас в процессе подготовки проекта, вы можете решить, обратившись к научному руководителю. Это не работа в реальной компании, где неудачный результат разработки может принести финансовые убытки. В университете можно рисковать и пробовать любой сложный проект.
К научному руководителю также стоит обращаться за помощью в выборе актуальных тем курсовых для программистов, если вы не можете принять верное решение. Он не только поделится идеями, но и подскажет, какие методы исследования использовать и как правильно оформить курсовую работу по ГОСТу.
Почему курсы не заменят высшее образование
По своему смыслу и результату курсы сильно отличаются от вузов. Образовательных стандартов здесь как таковых нет, а учебные программы разрабатываются исходя из востребованности у аудитории. Это справедливо как для платных, так и для бесплатных курсов.
Именно поэтому на рынке так много курсов «Как научиться делать типовые сайты за один день» и нет курсов, например, про теорию графов и другие фундаментальные вещи — на них просто никто не придет, потому что они не позволяют сразу начать зарабатывать.
Относительно курсов я бы дал три совета.
Начинать свой путь в программировании с курсов — не лучшая идея
Если вы только начинаете осваивать специальность, сначала лучше найти учебник или видеоуроки и разобраться в основах программирования самостоятельно. В процессе придет понимание очень многих вещей: действительно ли вам это интересно, какие области по-настоящему привлекают. После этого уже можно попробовать подобрать себе более узконаправленные и прикладные курсы.
Разработчики на новогоднем корпоративе. Фото: архив компании
Выбирать курсы нужно не по вывеске, а по содержанию
Качество курсов сильно зависит от уровня преподавателей, поэтому лучше идти туда, где преподают программисты-практики — люди, которые 90% времени работают непосредственно в той предметной области, о которой рассказывают, и имеют актуальные кейсы.
Вуз все-таки предпочтительнее
Если есть возможность пойти в вуз на ИТ-специальность, а не на курсы, лучше выбрать вуз. В будущем это обеспечит более высокую заработную плату (за счет способности решать более сложные задачи, конечно, а не по факту самого диплома) и более легкое освоение нового материала.
Уже работающим программистам — и с дипломом, и без — для повышения квалификации можно посоветовать посещение профильных мероприятий, где разбирают практические кейсы: DevConf, конференцию разработчиков высоконагруженных систем HighLoad++ и некоторые другие.
***
Таким образом, диплом ИТ-вуза для программиста сегодня не обязателен, но все же желателен. Это открывает более широкие карьерные и зарплатные перспективы, облегчает профессиональное развитие и позволяет усиливать компетенции коллег по работе фундаментальными знаниями.
Мы поступаем именно так: подбираем тестовое задание в соответствии с уровнем кандидата, а потом просим подробно рассказать, как он его выполнял. Это позволяет увидеть главное: тип мышления, внимательность, степень вовлеченности в профессию.
Спасибо за внимание и успехов в карьере!
Материалы по теме:
1.1 Описание программы
§Программа
разрабатывается в объектно-визуальной среде программирования Delphi с использованием десяти визуальных компонентов
программирования. Программа предназначена для тестирования и контроля знаний
студентов. В своей работе программа использует файлы баз данных. В процессе
работы программы Учётные записи студентов, а так же результаты тестирования
сохраняются в этих файлах;
§Программа будит
запускаться и работать как с локального компьютера для тестирования одного
студента, а так же работать в сетевом режиме для тестирования одновременно
нескольких студентов по локальной сети;
Краткое описание принципа работы программы “Studbas”;
§Администратор
заходит в меню Администрирование Рис.
1. При входе запрашивается пароль администратора,
Администратор может создать либо изменить учётную запись для студента, а так же
внести изменения в журнал оценок. Войдя в меню “Создать-Удалить учётную
запись“. Заполняются поля формы. В ней (ФИО, Гр, пароль, порядковый номер).
Информация добавляется в файл базы uchtzap.dat.
Рис. 1 – “Ввод пароля Администратор”
Студент перед началом работы выбирает опцию меню
«Регистрация». Находит в свою группу, выбирает тест и нажимает ok.
Рис. 2 – “окошко Регистрация”
После успешной регистрации открывается доступ к опции.
Пройти тест (пункт). Появляется список тестов в папках. После выбора теста
открывается форма, в которой находится вопрос 4 варианта ответа. После
прохождения теста. Объявляется количество правильных ответов и появляется
оценка за тест. Отчёт записывается в файл базы данных testzach.dat.
Рис. 3 – “Начать тест”
После прохождения теста войдя в меню «Отчёт»Рис. 4, можно узнать количество набранных балов,
неправильных ответов, полученную оценку за тестирование. Администратор может
удалить учётную запись студента, войдя в меню Администрирования ->Удалить
учётную запись. При этом в файлах баз uchtzap.dat, testzach.dat по данному студенту в запись статус,
статус2 устанавливается значение 1 Подобный отчёт по конкретному прохождению
теста записывается в папку «Ответы», находящемуся на сервере.
Рис. 4 – “Отчёт”
4.14 Движение денежных средств
Таблица 4.8-Движение денежных средств
Наименование |
Годы |
Всего |
||||
2009 |
2010 |
2011 |
2012 |
2013 |
||
Единовременные затраты |
470,95 |
470,95 |
||||
Операционная деятельность |
3555,77 |
3555,77 |
3555,77 |
3555,77 |
14223,08 |
|
Экономия затрат |
4762,36 |
4762,36 |
4762,36 |
4762,36 |
19049,44 |
|
Текущие расходы |
83,72 |
83,72 |
83,72 |
83,72 |
334,88 |
|
Налог на прибыль |
1122,87 |
1122,87 |
1122,87 |
1122,87 |
4491,48 |
|
Сальдо поступлений и расходов |
3555,77 |
3555,77 |
3555,77 |
3555,77 |
Проект реализуем |
|
Чистый доход |
-470,95 |
3555,77 |
3555,77 |
3555,77 |
3555,77 |
13752,13 |
Коэффициент дисконтирования (при ставке 20%) |
1 |
0,81 |
0,65 |
0,52 |
0,42 |
|
Чистый дисконтированный доход |
-470,95 |
2880,17 |
2311,25 |
1849 |
1493,42 |
8062,89 |
Чистый дисконтированный доход нарастающим итогом |
-470,95 |
2409,22 |
4720,47 |
6569,47 |
8062,89 |
21291,1 |
4.6 Порядок проектирования системы
В общем случае разработка информационной системы включает в себя следующие этапы:
-
Начальный этап – на котором формулируются основные требования, предъявляемые к программе, описываются основные цели и разрабатываются спецификации, т.е. выявляются основные свойства и характеризующие их показатели.
-
Этап внешнего проектирования – где необходимо разработать архитектуру и структуру программы, определить алгоритм решения, выявить подсистемы и отдельные составляющие их модули, а также разработать внешний интерфейс пользователя.
-
Этап проектирования и кодирования компонентов – в ходе выполнения данного этапа происходит проектирование и кодирование на выбранном языке программирования отдельных модулей системы.
-
Основной этап – является наиболее трудоемким. Необходимо произвести отладку и тестирование отдельных программных модулей, затем – комплексную отладку всей программы в целом.
-
Заключительный этап – здесь проводится окончательная коррекция программы и подготавливается необходимая сопроводительная документация.