Программное средство по обмену услугами для владельцев собак

Разработка приложения по обмену услугами для владельцев собак. Создание личного кабинета с персональными данными. Редактирование: личных данных, объявления, питомца. Алгоритм редактирования и удаления объявления. Тестирование данного программного средства

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 14.10.2016
Размер файла 2,8 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

К ДИПЛОМНОМУ ПРОЕКТУ

НА ТЕМУ:

«Программное средство по обмену услугами для владельцев собак»

Содержание

  • Введение
  • 1. Аналитический обзор и постановка задачи
  • 2. Методы и модели, положенные в основу проекта
    • 2.1 Задание критериев отбора объявлений по фильтрам
    • 2.2 Редактирование личных данных (авторизированный пользователь)
    • 2.3 Редактирование объявления (авторизированный пользователь)
    • 2.4 Редактирование питомца (авторизированный пользователь)
    • 2.5 Создание нового объявления (авторизированный пользователь)
    • 2.6 Добавление нового питомца (авторизированный пользователь)
    • 2.7 Отправка личного сообщения пользователю
    • 2.8 Добавление комментария объявлению (авторизированный пользователь)
  • 3. Разработка проекта программного обеспечения
    • 3.1 Анализ предметной области и разработка требований
    • 3.2 Разработка схемы ресурсов системы
    • 3.3 Разработка схемы работы системы
    • 3.4 Разработка проекта базы данных
    • 3.5 Разработка структуры классов
  • 4. Разработка алгоритмов и их программная реализация
    • 4.1 Алгоритм редактирования и удаления объявления
    • 4.2 Алгоритм редактирования и удаления питомца
    • 4.3 Алгоритм сохранения фотографий
    • 4.4 Алгоритм отображения списков диалогов
    • 4.5 Алгоритм подбора объявлений
    • 5. Тестирование программного средства
  • Заключение
  • Список использованных источников
  • Приложения
  • Введение
  • В жизни современного человека домашние питомцы играют огромную роль. Для одних - это способ расслабиться и отвлечься от повседневных забот, хлопот и переживаний, для других домашние животные - это настоящие равноправные члены семьи, а третьи считают, что помимо эстетического и морального удовольствия братья наши меньшие приносят вполне реальную пользу для здоровья.

Все мы знаем такую поговорку: Собака друг человека. И это действительно так. Собака всегда верой и правдой искренне служит человеку, не требуя ничего взамен. Люди же, в свою очередь, заботятся о хвостатых, обеспечивая им достойную жизнь.

Многообразие пород собак говорит о неугасающем интересе человека к этим домашним питомцам. Породы отличают собак по характеру, нравам, эстетическим и эмоциональным характеристикам и позволяют человеку выбрать любимца по конкретным параметрам поведения, внешнего вида и пр. Культура собаководчества в нашей стране развивается с каждым годом и уже вплотную приблизилась к культуре в развитых странах.

Как и любое живое существо, собаки требуют к себе внимания и ухода. От различных аксессуаров (ошейники, поводки, гигиенические средства, корм) до лечения, дрессировки и выгула. Поиск подходящего партнера для вязки порой является непростым занятием.

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

Целью дипломного проекта является систематизация всех необходимых услуг, в которых могут нуждаться владельцы собак. Для достижения этой цели приложение позволяет пользователям создавать свой личный кабинет с персональными данными о себе, в котором для владельцев собак предусмотрено создание питомцев с добавлением их фотографий и подробным описанием. Кроме того можно публиковать объявления в различного рода рубрики.

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

1. Аналитический обзор и постановка задачи

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

При поиске и анализе существующих ресурсов полных аналогов разрабатываемому приложению не было найдено. Поэтому для сравнения ресурсов выделим два блока: блок объявлений с фильтрами поиска, отзывами, рейтингом и блок работы с личным кабинетом, реализующим работу с персональными данными, питомцами, общение между пользователями.

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

Поэтому для сравнения блока объявлений разрабатываемой системы с частичными аналогами выделим ряд критериев оценки:

а) визуализация объявлений карте;

б) возможность подбора объявлений по специализированным для животных критериям (порода, вид и т.д.);

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

г) возможность подбора объявлений по стоимости;

д) возможность просмотра подробной информации об объявлении;

е) возможность связи с владельцем объявления;

ж) наличие отзывов и оценок;

з) возможность сортировки объявлений по различным критериям (по рейтингу, стоимости услуг и т.п.).

Для сравнения блока с личным кабинетом, реализующим работу с персональными данными, питомцами, общение между пользователями разрабатываемой системы с частичными аналогами выделим следующие критерии оценки:

а) возможность создавать анкету пользователя с личной информацией;

б) возможность создавать анкеты питомцев;

в) возможность просмотра подробной информации о пользователе-владельце питомца;

г) возможность связи с пользователем через отправку личных сообщений;

д) организация поиска среди всех пользователей сайта;

е) организация поиска среди всех питомцев сайта;

ж) добавление других пользователей в друзья.

