ПОИСК
Это наилучшее средство для поиска информации на сайте
Предисловие редактора перевода
из "Методы управления проектированием программного обеспечения "
Одна из основных бед существующей практики проектирования больших систем программного обеспечения заключается в том, что почти полностью отсутствует координированное руководство процессом разработки, и это особенно ощущается на стадии внедрения проектов. Именно тогда начинает выясняться, что программы для единого комплекса задач, написанные разными лицами, плохо стыкуются друг с другом, хотя и выполнены в соответствии о техническим заданием подсистемы, выделенные, казалось бы, на основе минимальной зависимости друг от друга, неожиданно оказываются тесно связанными по таким информационным каналам, которые не принимались во внимание системными аналитиками результаты решения задач формально устраивают заказчика, но требуются ему в совершенно ином виде и в другие, более жесткие сроки и т. д. Расхождения между требованиями заказчика и возможностями программного обеспечения, обнаруживаемые на стадии внедрения, часто приводят к крайне дорогостоящим переделкам в условиях, когда выделенные на проект ресурсы уже исчерпаны. В результате заказчик получает систему невысокого качества с массой неустраненных дефектов. Получается картина, похожая на поставку заказчику автомобиля без колес лишь потому, что не хватило времени на сборку. Почему это оказывается возможным Прежде всего из-за отсутствия в индустрии программного обеспечения такого производственного конвейера, как тот, что обеспечивает своевременное и обязательное выполнение всех предусмотренных операций в индустрии автомобилестроения. [c.5]В основу книги положен детальный анализ деятельности организации, разрабатывающей программные средства и вычислительное оборудование. За этим анализом стоит большой практический опыт работы автора в области проектирования и реализации систем программного обеспечения. Подробно рассматриваются проблемы разработки крупномасштабных проектов и управления ими в различных фазах жизненного цикла создаваемых систем. Анализируются основные трудности проектного, технического и психологического характера, обсуждаются способы их преодоления. [c.6]
Книга полезна в качестве методического пособия разработчикам и пользователям систем программного обеспечения, руководителям коллективов программистов и вычислительных центров, а также специалистам научно-исследовательских и проектных организаций, занимающимся созданием автоматизированных систем управления любого назначения. [c.6]
Эта книга содержит описание методологии управления процессами планирования, проектирования, конструирования, оценивания, документирования, распространения, технического обслуживания (сопровождения) систем программного обеспечения. В рамках предлагаемой методологии учитываются взаимосвязи между различными фазами жизненного цикла программ-ных средств и функциями, которые должны выполняться в этих фазах. Показано, как на основе принципов нисходящего проектирования, целевого управления, управления конфигурацией систем программного обеспечения и ряда других создается эффективная система взаимосогласованных и усиливающих друг друга документов и процедур. В книге особое внимание уделяется концепции программного изделия под программным изделием понимается универсальное программное обеспечение, которое предназначается для широкого круга пользователей, быть может даже неизвестных заранее, и должно рекламироваться, поддерживаться в работоспособном состоянии, расширяться на протяжении длительного периода времени. Описанные методы и средства ориентированы специально на организацию управления процессом созданная именно такого универсального программного обеспечения. Читателю же предлагается самостоятельно выбрать те методы и средства, которые в наибольшей степени отвечают его потребностям как руководителя отдела обработки данных, или как руководителя проекта системы обороны, или администратора организации, производящей программное обеспечение, или руководителя программных разработок в фирме, производящей технические средства. Описываемая методология полностью совместима с современными принципами структурного программирования и бригад главного программиста, но она может применяться и без учета этих принципов. [c.8]
Все рассматриваемые методы и средства прошли, в той или иной мере, практическую проверку, которая показала, что многие из них могут использоваться независимо друг от друга. В основе предлагаемой методологии лежит принцип нисходящего модульного проектирования. Поскольку все рассматриваемые в книге методы и средства очень тесно связаны между собой, наибольший выигрыш достигается при их совместном использовании, когда они усиливают друг друга. Однако там, где это требуется, мы обращаем особое внимание на нежелательность слишком раннего, поспешного или запоздалого применения тех или иных методов и средств. [c.9]
Название книги наводит на мысль, что в ней пойдет речь об управлении процессом проектирования программного обеспечения. На самом деле так оно и есть, но что же такое проектирование программного обеспечения Этот термин укоренился или по крайней мере сделался популярным после двух конференций, организованных НАТО в 1968 и 1969 гг. [1]. [c.11]
С тех пор теория проектирования программного обеспечения достигла определенного прогресса, и теперь, согласно точке зрения Ие [2], она представляет собой инженерный подход к разработке программных средств ЭВМ, охватывающий методологию программирования, проблемы обеспечения надежности программ, оценки рабочих характеристик и качества проектов, вопросы управления проектированием систем программного обеспечения, а также средства и стандарты разработки программ. [c.11]
Программное изделие—это не просто программа для ЭВМ, а продукт тщательного планирования и целенаправленной разработки, сопровождаемый четкой документацией, прошедший все необходимые испытания, описанный в соответствующих технических публикациях, обеспеченный обученным персоналом, размноженный в требуемом количестве экземпляров, обслуживаемый и контролируемый поставщиком по заранее продуманному плану. Только тогда, когда все эти условия соблюдены, можно говорить о создании универсального программного обеспечения, т. е. программного изделия, которое может использоваться не только в каком-то одном строго определенном месте, но пригодно для применения его специалистами, неизвестными разработчику заранее, и в условиях, о которых он даже не мог подозревать.. [c.12]
Из сказанного следует, что эта книга написана в основном для читателей, которых интересуют вопросы организации поставки и сопровождения программных изделий для множества самых различных пользователей в условиях, когда разработчики и специалисты по сопровождению программного обеспечения не имеют с ними непосредственного контакта. Именно в таком положении находятся изготовители средств вычислительной техники и поставщики систем программного обеспечения. Но если даже существует взаимодействие пользователей со специалистами, создающими программные средства, организации, для которых характерна потребность в распределенной обработке данных, все же сталкиваются с целым рядом проблем, касающихся обеспечения надежности систем, распределения работ и управления их выполнением. Эта книга может помочь таким пользователям в преодолении указанных трудностей. Полезна она и для руководителей служб обработки данных, которые должны организовывать обслуживание ограниченного и постоянного по составу круга пользователей. Широкое применение методов и средств, описанных в книге, позволит таким руководителям планомерно повышать качество обслуживания и легко расширять набор предоставляемых услуг путем последовательного освоения излагаемых в книге принципов и концепций программного изделия. [c.13]
Второй по значимости проблемой, затрагиваемой в книге, является проблема руководства проектом. Принцип организации разработок в форме проектов принят сейчас настолько широко, что рассматривается нами как очевидный. В начале 70-х годов стала весьма популярной концепция бригады главного программиста. В книге эта концепция упоминается лишь вскользь и не является обязательным условием применения развиваемой в книге методологии. [c.15]
с одной стороны, эта книга представляет собой монографию по вопросу создания программных изделий, а с другой — своего рода руководство по управлению осуществлением проектов. [c.15]
Вернуться к основной статье