Читайте также: |
|
предусловия: отсутствуют.
постусловия: если вариант использования выполнен успешно, пользователю выводится забытый пароль. В противном случае состояние системы не меняется.
Вариант использования «Работа с данными опроса, документа»:
назначение: служит для добавления, удаления и обновления информации по соответствующему опросу, документу;
основной поток событий: выполняется, когда «Менеджер» начинает работу с системой:
1) система запрашивает требуемое действие (добавить, удалить, обновить информацию по соответствующему опросу, документу);
2) после того как «Менеджер» выбирает действие, начинает выполняться один из подчиненных потоков: добавление, обновление и удаление данных опроса или документа.
Добавление данных опроса или документа:
1) система запрашивает соответствующий раздел для добавления данных (опрос, документ, новости);
2) «Менеджер» выбирает соответствующий раздел;
3) система запрашивает соответствующие данные для ввода;
4) «Менеджер» вводит данные;
5) система проверяет корректность введенных данных;
6) система сохраняет данные по соответствующему разделу в базу данных.
Обновление данных опроса или документа:
1) система запрашивает соответствующий раздел для обновления данных (опрос, документ, новости);
2) «Менеджер» выбирает соответствующий раздел;
3) система запрашивает соответствующие данные для обновления;
4) «Менеджер» указывает соответствующие данные;
5) система выводит соответствующие данные для обновления;
6) «Менеджер» обновляет данные;
7) система проверяет корректность введённых данных и сохраняет их в базе данных;
Удаление данных опроса или документа:
1) система запрашивает соответствующий раздел для удаления данных ((опрос, документ, новости);
2) «Менеджер» выбирает соответствующий раздел;
3) система запрашивает соответствующие данные для удаления;
4) «Менеджер» указывает соответствующие данные;
5) система удаляет данные.
альтернативныепотоки: если добавление, удаление, обновление информации по каким либо причинам невозможно, то выводится соответствующее сообщение, содержащее причину ошибки и возможности ее разрешения:
1) добавление данных опроса или документа: если данные для добавления некорректны, то система выводит предупреждающее сообщение о некорректности данных;
2) добавление данных отменено: если во время выполнения подчиненных потоков «Добавление опроса», «Добавление документа» «Менеджер» решил его отменить, то добавление отменяется, и основной поток начинается сначала;
3) обновление данных по дисциплине: если данные для обновления некорректны, то система выводит предупреждающее сообщение о некорректности данных;
4) обновление данных отменено: если во время выполнения подчиненных потоков «Обновление опроса», «Обновление документа» «Менеджер» решил его отменить, то обновление отменяется, и основной поток начинается сначала;
предусловия: перед началом выполнения данного варианта использования «Менеджер» должен войти в систему;
постусловия: если вариант использования завершится успешно, то данные в базе будут обновлены соответствующим образом. Если же в процессе выполнения произошли какие-либо ошибки, то обновления в базе данных не сохраняются.
Вариант использования «Просмотр соответствующей информации»:
назначение: описывает просмотр всей информации по соответствующей категории данных: опросы, документы, новости, содержащейся в базе данных;
основной поток событий: используется, когда «Сотрудник» хочет просмотреть интересующую его информацию, предоставляемую системой:
1) «Сотрудник» выбирает соответствующую категорию для работы;
2) система выводит соответствующие разделы выбранной категории;
3) «Сотрудник» выбирает соответствующий раздел для просмотра;
4) система осуществляет поиск информации соответствующего раздела, которая должна отображаться на главной странице, а также предоставляет удобную навигацию по ресурсу;
5) «Сотрудник» выбирает соответствующую ссылку интересующей его информации;
6) система осуществляет чтение из базы данных соответствующей информации, открывает соответствующую страницу и выводит интересующей информацию для просмотра пользователем;
альтернативный поток: в том случае, когда системе не удалось найти соответствующей информации по запросу «Сотрудник» в базе данных, система выводит соответствующее сообщение (при этом выполнение варианта использования продолжается);
предусловия: перед началом выполнения данного варианта использования «Сотрудник» должен войти в систему;
постусловия: если вариант использования выполнен успешно, «Сотрудник» предоставляется для просмотра вся информация заданного раздела по выбранной дисциплине.
Вариант использования «Обновление и поддержка БД»:
назначение: служит для добавления, удаления и обновления информации, которая необходима для функционирования системы;
основной поток событий: выполняется, когда «Администратор» начинает работу с системой:
1) система запрашивает требуемое действие (добавить, удалить, обновить информацию по соответствующей категории);
2) после того как «Администратор» выбирает действие, начинает выполняться один из подчиненных потоков: добавление, обновление и удаление данных.
Добавление данных:
1) система запрашивает соответствующий раздел для добавления данных (опросы, документы, новости, сотрудники, менеджеры);
2) «Администратор» выбирает соответствующий раздел;
3) система запрашивает соответствующие данные для ввода;
4) «Администратор» вводит данные;
5) система проверяет корректность введенных данных;
6) система сохраняет данные по соответствующему разделу в базу данных.
Обновление данных:
1) система запрашивает соответствующий раздел для обновления данных (опросы, документы, новости, список пользователей системы);
2) «Администратор» выбирает соответствующий раздел;
3) система запрашивает соответствующие данные для обновления;
4) «Администратор» указывает соответствующие данные;
5) система выводит соответствующие данные для обновления;
6) «Администратор» обновляет данные;
7) система проверяет корректность данных и сохраняет их в базе данных;
Удаление данных:
1) система запрашивает соответствующий раздел для удаления данных (опросы, документы, новости, список пользователей системы);
2) «Администратор» выбирает соответствующий раздел;
3) система запрашивает соответствующие данные для удаления;
4) «Администратор» указывает соответствующие данные;
5) система удаляет данные.
альтернативныепотоки: если добавление, удаление, обновление информации по каким либо причинам невозможно, то выводится соответствующее сообщение, содержащее причину ошибки и возможности ее разрешения:
1) добавление данных: если данные для добавления некорректны, то система выводит предупреждающее сообщение о некорректности данных;
2) добавление данных отменено: если во время выполнения подчиненных потоков «Добавление опроса», «Добавление документа» Администратор решил его отменить, то добавление отменяется, и основной поток начинается сначала;
3) обновление данных: если данные для обновления некорректны, то система выводит предупреждающее сообщение о некорректности данных;
4) обновление данных отменено: если во время выполнения подчиненных потоков «Обновление опроса», «Обновление документа» «Менеджер» решил его отменить, то обновление отменяется, и основной поток начинается сначала;
5) удаление данных: если удаляемые данные имеют связь с другими данными, то система выводит предупреждающее сообщение о невозможности удаления данных;
предусловия: перед началом выполнения данного варианта использования Администратор должен войти в систему;
постусловия: если вариант использования завершится успешно, то данные в базе будут обновлены соответствующим образом. Если же в процессе выполнения произошли какие-либо ошибки, то обновления в базе не сохраняются.
3.3 Идентификация классов анализа
3.3.1 Глоссарий предметной области
Глоссарий предназначен для описания терминологии предметной области. Он может быть использован как неформальный словарь данных системы.
Глоссарий разрабатываемой системы может быть представлен в следующем виде, как это показано в таблице 3.1.
Таблица 3.1 – Глоссарий предметной области
№ п/п | Термин | Значение |
Сотрудник | Пользователь, использующий систему в процессе взаимодействия внутри организации | |
Менеджер | Пользователь, выполняющий управление взаимодействием сотрудников в организации | |
Администратор | Пользователь, поддерживающий систему в работоспособном состоянии и занимающийся добавлением, обновлением, удалением и поддержкой целостности данных | |
Пользователь | Человек, выполняющий некоторые действия в системе | |
Аутентификация и авторизация | Процедура определения личности пользователя и прав доступа аутентифицированных пользователей | |
Вход в систему | Процедура, выполняемая неаутентифицированным пользователем, включающая в себя аутентификацию и авторизацию | |
Форма просмотра соответствующей информации | Форма, предназначенная для просмотра данных в табличном виде | |
Форма добавления/ обновления/удаления данных | Форма, предназначенная для добавления, обновления и удаления соответствующих данных |
На основании таблицы 3.1 были выделены классы, которые можно сгруппировать следующим образом:
граничные: стартовая страница для входа в систему, а также страницы просмотра информации, добавления, удаления и обновления данных.
управляющие: отсутствуют.
сущности: просмотр, добавление, обновление и удаление данных, сохранение данных, а также администратор, сотрудник, менеджер, таблицы опросов, документов, новостей, сотрудников, менеджеров, результатов опросов.
3.4 Поведение предмета разработки
Трактуя предмет разработки как класс, поведение объекта системы может быть представлено в виде диаграммы деятельности, приведённой на рисунке 3.2.
На диаграмме деятельности представлена общая работа всей системы, а также логика и последовательность перехода от одной деятельности к другой, при этом внимание фиксируется на результате деятельности. Из диаграммы видно, что отдельные элементарные вычисления могут приводить к некоторому результату или действию (action). Сам же результат может привести к изменению состояния системы или возвращению некоторого значения, в данном случае:
если пользователь является сотрудником, то после прохождения аутентификации он может выбрать соответствующую категорию для работы и просматривать соответствующую информацию по ней;
если пользователь является менеджером, то после прохождения аутентификации и выбора соответствующей категории, он сможет добавлять новую информацию по данной категории, удалять и редактировать её. Все действия связанные с изменением состояния данных сохраняются в базу данных.
если пользователь является администратором данной системы, то после прохождения аутентификации, он сможет добавлять новую информацию, удалять и редактировать её. Все действия связанные с изменением состояния данных сохраняются в базу данных.
Рисунок 3.2 – Диаграмма деятельности
3.5 Взаимодействие объектов и экранные формы
3.5.1 Вариант использования «Аутентификация»
Данный вариант использования служит для спецификации особенностей поведения системы при входе пользователя в систему и наделение его соответствующих прав. Он определяет последовательность действий, которые должны быть выполнены для прохождения процедуры аутентификации проектируемой системой при взаимодействии ее с соответствующим актером.
На диаграмме последовательности «Аутентификации», которая приводится на рисунке 3.3, изображена последовательность действий пользователя при осуществлении входа в систему.
Рисунок 3.3 – Диаграмма последовательности «Аутентификации»
Диаграмма кооперации данного варианта использования, которая приводится на рисунке 3.4, отражает структурные аспекты взаимодействия пользователя и соответствующих классов при осуществлении входа в систему.
Макет экранной формы «Аутентификации», который приводится на рисунке 3.5, имеет довольно абстрактный вид. В процессе реализации системы, безусловно, реальные формы будет в значительной степени отличаться от проектируемых, прежде всего с точки зрения интерфейса пользователя.
Рисунок 3.4 – Диаграмма кооперации «Аутентификации»
Рисунок 3.5 – Макет экранной формы «Аутентификации»
3.5.2 Вариант использования «Просмотр соответствующей информации»
Данный вариант использования служит для спецификации общих особенностей поведения части системы, предназначенной для работы сотрудника. Он определяет последовательность действий просмотра соответствующей информации, которые должны быть выполнены проектируемой системой при взаимодействии ее с актером-сотрудником.
На диаграмме последовательности «Просмотр соответствующей информации», которая приводится на рисунке 3.5, изображена последовательность действий пользователя при осуществлении входа в систему.
Диаграмма кооперации данного варианта использования, которая приводится на рисунке 3.6, отражает структурные аспекты взаимодействия сотрудника и соответствующих классов при осуществлении просмотра данных по соответствующей дисциплине.
Рисунок 3.5 – Диаграмма последовательности «Просмотр соответствующей информации»
Рисунок 3.6 – Диаграмма кооперации «Просмотра информации»
3.5.3 Вариант использования «Работа с данными опроса, документа»
Данный вариант использования служит для спецификации особенностей поведения системы при изменении состояния базы данных. Он определяет последовательность действий, которые должны быть выполнены для выполнения операций добавления, обновления и удаления данных опроса, документа системой при взаимодействии ее с актером-менеджером.
На диаграмме последовательности «Работа с данными опроса, документа», которая приводится на рисунке 3.7, изображена последовательность действий преподавателя при осуществлении операций над данными опроса или документа.
Рисунок 3.7 – Диаграмма последовательности «Работа с данными опроса документа»
Рисунок 3.8 – Диаграмма кооперации «Работа с данными опроса, документа»
4 ФИЗИЧЕСКОЕ МОДЕЛИРОВАНИЕ
4.1 Выбор среды разработки, языка программирования и инструментальных средств разработки
Система будет реализовываться с использованием платформы Microsoft SharePoint 2010, где базой для разработки пользовательских модулей является технология ASP.NET. В качестве языка программирования был выбран C#. Данная технология является частью.NET Framework, что позволяет вести разработку Web-приложений с использованием всех возможностей, предоставляемых этой платформой. В качестве инструментария выбрана среда MS Visual Studio 2010, обеспечивающая мощную инструментальную и функциональную поддержку выбранных технологий реализации программного обеспечения. А так же, для облегчения разработки под платформу SharePoint, были использованы следующие программные продукты:
· SharePoint Designer 2010 – программа, позволяющая без написания кода изменить внешний вид сайтов, разработанных под платформу SharePoint;
· SharePoint Manager – программа, позволяющая отслеживать иерархию семейства сайтов и их каталогов;
· Feature Manager – программа, облегчающая работу с пользовательскими модулями;
· CAML Builder – программа, облегчающая построение CAML запросов к спискам SharePoint.
· Firebug – программа, позволяющая отлаживать JavaScript, а так же облегчает работу с HTML и CSS.
В качестве базы данных была выбрана СУБД Microsoft SQL Server версии 2008 R2.
Microsoft SQL Server – это законченное предложение в области баз данных для быстрого создания масштабируемых решений электронной коммерции, бизнес-приложений и хранилищ данных. Оно позволяет значительно сократить время выхода этих решений на рынок, одновременно обеспечивая масштабируемость, отвечающую самым высоким требованиям. В сервер включена поддержка языка XML и протокола HTTP, средства повышения быстродействия и доступности, позволяющие распределить нагрузку и обеспечить бесперебойную работу, функции для улучшения управления и настройки. Также СУБД предоставляет удобный доступ к базе данных через Web по протоколу HTTP, быстродействующий встроенный полнотекстовый поиск в данных, хранящихся в БД и в документах. Кроме того, SQL Server полностью использует все возможности операционной системы Windows.
4.2 Физическая модель данных
4.2.1 Списки для хранения данных
В системе SharePoint главной структурой хранения является список. Списки могут быть связаны с другими списками, на основе lookup колонок. Все остальные принципы целостности данных, присущие базе данных необходимо реализовывать в пользовательском коде. В конечном итоге хранение данных сводится к базе данных MSSQL, но напрямую разработчики под платформу Microsoft SharePoint с базой дынных не работают, поскольку, как было описано выше, единицей хранения данных в SharePoint является SharePoint List.
Несмотря на такую специфику SharePoint, как лист, в SharePoint присутствует возможность работы с базами данных, но на прямую, а через технологию BCS (business connectivity services), поскольку база данных является внешним источником данных для SharePoint, и необходимо привести его к SharePoint List.
Создать SharePoint список можно тремя путями:
· Используя объектную модель SharePoint, описать список на языке программирования;
· Используя декларативный подход на языке CAML;
· Через интерфейс уже созданного сайта.
Минус последнего подхода заключается в том, что при создании нового сайта, лист необходимо создавать руками заново. Второй и третий подход аналогичны в своих возможностях.
В данном проекте был выбран декларативный подход описания списков. На рисунках 4.1 – 4.3 приведён код описания создаваемых списков.
<?xml version="1.0" encoding="utf-8"?>
<List xmlns:ows="Microsoft SharePoint" Title="Departments" FolderCreation="FALSE" Direction="$Resources:Direction;" Url="Lists/SaMLayout-Departments" BaseType="0" xmlns="http://schemas.microsoft.com/sharepoint/">
<MetaData>
<ContentTypes>
<ContentTypeRef ID="0x01008731EE1EB0C6407EA7FCFC9E61A75D6B"/>
<ContentTypeRef ID="0x0120" />
<!--Это тип контента для создания папки, без него нелюзя будет создавать папки в листе-->
<ContentTypeRef ID="0x01"/>
</ContentTypes>
<Fields>
<Field Type="URL"
DisplayName="Картинка отдела"
Group="SaM"
Required="FALSE"
EnforceUniqueValues="FALSE"
Indexed="FALSE"
Format="Image"
ID="{99ADF259-F5CA-4D4B-975F-836170B8F6A4}"
StaticName="Картинка-отдела"
Name="Картинка-отдела"
/>
</Fields>
<Views>
<View BaseViewID="0" Type="HTML" MobileView="TRUE" TabularView="FALSE">
<Toolbar Type="Standard" />
<XslLink Default="TRUE">main.xsl</XslLink>
<RowLimit Paged="TRUE">30</RowLimit>
<ViewFields>
<FieldRef Name="LinkTitleNoMenu"></FieldRef>
</ViewFields>
<Query>
<OrderBy>
<FieldRef Name="Modified" Ascending="FALSE"></FieldRef>
</OrderBy>
</Query>
<ParameterBindings>
<ParameterBinding Name="AddNewAnnouncement" Location="Resource(wss,addnewitem)" />
<ParameterBinding Name="NoAnnouncements" Location="Resource(wss,noXinviewofY_LIST)" />
<ParameterBinding Name="NoAnnouncementsHowTo" Location="Resource(wss,noXinviewofY_ONET_HOME)" />
</ParameterBindings>
</View>
<View BaseViewID="1" Type="HTML" WebPartZoneID="Main" DisplayName="$Resources:core,objectiv_schema_mwsidcamlidC24;" DefaultView="TRUE" MobileView="TRUE" MobileDefaultView="TRUE" SetupPath="pages\viewpage.aspx" ImageUrl="/_layouts/images/generic.png" Url="AllItems.aspx">
<Toolbar Type="Standard" />
<XslLink Default="TRUE">main.xsl</XslLink>
<RowLimit Paged="TRUE">30</RowLimit>
<ViewFields>
<FieldRef Name="Title"></FieldRef>
<FieldRef Name="Картинка-отдела"></FieldRef>
</ViewFields>
<Query>
<OrderBy>
<FieldRef Name="ID"></FieldRef>
</OrderBy>
</Query>
<ParameterBindings>
<ParameterBinding Name="NoAnnouncements" Location="Resource(wss,noXinviewofY_LIST)" />
<ParameterBinding Name="NoAnnouncementsHowTo" Location="Resource(wss,noXinviewofY_DEFAULT)" />
</ParameterBindings>
</View>
</Views>
<Forms>
<Form Type="DisplayForm" Url="DispForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
<Form Type="EditForm" Url="EditForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
<Form Type="NewForm" Url="NewForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
</Forms>
</MetaData>
</List>
Рисунок 4.1 – Описание списка отделов
<?xml version="1.0" encoding="utf-8"?>
<List xmlns:ows="Microsoft SharePoint" Title="SaMAppsListDefinition" EnableContentTypes="TRUE" FolderCreation="FALSE" Direction="$Resources:Direction;" Url="Lists/SaMAppsListDefinition" BaseType="0" xmlns="http://schemas.microsoft.com/sharepoint/">
<MetaData>
<ContentTypes>
<ContentTypeRef ID="0x010065931B4DC4B243FEABEE0F4B0F107CF2"/>
<ContentTypeRef ID="0x0120" /> <!--Это тип контента для создания папки, без него нелюзя будет создавать папки в листе-->
<ContentTypeRef ID="0x01"/>
</ContentTypes>
<Fields>
<Field DisplayName="Категория"
Required="TRUE"
Type="Choice"
Format="Dropdown"
ID="{54699A56-D920-4C11-B643-1AF6D994BABE}"
Name="Категория"
StaticName="Категория"
Group="SaM"
EnforceUniqueValues="FALSE"
Indexed="FALSE"
FillInChoice="FALSE" >
<CHOICES>
<CHOICE>Общие</CHOICE>
<CHOICE>Коммуникации</CHOICE>
<CHOICE>Проектные</CHOICE>
<CHOICE>Маркетинг</CHOICE>
<CHOICE>Сайты</CHOICE>
<CHOICE>Отчетность</CHOICE>
<CHOICE>Финансы</CHOICE>
</CHOICES>
</Field>
<Field Type="URL"
DisplayName="Ссылка"
Required="TRUE"
Format="Hyperlink"
ID="{564ABB5E-7643-4458-ACC5-380E89175532}"
Name="Ссылка"
StaticName="Ссылка"
Group="SaM"
EnforceUniqueValues="FALSE"
Indexed="FALSE"/>
<Field Type="Text"
DisplayName="Описание"
Required="TRUE"
ID="{E36EABFE-AA01-47D5-9B4B-23A15F6B3BD6}"
Name="Описание"
StaticName="Описание"
Group="SaM"
EnforceUniqueValues="FALSE"
Indexed="FALSE"
FillInChoice="FALSE"/>
</Fields>
<Views>
<View BaseViewID="0" Type="HTML" MobileView="TRUE" TabularView="FALSE">
<Toolbar Type="Standard" />
<XslLink Default="TRUE">main.xsl</XslLink>
<RowLimit Paged="TRUE">30</RowLimit>
<ViewFields>
<FieldRef Name="LinkTitleNoMenu"></FieldRef>
</ViewFields>
<Query>
<OrderBy>
<FieldRef Name="Modified" Ascending="FALSE"></FieldRef>
</OrderBy>
</Query>
<ParameterBindings>
<ParameterBinding Name="AddNewAnnouncement" Location="Resource(wss,addnewitem)" />
<ParameterBinding Name="NoAnnouncements" Location="Resource(wss,noXinviewofY_LIST)" />
<ParameterBinding Name="NoAnnouncementsHowTo" Location="Resource(wss,noXinviewofY_ONET_HOME)" />
</ParameterBindings>
</View>
<View BaseViewID="1" Type="HTML" WebPartZoneID="Main" DisplayName="$Resources:core,objectiv_schema_mwsidcamlidC24;" DefaultView="TRUE" MobileView="TRUE" MobileDefaultView="TRUE" SetupPath="pages\viewpage.aspx" ImageUrl="/_layouts/images/generic.png" Url="AllItems.aspx">
<Toolbar Type="Standard" />
<XslLink Default="TRUE">main.xsl</XslLink>
<RowLimit Paged="TRUE">30</RowLimit>
<ViewFields>
<FieldRef Name="Ссылка"></FieldRef>
<FieldRef Name="Категория"></FieldRef>
<FieldRef Name="Описание"></FieldRef>
</ViewFields>
<Query>
<OrderBy>
<FieldRef Name="ID"></FieldRef>
</OrderBy>
</Query>
<ParameterBindings>
<ParameterBinding Name="NoAnnouncements" Location="Resource(wss,noXinviewofY_LIST)" />
<ParameterBinding Name="NoAnnouncementsHowTo" Location="Resource(wss,noXinviewofY_DEFAULT)" />
</ParameterBindings>
</View>
</Views>
<Forms>
<Form Type="DisplayForm" Url="DispForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
<Form Type="EditForm" Url="EditForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
Дата добавления: 2015-08-17; просмотров: 108 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Обзор состояния вопроса 1 страница | | | Обзор состояния вопроса 3 страница |