Для сравнения и анализа блока объявлений примем портал Cenotavr (http://cenotavr.by/) и Petonik (http://petonik.com/). Сравнительная информация ресурсов приведена в Таблице 1.

Для сравнения блока с личным кабинетом, реализующим работу с персональными данными, питомцами, общение между пользователями примем Petonik (http://petonik.com/) и Paws (http://paws.pro/). Сравнительная информация ресурсов приведена в Таблице 2.

Портал Cenotavr (http://cenotavr.by/) - портал бесплатных объявлений различных категорий, который содержит раздел объявлений «Домашние животные».

Рисунок 1 - Главная страница портала cenotavr.by

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

Рисунок 2 - Страница поиска объявления портала cenotavr.by

Petonik.com - это социальная сеть для владельцев животных, с небольшим блоком объявлений.

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

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

Размещено на http://www.allbest.ru/

Рисунок 3 - Страница личного профиля на сайте petonik.com

питомец программный тестирование данные

Размещено на http://www.allbest.ru/

Рисунок 4 - Страница питомца на сайте petonik.com

Размещено на http://www.allbest.ru/

Рисунок 5 - Страница поиска объявления на сайте petonik.com

В целом портал достаточно логичен. Функционала сайта достаточно, для создания анкеты и добавления питомцев. Для хорошей площадки объявлений не хватает четкой структуризации информации объявления и хорошей системы поиска и сортировки.

Портал Paws (http://paws.pro/) - это полноценная социальная сеть любителей животных с сопутствующим функционалом. Удобный профиль личных данных, легкое, интересное добавление питомцев. Подробные анкеты пользователя и питомца. Предлагаются различные настройки личного кабинета (смена фона, фото и т.п).

Предоставлена возможность добавлять других пользователей в друзья, вести переписку, просматривать ленту новостей. Осуществлять поиск по пользователям и питомцам.

Работать с сайтом удобно, просто и интуитивно понятно, что является огромным плюсом.

Размещено на http://www.allbest.ru/

Рисунок 6 - Страница личного профиля на сайте paws.pro

Размещено на http://www.allbest.ru/

Рисунок 7 - Страница питомца на сайте paws.pro

Таблица 1 - Сравнение показателей ресурсов cenotavr.by, petonik.com

Показатель для сравнения

cenotavr.by

petonik.com

1

визуализация объявлений карте

Отчасти

(отображается выбранное объявление после перехода к подробной информации)

Нет

2

возможность подбора объявлений по специализированным для животных критериям (порода, вид и т.д.)

Да

Нет

3

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

Да

Нет

4

возможность подбора объявлений по стоимости

Нет

Нет

5

возможность просмотра подробной информации об объявлении

Да

Да

6

возможность отбора объявлений по дополнительным параметрам

Нет

Нет

7

возможность связи с владельцем объявления

Да (для любого пользователя)

Да (только авторизированный пользователь)

8

наличие отзывов и оценок

Нет

Только комментарий

9

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

Нет

Нет

Таблица 2 - Сравнение показателей ресурсов paws.pro, petonik.com

Показатель для сравнения

paws.pro

petonik.com

1

возможность создавать анкету пользователя с личной информацией

Да

Только с указанием имени и города

2

возможность создавать анкеты питомцев

Да

Да

3

возможность просмотра подробной информации о пользователе-владельце питомца

Да

Да

4

возможность связи с пользователем через отправку личных сообщений

Да

Да

5

организация поиска среди всех пользователей сайта

Да

Да

Показатель для сравнения

paws.pro

petonik.com

6

организация поиска среди всех питомцев сайта

Да (для любого пользователя)

Да (только авторизированный пользователь)

7

Добавление других пользователей в друзья

Да

Нет (только подписаться на новости)

Таким образом наиболее близким прототипом для блока объявлений является портал cenotavr.by, а для блока работы с личными данными и питомцами - портал paws.pro.

Исходя из вышеизложенного определим задачи разрабатываемого веб-приложения:

? визуализация объявлений на карте;

? возможность поиска объявления по категориям и разнообразным параметрам, задаваемым фильтрами (спрос/предложения, город, порода собаки, возможность выезда на дом, временные параметры (за день, неделю, месяц) и др. набор некоторых фильтров специфичен для категорий объявлений);

? возможность публикации отзыва к объявлению;

? возможность просмотра средней стоимости услуги по заданным параметрам (особенно актуально для при назначении стоимости услуги);

? возможность создания и публикации объявления, а также его редактирование и удаление;

? ведение рейтингов объявлений по отзывам и оценкам пользователей;

? возможность просмотра подробной информации объявления, профиля пользователя, страницы питомца;

? возможность обмена личными сообщениями.

2. Методы и модели, положенные в основу проекта

2.1 Задание критериев отбора объявлений по фильтрам (любой пользователь, в том числе неавторизированный)

Для поиска подходящих объявлений пользователь должен перейти в раздел объявления нажав соответствующую ссылку. После этого отображается страница с набором объявлений. Задавая значения фильтрам поиска, пользователь определяет важные для него критерии отбора. Система в ответ подбирает по этим критериям подходящие объявления и отображает их пользователю. Кроме того пользователь может задать режим сортировки результатов подбора. Система проверяет, есть ли среди отобранных объявлений те, у которых задан параметр адрес. Если такие объявления имеются, то пользователь может увидеть соответствующие маркеры на карте, которые помогут ему сориентироваться по месту расположения. Все подходящие критериям отбора объявления, независимо от параметра `адрес' пользователь может увидеть в представленном системой списке объявлений.

Диаграмма деятельности представлена на рисунке 8.

Рисунок 8 - Поиск объявлений

2.2 Редактирование личных данных (авторизированный пользователь)

Для редактирования личных данных пользователь должен осуществить вход в систему, затем перейти в раздел `Моя страница' и нажать ссылку `Редактировать' для перехода в режим редактирования личных данных. При входе система проверит введенные для авторизации данные и в случае обнаружения ошибок сообщит об этом пользователю.

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

Рисунок 9 - Редактирование личных данных

2.3 Редактирование объявления (авторизированный пользователь)

Для редактирования объявления пользователь должен осуществить вход в систему, затем перейти в раздел `Мои объявления' и нажать ссылку `Редактировать' для перехода в режим редактирования объявления. Далее, находясь в режиме редактирования объявления, пользователь вносит необходимые изменения а система проверяет их на наличие ошибок и в случае их обнаружения сообщает об этом пользователю. Внеся изменения, пользователь нажимает кнопку сохранить, для подтверждения сохранения изменений. Система в ответ производит необходимые изменения, и пользователь видит исправленную страницу объявления.

Диаграмма деятельности представлена на рисунке 10.

Рисунок 10 - Редактирование объявления

2.4 Редактирование питомца (авторизированный пользователь)

Для редактирования питомца пользователь должен осуществить вход в систему, затем перейти в раздел `Мои питомцы' и нажать ссылку `Редактировать' для перехода в режим редактирования питомца. Далее, находясь в режиме редактирования питомца, пользователь вносит необходимые изменения, а система проверяет их на наличие ошибок и в случае их обнаружения сообщает об этом пользователю. Внеся изменения, пользователь нажимает кнопку сохранить, для подтверждения сохранения изменений. Система в ответ производит необходимые изменения, и пользователь видит исправленную страницу питомца.

Диаграмма деятельности представлена на рисунке 11.

Рисунок 11 - Редактирование питомца

2.5 Создание нового объявления (авторизированный пользователь)

Для добавления объявления пользователь должен осуществить вход в систему, затем перейти в раздел `Мои объявления' и нажать ссылку `Добавить'. Далее, находясь в режиме создания нового объявления, пользователь заполняет необходимые данные на форме, а система проверяет их на наличие ошибок и в случае их обнаружения сообщает об этом пользователю. Далее пользователь нажимает кнопку сохранить, для подтверждения создания нового объявления. Объявление сохраняется в системе, и пользователь видит новое объявление в списке объявлений.

Диаграмма деятельности представлена на рисунке 12.

Рисунок 12 - Создание нового объявления

2.6 Добавление нового питомца (авторизированный пользователь)

Для добавления питомца пользователь должен осуществить вход в систему, затем перейти в раздел `Мои питомцы' и нажать ссылку `Добавить'. Далее, находясь в режиме создания нового питомца, пользователь заполняет необходимые данные на форме, а система проверяет их на наличие ошибок и в случае их обнаружения сообщает об этом пользователю. Далее пользователь нажимает кнопку сохранить, для подтверждения создания нового питомца. Питомец сохраняется в системе, и пользователь видит информацию о новом питомце.

Диаграмма деятельности представлена на рисунке 13.

Рисунок 13 - Создание нового питомца

2.7 Отправка личного сообщения пользователю (авторизированный пользователь)

Для отправки сообщений другим пользователям необходимо осуществить вход в систему, затем перейти в раздел `Мои друзья' выбрать пользователя из списка друзей и нажать ссылку `Отправить сообщение'. Далее пользователь набирает в поле текст сообщения и нажимает кнопку `Отправить'. Пользователь-отправитель видит новое сообщение в истории переписки, а пользователь-получатель получает уведомление о наличии непрочитанного сообщения.

Диаграмма деятельности представлена на рисунке 14.

Рисунок 14 - Отправка личного сообщения

2.8 Добавление комментария объявлению (авторизированный пользователь)

Для того, что бы оставить комментарий объявлению, необходимо осуществить вход в систему, затем перейти в раздел `Объявления' и выбрать объявление из списка для просмотра. Далее пользователь переходит к комментариям объявления, нажав на ссылку `Посмотреть комментарии' под описанием объявления. В конце отображенного списка существующих комментариев в специальном поле пользователь вводит текст комментария и нажимает кнопку отправить. Введенный комментарий появляется в списке комментариев и доступен для просмотра другими пользователями.

Диаграмма деятельности представлена на рисунке 15.

Рисунок 15 - Добавление комментария объявлению

3. Разработка проекта программного обеспечения

3.1Анализ предметной области и разработка требований

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

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

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

Другим немаловажным аспектом предметной области являются анкеты самих пользователей. В анкете пользователь должен иметь возможность заполнять информацию о себе, а также создавать страницы своим питомцам, в которых так же можно вносить подробную информацию о питомце, размещать его фотографии. Помимо поиска по объявлениям, приложение должно давать возможность осуществлять поиск по профилям пользователей и по страницам питомцев. Этот поиск будет несколько проще чем поиск объявлений, поскольку профили пользователей не делятся по различным категориям и имеют одинаковый набор атрибутов. Это позволяет использовать одни и те же фильтры для поиска пользовательских профилей. То же самое относится и к поиску среди страниц питомцев.

В системе предполагается наличие нескольких типов пользователей.

Рисунок 16- Диаграмма основных пользователей системы

Для роли Admin должны быть предусмотрены некоторые дополнительные возможности работы с системой. Кроме того предусмотрен ограниченный набор функционала для неавторизированного пользователя.

Более полное описание вариантов использования системы представлено далее. Отражение вариантов использования на функциях системы представлены в таблице приложения Б.

Рисунок 17 - Диаграмма вариантов использования неавторизированного пользователя

Рисунок 18 - Диаграмма вариантов использования авторизированного пользователя (User)

Рисунок 19 - Диаграмма вариантов использования авторизированного пользователя (Admin)

Для достижения всех описанных выше целей, был сформирован следующий список требований к системе:

? система должна позволять регистрироваться на сайте и создавать личный кабинет;

? система должна предоставлять возможность редактирования, личных данных в личном кабинете пользователя;

? должна быть реализована возможность поиска объявления по категориям и разнообразным параметрам, задаваемым фильтрами (спрос/предложения, город, порода собаки, возможность выезда на дом, временные параметры (за день, неделю, месяц) и др. набор некоторых фильтров специфичен для категорий объявлений);

? должна быть реализована возможность просмотра подробной информации объявления, профиля пользователя, страницы питомца;

? должна быть реализована возможность публикации отзыва к объявлению;

? система должна позволять авторизированным пользователям обмениваться личными сообщениями;

? должна быть реализована возможность просмотра средней стоимости услуги по заданным параметрам (особенно актуально при размещении объявления для ориентации пользователя по ценовому вопросу);

? система должна позволять создавать и публиковать объявления, а также их редактирование и удаление;

? должен быть реализован расчет рейтингов объявлений по отзывам и оценкам пользователей.

Для пользователя Admin необходимо ко всему прочему предоставить следующий функционал:

? возможность правки и удаления комментариев;

? возможность удаления пользователей, питомцев и объявлений;

? возможность допуска объявления к публикации или ее блокирование.

3.2 Разработка схемы ресурсов системы

Исходя из определенных требований к программному комплексу, можно перейти к разработке схемы ресурсов. Схемы ресурсов отображают конфигурацию блоков данных и обрабатывающих блоков. На чертеже РТДП 40324.034.001 представлена схема ресурсов разрабатываемой системы.

Схема ресурсов была построена на основании следующих правил обработки данных:

? система представляет собой веб-приложение asp.net, находящееся на веб-сервере, к которому клиент обращается посредством HTTP-запросов через интернет соединение;

? все пользовательские данные хранятся в таблицах базы данных;

? браузер формирует запрос и с помощью библиотеки ОС winsock.dll передает данные посредством протокола HTTP на веб-сервер;

? веб-сервер через интерфес internet Server API (ISAPI), находящийся в файле asp.net_isapi.dll передает запрос рабочему процессу;

? работа приложений.NET обеспечивается за счет наличия такого механизма как общеязыковая среда исполнения (Common Language Runtime, CLR) aspnet_wp.exe.

Для разработки системы был выбран шаблон MVC а именно ASP.NET MVC5. Язык программирования С#. Шаблон MVC разделяет работу веб-приложения на три отдельные функциональные роли: модель данных (model), пользовательский интерфейс (view) и управляющую логику (controller). Таким образом, изменения, вносимые в один из компонентов, оказывают минимально возможное воздействие на другие компоненты. Взаимодействия между контроллером, моделью и представлением показаны на рисунке 20:

Рисунок 20 - Взаимодействия в приложении MVC

Обработка основной части запросов выглядит следующим образом:

а) на сервер приходит запрос от пользователя;

б) Сервер IIS запускает ASP.NET модуль, который будет запускать приложение на выполнение для обработки запроса;

в) cистема маршрутизации ASP.NET определяет каким методом и в каком контроллере будет обработан запрос;

г) выполняется нужный метод действия и упраление передается в представление View;

