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

Корпоративен софтуер в гаражни условия

Embed Size (px)

Citation preview

Page 1: Корпоративен софтуер в гаражни условия

Корпоративен софтуер в гаражни условия

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

Page 2: Корпоративен софтуер в гаражни условия

Корпоративен софтуерКой софтуер е корпоративен и какво му е толкова специалното?

Page 3: Корпоративен софтуер в гаражни условия

Enterprise software

Enterprise software, also known as enterprise application software (EAS), is purpose-designed computer software used to satisfy the needs of an

organization rather than individual users. Such organizations can vary from businesses, schools, interest-based user groups and clubs, retailers, or governments.

Enterprise software is an integral part of a (computer based) Information System, and as such includes web site software

production.

Wikipedia

Page 4: Корпоративен софтуер в гаражни условия

Категории

• Accounting software• Business intelligence (BI и Self-BI)• Business process management ( BPM)• Content management systems (CMS / ECM)• Customer relationship management (CRM)• Database

• Master data management (MDM)

• Enterprise resource planning (ERP)• Enterprise asset management (EAM)• Supply chain management (SCM)

Wikipedia

Page 5: Корпоративен софтуер в гаражни условия

Най-важните характеристики

• Винаги наличен (High availability)• Мащабируемост (Scalability)• Надеждност (Reliability)• Сигурност (Security)• Ремонтопригодност (Maintainability)• Управляемост (Manageability)• Изисква солидна инфраструктура• Изисква допълнителни дейности за поддържане в

изправно състояние• Висока себестойност

Page 6: Корпоративен софтуер в гаражни условия

„Формула 1“ на софтуера.

Page 7: Корпоративен софтуер в гаражни условия

Русенски университетКорпорация ли е, не е ли и какъв софтуер трябва да го обслужва?

Защо „гаражни условия“?

Page 8: Корпоративен софтуер в гаражни условия

Русенски университет не е корпорация, но от гледна точка на информационните системи…

… wait for it …

Page 9: Корпоративен софтуер в гаражни условия

Русенски университет

В модерни учебни зали и изследователски лаборатории [...] се обучават около 10 000 студенти и докторанти.

Обучението се провежда от 499 висококвалифицирани преподаватели на основен трудов договор...

Официален сайт на Русенски университет

Page 10: Корпоративен софтуер в гаражни условия

Русенски университет

• ≈10 000 – 12 000 обучаващи се• ≈ 500 души преподаватели• ≈ 100 – 200 души персонал• Две териториално изнесени звена – филиалите в

Силистра и Разград• 8 факултета, 32 катедри, 15 дирекции

Официален сайт на Русенски университет

Page 11: Корпоративен софтуер в гаражни условия

Русенски университет не е корпорация, но от гледна точка на информационните системи…

… wait for it … Информационното обслужване трябва да се

извършва от корпоративен клас софтуер.

Page 12: Корпоративен софтуер в гаражни условия

Защо „гаражни условия“?

• Основната цел на университета е обучението на студенти, а не производството на софтуер• Развитието на софтуера не е бизнес приоритет• Ниски заплати• Свит щат

• Липса на дългосрочна стратегия за информационно обслужване• Работа „на парче“ по „занаятчийски“

• И заради разликата с „външните изпълнители“

Page 13: Корпоративен софтуер в гаражни условия

The Системата

Page 14: Корпоративен софтуер в гаражни условия

…това, което всички наричат „система Студент“ …

… всъщност е система за обезпечаване на работните процеси за обучение на студенти.

Page 15: Корпоративен софтуер в гаражни условия

…това, което всички наричат „система Студент“ е свързано с:• Управление на студентско състояние• Управление на учебни планове• Управление на изпитни протоколи• Управление на учебен разпис• Интеграция със системите на МОН• Касови и безкасови разплащания• Натоварване на преподавателския състав• Материална база на университета• Човешки ресурси• Личен състав• Труд и работна заплата• и всичко останало…

Page 16: Корпоративен софтуер в гаражни условия

Историята

Page 17: Корпоративен софтуер в гаражни условия

Legacy

• Clipper• Човекът-система• Невъзможност да отговорят на нуждите на

организацията• „Онлайн“ какво…?• Натоварване на персонала заради липса на

автоматизация• Опашки…• Кой за какво отговаря?

Page 18: Корпоративен софтуер в гаражни условия

Началото

— Ще разработвате „система Студент“!— Добре…

Page 19: Корпоративен софтуер в гаражни условия

Началото

… ами обхват, бюджет, екип, необходими ресурси, времеви прозорец, критични функционалности, стратегия и подход за разработка?

Page 20: Корпоративен софтуер в гаражни условия

The Dark Ages

— Как върви разработката на системата, напредвате ли?— Даа-а, напредваме…

Page 21: Корпоративен софтуер в гаражни условия

Стратегически цели

