ПК Аренда

Владимир Балашов
Перечитал текст (ниже) и понял, что он вышел зубодробительным, из-за специфики изложенной темы, но так уж получается, что в две странички этого текста я затолкал 20 лет моей интеллектуальной жизни. Возможно, он будет еще и еще раз редактироваться.

В 1996 г., получив принципиальное согласие моего компьютерного наставника Сергея Пучкова, я дал объявления по областным (Московской области) газетам и рекламным изданиям, что мы (фирма "Высокие Технологии Управления") беремся за разработку заказного программного обеспечения. И удивительно, но скоро, у нас появился заказчик - Химкинский комитет по имуществу, в лице заместителя председателя комитета, сделавший заказ на программу, отслеживающую взаимоотношения комитета с его клиентами - арендаторами муниципальных объектов недвижимости и главное - автоматизированный расчет арендной платы
Первый релиз ПК Аренда был разработан в 1996 г. (версия 1.0), как надстройка СУБД Access, офисного приложения Microsoft на языке VB for Application. Но первый же опыт использования показал, ее нежизнеспособность - программа долго открывалась, непростительно долго считала. Поэтому в 1997 г. у дистрибьютора RSI, был приобретен лицензионный  Visual Basic 5.0 с компилятором машинного кода, русифицированным интерфейсом и 2-мя комплектами печатной документации, впервые в истории Microsoft, изданной на русском. А уже в середине 1997 г. Сергей переписал основной функционал на VB 5.0 (версия 2.0),  что значительно ускорило отзыв программы на действия пользователей и открыло возможность для ее систематической модернизации, что и происходит в течении последних 20 лет. В том же 1997 г. программа была зарегистрирована в РосАПО и на нее был оформлен товарный знак (Аренда) в Роспатенте. Мы объявили программе цену - 400$, хотя в то время бухгалтерия 1С версии 3.0, уже стоила 35$. Несмотря на мои активные рекламные усилия в течении нескольких лет, у нас покупали только по 1-2 лицензии в год. Одновременно, мы с Сергеем приняли на работу в качестве программиста Маргариту Саковнину, которая проработало около года, а потом через полгода уже я один Марину Пакшину, которым нужно было платить зарплату. Поэтому я один, перепродажами вычислительной техники и ПО (как дилер), ремонтом и модернизацией компьютеров, компьютерной учебой для взрослых, разработкой отдельных проектов для своего друга - Рафика Микаэляна (http://www.proza.ru/2014/02/10/1641), зарабатывал средства для финансирования дальнейшей переделки и модернизации ПК Аренда, т.е. на зарплату программистов.
Сергей приезжал из Ульяновска с доработками, отправлялся к клиентам, представляя им исправленный релиз, прямо там у клиентов дорабатывал, вновь вскрытые клиентами проблемы, потом возвращался через день, два домой в Ульяновск. Через года полтора ему это надоело или жена запретила - денег с гулькин нос, а времени тратится много. Перед Миллениумом, оказавшись без Сергея, но с желанием довести ПК Аренда до совершенства, мы вместе с Мариной Пашиной, при тех же финансовых условиях создали стабильную версию 2.4, содержавшую удовлетворительный объем функционала, сочетавшийся с минимумом ошибок. В результате этой кропотливой работы количество пользователей по Московской области к 2003 г. выросло до 30 муниципалитетов, в том числе Московский областной комитет имущественных отношений (ныне Министерство имущественных отношений), который  купил со скидкой несколько десятков рабочих мест ПК Аренда для остальных субъектов области.

Используя возникшие финансовые возможности, программа в версиях 2.5-2.8 получила бурное развитие. Упомяну только о самых заметных изменениях:
- организовано (вер. 2.4-2.6) хранение электронных документов арендного договора (архивного дела арендодателя) с возможностью их просмотра или редактирования;
- режим "регион". (вер. 2.7) с возможностью автоматического переноса муниципальных данных в базу данных (БД) Министерства Имущественных отношений;
- импорт (вер. 2.8) арендных платежей из файлов Управления Федерального Казначейства (УФК): создается БД, с данными платежных документов и Сводного реестра поступивших доходов УФК; предоставляется возможность печати платежных поручений, платежи автоматически переносятся в базу данных ПК Аренда и автоматически (частично) интегрируются с соответствующими арендными договорами;
- импорт / экспорт (вер. 2.10) выбранных договоров аренды во внешнюю БД для передачи договоров аренды, по подведомственности, вновь образованным субъектам области. Доступность систематического обмена данными в целях обновления состояния договоров, перекомпоновки БД по содержанию договоров;
- Организовано взаимодействие ПК Аренда с ПО "Платежи" (ООО "ВТУ"), и работе с БД ПО "Платежи" в формате SQL-Server'2000.

После трансляции кодов в парадигму Visual Basic 6.0 и переписывания некоторых уже не поддерживаемых частей кода, появилась версия 3.0. А вот с увольнением Марины (2010) и моим уходом (2011) на пенсию намеченные и начатые изменения не состоялись. А хотелось в версии 3.0, предоставить следующие принципиально новые возможности:
1. Распознавание Штрих-кодированных платежных извещений физических лиц 
2. Вывод документов в приложения OpenOffice
3. Импорт арендных договоров из ПК Аренда® в ПК "РМС", а после ввода в ПК РМС геометрии объектов аренды - возможность просмотра в ПК Аренда® карты с объектами аренды ПК "РМС".
4. Управление договорами купли-продажи в среде ПК Аренда®.

Сейчас, оглядываясь назад, выясняется, что ведение такой бизнес-задачи не может закончиться на создании одной программы. Продавая ее, когда у клиента уже была другая, действующая, мы брали на себя, конечно за деньги, обязательства конвертировать существующую базу данных в формат ПК Аренда. В процессе расширения клиентской базы нами был разработан десяток программ конвертации данных из БД других структур (Clarion, Dbase, Foxpro и др. в т.ч. даже Oracle) для интеграции в БД ПК Аренда; полтора десятка сопутствующих утилит на разные деловые события, вроде: "Версия БД (базы данных)", "Импорт договора", "Коррекция_БД", "Cлияние БД", "Конвертация Аренда 2.4 в Аренда 2.5"  и т.п. (по названиям можно судить о контексте программ),  макросы на VB for Applications для офисных приложений Microsoft: Excel, Word и Access. А также более крупные сопровождающие основную задачу программы, такие как, например: ПО сопряжения "Реестра собственности Московской области" с ПО "Учет договоров аренды недвижимого имущества и земельных участков", ПО "Клиенты", ПО "Платежи", и др.

Я только архитектор, а не программист, хотя в те, ныне далекие девяностые, их, программистов на VB, в общем то и не было. Ко мне приходили и потом, переучившись, работали специалисты с базовым знанием языков Delphi, Си, Assembler и др. Поэтому мне приходилось вести некое переобучение, ну и, естественно, выдачу заданий, тестирование и приемку работы программистов. Иногда над проектами работало до 4-х программистов, но особо хотелось бы отметить творческое участие в ПК "РМС" и ПО "Платежи" Ускова Андрея Юрьевича (2002-2005), Юсова Валентина Валентиновича (ПО "Платежи", 2006), а в ПК Аренда - Пашиной Марины Федоровны (1998-2008), которая, безусловно является ее третьим соавтором, а также  "соучастником" практически всех проектов фирмы.

Но самым интересным мемуарным исследованием для меня стало составление перечня работ, которые я лично выполнял в рамках проекта создания ПО. Оказалось этот список достаточно обширен: продвижение и реклама ПО, техническая поддержка пользователей (включая выезды в администрации муниципалитетов Московской области и некоторых городов центральной России), создание, модернизация и поддержка в актуальном состоянии сайта фирмы, системное администрирование вычислительной техники и локальной сети фирмы.

А вот и личное участие в разработке ПО: разработка и изменения структуры БД, включая отбор полей БД для индексации. При конвертации сторонних БД в формат ПК Аренда, предварительная перегонка данных в формат ПО Access (*.mdb) архитектура и дизайн диалоговых окон конверторов. Архитектура ПО, дизайн экранных форм, разработка и систематическая актуализация справочной системы. Трансформация исходников справки (автоматическая и ручная) из формата *.hlp в формат *.htm, организация вызова справки из кодов ПО тотально по проекту, инвентаризация и реорганизация глобальных переменных и унификация окошек msgbox и inputbox по проекту в целом. Руководство пользователя (содержание и издательская верстка). Создание дистрибутивов программ с контролем версий модулей ПО, компонентов языка, других файлов включенных в дистрибутив. Создание и контроль программной среды во время генерации исполняемых файлов и дистрибутива программы. Создание и корректура шаблонов автоматизированных выходных документов в формате Microsoft Excel и Word. Альфа-тестирование дистрибутива и ПО в различных средах (Windows 95/2000/XP ...).
Изготовление дистрибутивных дискет 3'5" , потом CD-ROM, накатка на диск, печать этикеток, наклеек на коробки DVD и CD-ROM, на ключи защиты программ от взлома Hasp, а затем Sentinel и программирование этих ключей. Как утверждает Жарков С.В.* при разработке софта 20% работы - это кодирование (программирование), а остальные 80% все остальное, т.е. как раз то самое, что выполнялось непосредственно мной.
Мое компьютерное рабочее место обычно состояло из 2 системных блоков с одним  монитором, мышью с клавиатурой и переключалкой. На первом системном блоке жили две операционки. Первая (любимая) - была основной, в т.ч. для директорской работы, в ней  находились архивы с версиями ПО, БД клиентов, выход в интернет и т.д. и т.п., т.е. для большей части работ над проектами. Вторая (Windows 95) – представляла чистую среду для генерации исполняемых файлов и дистрибутивов ПО. Второй системный блок содержал 4 чистых, т.е. первоначально установленных операционки Windows разных версий 95/2000/XP/7, с разными же версиями офиса Microsoft. На каждой из них устанавливалась и тестировалась новая версия ПО в части правильности развёртывания дистрибутива и наличия ошибок в работоспособности нового функционала. Чистота операционных систем поддерживалась созданием резервных копий разделов диска и их развертыванием (по необходимости) с помощью Acronis Partition Expert.

Мои "Любимые" книжки того времени:
- "Architectures" экзамен 70-100 Дональд Р.Брандт, рекомендовано представительством корпорации "Майкрософт" в Москве в качестве учебного пособия для подготовки к экзаменам на звание MCSD.;
- * "Shareware: профессиональная разработка и продвижение программ" Жарков С.В., СПб, БХВ-Петербург, 2003

P.S.
- ПК Аренда© - http://ooovtu.ru/Arenda.htm
- на картинке рабочее место "бухгалтера"
- Справочная система ПК Аренда© - https://yadi.sk/d/vqP2HgfY3HFpTw