д) движок представлений Razor рендерит View и отдаёт пользователю в виде Html и исполняемых скриптов.

В качестве хранилища данных для приложения используется созданная в MS-SQL Server база данных. База данных является реляционной, что означает использование связанных отношениями таблиц. Такая структура позволяет получить выигрыш в производительности за счет возможности объединения таблиц при запросах. Для доступа к данным в БД использована технология ADO.NET Entity Framework(EF). EF в сочетании с LINQ (Language-Integrated Query) представляет собой реализацию ORM для платформы.NET Framework от компании Microsoft. Entity Framework содержит механизмы создания и работы с сущностями базы данных через объектно-ориентированный код на языке, совместимым с CLR. LINQ представляет собой библиотеку, расширяющую возможности C#, и облегчающую создание запросов (благодаря LINQ можно создавать SQL-подобные запросы в коде C#).

Entity Framework является продолжением другого API-интерфейса для работы с базами данных в.NET - ADO.NET, в котором для работы с базами данных приходилось писать запросы на SQL и вставлять их в код.

В некоторых запросах к серверу используется технология ajax (обращение к серверу без перезагрузки страницы в браузере). Таким образом, разгружается канал передачи данных, а пользователь получает более дружественное поведение приложения, напоминающее desktop-приложения.

Для обеспечения требования к расширяемости и изменяемости приложения была выбрана многоуровневая архитектура. Разрабатываемое приложение разделено на три уровня.

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

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