• Разпределяне на отговорностите• Разгъване на работните процеси от край до край• Максимална възможна автоматизация• Проектиране за разширяемост• Интегриране на готови решения, където е възможно• Хомогенна среда от инфраструктура до line of business

приложенията• Базиране на платформи вместо собствена разработка

Page 22: Корпоративен софтуер в гаражни условия

Архитектурата

Page 23: Корпоративен софтуер в гаражни условия

Инфраструктурата

Page 24: Корпоративен софтуер в гаражни условия

Развоен център

Page 25: Корпоративен софтуер в гаражни условия

Десктоп приложение

Page 26: Корпоративен софтуер в гаражни условия

Уеб приложение

Page 27: Корпоративен софтуер в гаражни условия

SharePoint приложение

Page 28: Корпоративен софтуер в гаражни условия

Междувременно…

— Готова ли е системата?— Ами… Имаме едни архитектурните шаблони тука…— Трябва да разработите и новия сайт на университета…

Page 29: Корпоративен софтуер в гаражни условия

Новият сайт на университета 2010

Page 30: Корпоративен софтуер в гаражни условия

… 2 години по-късно…

Page 31: Корпоративен софтуер в гаражни условия

BG051PO001-3.1.08-0019„Усъвършенстване на системата за управление в Русенския университет за осигуряване на прозрачност и ефективност“

Page 32: Корпоративен софтуер в гаражни условия

По проекта

• Определихме обхват• Определихме бюджет• Определихме времеви прозорец• Сформирахме екип

• Довършихме инфраструктурата• Новият сайт на университета• Система за управление на учебните планове• Система за управление на студентското състояние

Page 33: Корпоративен софтуер в гаражни условия

Екипът…

… в момент на върхова производителност…

Page 34: Корпоративен софтуер в гаражни условия

Datacenter

Page 35: Корпоративен софтуер в гаражни условия

Новият сайт на университета 2013

Page 36: Корпоративен софтуер в гаражни условия

Новият сайт

• Базиран на SharePoint Server• … всъщност са 110 сайта, 29 приложни услуги и 19

комплекта сервизни уеб приложения с услуги• + по един сайт за всеки потребител (общо ≈12 110)• Разпределяне на отговорностите• Работни процеси за одобрение

Page 37: Корпоративен софтуер в гаражни условия

LOB системиLOB = Line of business

Page 38: Корпоративен софтуер в гаражни условия

Учебни планове

• Обезпечаване на процесите по създаване и утвърждаване на учебни планове• Domain-driven архитектура• Трислоен пласт с услуги, трислойно уеб приложение• SharePoint Provider-Hosted App за преглед на учебните

планове• Уеб базиран редактор• Работни процеси и документооборот в SharePoint

Page 39: Корпоративен софтуер в гаражни условия

Учебни планове

SharePoint Provider-Hosted App

Page 40: Корпоративен софтуер в гаражни условия

Учебни планове

SharePoint Provider-Hosted App

Page 41: Корпоративен софтуер в гаражни условия

Студентско състояние

• Обезпечаване на процесите по промяна на студентското състояние и обучение на студенти• Data-driven архитектура• Трислоен пласт с услуги, трислойно клиентско

приложение• Modern UI Point of Service десктоп приложение за

факултетните канцеларии• Работни процеси и документооборот в SharePoint

Page 42: Корпоративен софтуер в гаражни условия

Студентско състояние

Modern UI Point of Service App

Page 43: Корпоративен софтуер в гаражни условия

Студентско състояние

Modern UI Point of Service App

Page 44: Корпоративен софтуер в гаражни условия

Предстоящо през 2015

• Втори release на системите за студентско състояние и учебни планове• Система за учебен разпис• Лични профили за студентите• Преглед на собственото състояние – дисциплини, изпити,

оценки• Личен календар с разписа на занятията• Административни процедури онлайн• Office 365 for Universities

• Онлайн плащания

Page 45: Корпоративен софтуер в гаражни условия

Takeaways

Page 46: Корпоративен софтуер в гаражни условия

Когато стартирате софтуерен проект

• Задължително уточнете обхвата на функционалностите (scope)• Задължително уточнете бюджета и начина на

управление• Използвайте agile методика и изберете хора, с които

да комуникирате, когато имате въпроси или предложения• „Scale as you need” – стартирайте с малко, но винаги

проектирате за разрастване• Когато правите технологичен избор, избирайте

технологията с най-малък риск• Изучаването на технологията също е риск

• Формирайте екип!• Задължително TDD при многопластови решения!

Page 47: Корпоративен софтуер в гаражни условия

Трябва ли да разработвам enterprise клас софтуер?

ДА

Page 48: Корпоративен софтуер в гаражни условия

Как?

• On-premise, хибридно или изцяло cloud• Visual Studio Online• BizSpark• Microsoft IT Academy & MSDN• Windows Azure

Page 49: Корпоративен софтуер в гаражни условия

Благодаря за вниманието!Цветелин Павлов

http://facebook.com/tsvetelin

[email protected]