• Начало
  • Разработване софтуерни системи

Специализиран софтуер

 

Специализираните софтуерни системи са завършени крайни продукти предлагащи цялостно обслужване в конкретна област. Обикновено предлагат услуги на групи потребители, като потребителите могат да бъдат географски отдалечени и от различни организации. Софтуерните системи имат два основни потребители: администратори, които настройват параметрите на системата, раздават права на потребителите, нива на достъп, виртуални групи, обекти и характеристики към тях, права за ползване на услугите и потребители – те използват системата по предназначението за което е създадена.


Най-често срещаната необходимост от такива системи се наблюдава при бизнеси в които може да се постигне висока степен на оптимизация и автоматизация на редица основни процеси:

 

  • Графици и екипи
  • Логистика и географски обекти
  • Анализи и прогнози
  • Калкулация на сметки, платежни документи

 

Документооборот   Управление на процеси, задачи, проекти
Финанси и счетоводство  Управление на ресурси
Инвентар и складови наличности17:13:28 Графици и екипи
Логистика и географски обекти Анализи и прогнози
Калкулация на сметки, платежни документи  


Изработването на сложна софтуерна система изисква вграждането на редица специализирани алгоритми в нея. При достигане на определено ниво на сложност се преминава към модулно изграждане на системата – тя се разделя на функционални модули, който могат да работят самостоятелно и изграждането се извършва модул по модул.


СРОКОВЕ ЗА ИЗРАБОТКА


Типичните срокове за изработване и внедряване на специализирана система от средна сложност (до 500 потребителя, 10 процеса, 500 обекта, фактуриране, CRM функции, ERP функции, електронни услуги за всички потребители) са както следва:

Първоначална дискусия за уточняване на целите - 1 месец

Анализ от високо ниво - фазиране, бюджети, сложност, зависимост, модули, последователност - 2 месеца

Изготвяне на детайлни изисквания - 2 седмици/модул

Описание на решение - начин на реализация - 1 седмица/модул

Разработване в тестова среда - 2 месеца/модул

Обратна връзка и корекции - 1 седмица/модул

Тестове - 1 ден

Интеграция - 3 дни

Пускане в експлоатация - 1 дни

Осигуряване на интегрираност на данните - 2 дни

Поддръжка


Разработване алгоритми

 

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


Уеб Трейд предлага разработване на специализирани алгоритми в случай на необходимост от изграждане на конкурентно маркетингово предимство или необходимост от висока степен на автоматизация с цел оптимизация на дейността.
 
 
ДО МОМЕНТА ИМАМЕ РАЗРАБОТЕНИ РЕДИЦА АЛГОРИТМИ МЕЖДУ КОИТО:

Aлгоритъм за адаптивен, самообучителен анализ на счетоводните отчети на дружествата на БФБ-София

Aлгоритъм за динамично изграждане и структуриране на продуктови каталози

Aлгоритъм за адаптивен анализ с натрупване на база знания относно анализ на xls файлове с произволен синтаксис

Aлгоритъм за съставяне и изчисление на сложно-съставни финансови коефициенти

Aлгоритъм за вероятностно предсказване на резултатите от футболни срещи на базата на детайлна статистическа информация

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

Aлгоритъм за генериране и управление на кодове за отстъпка в он-лайн магазин

Aлгоритъм за попълване на ценни книжа

Mеню селект – алгоритъм за ароматизирано генериране на меню при зададени брой хора и вкусови предпочитания

Aлгоритъм за генериране на виртуална маса за кетеринг


ПОВЕЧЕ РАЗРАБОТЕНИ АЛГОРИТМИ МОЖЕ ДА НАМЕРИТЕ В ДЕТАЙЛНОТО ОПИСАНИЕ НА РЕАЛИЗИРАНИ ПРОЕКТИ, СЕКЦИЯ „СПЕЦИФИЧНО НОУ-ХАУ”.


Разработване на софтуерни системи

   ОПИСАНИЕ НА ПРОЦЕСА ПО РАЗРАБОТВАНЕ НА СОТУЕРНИ СИСТЕМИ НА УЕБ ТРЕЙД