Уровень данных. Хранит модели, описывающие используемые сущности, также здесь размещаются специфичные классы для работы с разными технологиями доступа к данным. В заданном приложении при использовании технологии EntityFramework это класс-наследник от DbContext, следящий за состоянием сущностей в памяти приложения и осуществляющий непосредственные запросы к БД MS SQL Server. Здесь также хранятся классы репозиториев через которые уровень бизнес-логики взаимодействует с базой данных.

Взаимодействие с приложением MVC осуществляется в соответствии с естественным циклом действий пользователя и обновлений представления, при котором предполагается, что представление не содержит информации о состоянии. Пользователь через браузер отправляет запрос на веб-сервер. Получив запрос, веб-сервер запускает обработку кода интерпретатором, при необходимости происходит выборка данных из БД, производятся необходимые вычисления. Далее страница-ответ наполняется данными, после чего передается клиенту.

3.3 Разработка схемы работы системы

Схема работы системы представлена в графической части на чертеже РТДП-40324.034.002. Неавторизированный пользователь может просматривать объявления и пользоваться фильтром для поиска. При авторизации система проверяет, зарегистрирован ли пользователь с указанной парой логин-пароль в системе. Если в ходе авторизации возникла ошибка, система предлагает пользователю повторно ввести логин и пароль. При успешной авторизации пользователь попадает в личный кабинет, где может работать со своими личными данными, своими объявлениями, питомцами, также он может отправлять личные сообщения другим пользователям и оставлять отзывы чужим объявлениям.

Приложение состоит из нескольких блоков.

Блок входа в личный кабинет и авторизация. Этот блок служит для авторизации пользователя вы системе.

Блок регистрации в системе. Этот блок включает заполнение формы для регистрации в системе, включая логин, пароль, имя и фамилия, пол.

