Аналіз підходів до створення системи автоматизації контролю та управління ходом виконання дипломних робіт
Розробка системи контролю, обліку та автоматизації подавання дипломної роботи до захисту з використанням платформи .NET, мови програмування F#, фреймворку для побудови веб-додатків ASP.NET Core MVC та Elasticsearch. Опис загальної архітектури додатку.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | украинский |
Дата добавления | 24.04.2021 |
Размер файла | 162,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Аналіз підходів до створення системи автоматизації контролю та управління ходом виконання дипломних робіт
Гриневич Дмитро Ігорович, студент, Національного технічного університету України, «Київський політехнічний інститут імені Ігоря Сікорського»
Анотація
В статті розглянута розробка системи контролю, обліку та автоматизації подавання дипломної роботи до захисту з використанням платформи .NET, мови програмування F#, фреймворку для побудови веб-додатків ASP.NET Core MVC та Elasticsearch. Описана загальна архітектура додатку та деякі її більш конкретні фрагменти, що варті уваги. Проаналізовані плюси і мінуси обраних технологій.
Ключові слова: автоматизація, документообігові, ASP.NET Core, Elasticsearch, ASP.NET Core MVC, F#.
Аннотация
Анализ подходов к созданию системы автоматизации контроля и управления процессом выполнения дипломных работ
Гриневич Дмитрий Игоревич, студент, Национального технического университета Украины, «Киевский политехнический институт имени Игоря Сикорского»
В статье рассмотрена разработка системы контроля, учета и автоматизации подготовки дипломной работы к защите с использованием платформі .NET, языка программирования F#, фреймвокрка для построения вебприложений ASP.NET Core MVC и Elasticsearch. Описана общая архитектура приложения и некоторые ее более конкретные фрагменты, которые стоят внимания. Проанализированы плюсы и минусы выбранных технологий.
Ключевые слова: автоматизация, документооборот, NET, ASP. NETCore, Elasticsearch, ASP.NET Core MVC, F#.
Summary
Analysis of approaches for automation control and diploma graduation process management
Hrynevych Dmytro, Student of the National Technical University of Ukraine, «Igor Sikorsky Kyiv Polytechnic Institute»
The article describes development of control, accounting and process of diploma graduation system with using of.NET platform, F# programming language, ASP.NET Core MVC framework for web applications and Elasticsearch. It describes whole system architecture with diving into its important fragments. Good and bad sides of the chosen technologies are analyzed.
Key words: automation, document flow,.NET, ASP.NET Core, Elasticsearch, ASP.NET Core MVC, F#.
Постановка проблеми
Процес інформатизації вищої освіти супроводжується активним впровадженням засобів інформаційних та комунікаційних технологій в різні предметні області, в професійну діяльність викладачів та організацію управління навчально-виховним процесом. Одним з таких процесів є написання та подання дипломної роботи до захисту в українських ВУЗах.
Учасники, які задіяні під час роботи над дипломною роботою чи проектом працюють над великою кількістю різних документів та самих учасників під час роботи над однією дипломною роботою досить велика кількість, при чому іноді виникає проблема версійносні документів та порушується правильний порядок проходження всіх етапів щодо подання дипломної роботи до захисту.
Аналіз останніх досліджень і публікацій
Програмування на F# описував Isaac Abraham [1], побудову архітектури додатків на функціональній мові програмування розглядав Scott Wlaschin [4]. Правильне використання та конфігурування Elasticsearch описали у своїй книзі Clinton Gormley [3] та Zachary Tong [3]. Розробку за допомогою ASP.NET Core MVC розглянув Adam Freeman [2]. Використовування докер було описано Еріаном Моуетом [5].
Мета дослідження: створення автоматизованої системи контролю та управління ходом виконання дипломних робіт, що дозволяє науковим керівникам, нормоконтролеру, секретарю державної екзаменаційної комісії (ДЕКу) та іншим взаємодіяти зі студентами протягом підготовки дипломних робіт.
Виклад основного матеріалу
Система, що була розроблена автоматизує процеси документообігу: ведення дипломних робіт студентів, їх наукових публікацій, актів впровадження, гарантійних листів тощо та організацію інформаційної взаємодії між користувачами системи.
У разі типу додатку була обрана веб-версія, оскільки це є найбільш зручним варіантом з боку використання систем такого типу.
Програма представляє собою ASP.NET Core MVC додаток, який має трирівневу архітектуру: шар представлення, шар предметної логіки та шар доступу до даних. У разі мови програмування була обрана F#. У якості сховища для даних використовувався Elasticsearch. Шар представлення написаний за допомогою ASP.NET Core MVC, шар предметної логіки є.NET Standart бібліотекою класів на F#, шар доступу до даних використовує клієнт Elasticsearch для.NET NEST. Реалізовано також сервіс нотифікацій, що дозволяє відправляти електронні листи іншим учасникам дипломного проектування у ролі background worker та модуль аутентифікації.
Elasticsearch може бути розгорнутим з Docker контейнера або як сервіс у хмарі Amazon Web Services.
При побудові шару представлення було знайдено сильні та слабкі сторони ASP.NET Core MVC у парі з F#. До сильних сторін можна віднести стабільну роботу ASP.NET Core MVC та F#, наявність великого ASP.NET Core ком'юніті та підтримкою фреймвоку Microsoft та open-source. До слабких сторін відноситься поєднання об'єктно-орієнтованої парадигми та функціональної, зокрема в controller-частинах MVC фреймворку, інфраструктурної та Razor.
Contoller сам по собі є класом, тож поєднання шаблону Partial application з функціонального програмування для впровадження залежностей функцій шару предметної логіки та доступу до бази даних, що базується на основі currying, з впровадженням залежностей, коли controller вимагає для свого існування або конфігурування якісь компоненти або параметри, є невід'ємною частиною ASP.NET Core MVC F#.
Рис. 1. Архітектура системи
Рис. 2. Принцип роботи сервіса нотифікацій
Модуль автентифікацій містить логіку автентифікації користувачів та використовує окремий індекс у Elasticsearch для збереження необхідних даних користувачів та їх ролі.
Шар доступу до даних використовує NEST-клієнт.NET для Elasticsearch, що написаний на C#, тож було необхідно реалізувати F#- адаптер для C# коду, щоб мати можливість писати код у функціональному стилі.
Сервіс нотифікацій реалізовано окремо від веб додатку, щоб не затримувати повернення запиту користувачеві. Веб-додаток складає в базу даних необхідні дані для сервісу нотифікацій, а останній, в свою чергу, отримує її з базу та відправляє. У разі помилки відправлення нотифікації буде відіслано ще раз через певний проміжок часу.
Elasticsearch був зконфігурованим таким чином, щоб мати можливість робити успішний повнотекстовий пошук, тож було встановлено плагін для українського аналізатора. Також на кожний логічний тип даних створювався окремий індекс. Для документів, що часто оновлюються, був використаний підхід applicarion side joins, для інших -- nested. Це пов'язано з тим, що використовуване документнорієнтоване сховище передбачає певне копіювання даних та оптимізоване для цього, а при зміні будь-якої властивості документу він переіндексується.
Висновки
Загальна архітектура системи з автоматизації контролю та управлінням за ходом виконання дипломних робіт зроблена правильно -- не викликає додаткових складнощів під час розробки та має чіткі границі шарів та контекстів. Elasticsearch легко розгортається як з Docker контейнеру, так і в хмарі AWS. F# як функціональна мова програмування показала себе добре, надаючи змогу писати легкий та читабельний код, але сама платформа.NET ще не має стільки готових рішень для F# як для C#, тож для деяких речей доводилося реалізовувати F# адаптери та саме використання F# в ASP.NET Core MVC потребувало навичок, як з функціонального, так і з об'єктно-орієнтованого програмування.
контроль автоматизація дипломний програмування
Література
1. Abraham I. Get programming with f# / I. Abraham. 2018. 594 p.
2. Freeman A. Pro asp.net core mvc / A. Freeman. 2016. 1031 p.
3. Gormley C. Elasticsearch: the definitive guide a distributed real-time search and analytics engine / C. Gormley, Z. Tong. 2015. 724 p.
4. Wlaschin S. Domain modeling made functional / S. Wlaschin. 2017. 297 p.
5. Моуэт Э. Использование Docker / Э. Моуэт. Москва: 2017. 356 p.
Размещено на Allbest.ru
...Подобные документы
Розробка системи, що виконує функцію автоматизації процесу пропускного пункту підприємства з використанням мов програмування PHP, JavaScript і MySql. Практичні аспекти проектування ГІС із використанням WEB-технологій і баз даних, тестування програми.
дипломная работа [1,5 M], добавлен 25.10.2012Особливості системи онлайн-агрегаторів новин, універсальної програмної платформи Microsoft Window. Використання мови програмування C#, створення бази даних. Розробка програмного продукту, алгоритм його створення. Вихідний код та інструкція користувача.
дипломная работа [730,9 K], добавлен 21.01.2016Аналіз інформаційних потоків підприємства торгівлі. Обґрунтування необхідності автоматизації складського обліку автозапчастин. Вимоги до архітектури і продуктивності клієнтської системи. Розробка модулів, алгоритмів, структури даних, інтерфейсу програми.
дипломная работа [1,6 M], добавлен 12.04.2012Приклади рішень від провідних компаній-розробників, що працюють у сфері автоматизації роботи з документами. Основні можливості систем електронного документообігу. Вибір програмного забезпечення для створення програмного продукту. Опис програмної системи.
курсовая работа [45,8 K], добавлен 06.06.2011Аналіз предметної області і постановка задачі на розробку програми для автоматизації роботи автопідприємства. Перелік та опис використаних компонентів та основних процедур програми. Опис структур та методів обробки даних. Інструкція для користувача.
курсовая работа [2,3 M], добавлен 15.02.2012Дослідження проблеми пошуку автомобілів та постановка задачі створення автокаталогу з використанням мови програмування PHP і JаvаScrіpt. Дослідження моделей прецедентів системи та їх класової архітектури. Моделювання розподіленої конфігурації систем.
курсовая работа [3,7 M], добавлен 11.10.2010Розробка програми для моделювання роботи алгоритму Дейкстри мовою C# з використанням об’єктно-орієнтованих принципів програмування. Алгоритм побудови робочого поля. Програмування графічного інтерфейсу користувача. Тестування програмного забезпечення.
курсовая работа [991,4 K], добавлен 06.08.2013Вибір технології для створення системи управління контентом. Можливості платформи Node.JS. Опис framework Express, який використовується для створення каркасу додатку. База даних MongoDB. Опис компонентів і проектних рішень. Взаємодія клієнта та сервера.
курсовая работа [5,2 M], добавлен 29.11.2013Розробка інформаційної системи для автоматизації, підвищення ефективності та спрощення роботи відділень та приймальної комісії. Опис основних класів, варіантів взаємодії системи. Процес авторизації реєстратора. Процес створення запиту в системі.
курсовая работа [694,9 K], добавлен 16.12.2014База даних як складова частина інформаційної системи. Загальні принципи створення контролерів автоматизації MS Office. Розробка гнучкої комп'ютеризованої системи, призначеної для автоматизації розрахунку учбового навантаження. Моделі представлення даних.
дипломная работа [4,7 M], добавлен 26.10.2012Визначення поняття автоматизації та інформаційної технології. Вибір мови програмування, аналіз бібліотеки класів та системи масового обслуговування. Реалізація інтерфейсу програми Visual C# 2010 Express. Діаграма класів до основних функцій программи.
курсовая работа [1,5 M], добавлен 28.04.2012Розробка елементів інформаційної системи для контролю експлуатації автотранспорту. Розробка програмного забезпечення в середовищі програмування Delphi з використанням пакету компонентів DevelopmentExpress та сервера баз даних під керуванням FireBird 2.1.
дипломная работа [4,3 M], добавлен 24.10.2012Принцип роботи СТО. Аналіз існуючих теоретико-практичних розробок по створенню інформаційних систем. Модель аналізу виконання робіт з ремонту й обслуговування на СТО. Розробка автоматизованої системи обробки інформації, опис програмного забезпечення.
дипломная работа [1,3 M], добавлен 11.10.2013Опис організаційної структури автоматизації пошуку кур'єра для виконання замовлення в фірмі "Екіпаж-Сервіс". Побудова умовно замкненої моделі. Побудова дерева цілей і дерева функцій автоматизації. Створення DFD-діаграми та опис форм документів (шаблонів).
курсовая работа [1,1 M], добавлен 12.04.2014Медична інформаційно-аналітична система "Емсімед". Аналіз програмних, апаратних засобів. Архітектурне проектування автоматизованої системи обліку медичних інструментів. Опис структурної та логічної схеми. Вибір мови програмування, керівництво користувача.
дипломная работа [2,9 M], добавлен 26.07.2013Характеристика формування навичок розробки додатків із використанням кнопкових компонентів у середовищі програмування Visual Studio. Створення програми, що переводить числа з однієї системи числення до іншої. Особливість застосування додатку Converter.
практическая работа [249,7 K], добавлен 01.12.2022Створення баз даних для автоматизування роботи торгового представника в середовищі програмування Delрhі. Опис вхідної та результуючої інформації, формалізований опис задачі. Розробка технічного та робочого проекту, опис та обґрунтування вибору структури.
курсовая работа [135,8 K], добавлен 11.10.2010Розробка та тестування додатків, які базуються на елементах мови програмування Java, принципи програмування в її середовищі. Вивчення переваг Java-платформи, прикладний програмний інтерфейс та особливості сучасних засобів створення Java-додатків.
дипломная работа [2,8 M], добавлен 22.06.2011Розробка кросплатформового інструменту електронного тестування учнів молодших та середніх класів по іноземній мові. Вибір середовища розробки та системи контролю версій. Опис мови програмування Java та лістинг програми. Апаратні та програмні вимоги.
дипломная работа [608,3 K], добавлен 26.10.2010Аналіз особливостей конвертації файлів графічних форматів з використанням технології dotNet і створення системи, яка дозволяє наочно проілюструвати принципи програмування з використанням особливостей цієї платформи. Етапи створення windows-додатків.
дипломная работа [3,1 M], добавлен 22.10.2012