Използваме agile и scrum методология за разработване и внедряване на нашите проекти. При неясни изисквания разработването на софтуера може да отнеме повече време, затова използваме бързи прототипи, за да помогнем на клиентите ни да се ориентират и придобият представа за дизайна и функционалността възможно най-рано и ако се налага да направим корекции.


В ПОВЕЧЕТО ОТ ПРОЕКТИТЕ НИЕ РАБОТИМ ПО СЛЕДНИЯ ПРОЦЕС:

 

ПЪРВОНАЧАЛНО ОБСЪЖДАНЕ НА ПАРАМЕТРИТЕ НА ПРОЕКТА
  • ЦЕЛ: да се състави бюджет, да се определи броят и типа от вътрешни и външни потребители на платформата, персонализирани процеси, интеграция с външни платформи, отчитане, фактуриране, нужда от обработка и съхранение на информация
  • РЕЗУЛТАТ: бюджет и време за разработване и внедряване, технология
АНАЛИЗ НА ВИСОКО НИВО
  • ЦЕЛ: среща на експертно равнище с възложителя за определяне на фазите, разделяне на бюджета по фазите, сложност на фазите и зависимости
  • РЕЗУЛТАТ: решение за цялостен или фазов подход за разработване
СЪСТАВЯНЕ НА ДЕТАЙЛНИ ИЗИСКВАНИЯ КЪМ СОФТУЕРНАТА СИСТЕМА
  • ЦЕЛ: редица срещи с експерти и вътрешни потребители на възложителя за идентифициране, събиране и описване на детайлни изисквания към процеси, обекти и данни. Верификация на изискванията от възложителя.
  • РЕЗУЛТАТ: съгласувани и приети подробни изисквания
ОПИСАНИЕ И ПРЕДЛОЖЕНИЕ ЗА ДИЗАЙНА НА СОФТУЕРНАТА СИСТЕМА
  • ЦЕЛ: преобразуване на подробните изисквания в предложение за дизайн на софтуерно решение. Окончателни сесии за изясняване с потенциалните потребители.
  • РЕЗУЛТАТ: предложение с подробно описание на дизайна на софтуерното решение
РАЗРАБОТВАНЕ В ТЕСТОВА СРЕДА Разработване на всяка фаза в тестова среда. При желание възложителя се включва в екипа по разработване. Осигурява му се достъп до тестовата среда.
РАННА ОБРАТНА ВРЪЗКА И КОРЕКЦИИ В ранните сесии с потребителите на системата се идентифицират потенциалните корекции и съответно управляват очакванията.
ТЕСТВАНЕ Тестване на платформата по отношение на функционалност – удовлетворяване на първоначално заложените изисквания и софтуерен дизайн.
ИНТЕГРАЦИЯ Интеграция с други софтуерни системи като онлайн плащания, счетоводство и складиране, фактуриране, платежни платформи, държавни органи, системи за уведомяване и отчитане, аутентикация, верификация, регистри, комуникация и нотификация.
ВНЕДРЯВАНЕ Настройки на параметри, акаунти, нива на достъп, документи и процеси. Внедряване в експлоатация
МИГРАЦИЯ Конвертиране на миграция на исторически данни в новата платформа
УСЛУГИ ЗА ПОДДРЪЖКА Гаранционна и следгаранционна поддръжка. Help Desk. Управление на съдържание. Мониторинг на сървърната част. Архиви.




Инструменти и технология

 

ИНСТРУМЕНТИ ЗА РАЗРАБОТВАНЕ


В процеса на разработване на софтуер използваме инструменти следващи архитектурния модел на MVC – Model View Controller. Този модел налага разделянето на Бизнес логиката от логиката на вход и визуализация (GUI – Graphical User Interface). Бизнес логиката обикновено се състои от модели за данни като потребители, документи, клиенти и др., докато графичния интерфейс се визуализира в Уеб Браузер.


Моделът е изграден съобразно логиката на изискванията за функционалност софтуерните системи. За целите на съхранение на модела използваме инструмента релационна база данни MySQL- система за управление на релационни бази данни. Най-често се използва в комбинация с PHP при изграждането на уеб системи с по-голям обем информация. MySQL се съхранява в таблици и се създава, обработва и чете чрез заявки.


