Эффективное проектирование информационной системы: ключевые моменты

Системное проектирование

Советы начинающим проектировщикам

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

  1. Не бойтесь делать. Это главное. “Глаза боятся, а руки делают” — народная мудрость. Или “не боги горшки обжигают”. Да, это сложно. Но разобраться можно во всём. Невыполнимых задач не существует.
  2. Не бойтесь ошибаться. Вроде бы это входит в первый пункт, но на самом деле нет. Это всё-таки другое. Многие боятся совершить ошибку, “облажаться”. Напрасно. Открою вам тайну — ошибаются все. Даже самые матёрые профессионалы. Иначе бы самолёты не падали. И так уж человек устроен, что лучше всего он учится именно НА СВОИХ ошибках.
  3. Не бойтесь показаться глупым. Не бойтесь спрашивать. Отбросьте все комплексы — все мы когда-то пИсали в штаны. И если вас кто-то гнобит за ваши незнания, не обращайте внимания. Так поступают только люди с комплексами неполноценности — им надо самоутверждаться за счёт других. Настоящий же мастер всегда поможет разобраться со сложным вопросом, потому что он помнит, что когда-то и он был таким.
  4. Изучайте законы, , ГОСТы и другие официальные документы, касающиеся вашей отрасли.
  5. Изучайте средства разработки — это поможет вам повысить эффективность использования рабочего времени (снизить трудозатраты). Особенно это вам пригодится, если вы будете фрилансером. Потому что вы сможете делать больше за то же время, что позволит вам больше зарабатывать и получать больше клиентов.
  6. Как можно больше практики на этапе входа в профессию. Делайте любые проекты. Даже если вам за это не платят или платят мало. Платить хорошо будут, когда вы наберётесь опыта. Но этого опыта вы никогда не наберётесь, если будете отказываться от работы.

Что делает системный аналитик?

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

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

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

Преимущества системного проектирования

Вот несколько ключевых преимуществ системного проектирования:

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

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

Масштабируемость: Масштабируемость — это способность системы справляться с увеличивающимися объемами работы или ее потенциал для обеспечения роста. Хорошо спроектированную систему можно легко масштабировать в соответствии с меняющимися требованиями, будь то увеличение числа пользователей, транзакций или объема данных.

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

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

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

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

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

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

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

Заключение

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

1.1 Основы разработки программ

Проектирование программ — это процесс разработки проекта программы. Также под этим термином понимается учебная дисциплина, в которой изучают различные способы проектирования. Проектирование программ является частным случаем проектирования продуктов и процессов.

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

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

Процесс программирования может сопровождаться как «ручным» проектированием, так автоматизированным. Это зависит от класса создаваемого продукта. В процессе проектирования программы для выражения его характеристик используются различные нотации — блок-схемы, ER-диаграммы, UML-диаграммы, DFD-диаграммы, а также макеты.

Проектированию обычно подлежат:

  • Архитектура программного обеспечения;
  • Устройство компонентов программного обеспечения;
  • Пользовательские интерфейсы.

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

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

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

Использование метафоры очень важно. Во-первых, пользователю легче понимать и интерпретировать изображение на экране

Во-вторых, ему не нужно каждый раз заглядывать в руководство, чтобы узнать, как выполняется то или иное действие. По крайней мере, некоторые действия должны «естественно» следовать из метафоры. В-третьих, у пользователя возникает чувство психологического комфорта, характерного для встречи с чем-то знакомым.

SolidWorks

Трехмерный программный комплекс для автоматизации конструкторских работ промышленного предприятия. Разработчик – компания Dassault Systemes.

 Черты системы, выгодно отличающие ее от других CAD:

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

 UPD к сожалению, сейчас приобрести продукты SolidWorks на территории России невозможно

Пользовательская документация

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

Пользователи, владельцы систем, аналитики и программисты прилагают совместные усилия для разработки руководства пользователя.

