способ производства и сопровождения индивидуального программного продукта - технология "esc-m"

Классы МПК:G06F17/50 автоматизированное проектирование
Автор(ы):, , , ,
Патентообладатель(и):Камшицкий Игорь Юрьевич,
Гуницкий Лев Михайлович,
Игнатьев Вячеслав Васильевич,
Левитин Владимир Анатольевич,
Башнин Александр Викторович
Приоритеты:
подача заявки:
2002-05-31
публикация патента:

Изобретение относится к автоматизированному проектированию. Технический результат заключается в автоматизации всех этапов проектирования в виде единого процесса проектирования за счет функциональной ориентации рабочих мест. Способ включает ввод исходных данных, индивидуализацию массива исходных данных, дополнение массива исходных данных постоянными и типовыми данными из серверных банков данных, программно-ориентированное преобразование массива исходных данных в массив данных продукта, тестирование продукта, пересылку электронной версии продукта абоненту внешней глобальной сети и обновление постоянных и типовых данных, причем выполнение каждого действия осуществляют на обособленном функционально специализированном автоматизированном рабочем месте и сопровождают последовательным вводом в серверные банки текущих данных атрибутов начального и конечного состояний действий с функцией соответствующего последовательности действий доступа обособленного функционально специализированного автоматизированного рабочего места к массиву данных продукта, а тестирование продукта проводят посредством программного установления тождественности сигнала применимости постоянных, типовых и нетиповых данных до и после обновления, при этом в качестве сигналов доступа к массиву данных продукта используют ввод атрибутов начального и конечного состояний действий и тождественность сигнала применимости. 4 з.п. ф-лы, 14 ил.
Рисунок 1, Рисунок 2, Рисунок 3, Рисунок 4, Рисунок 5, Рисунок 6, Рисунок 7, Рисунок 8, Рисунок 9, Рисунок 10, Рисунок 11, Рисунок 12, Рисунок 13, Рисунок 14, Рисунок 15, Рисунок 16, Рисунок 17, Рисунок 18, Рисунок 19, Рисунок 20, Рисунок 21

Формула изобретения

1. Способ производства и сопровождения индивидуального программного продукта (технология "ESC-M") посредством распределенной обработки данных вычислительной системой в виде локальной сети специализированных автоматизированных рабочих мест и серверных банков постоянных, типовых, нетиповых и текущих данных, имеющий выход во внешнюю глобальную сеть, включающий последовательные действия ввода исходных данных, индивидуализацию массива исходных данных, дополнение массива исходных данных постоянными и типовыми данными из серверных банков данных, программно-ориентированное преобразование массива исходных данных в массив данных продукта, тестирование продукта, пересылку электронной версии продукта абоненту внешней глобальной сети и обновление постоянных и типовых данных, отличающийся тем, что выполнение каждого действия осуществляют на обособленном функционально специализированном автоматизированном рабочем месте и сопровождают последовательным вводом в серверные банки текущих данных атрибутов начального и конечного состояний действий с функцией соответствующего последовательности действий доступа обособленного функционально специализированного автоматизированного рабочего места к массиву данных продукта, а тестирование продукта проводят посредством программного установления тождественности сигнала применимости постоянных, типовых и нетиповых данных до и после обновления, при этом в качестве сигналов доступа к массиву данных продукта используют ввод атрибутов начального и конечного состояний действий и тождественность сигнала применимости.

2. Способ по п. 1, отличающийся тем, что постоянные, типовые, нетиповые и текущие данные разделяют на логически обособленные массивы данных в количестве, соответствующем количеству производимых и сопровождаемых продуктов.

3. Способ по одному из пп. 1 и 2, отличающийся тем, что действие дополнения массива исходных данных постоянными и типовыми данными из серверных банков данных сопровождают индивидуализированным сигналом блокировки привлеченной части постоянных и типовых данных, а обновление постоянных и типовых данных сопровождают сигналом деблокировки, при этом в качестве формата сигналов блокировки и деблокировки используют тождественный атрибут начального состояния упомянутого действия.

4. Способ по одному из пп. 1-3, отличающийся тем, что сигнал доступа к массиву данных продукта сопровождают сигналом уведомления обособленного функционально специализированного автоматизированного рабочего места, соответствующего последовательности действий.

5. Способ по одному из пп. 1-4, отличающийся тем, что тестирование продукта проводят, по меньшей мере, на двух обособленных функционально специализированных автоматизированных рабочих местах, соответственно их специализации и последовательности действий, при этом для тестирования создают локальную копию постоянных, типовых и нетиповых данных.

Описание изобретения к патенту

Изобретение относится к автоматизированному проектированию.

Известен способ проектирования контактной сети железнодорожного транспорта, заключающийся в разделении всех данных проекта по функциональному принципу с использованием, в частности, банка постоянных данных, банка данных типовых узлов и деталей, банка нормативных данных, банка данных нетиповых проектных решений, банка данных промежуточных решений, причем обмен данными между всеми банками данных, а также между любым банком данных и проектировщиком и контроль промежуточных вариантов проекта осуществляются под управлением по меньшей мере одного программного модуля (RU 2172978, МКИ G 06 F 17/50).

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

