Мониторинг качества объектно-ориентированного программного обеспечения на этапе проектирования тема диссертации и автореферата по ВАК РФ 05.13.01, кандидат технических наук Морозов, Александр Васильевич
- Специальность ВАК РФ05.13.01
- Количество страниц 131
Оглавление диссертации кандидат технических наук Морозов, Александр Васильевич
Введение.
Глава 1. Мониторинг качественных характеристик программного проекта и его использование при управлении процессом разработки.
1.1 Процесс разработки программного обеспечения.
1.2 Задача мониторинга качества проекта на различных этапах разработки.
1.3. Виды качественных характеристик.
1.4 Основные методы и инструменты мониторинга качества проекта на различных этапах разработки.
1.4.1 Методы оценки трудоемкости реализации проекта.
1.4.2 Методы определения внутренних качественных характеристик проекта.
1.4.3 Инструменты обеспечения внутреннего качества.
1.5 Постановка задачи автоматизированного мониторинга качественных характеристик ООПП.
Результаты и выводы к первой главе.
Глава 2. Метамодель объектно-ориентированного программного продукта.
2.1 Элементы проекта ООПП.
2.1.1 Язык UML.
2.1.2 Программный код на императивных языках программирования.
2.1.3 Исполняемые файлы.
2.2 Проектная метамодель ООПП.
2.3 Построение конкретной модели ООПП.
2.3.1 Построение модели ООПП на основе диаграмм UML.
2.3.2 Построение модели ООПП на основе программного кода.
2.3.3 Построение модели ООПП на основе исполняемых файлов.
2.3.4 Совместное использование элементов проекта для построения модели ООПП.
2.4 Расчет метрических показателей проекта на основе построенной модели.
Результаты и выводы ко второй главе.
Глава 3. Метод определения качественных характеристик ООПП на основе метрических показателей.
3.1 Определение качественных характеристик ООПП как задача нечеткой классификации.
3.2. Метод определения качественных характеристик объектно-ориентированной проектной модели на основе метрических показателей.
3.2.1 Основные положения метода определения качественных характеристик объектно-ориентированной проектной модели.
3.2.2 Модель нечеткой нейронной продукционной сети.
3.2.3 Структура нечеткой нейронной продукционной сети.
3.2.4 Формирование базы правил.
3.2.5 Обучение нечеткой продукционной нейронной сети.
3.2.6 Паралич нечеткой продукционной нейронной сети.
3.2.7 Общий алгоритм создания и обучения нечеткой нейросетевой модели.
3.3 Алгоритм определения качественных характеристик ООПП.
Результаты и выводы к третьей главе.
Глава 4. Определение некачественных элементов проекта ООПП и компетенций участников команды разработчиков на основе качественных характеристик.
4.1 Автоматизация рефакторинга.
4.2. Локализация некачественных элементов модели.
4.3. Семейство нечетких нейронных сетей для решения задач локализации проблемных элементов проектной модели.
4.4. Использование результатов решения задачи поиска некачественных элементов модели для построения системы поддержки принятия решений.
4.5. Локализация проблем внутри команды.
4.6 Способ определения компетенций персонала.
4.7 Простой фактор влияния.
4.8 Интегральный фактор влияния.
4.9. Использование результатов решения задачи локализации проблем внутри команды для построения системы поддержки принятия решений.
Результаты и выводы к четвертой главе.
Глава 5 СИСТЕМА ПОДДЕРЖКИ ПРИНЯТИЯ РЕШЕНИЙ ПРИ РАЗРАБОТКЕ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПРОГРАММНОГО
ОБЕСПЕЧЕНИЯ.
5.1 Функциональные требования к СППР при разработке ООПП.
5.2. Физическая архитектура СППР.^.
5.3. Программное обеспечение СППР при разработке ООПП.
5.4. Настройка, обучение и верификация СППР.
Результаты и выводы к пятой главе.
Основные Результаты выводы по работе.
Рекомендованный список диссертаций по специальности «Системный анализ, управление и обработка информации (по отраслям)», 05.13.01 шифр ВАК
Рекуррентное метамоделирование в системных средах САПР2008 год, доктор технических наук Черткова, Елена Александровна
Научные основы идентификации, анализа и мониторинга проектных рисков качества программных изделий в условиях нечеткости2011 год, доктор технических наук Таганов, Александр Иванович
Методы проектирования компьютерных обучающих систем для образовательной сферы2007 год, доктор технических наук Черткова, Елена Александровна
Автоматизация проектирования обучающих подсистем САПР2012 год, кандидат технических наук Карпов, Владимир Сергеевич
Модели, методы и алгоритмы создания межсистемных информационных комплексов2006 год, кандидат технических наук Мытник, Сергей Александрович
Введение диссертации (часть автореферата) на тему «Мониторинг качества объектно-ориентированного программного обеспечения на этапе проектирования»
Отрасль программной индустрии, связанная с разработкой программного обеспечения, на сегодняшний момент испытывает проблемы. Большие программные проекты повсеместно и постоянно выходят за рамки бюджета и установленные сроки. Основная причина этого явления — сложность, присущая программному обеспечению (ПО). Сложность ПО обуславливается четырьмя основными причинами: сложностью предметной области, трудностью управления разработкой ПО, необходимостью обеспечить гибкость программ и отсутствием удовлетворительных средств описания функционирования дискретных систем. Борьба со сложностью определяет все развитие информационных технологий (ИТ), которые сами являются чрезвычайно сложной предметной областью[48,49].
Основу программной инженерии (software engineering) составляет одна фундаментальная идея: разработка ПО является формальным процессом, который можно изучать и улучшать[9]. Базовым понятием программной инженерии является понятие жизненного цикла ПО (ЖЦ ПО). Согласно стандарту ISO/IEC 12207 структура ЖЦ ПО базируется на трех группах процессов: основных, вспомогательных и организационных^]. Из основных процессов важнейшими являются два: разработка и сопровождение. Процесс разработки обычно состоит из нескольких этапов: анализ, формулирование требований, проектирование, программирование и тестирование. Сопровождение представляет собой процесс модификации системы, целью которого является исправление выявленных при эксплуатации ошибок, улучшение эксплуатационных характеристик и развитие системы. Из вспомогательных процессов к числу важнейших относятся процесс документирования и процесс обеспечения качества ПО. Самым важным организационным процессом является процесс управления разработкой.
Долгое время основные усилия исследователей были направлены на совершенствование процесса разработки ПО и его отдельных этапов. Первоначально внимание было направлено на совершенствование методов и средств программирования. В 60-е и 70-е годы было разработано множество разнообразнейших языков программирования — они воплощали различные парадигмы программирования: структурное, модульное, функциональное, объектно-ориентированное, компонентное, декларативное, аспектно-ориентированное программирование и другие. В настоящее время превалирующей парадигмой является объектно-ориентированное программирование[2,9,24].
Развивались и инструментальные средства разработки. Для облегчения труда программиста были созданы полезнейшие инструменты: мейкеры (maker), отладчики (debugger), профайлеры (profiler). Появление персональных компьютеров привело к революционным изменениям инструментальных средств: отдельные программы объединились в единую инструментальную среду разработки.
В 70-е и особенно в 80-е годы прошлого столетия основные усилия были направлены на разработку формализованных методов и средств проектирования ПО. Были разработаны и стандартизированы несколько графических языков, позволяющих представлять модели программ в виде различного рода схем или диаграмм. Самый известный из них — универсальный язык моделирования (Unified Modeling Language) — UML[48,49,50,51]. Этот язык ориентирован на разработку объектно-ориентированных моделей и к настоящему времени занимает доминирующее положение среди языков проектирования.
Формализация языков представления моделей позволила реализовать инструментальные системы проектирования, называемые CASE-средствами. С помощью этих систем создают документацию, управляют версиями программного продукта, проектируют структуру базы данных, автоматизируют процесс тестирования ПО, генерируют заготовки программных модулей из моделей проекта.
Успехи в формализации и автоматизации процесса проектирования ПО в сочетании с развитием СУБД более всего способствовали превращению процесса разработки ПО в программную инженерию.
Другие исследования касались качества процесса управления разработкой ПО. Так, была предложена пятиуровневая «модель зрелости процесса разработки» (Capability Maturity Model — СММ)[20]. Были предложены и опробованы несколько моделей ЖЦ ПО. В 90-е годы прошлого века началась активная разработка стандартов в области производства программного ПО.
Таким образом, можно констатировать, что прогресс в программной инженерии очевиден. В настоящее время разработка программ превратилась в индустрию производства программ, и процесс разработки в значительной степени автоматизирован.
Однако исследования, регулярно проводимые компанией Standish Group International, показывают, что прогресс не столь велик[1]. Около 47% всех разрабатываемых программных проектов не укладываются в отведенные сроки или бюджет, а 22% вовсе отменяются из-за не рентабельности дальнейшей разработки. Кроме того, согласно данным той же компании, чем дороже разрабатываемый проект, тем меньше вероятность его успешного завершения (рис. 1.).
0% 20% 40% 60% 80% 100%
0,44
HZZT-^ ZJ Ш m Ш I I И
- ^-1-1-1-1-r $10млн. $6-10млн. 53-бмлн. $750000- <$750000
Змлн.
Рис. I. Данные компании Standish Group International по индустрии разработки программного обеспечения на 2004 год.
Серьезные исследования зарубежных авторов, проводимые с начала 70х годов, свидетельствуют о том, что большинство проблем программного проекта - суммарно до 80% всех временных и финансовых потерь — возникает из-за ошибок в менеджменте и лишь 20% — по причинам технического характера. Ошибки менеджмента в свою очередь вытекают в основном из-за не правильной оценки трудозатрат во время планирования проекта и трудностей с отслеживанием качественных характеристик при его реализации[7].
Стандартным выходом при решении подобного рода проблем является привлечение внешних консультантов для анализа качества и трудозатрат по выполнению проектов [7,12]. Обычно независимые консультанты или консалтинговые компании проводят комплексное исследование одного из модулей системы и на основе полученных данных дают рекомендации по дальнейшему ведению проекта. Главным недостатком такого подхода является его дороговизна - консалтинговые услуги могут стоить до 30-40% от стоимости разработки. Кроме того, к услугам такого рода прибегают обычно уже при наличии определенных проблем в проекте.
Вопросами анализа качественных характеристик программного проекта занимались многие ученые как у нас в стране, так и за рубежом: Боем Б., Альбрехт А., Демарко Т., Майер И., Мейерс Г., Тейер Т., Липов М. Маккейб Ф., Чидембер Ш., Лоренц М., Кидд Дж., Парнас Д., Буч Г., Рамбо Дж., Джейкобсон
50% 40% 30% 20% 10% 0%
А. В.В. Липаев, Изосимов А.П., А.А. Саркисян, К. К. Рыжко, Кулаков В.В., Орлов С.А., Заболеева-Зотова А.В.
Работы этих авторов привели к разработке ряда методик оценки качества программных продуктов, большинство из которых используют аппарат метрических оценок. Однако сами по себе рассчитанные значения метрик ничего не говорят о качестве проекта. Для правильной интерпретации значений метрик необходимы знания и опыт экспертов, или же большая база накопленной статистической информации по сходным проектам, что позволяет оценивать качество по аналогии.
Таким образом, в настоящее время существует актуальная научная и техническая проблема, состоящая в разработке метода, позволяющего автоматизировать измерение и мониторинг показателей качества программного обеспечения. Решение этой задачи позволит повысить качество проектных решений, улучшить управление проектом, и в конечном итоге, снизить затраты на производство программных продуктов.
Объектом исследования является проект объектно-ориентированного программного продукта (ООПП) как сложная система.
Предмет исследования - методы, модели и алгоритмы обработки информации и правила принятия решений при анализе качественных характеристик проекта объектно-ориентированного программного продукта.
Целью настоящей работы является повышение эффективности управленческих и проектных решений при разработке ООПП за счет автоматизированного мониторинга качественных характеристик проекта. Поставленная цель достигается решением следующих задач: 1. Провести системный анализ процесса разработки ООПП, определить ограничения и сформулировать задачу определения показателей качества элементов проекта.
2. Разработать обобщенную метамодель проекта ООПП и ее качественные характеристики, определить характер их связи с основными объектно-ориентированными метриками.
3. Разработать способы автоматической генерации модели проекта ООПП на различных этапах процесса разработки.
4. Разработать метод опрделения качественных характеристик проекта ООПП.
5. Исследовать эффективность применения метода определения качественных характеристик ООПП для автоматизации рефакторинга и определения компетенций разработчиков.
6. Спроектировать и реализовать систему поддержки принятия решений процесса разработки ООПП.
Методы исследования. Для решения поставленной задачи применялись методы системного анализа, искусственного интеллекта, математический аппарат нейронных сетей и нечетких множеств. Научная новизна состоит в следующем:
1. Разработана обобщенная метамодель проекта ООПП, построенная на принципах семантического единообразия данных, полученных при анализе UML-моделей, программного кода и исполняемых модулей, позволяющая вычислять метрические показатели на различных этапах разработки.
2. Предложен метод определения качественных характеристик элементов проекта ООПП на основе аппарата нечетких нейронных сетей Ванга-Менделя.
3. Разработан способ определения признаков некачественных элементов ООПП, позволяющий автоматизировать выбор способов рефакторинга для элементов проекта.
4. Предложен способ определения текущего уровня компетенций разработчиков ООПП на основе анализа их влияния на качественные характеристики проекта, что упростит управление персоналом. Практическая ценность работы:
1. Разработано программное обеспечение системы поддержки принятия решений (СППР) процесса разработки ООПП, реализующее мониторинг качественных характеристик проектной модели ООПП.
2. Использование разработанной СППР позволило повысить эффективность разработки программного обеспечения и снизить затраты на создание программных модулей автоматизированной системы управления вузом (АСУ ВУЗ).
3. Предложенная модель и принцип построения СППР используются в учебном процессе вуза при преподавании дисциплин, связанных с изучением технологий программирования и проектирования программного обеспечения.
Личный вклад автора.
В работах, выполненных в соавторстве, автору принадлежат формализация задачи, построение математической модели и методов, разработка алгоритмов, проектирование и реализация программного обеспечения.
Апробация научных результатов. Основные положения докладывались и обсуждались на всероссийской научно-практической конференции IT-инновации в образовании, международной научной конференции Математические методы в технике и технологиях - ММТТ-18 и ММТТ-20, 51-ой научно-практической конференции профессорско-преподавательского состава Астраханского государственного технического университета», международной научно-практической конференция «Информационные технологии в образовании, науке и производстве», международной научнопрактической конференции «Эволюция системы научных коммуникаций Ассоциации университетов Прикаспийских государств».
Публикации. Основные положения диссертационной работы отражены в 13 опубликованных научных работах, среди которых 2 статьи в журналах рекомендованных ВАК, 1 свидетельство о регистрации программы для ЭВМ и 10 публикаций в сборниках международных научных конференций.
Структура и объем работы. Диссертационная работа состоит из введения, пяти глав основного текста, заключения, списка литературы из 105 наименований и 2 приложений. Общий объем работы 131 страниц машинописного текста, который включает 21 рисунков, 12 таблиц и 30 формул.
Похожие диссертационные работы по специальности «Системный анализ, управление и обработка информации (по отраслям)», 05.13.01 шифр ВАК
Технология построения экспертных геоинформационных систем поддержки принятия решений по предупреждению и ликвидации чрезвычайных ситуаций2000 год, доктор технических наук Ноженкова, Людмила Федоровна
Интеллектуальная система поддержки принятия решения на основе нечеткой логики для диагностики состояния сети передачи данных2007 год, кандидат технических наук Кучер, Алексей Викторович
Нечеткие методы и модели оценки потребительского качества веб-ориентированных информационных систем: теория, методология и инструментарий2008 год, доктор экономических наук Долженко, Алексей Иванович
Автоматизация проектирования профиля операционной среды системы поддержки принятия решений на основе оценки многокритериальных альтернатив2005 год, кандидат технических наук Голубов, Александр Анатольевич
Инструментальные средства формирования информационного базиса2009 год, кандидат технических наук Лашук, Николай Владимирович
Заключение диссертации по теме «Системный анализ, управление и обработка информации (по отраслям)», Морозов, Александр Васильевич
ОСНОВНЫЕ РЕЗУЛЬТАТЫ ВЫВОДЫ ПО РАБОТЕ
1. Разработана метамодель проекта ООПП, позволяющая единообразно представлять данные, полученные на основе анализа моделей на языке UML, программного кода и исполняемых файлов, а также вычислять метрические показатели ООПП.
2. Предложен метод автоматизированного опреления качественных характеристик элементов проекта ООПП на основе нейронных сетей, позволяющий упростить процессы обеспечения качества ПО.
3. Синтезирован способ автоматизированного определения признаков некачественных элементов ООПП, позволяющий автоматизировать процесс рефакторинга программного кода и проектных моделей ООПП.
4. Предложен способ определения компетенций разработчиков ООПП на основе анализа их влияния на качественные характеристики проекта, позволяющий осуществлять более эффективное управление командой разработчиков.
5. Реализована система поддержки принятия решений при разработке ООПП, реализующая алгоритмы определения качественных характеристик проектной модели ООПП.
6. Использование разработанной автоматизированной СППР позволило повысить эффективность разработки программного обеспечения и снизить затраты на создание программных модулей АСУ ВУЗ АГТУ в среднем на 30%.
7. Предложенная модель и принцип построения СППР используются в учебном процессе вуза при преподавании дисциплин, связанных с изучением технологий программирования и проектирования.
Список литературы диссертационного исследования кандидат технических наук Морозов, Александр Васильевич, 2009 год
1. Standish Group 1.t. CHAOS Report 2007 My Life is Failure: The Laws of CHAOS / Standish Group Int. : https://secure.standishgroup.com/reports
2. Амблер, С. Гибкие технологии: экстремальное программирование и унифицированный процесс разработки / С. Амблер Спб: Питер, 2005 -412 с.
3. Ауэр, К. Экстремальное программирование: постановка процесса. / К. Ауэр, Р. Миллер Спб: Питер, 2004 - 368 с.
4. Бек, К. Экстремальное программирование: планирование / К. Бек, М. Фаулер Спб: Питер, 2003 - 144 с.
5. Гецци, К. Основы инженерии программного обеспечения. 2-е изд. / К. Гецци, М. Джазайери, Д. Мандриоли — СПб.: БХВ-Петербург, 2005. -832 с.
6. Брукс, Ф. Мифический человеко-месяц, или Как создаются программные системы / Ф. Брукс М: Символ-Плюс, 2007 - 304 с.
7. Фатрелл, Р.Т. Управление программными проектами / Р.Т. Фатрелл, Д.Ф. Шафер, Л.И. Шафер М: Вильяме, 2004 - 1134 с.
8. Гласс, Р. Факты и заблуждения профессионального программирования. / Р. Гласс СПб.: Символ-Плюс, 2007. - 240 с.
9. Орлов, С.А. Технологии разработки программного обеспечения / С. Орлов Спб: Питер, 2004 - 464 с.
10. Ю.Изосимов, А.В. Метрическая оценка качества программ / А.В. Изосимов,
11. А.Л. Рыжко М: МАИ, 1989 - 96 с. П.Саркисян, А. А. Повышение качества программ на основеавтоматизированных методов. / А.А. Саркисян М: Радио и связь, 1991. 12.Маейрс Г. Надежность программного обеспечения / Г. Майерс - М.: Мир, 1980-575 с.
12. Боэм, Б. Характеристики качества программного обеспечения / Б.Боэм, Дж. Браун, X. Каспар и др. М.: Мир, 1981 - 206 с.
13. Липаев, В.В. Качество программного обеспечения / В.В. Липаев — М.: Финансы и статистика, 1983 264 с.
14. Липаев, В.В. Выбор и оценивание характеристик качества программных средств. Методы и стандарты. /В.В. Липаев М.: Синтерг, 2001 - 228 с.
15. Холстед, М.Х. Начало науки о программах. / М.Х. Холстед М.: Финансы и статистика, 1981 - 128 с.
16. Кулаков А.Ф. Оценка качества программ ЭВМ. / А.Ф. Кулаков Киев: Техника, 1984-167 с.
17. Тейер, Т. Надежность программного обеспечения. / Т.Тейер, М. Липов, Э. Нельсон М.: Мир, 1981 - 323с.
18. М. Зелковиц Принципы разработки программного обеспечения. / М. Зелковиц, А. Шоу, Дж. Гэннон М.: Мир, 1982 - 368 с.
19. The Capability Maturity Model: Guidelines for Improving the Software Process / Carnegie Mellon University/Software Engineering Institute, Reading, MA: Addison-Wesley, 1995.
20. Lanza, M., Object-Oriented Metrics in Practice / M. Lanza, R. Marinescu -Springer-Verlag Berlin Heidelberg, 2006 204 c.
21. Rosenberg, L.H. Applying and Interpreting Object Oriented Metrics / L. Rosenberg:http://satc.gsfc.nasa.gov/support/STCAPR98/applyoo/applyoo.h tml
22. Albreht, A.J. Software function, source lines of code and development effort production: A Software Science Validation / A. Albreht IEEE Transactions on Software Engineering №9, 1983 - c. 639-647
23. Грэхем, И. Объектно-ориентированные методы. Теория и практика. 3-е издание/ И. Грэхем М: Издательский дом: «Вильяме», 2004 - 880с.
24. Alshayeb, М. An Empirical Validation of Object-Oriented Metrics in Two Different Iterative Software Processes. / M. Alshayeb, W. Li / IEEE Transactions on Software Engineering, 29(2003)11, c. 1043-1049
25. Beyer, D. Impact of Inheritance on Metrics for Size, Coupling, and Cohesion in Object-Oriented Systems. / D. Beyer, C. Lewerentz, F. Simon Dumke/Abran: New Approaches in Software Measurement, LNCS 2006, Springer Publ., 2001, c. 1-17
26. Chidamber, S.R. A Metrics Suite for Object Oriented Design. / S.R. Chidamber, C.F. Kemerer CISR Working Paper No. 249, M.I.T., Cambridge, February 1993
27. Doake, J. Amber Metrics for the Testing and Maintenance of Object-Oriented Designs. / J. Doake, I. Duncan Proc. of the CSMR'98, March 8-11, Florence, Italy, c. 205-208
28. Emam, К. E. A Primer on Object-Oriented Measurement. / К. E. Emam, Pro. of the Seventh International Software Metrics Symposium METRICS 2001, April 2001, London, c. 185-188
29. Gillibrand, D. Quality Metrics for Object-Oriented Design. / D. Gillibrand, K. Liu JOOP, January 1998, c. 56-59
30. Hitz, M. Measuring Product Attributes of Object-Oriented Systems. / M. Hitz, B. Montazeri Proc. of the ESEC'95, September 1995, Barcelona, c. 124-136
31. Li, W. Measuring Object-Oriented Design. / W. Li, S. Henry, D. Kafura, R.Schulman JOOP, July/August 1995, c. 48-55
32. Schmietendorf, A. Metrics of Object-Oriented Software Development Technologies MOSET. / A. Schmietendorf, Metrics News, 2(1997) 2, c. 2332
33. Simon, F. Distance Based Cohesion Measuring. / F. Simon, S. Loffler, C. Lewerentz Proc. of the FESMA'99, Amsterdam, Netherlands, October 1999, c. 69-83
34. Whitmire, S.A. Object-Oriented Design Measurement. / S.A. Whitmire John Wiley & Sons Inc., 1997 452 c.
35. Лаптев, В. В. Метод определения качественных характеристик объектно-ориентированного программного продукта / В. В. Лаптев, А. В. Морозов -«Научно-технические ведомости СПбГПУ» №6(69)72008, с. 147-153
36. Лаптев В. В., Морозов А. В. Система поддержки принятия решений для эффективного управления командой разработчиков программного обеспечения / В. В. Лаптев, А. В. Морозов Журнал научных публикаций аспирантов и докторантов, №8/2008 г.- с. 226 - 229
37. Морозов А.В. Автоматизация оценки качества учебных проектов программных систем на основе метрик // Информационные технологии в образовании, технике, медицине 2004: Сборник статей, с.230-232
38. Буч, Г. Объектно-ориентированный анализ и проектирование с примерами приложений / Г. Буч, Р. Максимчук, М. Энгл, Б. Янг и др. -М: Издательский дом: «Вильяме», 2008 720 с.
39. Буч, Г. Язык UML. Руководство пользователя / Г. Буч, Дж. Рамбо, И. Якобсон М: «ДМК пресс», 2007 - 496 с.
40. Фаулер, М. UML. Основы, 3-е издание. / М. Фаулер СПб.: Символ
41. Плюс, 2007.- 192 с 51-Богтс М. UML и Rational Rose. / М. Богтс, У. Богтс — М.: ЛОРИ, 2000. -582 с.
42. Боуэм, Б. Инженерное проектирование программного обеспечения / Б. Боуэм М: Радио и связь, 1985 - 512 с.
43. Фаулер, М. UML. Основы / М. Фаулер М: «Символ-Плюс», 2006 - 192 с. 5 4. Фаулер, М. Архитектура корпоративных программных приложений / М.
44. Фаулер М: Издательский дом: «Вильяме», 2007 - 544 с.
45. Фаулер, М. Рефакторинг. Улучшение существующего кода / М. Фаулер -М: «Символ-Плюс», 2008 432 с.
46. Кериевски, Дж. Рефакторинг с использованием шаблонов / Дж. Кериевски М: Издательский дом: «Вильяме», 2006 - 400 с.
47. Гамма, Э. Приемы объектно-ориентированного проектирования. Паттерны проектирования. / Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес Спб: Питер, 2007 - 366 с.
48. Влиссидес, Дж. Применение шаблонов проектирования: дополнительные штрихи / Дж. Влиссидес М: Издательский дом: «Вильяме», 2003 - 144с.
49. Кориевски, Д. Рефакторинг с использованием шаблонов./ Д. Кориевски
50. М.: ООО «И.Д. Вильяме», 2006. — 400 с.
51. Мессарош, Д. Шаблоны тестирования xUnit: рефакторинг кода тестов./ Д. Мессарош — М.: ООО «И.Д. Вильяме», 2009. — 832 с.
52. Амблер, С. Рефакторинг баз данных. Эволюционное проектирование. / С. Амблер, П. Садаладж — М.: «И.Д. Вильяме», 2007. — 368 с.
53. Мейер, Б. Объектно-ориентированное конструирование программных систем / Б. Мейер М: «Русская редакция», 2005 - 1204 с.
54. Макконнелл, С. Совершенный код / С. Макконнелл Спб: Питер, 2007 -896 с.
55. Ларман, К. Применение UML 2.0 и шаблонов проектирования / К. Ларман- М: Издательский дом: «Вильяме», 2008 736 с.
56. Гринфилд, Дж. Фабрики разработки программ. Потоковая сборка типовых приложений, моделирование, структуры и инструменты / Дж. Гринфилд, К. Шорт М: Издательский дом: «Вильяме», 2008 - 592 с.
57. Нильссон, Дж. Применение DDD и шаблонов проектирования. Проблемно-ориентированное проектирование приложений с примерами на С# и .NET / Дж. Нильссон М: Издательский дом: «Вильяме», 2008 — 560 с.
58. Бек, К. Шаблоны реализации корпоративных приложений / К. Бек М: Издательский дом: «Вильяме», 2008 - 176 с.
59. Дюваль, П. Непрерывная интеграция. Улучшение качества программного обеспечения и снижение риска / П. Дюваль, С. Матиас и Э. Гловер М: Издательский дом: «Вильяме», 2008 - 240 с.
60. Хоп, Г. Шаблоны интеграции корпоративных приложений / Г. Хоп, Б. Вульф М: Издательский дом: «Вильяме», 2007 - 240 с.
61. Брауде, Э. Технология разработки программного обеспечения / Э. Брауде Спб: Питер, 2004 - 655 с.
62. Вигерс, К. Разработка требований к программному обеспечению / К. Вигерс М: Издательский дом: «Русская редакция», 2004 - 576 с.
63. Макконнелл, С. Остаться в живых. Руководства для менеджера программных проектов / С. Макконнелл Спб: Питер, 2006 - 240 с.
64. Макконнелл, С. Профессиональная разработка программного обеспечения / С. Макконнелл Спб: Питер, 2006 - 240 с.
65. Макконнелл, С. Сколько стоит программный проект / С. Макконнелл -М: Русская Редакция, 2007 297 с.
66. Рейнволтер, Дж. Как пасти котов: наставление программисту руководящему другими программистами/ Дж. Рейнволтер Спб: Питер, 2006 - 256 с.
67. Крылов Е.В. Техника разработки программ: в 2 кн. Кн. 2. Технология, надежность и качество программного обеспечения: Учебник / Е.В.
68. Крылов, В.А. Острейковский, Н.Г. Типикин. М.: Высшая школа, 2008. -469 с.
69. Борисов, В.В. Нечеткие модели и сети. / В.В. Борисов, В.В. Круглов, А.С.Федулов. М.: Горячая линия Телеком, 2007. - 284 с.
70. Уотермен, Д. Руководство по экспертным системам / Д. Уотермен. М.: Мир, 1989.-390 с.
71. Кренке Д. Теория и практика построения баз данных. 8-е изд. / Д. Кренке — СПб.: Питер, 2003. 800с.
72. Гаврилова, Т.А. Базы знаний интеллектуальных систем / Т.А. Гаврилова, В.Ф. Хорошевский. СПб.: Питер, 2001. - 384 с.
73. Троелсен, Э. С# и платформа .NET 3.0, специальное издание. / Э. Троелсен — СПб.: Питер, 2008. 1456 с.
74. Нейгел, К. С# 2005 для профессионалов / К. Нейгел, Б. Ивьен, Дж. Глинн и др. М: Издательский дом: «Вильяме», 2006 -1376 с.
75. Арнольд, К. Язык программирования Java. 3-е изд. / К. Арнольд, Дж. Гослинг, Д. Холмс — М.: Издательский дом «Вильяме», 2001. 624 с.
76. Страуструп, Б. Язык программирования С++, спец. изд. / Б. Страуструп М.; СПб.: «Издательство БИНОМ «Невский диалект», 2001. - 1099 с.
77. Ахо, А. Компиляторы: принципы, технологии, инструментарий, 2-е изд. / А. Ахо, М. Лам, Р. Сети, Дж. Ульман — М.: ООО «И.Д. Вильяме», 2008. -1184 с.
78. Мозговой, М.В. Классика программирования: алгоритмы, языки, автоматы, компиляторы. Практический подход. / М.В. Мозговой — СПб.: Наука и техника, 2006. 320 с.
79. Хайкин, С. Неронные сети. Полный курс / С. Хайкин. М: Издательский дом «Вильяме», 2008. —1104 с.
80. Кобзарь А. И. Прикладная математическая статистика. / А.И. Кобзарь — М.: Физматлит, 2006. — 816 с.
81. Лемешко, Б.Ю. Критерии Бартлетта и Кокрена в измерительных задачах при вероятностных законах, отличающихся от нормального / Б.Ю. Лемешко, Е.П. Миркин Измерительная техника. — 2004Т. №10. — стр. 10-16
82. Wang, L. X Adaptive fuzzy systems and control . / L. X. Wang New Jersey: PTR Prentice Hall, Eaglewood Cliffs, 1994. - 352 c.
83. Рутковская, Д. Нейронные сети, генетические алгоритмы и нечеткие системы / Д. Рутковская, М. Пилипиньский, Л. Рутковский- М: Горячая Линия — Телеком, 2007 452 с.
84. Лю Б. Теория и практика неопределенного программирования / Б. Лю -М: БИНОМ, 2005-416 с.
85. Мак-Дональд, М. Microsoft ASP.NET 2.0 с примерами на С# 2005 для профессионалов Pro ASP.NET 2.0 in С# 2005 / М. Мак-Дональд, М. Шпушта М: Издательский дом: «Вильяме», 2007 -1408 с.
86. ГОСТ 28195-89. Оценка качества программных средств. Общие положения. — М.: Издательство стандартов, 1989
87. Oracle AIM / Oracle corp: http://www.oracle.com/partners/develop/ implementation/ global/aimfoundation.html
88. Information technology Software product evaluation - Quality characteristics and guidelines for their use - ISO/IEC 9126, 1991.
89. Information Technology Software measurement - Functional Size Measurement-Parti: Definition of Concepts-ISO/IEC 14143-1, 1998.
90. Information Technology Software measurement - Functional Size Measurement-Part 2: Conformity evaluation of software size measurement methods to ISO/IEC - ISO/IEC 14143-2, 1998.
91. Information Technology Software measurement - Functional Size Measurement-Part 3: verification of functional size measurement methods. -ISO/IEC 14143-3, 2003.
92. Information Technology Software measurement - Functional Size Measurement-Part 4: Reference model. - ISO/IEC 14143-4, 2003.
93. Information Technology Software measurement - Functional Size Measurement-Part 5: Determination of functional domains for use with functional size measurement. - ISO/IEC 14143-5, 2002
94. Дейт, К. Введение в системы баз данных / К. Дейт — М.: «Вильяме», 2006. — С. 1328.
95. Элкин С., Resharper, CodeRush, Visual Assist Comparison / С. Элкин -http://scottelkin.com/programming/resharper-coderush-visual-assist-comparison/
Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.