Блок поиска объявлений. Этот блок включает поиск объявлений по фильтрам, просмотр списка объявлений, просмотр их маркеров на карте, просмотр полной информации об объявлении, просмотр отзывов, добавление отзыва объявлению (только для авторизированных пользователей).

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

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

Блок работы с объявлениями пользователя. В этом блоке пользователь может создавать объявления, удалять и редактировать их, также он модет добавлять и удалять фотографии для объявления.

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

3.4 Разработка проекта базы данных

По результатам анализа бизнес-логики выявлены информационные сущности, представленные в таблице 3.

Таблица 3 - Информационные сущности системы

Сущность

Описание сущности

1

Пользователь

Описывает пользователя системы и его права. Атрибутами являются: логин, пароль, его роль в системе

2

Профиль пользователя

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

3

Объявление

Описывает конкретное объявление, атрибуты: категория объявления, его название, текст, город и местоположение при необходимости, тип объявления (спрос/предложение), пол и порода питомца при необходимости, стоимость, средняя оценка по результатам отзывов, возможен ли выезд на дом (для некоторых категорий)

Сущность

Описание сущности

4

Категория объявления

Описывает категорию объявления, атрибуты: название категории

5

Питомец

Описывает конкретного питомца: кличка питомца, его порода, пол, дата рождения, возможность вязки, чип-номер при наличии, награды питомца, что любит, что не любит, описание питомца

6

Порода питомца

Описывает породу питомца, атрибуты: название породы, описание породы

7

Награда питомца

Описывает конкретную награду у питомца, атрибуты: название награды, питомец владелец награды

8

Сообщение

Описывает конкретное личное сообщение, атрибуты: дата и время отправки, тема, текст, пользователь-отправитель, пользователь-получатель, статус (просмотрено/не просмотрено)

9

Отзыв

Описывает конкретный отзыв к определенному объявлению, атрибуты: текст отзыва, оценка, дата и время написания отзыва, указание к какому объявлению относится отзыв

Кроме того выявлены нижеуказанные отношения между сущностями

Таблица 4 - Отношения между сущностями

Отношение

Описание отношения

1

Пользователь - профиль пользователя

Каждому пользователю соответствует 1 профиль, каждому профилю соответствует 1 пользователь. Это означает, что после регистрации в системе у пользователя автоматически создается одна страница профиля, где будет содержаться его личная информация

Отношение

Описание отношения

2

Профиль пользователя- питомец

Каждый пользователь может иметь от 0 до n питомцев, каждый питомец всегда имеет одного пользователя-владельца

3

Профиль пользователя- объявление

Каждый пользователь может иметь от 0 до n объявлений, каждое объявление всегда имеет одного пользователя-владельца

4

Профиль пользователя- сообщение

Каждый пользователь имеет от 0 до n сообщений, Каждое сообщение принадлежит только одному пользователю в системе. Сообщение принадлежит пользователю, если он является его автором

5

Объявление - отзыв

Каждое объявление может иметь от 0 до n отзывов, каждый отзыв принадлежит одному объявлению

6

Питомец - награда

Каждый питомец может иметь от 0 до n наград, каждая награда принадлежит одному питомцу

7

Профиль пользователя - отзыв

Каждый пользователь может быть автором от 0 до n отзывов, каждое отзыв написан одним конкретным пользователем

8

Объявление - категория объявления

Каждое объявление принадлежит к определенной категории, каждая категория объявления может иметь от 0 до n объявлений в этой категории

9

Питомец - порода

Каждый питомец может относиться к 0 или 1 породе, каждая порода может относиться к 0..n питомцам

10

Объявление - порода

Каждое объявление может относиться к одной породе, каждая порода может относиться к 0..n объявлениям. Для некоторых объявлений может быть задана порода (порода актуальна, например для объявлениях о покупке/продаже питомцев)

На основании вышеизложенного была спроектирована БД. После этапа даталогического проектирования и нормализации до 4ой нормальной формы средствами ErWin 4.0 мы получаем следующую модель БД:

Рисунок 21 - Модель базы данных программной системы

В результате описание полученных таблиц имеет вид:

а) таблица Users (Пользователи), описывающая сущность пользователя, со следующими полями:

1) UserId int IDENTITY(1,1) NOT NULL, - первичный ключ;

2) RoleId int NOT NULL, - вторичный ключ;

3) Email nvarchar(50) NOT NULL, -- логин для входя в систему;

4) Password nvarchar(50) NOT NULL, - пароль для входа в систему.

Таблица связана один-к-одному с таблицей Profiles;

б) таблица Roles (Роли):

1) RoleId int IDENTITY(1,1) NOT NULL, - первичный ключ;

2) Namenvarchar(50) NOT NULL, - название роли.

Таблица связана один-ко-многим с таблицей Users;

в) таблица Profiles (Профили):

1) UserIdint IDENTITY(1,1) NOT NULL, - первичный ключ;

2) FirstNamenvarchar(50) NOT NULL - имя пользователя;

3) LastName nvarchar(50) NOT NULL - фамилия пользователя;

4) Sex bit NOT NULL - пол пользователя;

5) BirthDate datetime NULL - дата рождения;

6) City nvarchar(50) NULL - город;

7) Adress nvarchar(50) NULL - адрес;

8) PhoneNumber nvarchar(50) NULL - номер телефона;

9) AvatarPath nvarchar(50) NULL - путь к фото аватарки;

10) HaveImages bit NOT NULL - имеет ли профиль фотографии.

Таблица связана отношением один-ко-многим с таблицей Pets, Advertizements, Users, Messages, Reviews.

г) таблица Advertizements (Объявления):