Наиболее близким аналогом заявляемому является способ производства и сопровождения индивидуального информационного продукта посредством распределенной обработки данных вычислительной системой в виде локальной сети специализированных автоматизированных рабочих мест и серверных банков постоянных, типовых, нетиповых и текущих данных, имеющей выход во внешнюю глобальную сеть, включающий последовательные действия ввода исходных данных, индивидуализацию массива исходных данных, дополнение массива исходных данных постоянными и типовыми данными из серверных банков данных, программно-ориентированное преобразование массива исходных данных в массив данных продукта, тестирование продукта, пересылку электронной версии продукта абоненту внешней глобальной сети и обновление постоянных и типовых данных данными продукта (RU 2159957, G 06 F 17/40, 2000 г.).

Недостатком известного способа является отсутствие технологически предопределенного контроля и обеспечения последовательности функционального взаимодействия автоматизированных рабочих мест, что в конечном итоге не позволяет эффективно управлять процессом производства и сопровождения индивидуального информационного продукта, применять способ для автоматизированного проектирования индивидуального информационного продукта в виде программного продукта, вести одновременно несколько проектов программного продукта в режиме разделения времени и поддерживать несколько индивидуальных версий программного продукта.

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

Технический результат, который может быть получен при осуществлении изобретения, заключается в автоматизации всех этапов проектирования в виде единого процесса с измеряемыми характеристиками; обеспечении эффективной управляемости процесса проектирования за счет функциональной ориентации рабочих мест; обеспечении возможности вести одновременно несколько проектов в режиме разделения времени; обеспечении возможности свободной передачи данных (проектных решений, готовых модулей, функций, документов и т.п.) из одного проекта в другой; обеспечении прослеживаемости элементов проекта; снижении количества ошибок в проектируемых версиях; недопущении возможности включения в проект элементов, не прошедших контроля и испытаний или признанных по результатам контроля не соответствующими установленным требованиям; накоплении данных о качестве продукции (о недостатках, замеченных в ходе контроля и испытаний, о замечаниях, претензиях и пожеланиях клиентов) для их систематизации, последующего анализа и принятия решений; обеспечении возможности удаленной модификации работающих клиентских версий продукта без остановки их работы.

Указанный технический результат достигается способом производства и сопровождения индивидуального программного продукта - технологией "ESC-M" посредством распределенной обработки данных вычислительной системой в виде локальной сети специализированных автоматизированных рабочих мест и серверных банков постоянных, типовых, нетиповых и текущих данных, имеющей выход во внешнюю глобальную сеть, включающим последовательные действия ввода исходных данных, индивидуализации массива исходных данных, дополнения массива исходных данных постоянными и типовыми данными из серверных банков данных, программно-ориентированного преобразования массива исходных данных в массив данных продукта, тестирования продукта, пересылки электронной версии продукта абоненту внешней глобальной сети и обновления постоянных и типовых данных данными продукта, за счет того, что выполнение каждого действия осуществляют на обособленном, функционально специализированном автоматизированном рабочем месте и сопровождают последовательным вводом в серверные банки текущих данных атрибутов начального и конечного состояний действий с функцией соответствующего последовательности действий доступа обособленного, функционально специализированного автоматизированного рабочего места к массиву данных продукта, а тестирование продукта проводят посредством программного установления тождественности сигналов применимости постоянных, типовых и нетиповых данных до и после обновления, при этом в качестве сигналов доступа к массиву данных продукта используют ввод атрибутов начального и конечного состояний действий и тождественность сигналов применимости.

Указанный технический результат достигается за счет того, что постоянные, типовые, нетиповые и текущие данные разделяют на логически обособленные массивы данных в количестве, соответствующем количеству производимых и сопровождаемых продуктов.

Указанный технический результат достигается за счет того, что действие дополнения массива исходных данных постоянными и типовыми данными из серверных банков данных сопровождают индивидуализированным сигналом блокировки привлеченной части постоянных и типовых данных, а обновление постоянных и типовых данных сопровождают сигналом деблокировки, при этом в качестве формата сигналов блокировки и деблокировки используют тождественные атрибуты начального состояния упомянутого действия.

Указанный технический результат достигается за счет того, что сигнал доступа к массиву данных продукта сопровождают сигналом уведомления функционально обособленного специализированного автоматизированного рабочего места, соответствующего последовательности действий.

Указанный технический результат достигается за счет того, что тестирование продукта проводят по меньшей мере на двух обособленных, функционально специализированных автоматизированных рабочих местах, соответственно их специализации и последовательности действий, при этом для тестирования создают локальную копию постоянных, типовых и нетиповых данных.

Термин "программный продукт" ("продукт") означает информационный продукт, главной частью которого является программа (одна или несколько) для ЭВМ, а также, возможно, дополнительные данные для ее (их) использования (функционирования): документация, настройки, базы данных, изображения и т.д.

Термин "индивидуальный продукт" означает программный продукт, используемый отдельным потребителем для удовлетворения определенных потребностей и требующий для использования другим потребителем индивидуальной доработки (не нарушающей тождества продукта) в соответствии с особенностями потребностей этого потребителя (не нарушающими однородности потребностей).

Термин "данные" подразумевает совокупность информационных сигналов, представленных в физической среде в виде, позволяющем хранить, передавать или обрабатывать их с помощью технических средств.

Термин "атрибут . . .действия" подразумевает неделимую на более мелкие смысловые единицы совокупность данных, зафиксированных физической средой и характеризующих сущность состояния действия.

Термин "массив данных" подразумевает совокупность данных, зафиксированных физической средой как логически обособленная индивидуализированная сущность, позволяющая хранить, передавать или обрабатывать ее с помощью технических средств

Определение "тождественность сигналов применимости ...данных" подразумевает информационный сигнал в физической среде, воспринимаемый аппаратно-программными средствами как атрибут - признак, характеризующий идентичность функционирования системы постоянных, типовых и нетиповых данных до и после обновления.

