0-software_engineering (1133540)
Текст из файла
Основы программной инженерии (по SWEBOK)Программная инженерияПрограммная инженерияПрограммная инженерия ...................................................................................................................... 1Введение ............................................................................................................................................ 1Программная инженерия как дисциплина ......................................................................................... 1SWEBOK: Руководство к своду знаний по программной инженерии ............................................... 2Структура и содержание SWEBOK ...................................................................................................
3Перевод SWEBOK на русский язык................................................................................................... 6ВведениеВ конце 90-х годов прошлого века знания и опыт, которые были накоплены в индустриипрограммного обеспечения за предшествующие 30-35 лет, а также более чем 15-летних попытокприменения различных моделей разработки, все это, наконец, оформилось в то, что принятоназывать дисциплиной программной инженерии – Software Engineering. В какой-то мере, такоеформирование дисциплины на основе широко распространенного практического опытанапоминает те процессы, которые происходили в управлении проектами. Возникали и развивалисьпрофессиональные ассоциации, специализированные институты, комитеты по стандартизации идругие образования, которые, в конце концов, пришли к общему мнению о необходимостисведения профессиональных знаний по соответствующим областям и стандартизациисоответствующих программ обучения.Программная инженерия как дисциплинаВ 1958 всемирно известный статистик Джон Тьюкей (John Tukey) впервые ввел термин software –программное обеспечение.
В 1972 году IEEE* выпустил первый номер Transactions on SoftwareEngineering – Труды по Программной Инженерии. Первый целостный взгляд на эту областьпрофессиональной деятельности появился 1979 году, когда Компьютерное Общество IEEEподготовило стандарт IEEE Std 730 по качеству программного обеспечения. После 7 летнапряженной работы, в 1986 году IEEE выпустило IEEE Std 1002 ―Taxonomy of Software EngineeringStandards‖.Наконец, в 1990 году началось планирование всеобъемлющих международных стандартов, воснову которых легли концепции и взгляды стандарта IEEE Std 1074 и результатов работыобразованной в 1987 году совместной комиссии ISO/IEC JTC 1**. В 1995 году группа этой комиссииSC7 ―Software Engineering‖ выпустила первую версию международного стандарта ISO/IEC 12207―Software Lifecycle Processes‖.
Этот стандарт стал первым опытом создания единого общеговзгляда на программную инженерию. Соответствующий национальный стандарт России – ГОСТ РИСО/МЭК 12207-99 [ГОСТ 12207, 1999] содержит полный аутентичный перевод текстамеждународного стандарта ISO/IEC 12207-95 (1995 года).В свою очередь, IEEE и ACM ***, начав совместные работы еще в 1993 году с кодекса этики ипрофессиональной практики в данной области (ACM/IEEE-CS Code of Ethics and ProfessionalPractice), к 2004 году сформулировали два ключевых описания того, что сегодня мы и называемосновами программной инженерии – Software Engineering:1.
Guide to the Software Engineering Body of Knowledge (SWEBOK), IEEE 2004 Version Руководство к Своду Знаний по Программной Инженерии, в дальнейшем просто ―SWEBOK‖[SWEBOK, 2004];2. Software Engineering 2004. Curriculum Guidelines for Undergraduate Degree Programs inSoftware Engineering – Учебный План для Преподавания Программной Инженерии вВУЗах* (данное название на русском языке представлено в вольном смысловом переводеавтора книги) [SE, 2004].* IEEE - Computer Society of the Institute for Electrical and Electronic Engineers, IEEE Computer Society – IEEE-CS(Компьютерное Общество) или просто IEEE. http://www.ieee.org** ISO – International Organization for Standardization. http://www.iso.ch ; IEC – International Electrotechnical Commission; JTC 1 –Joint Technical Committee 1, Information technologyCopyright © Сергей Орлик, 2004-2010.http://swebok.sorlik.ru1Основы программной инженерии (по SWEBOK)Программная инженерия*** ACM – Association of Computer MachineryОба стандарта стали результатом консенсуса ведущих представителей индустрии и признанныхавторитетов в области программной инженерии - по аналогии с тем, как был создан PMI PMBOK.Так мы пришли к сегодняшнему состоянию Software Engineering как дисциплины.SWEBOK: Руководство к своду знаний по программной инженерииC 1993 года IEEE и ACM координируют свои работы в рамках специального совместного комитета- Software Engineering Coordinating Committee (SWECC - http://www.computer.org/tab/swecc ).
ПроектSWEBOK был инициирован этим комитетом в 1998 году. Оцененный предположительный объемсодержания SWEBOK и другие факторы привели к тому, что было рекомендовано проводитьработы по реализации проекта не только силами добровольцев из рядов экспертов индустрии ипредставителей крупнейших потребителей и производителей программного обеспечения, но и наоснове принципа ―полной занятости‖. Базовый комплекс работ, в соответствии со специальнымконтрактом, был передан в Software Engineering Management Research Laboratory УниверситетаКвебек в Монреале (Université du Québec à Montréal). Среди компаний, поддержавших этотуникальный проект были Boeing, MITRE, Raytheon, SAP. В результате проекта, оcуществленногопри финансовой поддержке этих и других компаний и организаций, а также с учетом егозначимости для индустрии, SWEBOK Advisory Committee (SWAC) принял решение сделатьSWEBOK общедоступным * – http://www.swebok.org.
В перспективе, если удастся обеспечитьсоответствующий уровень финансирования, SWAC считает необходимым законченную версиюSWEBOK 2008 сделать также свободно доступной на Web-сайте проекта. Сегодняшняя―публичность‖ (общедоступность) результатов проекта стала возможна, в первую очередь, именноблагодаря поддержке SWEBOK Industrial Advisory Board (IAB) – структуры, объединяющейпредставителей компаний, поддержавших проект.* SWEBOK Copyright © 2004 by The Institute of Electrical and Electronics Engineers, Inc. All rights reserved.Copyright and Reprint Permissions: This document may be copied, in whole or in part, in any form or by any means, as is, orwith alterations, provided that (1) alterations are clearly marked as alterations and (2) this copyright notice is includedunmodified in any copy.Проект SWEBOK планировался в виде трех фаз: Strawman (―соломенный человек‖), Stoneman(―каменный человек‖) и Ironman (―железный человек‖).
К 2004 году была выпущена версияРуководства по Своду Знаний 3-ей фазы - Ironman, то есть максимально приближенная кокончательному варианту и одобренная IEEE в феврале 2005 года к публикации в качестве Trialверсии. Основная цель текущей ―пробной‖ версии SWEBOK – улучшить представление,целостность и полезность материала руководства на основе сбора и анализа откликов на даннуюверсию с тем, чтобы выпустить финальную редакцию документа в 2008 году.По ряду обоснованных причин, ―SWEBOK является достаточно консервативным‖ [SWEBOK, 2004,с.B-2].
После 6 лет непосредственных работ над документом, SWEBOK включает ―лишь‖ 10областей знаний (knowledge areas, KA). При этом, что справедливо и для PMBOK, добавлениеновых областей знаний в SWEBOK достаточно прозрачно. Все, что для этого необходимо,зрелость (или, по крайней мере, явный и быстрый процесс достижения зрелости) иобщепринятость* соответствующей области знаний, если это не приведет к серьезномуусложнению SWEBOK.* концепция ―общепринятости‖ - generally accepted – определена в IEEE Std 1490-1998, Adoption of PMI Standard — A Guideto the Project Management Body of KnowledgeВажно понимать, что программная инженерия является развивающейся дисциплиной. Более того,данная дисциплина не касается вопросов конкретизации применения тех или иных языковпрограммирования, архитектурных решений или, тем более, рекомендаций, касающихся болееили менее распространенных или развивающихся с той или иной степенью активности/заметноститехнологий (например, web-служб).
Руководство к своду знаний, каковым является SWEBOK,включает базовое определение и описание областей знаний (например, конфигурационноеуправление – configuration management) и, безусловно, является недостаточным для охвата всехвопросов, относящихся к вопросам создания программного обеспечения, но, в то же времянеобходимым для их понимания.Необходимо отметить, что одной из важнейших целей SWEBOK является именно определение техаспектов деятельности, которые составляют суть профессии инженера-программиста.Copyright © Сергей Орлик, 2004-2010.http://swebok.sorlik.ru2Основы программной инженерии (по SWEBOK)Программная инженерияСтруктура и содержание SWEBOKОписание областей знаний в SWEBOK построено по иерархическому принципу, как результатструктурной декомпозиции.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.