1) AdvertizementIdint IDENTITY(1,1) NOT NULL, - первичный ключ;

2) Topic nvarchar(50) NOT NULL, - название объявления;

3) Text nvarchar(max) NOT NULL, - текст объявления;

4) Pricefloat NULL - стоимость;

5) IsDemandbit NOT NULL - тип объявления(спрос/предложение);

6) IsWithDeparturebit NULL- выезд на дом (есть/нет);

7) Citynvarchar(50) NULL, - город;

8) Adress nvarchar(50) NOT NULL, - адрес;

9) DateAndTimedatetime NOT NULL, - дата и время публикации;

10) UserIdint NOT NULL - вторичный ключ;

11) DogBreedIdint NULL - вторичный ключ;

12) CategoryIdint NOT NULL - вторичный ключ;

13) Sexbit NULL - пол питомца (при необходимости);

14) Markfloat NULL - средняя оценка по отзывам;

15) HaveImagesbit NOT NULL - есть ли фотографии.

Таблица связана отношением один-ко-многим с таблицей Reviews (Отзывы);

д) таблица Pets (Питомцы):

1) PetId int IDENTITY(1,1), - первичный ключ;

2) Name nvarchar(50) NOT NULL, - кличка питомца;

3) Sex bit NOT NULL - пол;

4) BirthDatedatetime NULL - дата рождения;

5) Copulationbit NULL - возможность вязки (да/нет);

6) Descriptionnvarchar(max) NULL - описание питомца;

7) ChipNumbernvarchar(50) NULL - чип-номер;

8) UserIdint NOT NULL - вторичный ключ;

9) DogBreedId int NULL - вторичный ключ;

10) WhatLikenvarchar(max) NULL - что любит;

11) WhatDontLikenvarchar(50) NULL - что не любит;

12) HaveImagesbit NOT NULL - есть ли фотографии.

Таблица связана отношением один-ко-многим с таблицей Rewards (Награды);

е) таблица Messages (Сообщения):

1) MessageId int IDENTITY(1,1), - первичный ключ;

2) Topic nvarchar(50) NULL - тема сообщения;

3) Text nvarchar(max) NOT NULL - текст сообщения;

4) DateAndTimedatetime NOT NULL - дата и время отправки;

5) WhoDeletedint NULL - Id пользователя, удалившего сообщение;

6) ReceiverIdint NOT NULL - Id пользователя-получателя сообщений;

7) AuthorIdint NOT NULL - вторичный ключ (Id пользователя-отправителя);

8) HasBeenViewedbit NULL - было ли сообщение просмотрено получателем;

ж) таблица Rewiews (Отзывы):

1) ReviewId int IDENTITY (1,1) NOT NULL - первичный ключ;

2) Textnvarchar(max) NOT NULL - текст отзыва;

3) Markint NULL - оценка отзыва;

4) DateAndTimedatetime NOT NULL - дата и время отправки;

5) AdvertizementIdint NOT NULL - вторичный ключ (Id объявления);

6) AuthorIdint NOT NULL - вторичный ключ (Id автора отзыва);

з) таблица Categories (Категории объявлений):

1) CategoryIdint IDENTITY(1,1) NOT NULL - первичный ключ;

2) Namenvarchar(50) NOT NULL - название категории объявления;

и) таблица Rewards (Награды):

1) RewardId int IDENTITY(1,1) NOT NULL, - первичный ключ;

2) RewardText nvarchar(max) NOT NULL, - описание награды;

3) PetIdint NOT NULL - вторичный ключ (питомец-обладатель награды);

к) таблица DogBreads (Породы):

1) DogBreedId int IDENTITY(1,1) NOT NULL, - первичный ключ;

2) Name nvarchar(50) NOT NULL, - название;

3) Description nvarchar(max) NULL - описание.

Таблица связана отношением один-ко-многим с таблицами Advertizements и Pets.

3.5 Разработка структуры классов

На рисунке 22 отображена итоговая структура классов предметной области программной системы:

Рисунок 22 - Диаграмма классов программной системы

4. Разработка алгоритмов и их программная реализация

4.1 Алгоритм редактирования и удаления данных объявления

Алгоритм редактирования и удаления данных объявления представлен на рисунке 23. Если выбрана операция удаления, программа извлекает из данных формы идентификационный номер удаляемого объявления вместе с другой полезной информацией, такой как идентификационный номер автора объявления. Этот идентификационный номер используется приложением для ограничения прав на удаление так, чтобы только авторизированный пользователь с таким номером мог произвести удаление. Поскольку удаление данных, это непосредственная операция по изменению состояния приложения, то запросы Get являются нежелательными для подобных действий. Это связано с тем, что в этом случае удаление можно произвести просто перейдя по ссылке, что небезопасно. Потому в данном конкретном случае используется запрос типа Post. При удалении объявления проверяется, есть ли в таблице “Rewievs” записи, связанные с этим объявлением. Если имеются, то программа удаляет записи из этой таблицы и только затем удаляет данные объявления.

При выборе операции редактирования объявления (нажали ссылку «Редактировать»), сервер в ответ формирует страницу с формой редактирования данных, заполненную данными выбранного объявления. После того как пользователь внес необходимые изменения, он нажимает кнопку «Сохранить» для подтверждения сохранения изменений. Тогда система проверяет, корректны ли введённые данные и в случае обнаружения ошибки выдаёт сообщения, поясняющие суть ошибок. Если данные корректны, система производит сохранение изменений в БД. Кроме того, в случае, если к самому объявлению на форме были добавлены фотографии, то система проверяет их на корректность формата и на непустое значение и далее присваивает этим файлам уникальные имена и сохраняет их в файловой системе сервера. Детализация алгоритма сохранения фотографии приведена далее.