Термин "программное пополнение" ("пополнение") означает совокупность новых и (или) измененных в ходе разработки (модификации) продукта программ и данных, которые (после надлежащих проверок) включаются в состав продукта, дополняя или заменяя составляющие его программы и данные. Заказчику пополнение обычно передается в виде файла, содержащего программы и данные (т.е. постоянные, типовые и др. данные). Файл программного пополнения может быть передан заказчику на одном из машинных носителей либо отправлен электронной почтой.

Реализация заявляемого изобретения показана на примере работы вычислительной системы в виде локальной сети специализированных автоматизированных рабочих мест и серверных банков и поясняется чертежами, где:

на фиг. 1 показана блок-схема локальной сети;

на фиг. 2 - блок-схема серверного банка данных;

на фиг. 3 - блок-схема автоматизированного рабочего места технолога-постановщика;

на фиг. 4 - блок-схема автоматизированного рабочего места аналитика-спецификатора;

на фиг. 5 - блок-схема автоматизированного рабочего места разработчика;

на фиг. 6 - блок-схема автоматизированного рабочего места аналитика-контролера;

на фиг. 7 - блок-схема автоматизированного рабочего места технолога-тестировщика;

на фиг. 8 - блок-схема автоматизированного рабочего места документатора;

на фиг. 9 - блок-схема автоматизированного рабочего места технолога-кондуктора банка;

на фиг. 10 - функциональная схема системы контроля фаз технологического цикла;

на фиг. 11 - функциональная схема системы разделения и установки;

на фиг. 12 - функциональная схема системы рассылки пополнений;

на фиг. 13 - функциональная схема взаимодействия в локальной сети;

на фиг. 14 - алгоритм работы системы контроля фаз.

Вычислительная система содержит обособленные автоматизированные рабочие места, функционально специализированные на месте 1 - для технолога-постановщика, на месте 2 - для аналитика-спецификатора, на месте 3 - для разработчика (или как множество мест 3 - для группы разработчиков программного продукта различных технологических цепочек), на месте 4 - для аналитика-контролера, на месте 5 - для технолога-тестировщика, на месте 6 - для документатора и на месте 7 - для технолога-кондуктора банка.

Вычислительная система содержит группу серверных банков 8 данных (по числу разрабатываемых проектов), каждый из которых содержит полную информацию об одном проекте, систему 9 контроля фаз технологического цикла, систему 10 разделения и установки данных, систему 11 средств рассылки программных пополнений, систему 12 средств доступа во внешнюю глобальную сеть (Internet). Перечисленные средства объединены в локальную сеть, например, с топологией общей шины 13, где вход 14 рабочего места 1 является входом системы, а выход 15 системы средств 12 является выходом системы для работы в глобальной сети (Internet).

Каждый серверный банк 8 данных разделен на банки постоянных (хранимых без обработки) данных 16, типовых данных (функций) 17, постоянных (нормативных) данных 18, нетиповых данных (результативных проектных решений) 19 и текущих данных (настроек) 20, а также, возможно, другие банки данных, вводимые по необходимости (фиг. 2). Упомянутые банки могут быть физически реализованы как раздел дисковой памяти компьютера (например, папка с файлами в системе DOS или Windows, либо одиночный файл), стандартные средства сетевой операционной системы которого (например, NetWare или Windows NT) обеспечивают доступ пользователей с других рабочих мест сети к разделам серверного банка 8. Этими же средствами обеспечивается защита банков данных от модификации пользователями (минуя систему 10 разделения и установки). Серверные банки данных хранят полную информацию о проектах, при этом постоянные, типовые, нетиповые и текущие данные разделяют на логически обособленные массивы данных в количестве, соответствующем количеству производимых и сопровождаемых продуктов. Таким образом, при N проектах продуктов могут использоваться N банков постоянных данных, N банков типовых данных, N банков нетиповых данных и т.д. При необходимости могут организовываться и другие массивы, либо разделяться на более мелкие, либо, наоборот, объединяться в более крупные массивы данных.

Рабочее место 1 технолога-постановщика (фиг. 3) содержит локальный банк данных 21, являющийся локальной копией одного из серверных банков данных одного из проектов продукта, и банк 22 промежуточных решений, куда помещаются, например, материалы, необходимые для подготовки технического задания, предложения заказчика и разработчиков, тестовые наборы данных для самотестирования задачи разработчиком в процессе ее отладки и т.п. Этот банк данных, как и остальные, представляет собой раздел каталога дисковой памяти персонального компьютера технолога-постановщика. Входящие в состав рабочего места 1 (и всех остальных рабочих мест) средства 23 ввода, представления и обработки данных являются стандартным компьютерным оборудованием, например персональным компьютером типа IBM-PC, включающим центральный процессор, оперативную и дисковую память, клавиатуру и "мышь" в качестве устройств ввода, дисплей в качестве устройства вывода информации. При необходимости рабочие места могут комплектоваться дополнительными устройствами, если это необходимо для конкретной задачи. К таким устройствам относятся, например, нестандартные печатающие устройства, кассовые аппараты, устройства идентификации пользователя по руке или отпечатку пальца, устройства чтения пластиковых карт и т.п. Как правило, подобное нестандартное оборудование включается в состав рабочего места лишь на время их работы над соответствующей задачей. В состав его программного обеспечения 24 входят средства обработки текстов (например, текстовый процессор MS Word), средства выполнения расчетов (например, процессор электронных таблиц MS Exel), средства деловой графики (построение графиков и диаграмм средствами MS Exel или Lotus-1-2-3, презентаций средствами MS Power Point) и средства описания процессов (например, программный пакет Bpwin фирмы Platinum).