За да е пълен модела, то към данните записани е базата данни прибавяме и бизнес правила, които се прилагат върху данните. Визуализацията генерира потребителския интерфейс. За целите използваме инструмента HTML 5.0, който визуализира върху Уеб Браузъра на потребителя. Визуализацията не задържа данни, те само минават през нея. За стандартизиране на визуализацията използваме инструмента CSS - език за описание на стилове (шрифт, цвят, отстояние на елемент) на уеб документи - HTML, XML, поддържа се от всички популярни браузъри.


Контролерът приема входните заявки от потребителя, като определя дали заявката касае визуализация или промяна в модела. Контролера използва предимно инструмента PHP – скриптов език за уеб програмиране с отворен код, бърз и прагматичен и широко разпространен. Като инструмент за среда за кодиране използваме PHP - среда за PHP разработка, която работи с фронт енд технологии като HTML5, JavaScript и CSS, има интеграция със системи за контрол на версиите, снабдена е с инструменти за по-лесна и бърза работа, навигиране и рефакториране на код, дебъгване и тестване.


При функционирането, софтуерната система Уеб Браузер изпраща потребителската заявка към Уеб Сървър, който от своя страна препраща заявката на маршрутизатор. Маршрутизатора, на базата на URL дефиниции пренасочва към точно определен контролер. В някои случаи контролера генерира заявка за визуализация, където от шаблон се генерира HTML и се изпраща обратно към Уеб Браузера. В повечето случаи контролера взаимодейства с модела, който PHP елемент комуникира с базата данни и подава резултата към визуализацията.
В процена на разработване използваме: PHP OOP, Javascript, jQuery, Ajax, SOAP, JSON, XML, Db, MySQL, WEB, HTML/XHTML/DHTML, CSS, XML, Bootstrap


ТЕХНИЧЕСКИ ХАРАКТЕРИСТИКИ. ИЗИСКВАНИЯ КЪМ СРЕДАТА


ТЕХНИЧЕСКИ ПАРАМЕТРИ КЪМ СЪРВЪРНАТА СРЕДА НА РАБОТА НА СИСТЕМАТА:

  • Изходен код: Системите се разработват на скриптов, сървърен език на високо ниво – PHP версия 7.0.0.
  • Бази данни: Работната среда на системите изискват наличието на MySQL база данни версия 5.7.19 или по-нова.
  • Операционна система: Изискванията на системите по отношение на ОС са LINUX базирана Ubuntu или подобна, наличие на инсталиран mail server за обслужване на нотификациите към потребителите, наличие на web server който да обслужва HTTP заявките на клиентите на системата.


ТЕХНИЧЕСКИ ПАРАМЕТРИ КЪМ КЛИЕНТСКИТЕ КРАЙНИ УСТРОЙСТВА

Разравотваме системите с интуитивен и изчистен интерфейс, който се визуализира на терминала на клиента посредством интернет браузер. Най-добра съвместимост на системата се получава при използването на браузер Google Chrome, версия 65.0 или по-голяма. Системите са достъпни през всякакви браузери, използващи HTTP/HTTPS заявки, но при използването с други браузери или версии, може да има незначителни изменения в интерфейса произлизащи от различните интерпретации на сървърните заявки и отговори от различните браузери. Системите са проектирани за работа на браузер с „default settings” – т.е. настройки по подразбиране, и промяната на тези настройки от клиента или от други софтуери (напр. ел. подпис и подобни), може да доведе до частично, дори и пълно ограничаване на функционалността им.


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

РАБОТНА СТАНЦИЯ:

  • Процесор Pentium i3 или еквивалент или по-голям
  • Оперативна памет 2GB или повече
  • ОС Windows 7 или по-голяма; LINUX
  • Дисплей: FHD -1920 х 108

ТАБЛЕТ:

  • CPU 1GHz или по-голям
  • Оперативна памет 1GB или повече
  • Andorid или IOS
  • Дисплей: FHD -1920 х 1080, 10“ или по-голям

ТЕЛЕФОН:

  • CPU 1GHz или по-голям
  • Оперативна памет 1GB или повече
  • Andorid или IOS
  • Дисплей: FHD -1920 х 1080, 5“ или по-голям

Софтуерни системи