При выборе операции добавления нового объявления (нажали ссылку «Добавить»), сервер в ответ формирует страницу с формой добавления нового объявления. После того как пользователь заполнил форму, он нажимает кнопку «Сохранить» для подтверждения сохранения объявления. Тогда система проверяет, корректны ли введённые данные и в случае обнаружения ошибки выдаёт сообщения, поясняющие суть ошибок. Если данные корректны, система производит сохранение нового объявления в БД. Кроме того, в случае, если к самому объявлению на форме были добавлены фотографии, то система проверяет их на корректность формата и на непустое значение и далее присваивает этим файлам уникальные имена и сохраняет их в файловой системе сервера. Детализация алгоритма сохранения фотографии приведена далее.

При нажатии на кнопку “Добавить”, программа извлекает из строки запроса идентификационный номер объявления и формирует страницу с формой для нового объявления. После того как пользователь заполнил формы и нажал кнопку «Сохранить», система проверяет, корректны ли введённые данные. Если ошибок не обнаружено, новое объявление сохраняется в БД, в случае наличия ошибок во введенных данных отображаются соответствующие сообщения. Если к самому объявлению на форме были добавлены фотографии, то система проверяет их на корректность формата и на непустое значение и далее присваивает этим файлам уникальные имена и сохраняет их в файловой системе сервера.

Рисунок 23 - Алгоритм редактирования и удаления объявления

4.2 Алгоритм редактирования и удаления данных питомца

Алгоритм редактирования и удаления данных питомца представлен на рисунке 24. Он аналогичен предыдущему алгоритму, с тем лишь отличием, что на форме имеется возможность добавлять питомцу награды. В соответствии с этим при редактировании и при добавлении нового питомца происходит проверка наличия на форме наград, если они обнаружены, то происходит их сохранение в БД. При удалении питомца также проверяется наличие у него записей о наградах (записей в таблице Rewards), если они обнаружены, то вместе с удалением питомца происходит и удаление этих записей.

Аналогично предыдущему алгоритму при заполнении формы система проверяет ее на наличие ошибок. Также производится проверка на наличие фоторгафий и их сохранение в файловой системе, как это описано в предыдущем алгоритме.

Рисунок 24 - Алгоритм редактирования и удаления данных питомца

4.3 Алгоритм сохранения фотографий

Алгоритм сохранения фотографий представлен на рисунке 25.

Данный алгоритм используется в нескольких местах приложения: при работе с формой для объявлений, при работе с формой для питомца, при работе с формой личных данных. Пользователю предоставляется возможность при заполнении указанных форм прикреплять файлы с фотографиями. При приеме формы с данными на сервере проверяется наличие прикрепленных файлов. Если файлы имеются, то проверяется наличие среди них файлов соответствующих формату картинок. При отсутствии подходящих файлов алгоритм не выполняется. При их наличии получаем путь для сохранения этих файлов.

Фотографии могут принадлежать одной из трех сущностей (пользователь, питомец, объявление). По этой причине фотографии для определенного пользователя сохраняются по пути `~/ProfilePhotos/[ID-номер пользователя]', фотографии для определенного питомца по пути `~/PetPhotos/[ID-номер питомца]', фотографии для определенного объявления по пути `~/AdvPhotos/[ID-номер объявления]'. В разных местах сайта необходимо отображать одну и ту же фотографию но различного размера. Например, для отображения списка объявлений рядом с каждым объявлением будет маленькая фотография-иконка, для отображения подробной информации об объявлении более крупная, а в случае просмотра фотографий объявления еще более крупная.

С целью оптимизации передачи данных по сети интернет от сервера клиенту было принято решение создавать три версии фотографии разного расширения и размера с приставками соответственно `big' `small' `tiny'. Для обеспечения уникального имени файла в пределах директории обрабатываемой сущности используется следующая схема именования: приставка+порядковый_номер. Например, файл будет существовать в трех версиях в виде `big1.jpg', `small1.jpg', `tiny1.jpg'. После определения директории для сохранения, система присваивает переменной nextNum максимальный номер в названии уже сохраненных на сервере файлов для обрабатываемой сущности. Далее в цикле осуществляется проход по коллекции отправленных клиентом файлов. Если файл корректный, то формируются правила его сохранения в трех версиях, включая шаблон именования приставка+ nextNum. Потом в цикле сохраняются эти три версии по определенной ранее директории. Если такой директории нет, то она создается. В конце итерации счетчик nextNum увеличивается на единицу.

Рисунок 25 - Алгоритм сохранения фотографий

4.4 Алгоритм отображения списков диалогов

Алгоритм отображения списков диалогов пользователя представлен на рисунке 27. В приложении реализована возможность пользователей обмениваться личными сообщениями. У каждого пользователя есть список его диалогов (диалог здесь понимается как перечень сообщений, в котором данный пользователь выступает в качестве одного участника, а другим участником выступает другой конкретный пользователь). Все сообщения пользователей хранятся в одной таблице в БД.

Приведенный алгоритм отображает логику формирования списка диалогов пользователя, каждый элемент которого представляет собой последнее сообщение в истории переписки и пометки пользователя, с которым ведется переписка. Для формирования такого списка сначала из БД извлекается коллекция messages из последних сообщений в каждом диалоге. Далее полученная коллекция отсортировывается по времени. После в цикле осуществляется проход по этой коллекции. В каждой итерации цикла проверяется, является ли авторизированный пользователь автором текущего сообщения цикла mes. Если да, то переменной author присваивается значение `Вы'. В противном случае значение для этой переменной формируется из объекта mes как author=mes.Author.FirstName+mes.Author.LastName. Если авторизированный пользователь не является автором сообщения и mes имеет пометку `непрочитанное', то переменной darkBackGround присваивается `true', чтобы сделать фон для данного диалога затемненным при отображении на странице. В противном случае darkBackGround=false.