Пользовательская документация должна включать:

  • Обзор системы, в котором четко описаны все основные функции, возможности и ограничения системы.

  • Описание содержания, подготовки, обработки и образцов исходного документа.

  • Обзор опций меню и экрана ввода данных, содержания и инструкций по обработке.

  • Примеры отчетов, которые составляются регулярно или доступны по запросу пользователя, включая образцы.

  • Информация о безопасности и контрольном журнале.

  • Объяснение ответственности за конкретные требования к вводу, выводу или обработке.

  • Процедуры запроса изменений и сообщения о проблемах.

  • Примеры исключений и ошибочных ситуаций.

  • Часто задаваемые вопросы (FAQ).

  • Объяснение того, как получить помощь и процедуры обновления руководства пользователя.

Преимущества для пользователей

Использование СППР позволяет:

Руководителям проектов

  • Организовать централизованный учет требований и пожеланий к информационной системе.
  • Выстроить целостную модель системы, отталкиваясь от автоматизируемых процессов, с возможностью проверки корректности модели.
  • Управлять изменениями в проекте.
  • Формировать план выполнения проекта.
  • Контролировать выделение ресурсов в рамках проектов и конкретных задач.
  • Анализировать завершенность проекта (выполнение необходимых задач, отсутствие ошибок).

Разработчикам

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

Техническим писателям

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

Тестировщикам

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

Внедренцам

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

Концептуальная модель ИИС

Интегрированная информационная система (ИИС)
Компании представляет собой разветвленную сеть,
объединяющую локальные и удаленные рабочие
места пользователей.

Концептуальная структура ИИС Компании
приведена на рис. 4.

Основными элементами ИИС являются:

  • локальная вычислительная сеть
    (ЛВС) центрального офиса Компании;
  • ЛВС филиала;
  • интегрированная база данных.

ЛВС Центрального офиса Компании и филиала
реализуется на основе архитектуры
“клиент/сервер”, объединяющей
автоматизированные рабочие места сотрудников
служб и подразделений.

Группы автоматизированных рабочих мест (АРМ)
выделяются по функциональному признаку, с учетом
выполнения выделенных базовых, общих и
перспективных бизнес-процессов, перспективной
организационной структуры Компании, и
ориентируются на дерево функций перспективной
деятельности Компании.

Состав АРМ перспективной ИИС Компании имеет
следующий вид:

АРМ руководителя:

  • АРМ директора;
  • АРМ заместителей директора
    (начальников служб);

АРМ коммерческой
службы:

  • АРМ группы оборудования;
  • АРМ группы пищевых добавок;
  • АРМ группы упаковки;
  • АРМ отдела продуктов питания;
  • АРМ группы ВЭС и растаможивания;

АРМ технической службы:

  • АРМ группы ТУ и патентов;
  • АРМ группы сертификации;
  • АРМ группы рекламы и маркетинга;

АРМ финансовой службы:

  • АРМ бухгалтера;
  • АРМ финансового отдела;
  • АРМ экономического отдела;

АРМ службы обеспечения:

  • АРМ юриста;
  • АРМ специалиста по работе с
    персоналом;
  • АРМ общего отдела;
  • АРМ отдела безопасности;
  • АРМ отдела информатизации;

АРМ службы логистики:

  • АРМ службы клиентов;
  • АРМ транспортного отдела;
  • АРМ склада;

АРМ службы
производства:

  • АРМ службы технического
    обслуживания;
  • АРМ группы строительства;
  • АРМ производственного отдела;
  • АРМ группы качества продукции.

NX

NX – флагманская система САПР производства компании Siemens PLM Software, которая используется для разработки сложных изделий, включающих элементы со сложной формой и плотной компоновкой большого количества составных частей.