Рабочее место 2 аналитика-спецификатора (фиг. 4) содержит аппаратные средства 25 ввода, представления и обработки данных, а также локальный банк 26 данных в виде локальной копии серверного банка 8 данных, аналогичные установленным на рабочем месте 1. Функциональная специализация обеспечивается наличием дополнительных банков данных с описаниями алгоритмов 27, описаниями переменных 28 и описаниями форм 29. Эти данные используются аналитиком-спецификатором для оценки возможности реализации поставленной задачи с помощью имеющихся в руках разработчика средств (имеющихся в системе массивов данных, экранных и печатных форм, имеющихся функций). Аналитик-спецификатор составляет перечень основных переменных, форм и функций, которые необходимо использовать при реализации данной задачи, а также (при необходимости) формулирует задания системным программистам на разработку новых системных функций. Поскольку результаты работы аналитика-спецификатора предназначены только для разработчика, его программными инструментами являются лишь средства обработки текстов (MS Word) и средства описания процессов (Bpwin).

Рабочее место 3 разработчика (фиг. 5) содержит те же аппаратные средства, что и упомянутые рабочие места, а именно средства 23 ввода, представления и обработки данных, являющиеся стандартным компьютерным оборудованием, например персональным компьютером типа IBM-PC, и локальный банк данных 21, являющийся локальной копией одного из серверных банков 8 данных одного из проектов программного продукта. Аппаратные средства при необходимости могут быть дополнены иным оборудованием для решения конкретной задачи (например, специализированные печатающие устройства, устройства чтения штрих-кода, устройства идентификации пользователя по руке или отпечатку пальца, кассовые аппараты, аппараты для подсчета банкнот, выдачи наличных и т. п.).