Кроме того при отображении диалога имеет смысл показывать информацию о пользователе, с которым авторизированный пользователь ведет переписку. Для хранения этой информации служит переменная usrToShow. Она получает значение mes.Receiver, если автор сообщения это авторизированный пользователь и значение mes.Author в противоположном случае. Далее в итерации переменной unViewed присваивается количество сообщений из БД, помеченных как непрочитанные и у которых получатель это зарегистрированный пользователь, а отправитель это пользователь usrToShow. Вся эта информация необходима для отображения информации о диалоге пользователя включая сам текст сообщения, информация о собеседник и количество непрочитанных авторизированным пользователем сообщений в этом диалоге. Пояснение по внешнему виду списка диалогов приведено на рисунке 26.

Рисунок 26 - Внешний вид списка диалогов пользователя

Рисунок 27 - Алгоритм отображения списков диалогов

4.5 Алгоритм подбора объявлений

Алгоритм подбора объявлений по заданным фильтрам представлен на рисунке 28. В приложении реализована возможность поиска объявлений по определенным критериям, а также возможность задавать порядок отображения подходящих объявлений. В случае, если пользователь изменил состояние одного из фильтров поиска объявлений, на сервер приходит текущее состояние всех фильтров и заданное пользователем состояние порядка отображения объявлений. Далее из БД извлекаются объявления, соответствующие этим фильтрам.

В случае если пользователем была определена сортировка по цене, полученные объявления сортируются по цене начиная от наименьшей, если была определена сортировка по дате, то объявления сортируются по дате начиная с самых новых, если была определена сортировка по рейтингу, то объявления сортируются по рейтингу, сформированному на основе отзывов и оценок других пользователей для этого объявления. Поскольку на сайте для разгрузки пропускных каналов реализована пагенация, то из результата отбирается первые pageSize. Далее проверяется информация о запросу. Если запрос типа ajax, то возвращается только часть разметки, касающаяся подобранных объявлений. Если тип запроса не ajax, то формируется и возвращается страница с результатами целиком.

Рисунок 28 - Алгоритм подбора объявлений

5. Тестирование программного средства

Тестирование программного обеспечения -- проверка соответствия между реальным и ожидаемым поведением программы, осуществляемая на конечном наборе тестов, выбранном определенным образом. В более широком смысле, тестирование -- это одна из техник контроля качества, включающая в себя активности по планированию работ (Test Management), проектированию тестов (Test Design), выполнению тестирования (Test Execution) и анализу полученных результатов (Test Analysis).Все методы тестирования можно условно разделить на две группы: тестирование по методу белого ящика и тестирование по методу черного ящика.

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


Подобные документы

  • Сравнение показателей ресурсов cenotavr.by и petonik.com. Редактирование объявлений, задание критериев отбора объявлений по фильтрам. Разработка проекта программного обеспечения для сайта услуг для животных, алгоритм редактирования и удаления питомца.

    дипломная работа [2,8 M], добавлен 09.07.2017

  • Цели и задачи фирм по обмену и продаже жилья, основные моменты работы фирмы для создания системы автоматизации учёта данных о заявках и клиентах. Функциональная модель приложения, разработка инфологической модели и создание реляционной структуры.

    курсовая работа [389,8 K], добавлен 20.03.2012

  • Программные средства, которые помогают манипулировать и управлять данными. Приемы создания и редактирования баз данных в СУБД MySQL. Способы и средства доступа и манипулирования данными. Создание, удаление, редактирование таблиц данных и их элементов.

    практическая работа [1,2 M], добавлен 14.03.2013

  • Анализ предметной области. Проектирование и разработка базы данных и интерфейса в виде набора Web-страниц для отображения, создания, удаления и редактирования записей базы данных. Аппаратное и программное обеспечение системы. Алгоритм работы программы.

    курсовая работа [3,0 M], добавлен 12.01.2016

  • Особенность формирования реляционной модели данных. Создание таблиц в программе. Характеристика разработки web-интерфейса. Анализ вывода информации о каждом сотруднике. Образование листинга программных кодов. Суть удаления и редактирования извещений.

    курсовая работа [621,5 K], добавлен 14.01.2018

  • Изучение областей использования вычислительной техники, истории систем управления данными во внешней памяти. Анализ разработки ряда стандартов в рамках языков описания и манипулирования данными. Обзор технологий по обмену данными между различными СУБД.

    презентация [263,2 K], добавлен 30.05.2012

  • Проектирование концептуальной, логической и физической модели базы данных. Формирование сущностей и связей между ними. Создание форм с функциями добавления, редактирования, удаления, поиска, печати. Разработка клиентской части БД с помощью среды Lazarus.

    курсовая работа [1,3 M], добавлен 05.04.2015

  • Разработка программного продукта - базы данных "Экскурсия" в интегрированной среде программирования C++ Builder 6. Определение порядка просмотра данных базы, их редактирования и удаления. Особенности руководства пользователя и общего интерфейса программы.

    курсовая работа [2,4 M], добавлен 03.11.2013

  • Средства организации блогов, разновидности CMS используемых для разработки и сопровождения блогов, их достоинства и недостатки. Общий алгоритм работы программного средства и алгоритмы работы с данными. Программное конструирование индивидуальных блогов.

    дипломная работа [3,6 M], добавлен 10.07.2012

  • Требования к аппаратным и операционным ресурсам. Логическая и физическая организация. Состав основных классов проекта. Технико-экономическое обоснование разработки программного средства. Задержки при обработке данных. Разработка интерфейса приложения.

    дипломная работа [4,4 M], добавлен 16.06.2017

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.