Калайда В.Т., Романенко В.В. Технология разработки программного обеспечения, страница 29
Описание файла
PDF-файл из архива "Калайда В.Т., Романенко В.В. Технология разработки программного обеспечения", который расположен в категории "". Всё это находится в предмете "технология разработки программного обеспечения радиолокационных систем" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МАИ. Не смотря на прямую связь этого архива с МАИ, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "технология разработки программного обеспечения радиолокационных систем" в общих файлах.
Просмотр PDF-файла онлайн
Текст 29 страницы из PDF
8.2).Пример.Цель фирмы — сделать использование ЭВМ доступнымнаибольшему числу людей. Одна из стратегий состоит в том,чтобы осуществить вертикальную интеграцию программных изделий. Другая стратегия заключается в том, чтобы предлагатьуслуги непосредственно пользователю (экономистам, физиками т.д.). Третья стратегия состоит в том, чтобы самим использовать разработанный программный продукт для анализа разнообразных данных (рынка сбыта, экономической ситуации и т.д.).Каждое программное изделие можно рассматривать кактактическое решение рассматриваемых стратегий (рис.
8.3).Обычно целевая программа, стратегический и тактический планы редко существуют как самостоятельные элементы.Однако в тех случаях, когда формируется совокупность планов,необходимо классифицировать каждый из них в соответствии стремя указанными категориями, чтобы облегчить понимание задач.Рассмотрим несколько конкретных планов.Бюджет — это такой план, который, вообще говоря, неустанавливает, «зачем», «как» и «что» делать. В нем устанавливаются важные количественные ограничения, связанные с вопросом «что». Это самый распространенный план. Благодарябюджету обратное воздействие реальной окружающей обстановки оказывается довольно быстрым и точным.Другим планом специального вида является календарныйплан. Время, как и деньги, может быть общим фактором оценкисамых разнообразных видов деятельности.Индивидуальные планы работ — это инструмент целевогоуправления, обеспечивающий фиксацию конкретных выработанных целей и сроков окончания работ, контроль за их завершением или прекращением работ.
То есть он аккумулирует в себе целевой, стратегический и тактический планы на основе бюджета.Это действенное средство «одушевления» разработки программного изделия и выявления в ней роли конкретных участников.Сетевой график является преимущественно тактическимпланом. Он определяет в терминах заданий (работ) — как мож-193но достигнуть цели и кто отвечает за выполнение конкретныхработ. Это также и стратегический план, в котором устанавливаются даты окончания работ.8.2.2 Декомпозиция плановПри планировании (создании планов) используется схеманисходящего планирования.
Эта процедура называется декомпозицией планов: план создания семейства программных изделий; план создания серии; план создания совокупности изделий; план производства конкретного изделия.Законченность плана означает, что рассмотрены все необходимые вопросы и в то же время обеспечен необходимый уровень детализации. Все имеющие отношение к делу вопросыдолжны обсуждаться на самом высоком уровне детализации ина самом низком уровне иерархии. Установить нужный уровеньдетализации и одновременно охватить все вопросы трудно.
Самая серьезная ошибка — это упущение существующих аспектов. Вторая крупная ошибка — это излишняя детализация, которая приводит к «увязанию в трясине». Подобных ошибокможно избежать, если следовать заранее составленному вопроснику или определенной форме. Ошибок излишней детализацииможно избежать, если каждый раз задавать вопрос «есть липольза от дальнейшей детализации?».В процессе декомпозиции планов в качестве основногопринципа должен служить следующий принцип: «Какая свобода выбора желательна на следующем шаге планирования?».Обычно последующие этапы планирования выполняются на всеболее низких уровнях, и достаточно учитывать лишь область ихполномочий.Структура всех реальных иерархических планов обязательнодолжна совпадать.
Важно лишь то, чтобы степень детализациикаждого пункта плана увеличивалась по мере иерархическогоспуска вниз. Однако слишком большое время, потраченное на обсуждение несуществующих деталей, делает планы нереальными.Второй принцип декомпозиции — определить ограничения для следующего, более низкого, уровня «Сделай транслятор194с языка за один год, потратив не более 300.000$».
Здесь имеетсянабор трех ограничений: транслятор должен обрабатывать инструкции конкретного языка; для создания отведено не более года; бюджет — не более 300.000$.Никаких других ресурсных ограничений нет. В этих рамках есть свобода выбора. Если продолжить декомпозицию плана, то возникнут все большие и большие ограничения, так чтона самом низком уровне будет обеспечена их абсолютная детализация. Но при этом, если полномочия распределены правильно, ни одно из первоначальных ограничений не будет нарушено, т.е. должна существовать обратная связь, в случае если потребуется изменение плана за пределами своих полномочий.8.2.3 Организационная структура группыпланированияЕстественно, что различные виды планов соответствуютразличным уровням руководства.
В любой разрабатывающейорганизации должно быть создано специальное подразделение,единственной обязанностью которого является планирование иуправление организацией в целом. Оно необходимо потому, чтокто-то должен гарантировать существование планов для всехподразделений, обеспечивать их совместимость и взаимнуюувязку.
Для этого необходимо глубокое понимание структурыорганизации и ее деятельности. Люди, выполняющие эти функции, не должны одновременно иметь никаких других обязанностей. Планы подобны законам. Они должны выполняться неукоснительно. То есть люди, осуществляющие планирование иконтроль, должны обладать соответствующими полномочиями.Управление планом должно быть организовано так же четко,как и само планирование.Должностные лица, руководящие выполнением планов,называются администраторами планирования. Однако надо помнить, что слишком большое число людей в группах планирования порождает бюрократию, поэтому группа планированиядолжна быть организована по принципу предметно-производственной специализации. В должностных инструкциях должнабыть четко определена одна-единственная точка соприкоснове-195ния, где каждая функциональная группа взаимодействует сгруппой планирования (рис.
8.4).Корпорация… Другие фирмыФирма… Другие отделыОтдел планированияи администраторуправленияОтдел исследованийи разработок… Другие сектора– Управление разработкойсерии изделий, включаяуправления планамиКомпоновка ивыпускПрограммныеизделия… Другие низовыеподразделения– Обеспечениецелостности проекта,включая управлениепланамиОбслуживаниеразработкипрограммногообеспечения– Управление планамиРис. 8.4 — Схема взаимодействия группы планированияи функциональных подразделенийВ большинстве организаций роль администратора планирования выполняет руководитель целевой программы.Планирование должно опираться на гарантии правильногоприменения принципов конфигурационного управления.
Для этой196цели вводятся функции контроля документации, включая процедуры хранения и распространения проектной документации.Вместе с тем планирование невозможно только по иерархии сверху. Поэтому каждая функциональная группа должнаиметь собственный персонал тактического планирования. Ихвзаимодействие должно строиться по схеме: подразделение планирования отвечает за целевое истратегическое планирование, управление бюджетом ипланами для всей организации; функциональная группа отвечает за тактическое планирование.8.2.4 Планы, связанные с созданием программныхизделийПри использовании нисходящего планирования осуществляется постепенный переход от общего к частному (от целевой программы к стратегическим и тактическим планам) и отглобального к локальному (от плана семейства изделий, черезплан выпуска серии и совокупности изделий, к проекту конкретного программного изделия).
Для облегчения пониманияструктуры различных планов вводятся «стандартные» определения.Программное изделие — совокупность отдельных программных средств, их документации, гарантии качества (ISO9000), рекламных материалов, мер по обучению пользователей,распространению и сопровождению программного обеспечения.Независимо от того, является ли программное обеспечение целостным изделием или только частной его модификацией,обычно изделие представляет собой тот наименьший объект,относительно которого рассматриваются все вышеназванныеэлементы.Совокупность изделий — это группа изделий, имеющиходну или несколько общих характеристик и работающих совместно в некоторой комбинации (ОС, компиляторы, сервисныепрограммы, средства диагностики, которые управляются операционной системой, составляют такую группу).Серия изделий — это сочетание аппаратных и программных средств, которые имеют одну и более общих связей и197функционируют совместно в некоторой комбинации как самостоятельная система.Семейство изделий — несколько связанных программныхизделий, которые необязательно должны иметь какой-либо общий интерфейс и работать на одной и той же аппаратуре(например, все компиляторы языка FORTRAN, созданные некоторым поставщиком для различных ЭВМ).Планом самого высокого уровня является план выпускасемейства или серии изделий.
Так как в их названии присутствует слово изделие — это стратегический план. В целом онформулируется в терминах технических средств, программногообеспечения, задач обучения персонала и т.д. Он содержит элементы стратегии: как обеспечить совместимость с конкурирующими изделиями, благоприятствующую проникновению на рынок; периодичность усовершенствования в целях продленияцикла жизни изделия и т.д.Обычно элементы стратегии охватывают длительный интервал (5—10 лет).Как только план серии одобрен, разрабатываются планывыпуска совокупности изделий. Лучшим средством представления таких планов является конфигуратор. Это понятие используется для определения таблицы, в которой кратко характеризуются взаимосвязи между операционными системами и подчиненными им элементами совокупности изделий (табл.