Пример готовой дипломной работы по предмету: Информационные технологии
Содержание
ОГЛАВЛЕНИЕ
Введение 4
Глава
1. Анализ автоматизированных информационных систем сетевого программного обеспечения 9
1.1. Основные понятия и термины 9
1.2. Архитектура АИС 10
1.2.1. Требования к архитектуре АИС 10
1.2.2. Основные архитектурные стили 12
1.2.2.1. Клиент-сервер 12
1.2.2.2. Многоуровневая архитектура 13
1.2.2.3. Компонентно-ориентированная архитектура 14
1.2.2.4. Объектно-ориентированная архитектура 15
1.2.2.5. Проблемно-ориентированный дизайн 16
1.2.2.6. Слоистая архитектура 17
1.2.2.7. Шина сообщений 18
1.2.2.8. Сервисно-ориентированная архитектура 18
1.3. Межмодульная коммуникация 19
1.3. Основные этапы и подходы к разработке АИС 19
1.3.1. Этапы разработки программного продукта 19
1.3.2. Методологии разработки программного обеспечения 20
1.3.2.1 Каскадная модель 21
1.3.2.2 Инкрементная модель 23
1.3.2.3 Спиральная модель 24
Глава
2. Проектирование автоматизированной системы сетевого программного обеспечения интегрированного анализа профиля пользователя социальной сети Вконтакте 27
2.1. Протокол авторизации OAuth 2.0 27
2.2. Взаимодействие с API социальной сети ВКонтакте 29
2.3. Анализ задачи и моделирование системы 34
2.4. Разработка алгоритма анализа профиля пользователя 43
Глава
3. Разработка автоматизированной системы сетевого программного обеспечения интегрированного анализа профиля пользователя социальной сети Вконтакте 48
3.1. Общая архитектура программной системы 48
3.2. Модуль авторизации и работы с API социальной сети 49
3.3. Модуль анализа профиля пользователя 56
3.4. Тестирование программы 64
3.5. Перспективы развития программной системы 65
Заключение 67
Список использованной литературы 70
Приложение А Техническое задание на разработку автоматизированной информационной системы интегрированного анализа профиля пользователя социально сети ВКонтакте 74
Приложение Б Руководство пользователя программы ВК Инспектор 78
Выдержка из текста
ВВЕДЕНИЕ
Постоянно развивающиеся компьютерные технологии открывают огромные возможности для науки, техники и прогресса. Великое множество предметов, которыми пользуется современный человек, являются плодом информационных технологий. Даже вещи, имеющие лишь отдаленное отношение к электронике, собираются на заводах с помощью электронно-механических устройств.
Одна из ключевых целей прогресса – автоматизация различных рутинных процессов. За прошедшие годы появилось множество электронной техники, которая в автоматическом или полуавтоматическом режиме выполняет бытовые задачи: стиральные машины, мультиварки, роботы-пылесосы и т.п. Всеми этими задачами люди раньше занимались вручную, затрачивая много сил и времени. Благодаря автоматизированным задачам, у людей стало намного больше свободного времени.
Высокую актуальность имеет и автоматизация различных бизнес задач: документооборот, производство, управление, аналитика и др. Автоматизация данных задач напрямую влияет на эффективность бизнеса, а, значит, и на прямую прибыль.
Так же, среди современных ресурсов, информация играет ключевую роль, и, порой, имеет наивысшую ценность. С помощью информации можно получить неоспоримое преимущество. Так, например, имея представление об интересах и нуждах покупателя, продавец может более эффективно осуществлять торговлю.
Таким образом, информация является очень ценным ресурсом. Тем не менее, не вся информация представляет материальную или практическую ценность. Зачастую, для того, чтобы получить ценную информацию, необходимо обработать целый массив данных, которые, сами по себе, не представляют никакого интереса. Для преобразования одного вида информации в другой, существуют программно-технические средства, называемые информационными системами, а так же автоматизированные информационные системы, работающие в автономном режиме.
Глобальная сеть Интернет предоставляет еще большие возможности для автоматизации. Автоматизированные информационные системы сетевого программного обеспечения (АИССПО) используют возможности сети Интернет для множества целей, в том числе и для коммуникации с другими системами. Взаимодействие нескольких информационных систем посредством сети позволяет решать более сложные задачи.
Благодаря глобализации сети Интернет и использованию современных технологий, появились сервисы, называемые социальными сетями. Они призваны для осуществления социальных функций между людьми посредством глобальной сети, и являются сложнейшей АИССПО.
Социальные сети имеют колоссальную популярность. Общество все глубже интегрируется в социальные сети, и, на настоящий момент, все сложнее найти человека, у которого нет профиля хотя бы в одной социальной сети. В связи с этим наблюдается тенденция социализации рынка программного обеспечения, ведь социальные сети дают множество уникальных возможностей для бизнеса.
Сами социальные сети представляют собой огромную цифровую площадку, предоставляющую огромное количество функций для пользователей: от моментального обмена сообщениями, до хранения и обмена медиа-контентом. Социальные сети стали для людей естественной частью жизни: это и СМИ, и дневник, и ежедневник, и фотоальбом и даже музыкальный проигрыватель. Если ко всему вышеперечисленному присовокупить функции интеграции социальных сетей с другими приложениями, то становится очевидным, что для людей социальный профиль практически становится равноценным паспорту гражданина, но действующим на территории Интернета.
Фактически, социальные сети являются гигантской базой личных данных пользователя. Немало этих данных находится в открытом доступе. К остальным пользователь может ограничить доступ. Так или иначе, эти данные могут представлять большую ценность, и, при должном анализе, дать большое преимущество их обладателю.
Например, социальные сети предоставляют возможности для размещения контекстной рекламы, то есть рекламы, которая ориентирована на определенные сегменты пользователей, классифицированные по контексту. Контекстная реклама гораздо эффективнее обычной, так как ориентирована именно на целевого потребителя.
Разумеется, для рекламной площадки, предоставляемой социальными сетями, используются личные данные пользователей, которые недоступны сторонним лицам. Тем не менее, социальные сети предоставляют возможность для получения доступной информации, открытой пользователями. Эта возможность может быть эффективно использована с помощью АИССПО.
Функция интеграции внешних приложений с социальными сетями возможна благодаря особому протоколу авторизации OAuth. Данная функция позволяет однозначно идентифицировать пользователя в приложении, при этом делегирую саму задачу авторизации на социальную сеть. Это позволяет не хранить личные данные пользователей на своей стороне, а, следовательно, не беспокоиться об их безопасности. Так же авторизация с помощью социальной сети для пользователя происходит абсолютно прозрачно. Пользователь знает, какие данные будут доступны внешнему приложению, так как сам дает необходимые разрешения.
Весь этот механизм доступен практически в один клик для пользователя, что, несомненно, намного удобнее привычной регистрации по логину и паролю. Таким образом, пользователь может использовать один аккаунт в социальной сети для авторизации во многих приложениях и сервисах. Учитывая высокую ценность данных пользователей для бизнеса, данная работа на тему: “Автоматизированная система сетевого программного обеспечения интегрированного анализа профиля пользователя социальной сети ВКонтакте” имеет особую актуальность.
Объект исследования данной работы: информационная система сетевого программного обеспечения интегрированного анализа профиля пользователя социальной сети. Предмет исследования: автоматизация информационной системы сетевого программного обеспечения интегрированного анализа профиля пользователя социальной сети ВКонтакте.
Цель данной работы: автоматизировать процесс анализа профиля социальная сети ВКонтакте посредством интеграции с интерфейсом программирования приложений (Aplication Programming Interface, API) социальной сети. В рамках поставленной цели необходимо решить следующие задачи:
• рассмотреть основные понятия и термины по теме «Автоматизированные информационные системы сетевого программного обеспечения»
• рассмотреть основные понятия и термины по теме «Архитектура программных систем»
• систематизировать требования к архитектуре программных систем
• рассмотреть основные архитектурные стили и модели программирования
• выделить основные этапы разработки программного обеспечения
• рассмотреть основные методологии разработки программного обеспечения
• изучить протокол авторизации, применяемый в социальных сетях
• изучить протокол взаимодействия с API социальных сетей
• разработать алгоритм анализа профиля пользователя социальной сети ВКонтакте
• разработать модуль для авторизации в социальной сети ВКонтакте
• разработать АИССПО для интегрированного анализа профиля пользователя социальной сети ВКонтакте
Данная работа состоит из трех глав. В первой главе проводится анализ АИССПО. Во второй главе описывается проектирование АИССПО интегрированного анализа профиля пользователя социальной сети ВКонтакте. В третьей главе описана разработка АИССПО интегрированного анализа профиля пользователя социальной сети ВКонтакте.
При написании курсовой работы использованы труды следующих авторов: Джосаттис Н.М.[4], Ашарина И.В.[2], Парабеллум А.[14], Spasovsky M.[11], Matthew A. Russel[28]
и др.
Список использованной литературы
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
Источники на русском языке
1. Анашкина Н.В. Технологии и методы программирования: Учебное пособие. М.: Академия, 2012. — 384 с.
2. Ашарина И.В. Объектно-ориентированное программирование в С++: лекции и упражнения. Учебное пособие для вузов. М.: Горячая линия — Телеком, 2015. — 336 с.
3. Гербер Р., Бик А., Смит К., Тиан К. Оптимизация ПО. Сборник рецептов. СПб.: Питер, 2011. — 352 с.
4. Джосаттис Н. М. Стандартная библиотека C++. Справочное руководство. М.: Вильямс, 2011. — 1136 с.
5. Дьюхерст С. C++. Священные знания. М.: Символ-Плюс, 2012. — 240 с.
6. Канцедал С.А. Алгоритмизация и программирование: Учебное пособие. М.: Форум: Инфра-М, 2014. — 352 с.
7. Клиффорд Ш., Рональд Л. Р., Томас Х. К., Чарльз И. Л. Алгоритмы: построение и анализ. М.: Вильямс, 2015. — 1328 с.
8. Кнут Д.Э. Искусство программирования. Том
1. Основные алгоритмы. М.: Вильямс, 2015. — 720 с.
9. Коберн А. Быстрая разработка программного обеспечения. М.: Лори, 2013. — 336 с.
10. Макконелл Дж. Мир программирования. Анализ алгоритмов. Активный обучающий подход. М.: Техносфера, 2013. — 416 с.
11. Макконелл С. Совершенный код. СПб.: Русская редакция, 2014. — 896 с.
12. Марманис Х., Бабенко Д. Алгоритмы интеллектуального Интернета. М.: Символ-Плюс, 2011. — 480 с.
13. Мейерс С. Эффективный и современный С++. 42 рекомендации по использованию C++11 и C++14. М.: Вильямс, 2015. — 304 с.
14. Парабеллум А., Мрочковский Н., Калаев В. Социальные сети. Источники новых клиентов для бизнеса. СПб: Питер, 2013. — 176 с.
15. Седжвик Р. Алгоритмы на C++. Фундаментальные алгоритмы и структуры данных. М.: Вильямс, 2011. — 1056 с.
16. Сергиевский Г.М., Волченков Н.Г. Функциональное и логическое программирование. М: Академия, 2011. — 320 с
17. Сошников Д.В. Функциональное программирование на языке F#. М.: ДМК Пресс, 2011. — 192 с.
18. Терехов А.Н. Технология программирования. Учебное пособие. М.: Бином, 2014. — 152 с.
19. Флэнаган Д. JavaScript. Подробное руководство. М.: Символ-Плюс, 2012. — 1080 с.
20. Хабибуллин И.Ш. Самоучитель XML. СПб.: БХВ-Петербург, 2014.
- 336 с.
21. Халилов Д. Маркетинг в социальных сетях. М.: МИФ, 2013. — 240 с.
22. Эванс Э. Предметно-ориентированное программирование (DDD): структуризация сложных программных систем. М.: Вильямс, 2011.
- 448 с.
Источники на иностранном языке
23. Boyd R. Getting Started with OAuth 2.0. O’Reilly Media, 2012. – 67 p.
24. Charu C. Aggarwal. Social Network Data Analytics. Springer. 2011. — 499 p.
25. Daigneau R. Service Design Patterns. Addison-Wesley, 2012. — 323 p.
26. Dooley J. Software Development and Professional Practice. Apress, 2012. — 242 p.
27. Ezust A., Ezust P. An introduction to design patterns in C++ with QT 2nd ed. Prentice Hall 2012. — 734 p.
28. Matthew A. Russel. Mining the Social Web. O’Reilly Media, 2011. – 333 p.
29. Molkentin D. The Book of Qt 4: The Art of Building Qt Applications. Open Source Press GmbH, 2011. — 440 p.
30. Jiawei Han, Micheline Kamber. Data Mining: Concepts and Techniques. Morgan Kaufmann Publishers, 2011. — 703 p.
31. Reza Zafarani, Mohammad Ali Abbasi, Huan Liu. Social Media Mining. Cambridge University Press, 2014. – 382 p.
32. Richardson L., Amundsen M. RESTful Web APIs. O’Reilly Media, 2013. – 372 p.
33. Spasovsky M. OAuth 2.0 Identity and Access Management Patterns. Packt Publishing, 2013. – 129 p.
34. Summerfield M. Advanced Qt programming: creating great software with C++ and Qt 4. Addison-Wesley, 2011. — 536 p.
35. Tsvetovat M., Kouznetsov A.. Social Network Analysis for Startups. O’Reilly Media, 2011. – 175 p.
Электронные ресурсы
36. Документация // VK Developers. [Электронный ресурс].
URL: http://vk.com/dev/methods (дата обращения: 28.01.2016)
37. Основные понятия информатики // Основы информатики. [Электронный ресурс].
URL: http://computer-lectures.ru/ (дата обращения: 28.01.2016)
38. Features // The GTK+ Project. [Электронный ресурс].
URL: http://www.gtk.org/features.php (дата обращения 28.01.2016)
39. Overview // wxWidgets. [Электронный ресурс].
URL: https://www.wxwidgets.org/about/ (дата обращения 28.01.2016)
40. Qt Reference Pages // Qt. [Электронный ресурс].
URL: http://doc.qt.io/qt-5/reference-overview.html (дата обращения 28.01.2016)
41. Service-oriented architecture // Wikipedia. [Электронный ресурс].
URL: https://en.wikipedia.org/wiki/Service-oriented_architecture (дата обращения: 28.01.2016)
42. Social network // Wikipedia [Электронный ресурс].
URL: https://en.wikipedia.org/wiki/Social_network (дата обращения: 28.01.2016)
43. Representational state transfer. // Wikipedia. [Электронный ресурс].
URL: https://en.wikipedia.org/wiki/Representational_state_transfer (дата обращения: 28.01.2016)