Разработана информационная система для сбора и анализа данных анкетирования
Скачать 7.57 Mb.
|
1.2 Понятие и характеристики информационной системыИнформационные технологии – весьма широкое определение, под которое попадает ряд отдельных технических средств и приемов работы с информацией. Но, как правило, в процессе работы с информацией люди имеют дело со вполне определенной связанной последовательностью взаимодействий с различными средствами. В зависимости от шкалы времени (от оперативных до долгосрочностратегических задач) и масштаба действий (от одного рабочего места до целой компании) могут обнаруживаться разные связи и последовательности, и для управления ими нужны разные методы. Методы варьируются также по степени алгоритмизации и рационализации. Наиболее рационально алгоритмизированная совокупность методов и средств работы с информацией - информационная система. Информационная система (далее – ИС) – взаимосвязанная совокупность средств, методов и персонала, используемых для хранения, обработки и выдачи информации. Информационные системы бывают разного назначения и масштаба. Также информационные системы отличаются по степени охвата сфер деятельности предприятия (учитывают ли они только бухгалтерию или также и склад, финансы, производство и т.д.). Однако все информационные системы обладают рядом свойств, которые являются для них общими: ИС предназначены для сбора, хранения и обработки информации. Таким образом, в основе любой информационной системы лежат средства хранения и доступа к данным. ИС предназначены для конечного пользователя, не являющегося специалистом в области вычислительной техники. Из этого следует, что ИС должны включать в себя клиентские приложения, обеспечивающие интуитивно понятный интерфейс. ИС бывают фактографическими и документальными. К первым относятся ИС, предназначенные для поиска однозначного ответа на запрос и для 1.3 Требования к разрабатываемой системеОдной из целей, преследуемых при проведении автоматизации ВУЗа, является создание единой ИС. Наличие единого центра хранения информации с целью минимизировать функции отдельных пользователей – не менее важная задача при создании автоматизированных систем. При этом при разработке системы необходимо учитывать оборудование и программное обеспечение, которое уже имеется в филиале ЮУрГУ, для того, чтобы минимизировать расходы на приобретение и установку дополнительного оборудования, поддерживающего работу внедряемой системы, а также может значительно снизить затраты на этапе разработки системы. Также одним из требований, предъявляемых к разрабатываемой системе, является создание удобного, не перегруженного лишней информацией и функционалом пользовательского интерфейса, обеспечивающего легкое восприятие и обработку информации, предоставляющего свободный вывод информации в более привычном для работников предприятия виде, как например, в формате Word документа. Помимо этого информационная система должна обеспечивать разграничение предоставляемой информации в зависимости от роли пользователя, обладать устойчивостью к ошибкам и к негативным входным данным. 1.4 Выбор средств разработкиПрежде чем приступить к выбору средств разработки, необходимо оценить масштабы будущей ИС, потому как от этого может зависеть, какие технологии необходимо будет использовать для решения поставленной проблемы. Проведем некоторые математические вычисления. Все используемые при подсчетах данные основаны на показателях филиала ЮУрГУ на текущий момент времени. Число обучающихся в филиале ЮУрГУ по очной форме обучения – 700 человек, преподавательский состав насчитывает порядка 70 человек, анкета «Преподаватель глазами студента» состоит из 10 вопросов. Учитывая, что в течение года каждый студент изучает не более 20-25 дисциплин, и даже если все дисциплины ведутся разными преподавателями, мы получаем, что БД будет насчитывать 150 тысяч записей. Однако даже это число является завышенным и в реальных условиях число записей не станет превышать сотни тысяч. Для современных систем управления базами данных (далее – СУБД) эта цифра не является большой, а вычислительной мощности современных ЭВМ более чем достаточно для их обработки. Проведя анализ проблемы можно сделать вывод о том, что решение проблемы автоматизации процесса анкетирования в филиале ЮУрГУ не потребует больших объемов вычислительных мощностей для обработки всего объема данных системы и не сильно ограничивает нас в выборе средств разработки, технологий и СУБД. На основании этого, разработка автоматизированной системы анкетирования велась с помощью технологии ADO.NET Entity Frameworks. Далее приведен краткий обзор используемых технологий, их особенностей, выбор среды и языка разработки. 1.4.1 Платформа .NET Framework В 2002 году компания Microsoft выпустила программную платформу, под названием .NET Framework. Основой этой платформы является общеязыковая среда исполнения Common Language Runtime (сокращенно – CLR), которая подходит для разных языков программирования. Среда CLR управляет памятью, выполнением потоков, выполнением кода, проверкой безопасности кода, компиляцией и другими системными службами. Эти средства являются внутренними для управляемого кода, который выполняется в среде CLR. Функциональные возможности CLR доступны в любых языках программирования, использующих эту среду Основной идеей при разработке .NET Framework являлось обеспечение свободы разработчика за счёт предоставления ему возможности создавать приложения различных типов, способные выполняться на различных типах устройств и в различных средах. Вторым принципом стала ориентация на системы, работающие под управлением семейства операционных систем Microsoft Windows Библиотека классов платформы .NET Framework представляет собой коллекцию типов, которые тесно интегрируются со средой CLR. Библиотека классов является объектно-ориентированной; предоставляя типы, из которых управляемый код пользователя может наследовать функции. Это не только упрощает работу с типами .NET Framework, но также уменьшает время, затрачиваемое на изучение новых средств платформы .NET Framework. Кроме того, компоненты независимых производителей можно легко объединять с классами платформы .NET Framework. Например, в классах коллекций .NET Framework реализуется набор интерфейсов, которые можно использовать для разработки пользовательских классов коллекций. Пользовательские классы коллекций будут без затруднений объединяться с классами .NET Framework. Как и ожидается от объектно-ориентированной библиотеки классов, типы .NET Framework позволяют решать типовые задачи программирования, включая работу со строками, сбор данных, подключения к серверу БД и доступ к файлам. В дополнение к этим обычным задачам библиотека классов содержит типы, поддерживающие многие специализированные сценарии разработки. Например, можно использовать платформу .NET Framework для разработки следующих типов приложений и служб: консольные приложения; приложения с графическим интерфейсом пользователя Windows (Windows Forms); приложения Windows Presentation Foundation (WPF); приложения ASP.NET или web-приложений; службы Windows; сервисноориентированные приложения с помощью Windows Communication Foundation (WCF); приложения поддерживающие бизнес-процессы Windows Workflow Foundation (WF). 1.4.2 Технология ADO.NET Entity Frameworks ADO.NET Entity Framework (далее – Entity Framework) – объектноориентированная технология доступа к данным, является object-relational mapping (ORM) решением для .NET Framework от Microsoft, что означает, что эта технология связывает БД с концепция ми объектно-ориентированных языков программирования, создавая, так называемую виртуальную объектную базу данных. Предоставляет возможность взаимодействия с объектами как посредством LINQ в виде LINQ to Entities, так и с использованием Entity SQL. Для облегчения построения web-решений используется как ADO.NET Data Services (Astoria), так и связка из Windows Communication Foundation и Windows Presentation Foundation, позволяющая строить многоуровневые приложения, реализуя один из шаблонов проектирования MVC, MVP или MVVM. В качестве одного из проводников между приложением и БД платформы Entity Framework выступает LINQ to Entities. Это альтернативный интерфейс LINQ API, используемый для обращения к БД. Он отделяет сущностную объектную модель данных от физической, вводя логическое отображение между ними. Так, например, схемы реляционных БД не всегда подходят для построения объектно-ориентированных приложений и в результате мы имеем объектную модель приложения, существенно отличающуюся от логической модели данных, в этом случае используется LINQ to Entities, который использует модель EDM (Entity Data Model). 1.4.3 Объектно-ориентированный язык программирования C# C# – объектно-ориентированный язык программирования. Разработан в 1998 – 2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как язык разработки приложений для платформы Microsoft .NET Framework и впоследствии был стандартизирован как ECMA-334 и ISO/IEC 23270. Язык программирования C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML. Переняв многое от своих предшественников – языков C++, Pascal, Модула, Smalltalk и, в особенности, Java – С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем, например, C# в отличие от C++ не поддерживает множественное наследование классов (между тем допускается множественное наследование интерфейсов). Синтаксис C# богат, но при этом прост и удобен в изучении. Характерные фигурные скобки C# мгновенно узнаются всеми, кто знаком с C, C++ или Java. Разработчики, знающие любой из этих языков, обычно очень быстро начинают эффективно работать в C#. Синтаксис C# упрощает многие сложности C++, но при этом предоставляет отсутствующие в Java мощные функции, например обнуляемые типы значений, перечисления, делегаты, лямбда-выражения и прямой доступ к памяти. C# поддерживает универсальные методы и типы, которые обеспечивают более высокий уровень безопасности и производительности, а также итераторы, позволяющие определять в классах коллекций собственное поведение итерации, которое может легко применить в клиентском коде. Выражения LINQ создают очень удобную языковую конструкцию для строго типизированных запросов. C# является объектно-ориентированным языком, а значит поддерживает инкапсуляцию, наследование и полиморфизм. Все переменные и методы, включая метод Main, представляющий собой точку входа в приложение, инкапсулируются в определения классов. Класс наследуется непосредственно из одного родительского класса, но может реализовывать любое число интерфейсов. Методы, которые переопределяют виртуальные методы родительского класса, должны содержать ключевое слово override, чтобы исключить случайное переопределение. В языке C# структура похожа на облегченный класс: это тип, распределяемый в стеке, реализующий интерфейсы, но не поддерживающий наследование. Помимо этих основных принципов объектно-ориентированного программирования, C# предлагает ряд инновационных языковых конструкций, упрощающих разработку программных компонентов. Инкапсулированные сигнатуры методов, именуемые делегатами, которые позволяют реализовать типобезопасные уведомления о событиях. Свойства, выполняющие функцию акцессоров для закрытых переменных-членов. Атрибуты, предоставляющие декларативные метаданные о типах во время выполнения. Внутристрочные комментарии для XML-документации. LINQ для создания запросов к различным источникам данных. 1.4.4 Среда разработки и интерфейс приложения Microsoft Visual Studio – линейка продуктов компании Microsoft, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. Данные продукты позволяют разрабатывать как консольные приложения, так и приложения с графическим интерфейсом, в том числе с поддержкой технологии Windows Forms, а также webсайты, web-приложения, web-службы как в родном, так и в управляемом кодах для всех платформ, поддерживаемых Windows, Windows Mobile, Windows CE, .NET Framework, Xbox, Windows Phone .NET Compact Framework и Silverlight. Visual Studio включает в себя редактор исходного кода с поддержкой технологии IntelliSense и возможностью простейшего рефакторинга кода. Встроенный отладчик может работать как отладчик уровня исходного кода, так и отладчик машинного уровня. Остальные встраиваемые инструменты включают в себя редактор форм для упрощения создания графического интерфейса приложения, web-редактор, дизайнер классов и дизайнер схемы БД. Visual Studio позволяет создавать и подключать сторонние дополнения (плагины) для расширения функциональности практически на каждом уровне, включая добавление поддержки систем контроля версий исходного кода (как, например, Subversion и Visual SourceSafe), добавление новых наборов инструментов (например, для редактирования и визуального проектирования кода на предметноориентированных языках программирования) или инструментов для прочих аспектов процесса разработки программного обеспечения (например, клиент Team Explorer для работы с Team Foundation Server). Visual Studio Community 2015 – это свободно распространяемая полнофункциональная интегрированная среда разработки с мощными, эффективными возможностями для кодирования, инструментами кроссплатформенных разработок мобильных приложений для Windows, iOS и Android, web- и облачных приложений, а также доступом к тысячам расширений. Разработка системы анкетирования велась именно с помощью данной версии продукта, потому как этот выпуск Visual Studio свободно доступен для отдельных разработчиков, для разработки проектов с открытым исходным кодом, академических исследований, образования и небольших групп специалистов. Одним из требований информационной является простой и удобный интерфейс. Графический интерфейс пользователя информационной системы будет представлен в виде оконного приложения, разработанного с помощью Windows Forms (далее – WinForms). WinForms – интерфейс программирования приложений (API), отвечающий за графический интерфейс пользователя и являющийся частью Microsoft .NET Framework. Данный интерфейс упрощает доступ к элементам интерфейса Microsoft Windows за счет создания обёртки для существующего Win32 API в управляемом коде. Причём управляемый код – классы, реализующие API для WinForms, не зависят от языка разработки. То есть программист одинаково может использовать WinForms как при написании ПО на C#, С++, так и на VB.Net, J# и др. |