Функциональная специализация обеспечивается наличием банка 30 промежуточных решений для накопления вариантов проектных решений, составляющих личный опыт разработчика (черновики, наброски, предварительные версии программ, массивов данных, описаний, комментариев и т.п.), а также банка 31 тестовых данных, который содержит отладочные тестовые данные, подготовленные как самим разработчиком, так и технологом-постановщиком для самопроверки в процессе разработки. Эти тестовые данные позволяют выявить в процессе предварительной отладки программы наиболее грубые ошибки и удостовериться в выполнении разрабатываемым модулем перечисленных в техническом задании функций. Основным средством функциональной специализации данного рабочего места является блок 32 инструментальных средств проектирования и разработки. С помощью этих средств обеспечивается взаимодействие между банками данных и разработчиком, формирование новых данных для включения в банки данных и модификация имеющихся в них данных в зависимости от решаемых задач. Блок 32 может включать различные инструментальные пакеты программ (трансляторы с языков программирования, такие, как М, Turbo Pascal, C++. различные СУБД, например FoxPro, Cache", системы визуального программирования, например VBasic, Delphy, средства проектирования Web-страниц, например Dream Weaver), а также отладчики (Turbo Debugger) дизассемблеры, пакеты программ для генерации отчетов (Cristal Report) и др.

Для проверки вычислений и подготовки численных примеров предусматриваются средства 33 выполнения расчетов (например, электронные таблицы MS Exel) либо, в более сложных случаях, математические пакеты программ (например, MatCad).

Для подготовки комментариев и технической документации предусмотрены также средства 34 обработки текстов (MS Word) и средства 35 описания процессов (Bpwin).

Средствами функциональной специализации рабочего места 4 аналитика-контролера (фиг. 6), в задачу которого входит проверка соответствия разработанных модулей спецификациям, служат банк 35 данных с описаниями алгоритмов, банк 36 описаний переменных и банк 37 описаний форм, а также программные средства 38 анализа программ и данных и средства 39 обработки текстов. В качестве таких средств, в зависимости от разрабатываемой задачи, могут применяться дизассемблеры (например, ID Pro), анализаторы текстов программ (Code Wizard Plus фирмы ParaSoft, CrossWind из системы проектирования Tornado) или анализаторы поведения программ, такие как программа WindView (динамический анализатор системных событий для ОС РВ VxWorks. Краткое описание см. в Интернет http:

//www.aha.ru/%7Eavdsys/windview.htm).

При обнаружении несоответствий аналитик-контролер составляет отчет с их перечнем (используя средства обработки текста, MS Word), передаваемый разработчику.

Средствами функциональной специализации рабочего места 5 технолога-тестировщика (фиг. 7) являются банк 40 тестовых данных, в который помещаются тестовые примеры (как те, что подготовлены технологом-постановщиком, так те, что подготовлены самим технологом-тестировщиком), а также средства 41 обработки текстов, выполнения расчетов, описания процессов и выполнения настроек. Последние представляют собой заготовки данных (например, текстовые файлы), содержащие отладочные данные, такие как списки сотрудников или вкладчиков, суммы на счетах, дневники проведения операций с вкладами и т.п., а также средства подготовки таких данных. Например, для проверки программы, формирующей отчет о счетах, открытых в отделении банка за отчетный месяц, необходимо ввести в систему данные об открытых счетах. Может понадобиться несколько сотен или тысяч таких данных. Чтобы не вводить их вручную, имеются специальные программы-генераторы, позволяющие автоматически сформировать эти данные в необходимом количестве.

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

Для подготовки подсказок и контекстной документации используются специальные редакторы гипертекстов, например WYSI-Help Composer (см. http: //www. clarion. ru/win/products/prod/control. asp?FileName=7000133) или др. Кроме того, имеется специальный банк данных для хранения промежуточных и черновых вариантов.

Разрабатывая документацию, документатор выполняет описываемые в ней действия, поясняет примерами. Эта деятельность позволяет выполнить еще один цикл проверки работоспособности системы и удобства ее использования. Поэтому рабочее место документатора оснащено теми же средствами описания процессов и выполнения расчетов, что и рабочие места 1 и 5. Дополнительным средством функциональной специализации рабочего места 6 документатора является банк 42 промежуточных вариантов документов для накопления вариантов документации, составляющих личный опыт документатора, и средство подготовки контекстных подсказок 43.

В обязанности технолога-кондуктора банка входит отправка программных пополнений абонентам (клиентам) внешней глобальной сети и отслеживание очередности их установки у клиентов. Если отсылается программное пополнение, зависящее от предыдущих пополнений, то технолог-кондуктор должен убедиться, что предыдущие пополнения установлены в системе клиента, иначе отправка должна быть задержана. Для выполнения этих функций технолог-кондуктор, помимо прочего, имеет на своем рабочем месте 7 (фиг. 9) банк 44 данных об отправленных пополнениях, банк 45 данных о подготовленных к отправке (задержанных) пополнениях, банк 46 данных об установленных у клиента пополнениях, а также средства 47 работы с базами данных (например, СУБД MS Access).

Система 9 контроля фаз технологического цикла содержит банк 48 текущих данных о задачах (банк учетных записей), банк 49 данных текстовых документов, банк 50 данных паролей и прав доступа пользователей, а также систему 51 рассылки сообщений, систему 52 реального времени и систему 53 смены фаз. Система 52 реального времени предназначена для выдачи данных о состоянии задач в клиентскую зону Web-сайта компании. Она через заданный интервал времени (например, через каждые 15 минут) обращается к банку 48 учетных записей, просматривает его, выбирает записи о задачах, возникших не позднее заданной даты (например, за последние три месяца) и выдает данные о них на сайт. Клиенты, задав пароль, могут войти каждый в свою зону сайта и просмотреть информацию об этих задачах (этап работы, исполнитель, трудоемкость, планируемый срок окончания). Система 51 рассылки сообщений предназначена для оперативного оповещения участников технологической цепочки о начале их этапа работы с данной задачей. Для этого система 51 рассылки сообщений имеет в своем составе таблицу соответствия "фаза - участник технологической цепочки - текст сообщения", а команду на отсылку сообщения, фазу задачи, ее идентификатор и адрес рабочего места получает от системы 53 смены фаз. Система 53 смены фаз, входящая в состав системы 9 контроля фаз технологического цикла, выполняет ряд функций по вводу и изменению данных в банке 48 учетных записей, а также по формированию отчетов. Она выводит на экран монитора пользователя форму для ввода информации, причем возможности пользователей ограничиваются в зависимости от текущей фазы задачи.

Системы 10 разделения и установки (фиг. 11) предназначена для корректного разделения данных из серверных банков 8 между рабочими местами 3 разработчиков различных технологических цепочек с целью предотвратить уничтожение работы одного разработчика другим, устанавливающим более старую версию модуля со своими изменениями. Для этого она содержит две части: подсистему 54 блокировки и подсистему 55 установки пополнений с контролем версий. С помощью системы 10 обеспечивается бесконфликтное разделение между разработчиками тех данных, которые они получают из серверных банков 8 данных для модификации, включение в серверные банки 8 обновленных данных с учетом порядка их модификации, автоматическое помещение данных, включаемых в серверный банк 8, также и во входящий в состав системы 11 банк данных, готовых к отправке заказчику.

Подсистема 54 взаимодействует с банком 56 блокировок, в который помещаются служебные записи с именем модуля, контрольной суммой, именем разработчика и датой блокировки. Подсистема представляет собой программу-оболочку, позволяющую просматривать содержимое серверных банков 8 данных и копировать данные из них в локальные банки данных на рабочих местах 1-7. Работа с этой системой аналогична работе с программой NORTON COMMANDER.

Подсистема 55 установки пополнений с контролем версий вместе с банком 57 истории установки модулей и банком 58 данных предыдущего состояния модулей предназначена для сопровождения привлеченной или обновляемой части (модуля) постоянных и типовых данных индивидуализированным сигналом (служебной записью) с контрольной суммой, именем разработчика, датой установки. Кроме того, подсистема 55 обеспечивает включение обновленных модулей, содержащихся в пополнении, в систему заказчика аналогично включению обновлений в серверные банки данных 8. Заказчик использует такую же систему для включения обновленных модулей, содержащихся в присланном пополнении, в свою систему (с остановкой или без остановки ее работы).

Система рассылки пополнений 11 (фиг. 12) может быть реализована в виде программы электронной почты, которая, имея блок 59 отправки файлов по электронным адресам, запускается автоматически через установленные интервалы времени, проверяет наличие файлов в заранее известных разделах каталога (каждому клиенту соответствует свой раздел каталога) и при их наличии отсылает их по соответствующим электронным адресам. Отосланные файлы перемещаются из каталогов банка 60 программных пополнений (т.е. файлов с обновленными модулями), в которых они находились до отправки, в новые каталоги - отправленных файлов (банк 61 отосланных программных пополнений). Эти каталоги составляют в совокупности банк данных отправленных файлов. С помощью средств рассылки программных пополнений обеспечивается автоматическая отсылка модифицированных данных и программ клиентам для включения их в клиентские версии продукта с остановкой или без остановки работы.

Системы 9, 10 и 11, являясь серверными приложениями, также могут быть реализованы в виде компьютера с соответствующим программным обеспечением, например, в виде сервера локальной вычислительной сети. Подсистемы, обеспечивающие функциональную специализацию рабочих мест, являются клиентскими приложениями.

Работа системы и реализация заявляемого способа (на примере выполнения задачи модификации некоторого модуля) осуществляется следующим образом.

На вход 14 рабочего места 1 (см. фиг. 13) осуществляют ввод исходных данных - задание на доработку (модификацию) версии сопровождаемого продукта, хранящегося в одном из серверных банков данных 8. Технолог-постановщик на рабочем месте 1, при необходимости, используя систему 10 разделения и установки, создает в локальном банке данных 21 локальную копию массива данных продукта, хранящегося в одном из серверных банков данных 8, а используя систему 9 контроля фаз технологического цикла, осуществляет индивидуализацию массива исходных данных посредством новой учетной записи о возникшей задаче и ее идентификаторе, а также оценки трудоемкости и сохранения данных с учетной записью в системе 9, сопровождая это действие последовательным вводом в банк 48 текущих данных атрибута начального состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "Получена заявка на выполнение задачи".

Затем, используя входящие в состав рабочего места 1 средства 24, подготавливает техническое задание для одного разработчика. Это техническое задание вместе со служебной запиской, содержащей краткую формулировку задачи, желательный срок выполнения, ссылку на нормативные документы и, возможно, другие служебные данные (например, рекомендуемого исполнителя), помещается в банк 49 текстовых документов системы 9 контроля фаз технологического цикла под тем же идентификатором, что и учетная запись этой задачи. По окончании подготовки перечисленных текстовых документов технолог-постановщик определяет конечное состояние действия вводом данных атрибута конечного состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "ТЗ составлено и согласовано". Ввод этого значения фазы в учетную запись система 9 контроля фаз посредством входящей в ее состав системы 51 рассылки сообщений автоматически сопровождает электронным сигналом уведомления и доступа к массиву данных продукта специализированного автоматизированного рабочего места, соответствующего последовательности действий (в данном случае - автоматизированного рабочего места 2 аналитика-спецификатора). Одновременно в учетной записи автоматически фиксируется время ее перевода в данную фазу, табельный номер исполнителя и номер рабочего места, с которого выполнена запись.

Аналитик-спецификатор, получив на своем рабочем месте 2 электронное сообщение о поступлении очередной задачи в фазу "ТЗ составлено и согласовано" и доступ к соответствующему массиву, обращается к системе 9 контроля фаз с вводом в банк 48 данных атрибута начального состояния действий (учетной записи о процессе проектирования), например, повторением идентификатора и определением значения фазы состояния действия по содержащемуся в сообщении об очередной задаче. Аналитик-спецификатор получает из системы 9 ее учетную запись, а также текстовую документацию, подготовленные технологом-постановщиком. По этим документам и на основе информации из имеющихся в составе его автоматизированного рабочего места локального банка данных 26 с локальной копией массива данных продукта и банков 27, 28 и 29 данных с описаниями алгоритмов, информационных массивов, печатных и экранных форм (банк типовых проектных решений) аналитик-спецификатор оценивает возможность выполнения задачи на базе имеющихся библиотек, производит дополнение массива исходных данных структурными спецификациями, регламентирующими применение постоянных и типовых данных из серверных банков 8, и определяет конечное состояние действия вводом данных атрибута конечного состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "Задача снабжена спецификациями", при этом спецификации дополняются в банк 49 текстовых документов системы 9 контроля фаз технологического цикла. При переводе учетной записи в фазу "Задача снабжена спецификациями" система 9 контроля фаз отсылает электронным сигналом уведомления и доступа автоматизированного рабочего места 3 разработчика к массиву данных продукта.

Получив сообщение и доступ, разработчик вводом в банк 48 данных атрибута начального состояния действий (учетной записи о процессе проектирования), например, повторением идентификатора и определением значения фазы состояния действия по содержащемуся в сообщении об очередной задаче вызывает из системы 9 контроля фаз учетную запись и текстовые документы, оценивает трудоемкость реализации задачи и устанавливает срок реализации с учетом имеющихся у него других задач и их приоритета. Эти данные (срок и трудоемкость) заносятся в учетную запись. В процессе разработки разработчик фиксирует в учетной записи реальные трудозатраты на реализацию данной задачи. Если для реализации задачи необходима модификация работающих модулей, уже включенных в состав проектируемого (сопровождаемого) продукта, разработчик копирует их из соответствующего серверного банка 8 в свой локальный банк 21 данных через систему 10 разделения и установки. При этом в банке 56 этой системы автоматически индивидуализированным сигналом блокировки привлеченной части постоянных и типовых данных заводится запись в формате атрибутов начального состояния упомянутого действия, содержащая дату-время установки, имя пользователя, выполняющего блокировку, контрольную сумму и дату копирования. В результате этого устанавливается запрет на модификацию этого модуля другими разработчиками, что исключает возможность уничтожения сделанных доработок модуля из-за последующей доработки и включения в банк данных его более старых копий. С этой же целью установка обновленного модуля в серверный банк 8 выполняется автоматически системой 55 установки пополнений с контролем версий. В модуль, включаемый в банк 8, помещается служебная идентификационная запись, содержащая контрольную сумму, имя пользователя, включившего модуль в банк данных, и дату-время установки.

Для того чтобы модифицированный модуль мог быть включен в банк данных, он и заменяемая его версия должны иметь сигнал деблокировки, тождественный атрибуту начального состояния упомянутого действия. Тогда новый модуль записывается вместо старого, и в него помещается новая индивидуализирующая запись. Если же записи не тождественны, то установка не производится, а пользователю выдается сообщение о несовпадении версий. Используя массив исходных данных, данные локальной копии в локальном банке данных 21, средства 23, 32, 33, 34 и 35, разработчик осуществляет программно-ориентированное преобразование (разработку) массива исходных данных в массив данных модифицированного (сопровождаемого) индивидуального продукта. По окончании разработки проводят первичное тестирование продукта (включающего все новые и измененные модули) посредством программного установления тождественности сигнала применимости постоянных, типовых и нетиповых данных на тестовых примерах, содержащихся в локальной копии данных серверного банка 8 данных и документации, подготовленной технологом-постановщиком.

Завершение действия на автоматизированном рабочем месте 3 разработчика фиксируется операцией ввода в систему 9 атрибутов конечного состояния действия вводом данных атрибута конечного состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "Передана на аналитический контроль". Эта операция автоматически приводит к посылке системой 9 электронного сообщения и доступа к массиву данных индивидуального продукта автоматизированного рабочего места 4 аналитика-контролера.

Аналитик-контролер вводом в банк 48 данных атрибута начального состояния действий (учетной записи о процессе проектирования), например, повторением идентификатора и определением значения фазы состояния действия по содержащемуся в сообщении получает доступ к массиву данных индивидуального продукта. Средствами специализации автоматизированного рабочего места 4 аналитик-контролер осуществляет контроль блокирования в серверном банке 8 данных модифицируемых модулей и контроль соответствия разработанного (модифицированного) индивидуального продукта спецификациям задачи. При обнаружении несоответствий или отсутствия блокировки он определяет конечное состояние действия вводом данных атрибута конечного состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "Возврат с аналитического контроля" (с автоматической отсылкой сообщения на автоматизированное рабочее место 3 разработчика) для устранения несоответствий (перечень несоответствий пересылается при необходимости из локального банка 21 данных рабочего места 4 в локальный банк 21 данных рабочего места 3). Если несоответствий не обнаружено, аналитик-контролер определяет конечное состояние действия вводом данных атрибута конечного состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "Передано на технологическое тестирование". Ввод этой фазы в учетную запись система 9 контроля фаз посредством входящей в ее состав системы 51 рассылки сообщений автоматически сопровождает электронным сигналом уведомления и доступа к массиву данных индивидуального продукта специализированного автоматизированного рабочего места, соответствующего последовательности действий, в данном случае - автоматизированного рабочего места 5 технолога-тестировщика.

Последний, получив сообщение и доступ, обращается к системе 9 с вводом в банк 48 данных атрибута начального состояния действий (учетной записи о процессе проектирования), например, повторением идентификатора и определением значения фазы состояния действия по содержащемуся в сообщении и получает доступ к массиву данных индивидуального программного продукта, открывает на своем рабочем месте 5 учетную запись и комментарии разработчика, содержащие рекомендации по тестированию, и выполняет контроль соответствия функционирования продукта функциональным спецификациям и тестирование продукта посредством программного установления тождественности сигнала применимости постоянных, типовых и нетиповых данных до и после обновления с использованием локальной копии серверного банка 8 данных, банка 40 тестовых данных и средств 33, 34, 35 на рабочем месте 5. При обнаружении несоответствий он определяет конечное состояние действия вводом данных атрибута конечного состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "Возврат с технологического тестирования" с автоматической отсылкой сообщения на автоматизированное рабочее место 3 разработчика (перечень несоответствий затем также пересылается в локальный банк 21 данных разработчика). Если же несоответствий не обнаружено, технолог-тестировщик средствами 41 обращается к системе 10 разделения и установки и включает программное пополнение в серверный банк данных, при этом система 10 автоматически выполняет контроль версий, а также сохраняет старую копию изменяемого модуля на случай отмены изменений. Затем уже в обновленном серверном банке данных выполняются все необходимые настройки и проводится комплексная проверка работоспособности модуля в системе на сервере (а также проверка работоспособности других модулей системы, зависимых от вновь включенного). Если несоответствие обнаружено на этом этапе, то с помощью системы 10 выполняется автоматическое восстановление предыдущего состояния серверного банка 8 данных, модуль возвращается на автоматизированное рабочее место 3 разработчика и определяется конечное состояние действия вводом данных атрибута конечного состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "Возвращено с технологического тестирования" с автоматической отсылкой сообщения на автоматизированное рабочее место 3 разработчика. При подтверждении тождественности в серверном банке 8 данных система 10 установки одновременно автоматически помещает обновленные данные продукта (в виде файла пополнения) в буферный банк 60 данных системы 11 рассылки пополнений, а конечное состояние действия определяется вводом данных атрибута конечного состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "Готова к отправке заказчику" с автоматической отправкой сообщений и доступа на автоматизированное рабочее место 7 технолога-кондуктора банка и автоматизированное рабочее место 6 документатора.

Технолог-кондуктор банка вводом в банк 48 данных атрибута начального состояния действий (учетной записи о процессе проектирования), например, повторением идентификатора и определением значения фазы состояния действия по содержащемуся в сообщении получает доступ к массиву данных продукта. Средствами 12 он поддерживает связь с заказчиком, а средствами 23, 34, 35 и 43 с использованием данных банков 44, 45 и 46 он отслеживает порядок включения программных пополнений в систему заказчика. При нарушении порядка включения пополнений технолог-кондуктор задерживает пересылку электронной версии продукта абоненту глобальной сети (заказчику), если перед ним должно быть включено пополнение, которое ранее отправлено, но почему-либо не включено заказчиком в его систему. Если подобных препятствий к отправке нет, кондуктор определяет конечное состояние действия вводом данных атрибута конечного состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "Отправлено заказчику". При этом система 9 контроля фаз автоматически выдает команду системе 11 рассылки пополнений на отсылку соответствующего файла-пополнения из буферного банка 60 данных системы 11 рассылки. Последняя выполняет это автоматически, используя средства 12 доступа к внешней глобальной сети (Интернет).

Одновременно с этим документатор 6, приняв сообщение об окончании разработки очередной задачи, вводом в банк 48 данных атрибута начального состояния действий (учетной записи о процессе проектирования), например, повторением идентификатора и определением значения фазы состояния действия по содержащемуся в сообщении получает доступ к документации на нее, накопленной в системе 9 контроля фаз и, в частности, к комментарию разработчика, в котором перечислены измененные пользовательские функции.

Используя эту информацию, данные локальной копии в локальном банке 21, данные банка 42 и средства 23, 33, 34, 35 и 43, документатор проверяет, изменилось ли использование этих функций по сравнению с описанным в пользовательской документации, и, в случае изменений, отражает их в документации. Измененный фрагмент документации затем включается им в соответствующий серверный банк 8 данных и буферный банк 60 данных системы 11 рассылки пополнений, документатор определяет конечное состояние действия вводом данных атрибута конечного состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "Документация подготовлена к отправке" с автоматической отправкой сообщений и доступа на автоматизированное рабочее место 7 технолога-кондуктора банка.

Технолог-кондуктор банка вводом в банк 48 данных атрибута начального состояния действий (учетной записи о процессе проектирования), например, повторением идентификатора и определением значения фазы состояния действия по содержащемуся в сообщении получает доступ к массиву данных документации продукта и определяет конечное состояние действия вводом данных атрибута конечного состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "Документация отправлена заказчику". При этом система 9 дает команду системе 11 на автоматическую отправку, работа над задачей считается законченной, и система 5 автоматически устанавливает значение фазы "Задача выполнена". В случае, если изменения документации не требуются, документатор определяет конечное состояние действия вводом данных атрибута конечного состояния действий (учетной записи о процессе проектирования), например, определением значения фазы "Документация не обновляется", из которой также происходит автоматический переход в фазу "Задача выполнена", но без каких-либо дополнительных действий.

Таким образом, решение задачи разбивается на ряд технологических этапов, выполнение каждого этапа сопровождают автоматизированным контролем исполнения. На любом этапе работ система 9 контроля фаз технологического цикла обеспечивает выдачу отчетов о текущем состоянии любой задачи (выполняемой или законченной), о состоянии (фазе) задачи, которое она имела в заданный период времени, полную историю задачи, а также отчеты о суммарной предварительно заявленной и фактической трудоемкости любого выбранного набора задач, о датах выполнения отдельных этапов, нарушении плановых сроков и другие. Все отчеты могут выдаваться в различных разрезах: по исполнителям этапов работ, по версиям системы, по другим атрибутам, зафиксированным в учетных записях задач. Данные, содержащиеся в отчетах, могут анализироваться для принятия решений и управления процессом проектирования. С помощью средств контроля фаз технологического цикла в соответствии с алгоритмом ее работы (фиг. 14) выполняется продвижение информации о задаче по цепи производственного конвейера в соответствии с текущей фазой задачи, выдача в реальном времени информации о решаемых задачах в клиентскую зону Web-сайта компании, контроль доступа пользователей к информации о задаче (для чтения и формирования отчетов информация доступна всем, а для изменения - только тому пользователю, в чьем распоряжении находится задача).

Класс G06F17/50 автоматизированное проектирование

устройство для моделирования графика работы сотрудников учреждения -  патент 2526005 (20.08.2014)
представление динамических сеток -  патент 2521283 (27.06.2014)
способ вычисления физического значения, способ численного анализа, программа вычисления физического значения, программа численного анализа, устройство вычисления физического значения и устройство численного анализа -  патент 2519331 (10.06.2014)
портативная система имитации бурения -  патент 2517261 (27.05.2014)
компьютеризованный способ для оптимизированного по затратам расчета аэродинамических сил на летательном аппарате -  патент 2510969 (10.04.2014)
способ определения допустимого объема застройки с учетом продолжительности инсоляции при архитектурном проектировании -  патент 2505853 (27.01.2014)
способ автоматизированного управления проектированием бортовых интеллектуальных систем -  патент 2502131 (20.12.2013)
способ проверки эффективности функционирования системы, устанавливаемой на транспортное средство в конфигурации дополнительного оборудования для определения момента и степени тяжести аварии -  патент 2501080 (10.12.2013)
стрингер (варианты), способ создания модели стрингера, способ изготовления стрингера, авиакосмическое устройство (варианты), летательный аппарат (варианты) и компьютер -  патент 2492107 (10.09.2013)
способ конструирования панели из композиционного материала -  патент 2491168 (27.08.2013)
Наверх