Ключевые особенности NX:

  • поддержка разных операционных систем, включая UNIX, Linux, Mac OS X и Windows;
  • одновременная работа большого числа пользователей в рамках одного проекта;
  • полнофункциональное решение для моделирования;
  • продвинутые инструменты промышленного дизайна (свободные формы, параметрические поверхности, динамический рендеринг);
  • инструменты моделирования поведения мехатронных систем;
  • глубокая интеграция с PLM-системой Teamcenter.

 UPD к сожалению, сейчас приобрести продукты Siemens PLM Software на территории России невозможно

Стадия II. Формирование требований и разработка технического задания

Этапы работ Результат Дней
Системно-аналитическое обследование объекта автоматизации Проведены интервью с функциональными и IT-специалистами Заказчика.
Собрана информация о:
  • требуемых отчетах, показателя, измерениях
  • возможных системах-источниках данных
  • системном ландшафте
  • сетевом окружении
20
Анализ и обработка полученной информации Сформированы:
  • альбом показателей
  • альбом измерений и иерархий
  • альбом отчетности
  • определены источники данных для каждого показателя
20
данных данных 15
Разработка технического задания Техническое задание и приложения к нему 20
Согласование и утверждение Согласованное и утвержденное техническое задание 10

Прототипирование на основе компонентов с помощью UXPin Merge

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

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

Как работает Merge

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

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

Переход Johnson & Johnson к прототипированию на основе компонентов

Прежде чем перейти на UXPin Merge, команды дизайнеров Johnson & Johnson (J&J) использовали наборы пользовательского интерфейса на основе изображений с отдельными руководствами по стилю в формате PDF и печати. Основное затруднение заключалась в том, что…

«…вы никогда не сможете узнать, обновили ли вы все из них в соответствии с текущими стандартами предприятия. Вы можете проводить сколько угодно совещаний, но устаревшее руководство по стилю так и будет лежать в ящике чьего-то стола, ожидая, что через год или два оно усложнит вам жизнь». Бен Шектман, руководитель экспертной службы по дизайну опыта в Johnson & Johnson.

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

«Эти компоненты сохраняют всю интерактивность и при этом готовы к производству, что избавляет от множества проблем, связанных с передачей данных. Это ускоряет создание цифровых продуктов, как процесс проектирования, так и процесс разработки». Бен Шектман, руководитель экспертной службы по дизайну опыта в Johnson & Johnson.

Основные понятия системного дизайна

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

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

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

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

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

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

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

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

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

Состав прикладных задач

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

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

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

В качестве примера приведем прикладные задачи
по базовой технологии поставки оборудования. К
ним относятся:

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

Внедрение системы технологического контроля (практический кейс)

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

14

Доступ к файлам

Доступ к файлу можно получить с помощью последовательного или произвольного доступа. Методы доступа к файлам позволяют компьютерным программам читать или записывать записи в файл.

Последовательный доступ

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

Прямой (произвольный) доступ

Записи располагаются, зная их физическое местоположение или адреса на устройстве, а не их положение относительно других записей. Доступ к данным, хранящимся на CD-устройстве (прямой доступ), можно получить как последовательно, так и произвольно.

Типы файлов, используемых в системе организации

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

  • Master file— Он содержит текущую информацию о системе. Например, файл клиента, файл студента, телефонный справочник.

  • Table file— Это тип мастер-файла, который редко изменяется и хранится в табличном формате. Например, сохранение почтового индекса.

  • Transaction file— Он содержит повседневную информацию, полученную в результате деловой активности. Он используется для обновления или обработки главного файла. Например, Адреса сотрудников.

  • Temporary file — Он создается и используется системой, когда это необходимо.

  • Mirror file— Они являются точными копиями других файлов. Помогите минимизировать риск простоя в случаях, когда оригинал приходит в негодность. Их необходимо изменять каждый раз при изменении исходного файла.

  • Log files— Они содержат копии основных записей и записей транзакций для записи любых изменений, внесенных в основной файл. Это облегчает аудит и предоставляет механизм восстановления в случае сбоя системы.

  • Archive files — Файлы резервных копий, содержащие исторические версии других файлов.

Оцените статью