СПИСОК ОСНОВНЫХ СОКРАЩЕНИЙ

 

АС — автоматизированная система

БД - база данных

ГНИ — Государственная налоговая инспекция

ЕСПД — Единая система программной документации

ЖЦ - жизненный цикл

ИС - информационная система

МДР - метод декомпозиции работ

НМО — нормативно-методическое обеспечение

ООП — объектно-ориентированный подход

ПК — персональный компьютер

ПО — программное обеспечение

СУБД — система управления базами данных

ТС ПО — технология создания программного обеспечения

AFP (Adjusted Function Points) - итоговая оценка количества функциональных точек

API (Application Programming Interface) — интерфейс прикладно­го программирования

ARIS (Architecture of Integrated Information System) - архитекту­ра интегрированной информационной системы

ATM (Automated Teller Machine) - банкомат

CASE (Computer Aided Software Engineering) - автоматизирован­ная разработка программного обеспечения

СВР (Critical Best Practices) - критически важные практические навыки

CDM (Custom Development Method) — метод разработки прило­жений пользователя

СММ (Capability Maturity Model) — модель оценки зрелости тех­нологических процессов в организации ч

CMMI (Capability Maturity Model Integrated) - интеграционная версия модели СММ

СОСОМО (Constructive COst Model) — конструктивная модель стоимости

DET (Data Element Type) — тип элементарных данных

DFD (Data Flow Diagram) — диаграмма потоков данных

еЕРС (extended Event Driven Process Chain) - расширенная мо­дель цепочки процессов, управляемых событиями

EF (Environmental Factor) - уровень квалификации разработчиков

EI (External Input) - входной элемент приложения

EIF (External Interface File) — внешний интерфейсный файл

ЕО (External Output) - выходной элемент приложения

EQ (External Query) — внешний запрос

ERM (Entity-Relationship Model) - модель «сущность-связь»

FP (Function Point) - функциональная точка

FTR (File Type Referenced) - файл типа ссылки

GSC (General System Characteristics) — общие характеристики системы

GUI (Graphical User Interface) — графический интерфейс пользо­вателя

JAD (Joint Application Development) — совместная разработка приложений

JDBC (Java Database Connectivity) - интерфейс Java для реляци­онных баз данных

ICAM (Integrated Computer Aided Manufacturing) - интегриро­ванная компьютеризация производства

IDEF (Icam DEFinition) — методология моделирования програм­мы ICAM

IEC (International Electrotechnical Commission) - Международ­ная комиссия по электротехнике

IEEE (Institute of Electrical and Electronics Engineers) - Институт инженеров по электротехнике и электронике

IFPUG (International Function Point User Group) - Международ­ная организация по стандартизации методов оценки ПО

ILF (Internal Logical File) - внутренний логический файл

ISO (International Organization for Standardization) - Междуна­родная организация по стандартизации

КРА (Key Process Area) — основная группа процессов

LOC (Lines of Code) — количество строк кода

MSF (Microsoft Solutions Framework) — технология компании Microsoft

NATO (North-Atlantic Treaty Organization) - НАТО, Североатлан­тический союз

OCL (Object Constraint Language) - язык объектных ограничений

OMG (Object Management Group) - Организация по стандарти­зации в области объектно-ориентированных методов и технологий

ОМТ (Object Modeling Technique) - метод объектного моделиро­вания

OOSE (Object-Oriented Software Engineering) - объектно-ориен­тированная разработка программного обеспечения

PDSA (Plan-Do-Study-Act) - планирование, реализация, изуче­ние и действие

PERT (Program Evaluation-and-Review Technique) - метод оценки и пересмотра планов

PIN (Personal Identification Number) - личный код в банковской системе

PMI (Project Management Institute) - Институт управления про­ектами

RAD (Rapid Application Development) - быстрая разработка при­ложений

RET (Record Element Type) — элементарная запись RPW (Rational Process Workbench) - набор инструментов и шаб­лонов для настройки и публикации Web-сайтов на основе RUP

RUP (Rational Unified Process) - унифицированный процесс SADT (Structured Analysis and Design Technique) - метод струк­турного анализа и проектирования

SEI (Software Engineering Institute) - Институт программной ин­женерии

SEPG (Software Engineering Process Group) - группа по разработ­ке процессов создания ПО

SLOC (Source Lines of Code) - количество строк исходного кода

SoDA (Software Document Automation) — автоматизированное до­кументирование ПО

SPMN (Software Program Managers Network) - сеть Министерства обороны США для менеджеров проектов

SPR (Software Productivity Research) — название компании

SQL (Structured Query Language) - структурированный язык зап­росов

TCP/IP (Transmission Control Protocol/Internet Protocol) - прото­кол управления передачей/протокол Интернет

TCF (Technical Complexity Factor) — техническая сложность про­екта

UCP (Use Case Points) — количество вариантов использования

UFP (Unadjusted Function Points) — общее количество функцио­нальных точек без учета поправочного коэффициента

UML (Unified Modeling Language) — унифицированный язык мо­делирования

UOW (Unit of Work) - единица работы

UUCP (Unadjusted Use Case Points) - количество вариантов ис­пользования без учета поправочного коэффициента

VAF (Value Adjustment Factor) - поправочный коэффициент

ХР (Extreme Programming) — экстремальное программирование

 

SOFTWARE DESIGN

 

Second Edition A. Vendrov

 

Moscow, «Finansy i statistika» Publishing House, 2004

 

The textbook examines «state-of-the-art» in software design methods and tools. It bases on the international standards, first of all on ISO 12207 «Software life cycle processes*. Special attention is paid to the structural and object-oriented approaches to the business modeling, software requirements specification, analysis and design. Key features;

· Application of a standard modeling language UML.

· Practical introduction to object-oriented analysis and design using the Unified Software Development Process and showing how it can be applied in a relatively simple case study.

The structure and emphasis in this book are based on years of experi­ence in training and teaching hundreds of students and software developers.

Intended Audience: students in computer science or software engineer­ing courses, system analysts, software developers and project managers.

About the author:

Alexander Vendrov is a consultant and lecturer in Moscow State University. He is known as an expert in software engineering methods and tools, including CASE, structured and object-oriented analysis and design as well as UML modeling.

He is Ph.D. (technical sciences) the author of monograph «CASE-technology* (1998), textbooks «Software Design* (2000), «A practical work on Software Design* (2002), and coauthor of «Database and know­ledge base management systems* (1991).

He is also the interpreter of two books: «UML Distilled* by M. Fowler (1997) and «Death March* by Ed. Yourdon (1997, 2003), editor of some well-known books (Russian versions), including «Mastering UML with Rational Rose* by W Boggs, M. Boggs (1999), «Writing Effective Use Cases* by A. Cockburn (2000), «Software Project Management. A Unified Framework* by W Royce (1998) and «Agile Software Development* by A. Cockburn (2001), and technical editor of «UML: A Beginner's Guide* (J. T. Roff, McGraw-Hill/Osborne, 2003).

 


[1] Брукс Ф. Мифический человеко-месяц, или как создаются програм­мные системы: Пер. с англ. — СПб.: Символ-Плюс, 1999.

 

[2] Йордон Эд. Путь камикадзе.: Пер; с англ. - М.: ЛОРИ, 2001

[3] Коберн А. Быстрая разработка программного обеспечения: Пер. с англ. - М.: ЛОРИ, 2002.

 

[4] Бек К. Экстремальное программирование: Пер. с англ. — СПб.: Питер, 2002.

1Более подробно нормативно-методические документы (стандарты) рассматриваются в учебном пособии: Благодатских В.А., Волнин В.А., Поска-калов К.Ф. Стандартизация разработки программных средств. — М.: Финан­сы и статистика, 2003.

 

[6] IEEE Std 610.12 - 1990. IEEE Standard Glossary of Software Engineering Terminology.

[7] Боэм Б. У. Инженерное проектирование программного обеспечения: Пер. с англ. — М.: Радио и связь, 1985

[8] Оценка и аттестация зрелости процессов создания и сопровождения программных средств и информационных систем (ISO/IEC TR 15504-СММ) / Пер. с англ. А.С. Агапова и др. — М.: Книга и бизнес, 2001.

 

[9] Соммервилл И.Инженерия программного обеспечения. — 6-е изд.: Пер. с англ. — М.: Вильяме, 2002

 

1Леффингуэлл Д., Уидриг Д. Принципы работы с требованиями к программному обеспечению. Унифицированный подход: Пер. с англ. — М.: Вильяме, 2002.

 

[11] Липаев В. В. Документирование и управление конфигурацией про­граммных средств. Методы и стандарты. — М.: Синтег, 1998.

 

[12]Каляное Т.Н. Консалтинг при автоматизации предприятий Синтег. — М., 1997. (Серия «Информатизация России на пороге XXI века»).

 

[13] Марка Д.А., МакГоуэн К. Методология структурного анализа и проек­тирования. — М.: МетаТехнология, 1993

[14] Черемных СВ., Семенов И.О., Ручкин B.C. Структурный анализ систем: IDEF-технологии. — М.: Финансы и статистика, 2001.

[15] Калашян А.Н., Каляное Г.Н. Структурные модели бизнеса: DFD-технологии. — М.: Финансы и статистика, 2003

[16] Калашян А.Н., Каляное Т.Н. Структурные модели бизнеса: DFD-технологии. — М.: Финансы и статистика, 2003

[17] Буч Г. Объектно-ориентированный анализ и проектирование с приме­рами приложений на C++. - 2-е изд.: Пер. с англ. - М.: Бином. - СПб.: Невский диалект, 1999.

[18] Фаулер М., Скотт К. UML в кратком изложении. Применение стандартного языка объектного моделирования: Пер. с англ. — М.: Мир, 1999.

[19] Коберн А. Современные методы описания функциональных требований к системам.: Пер. с англ. - М.: ЛОРИ, 2002

[20] Приемы объектно-ориентированного проектирования. Паттерны про­ектирования / Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес: Пер. с англ. — СПб.: Питер, 2001.

 

[21] Eriksson, Hans-Erik and Penker, Magnus «Business Modeling with UML: Business Patterns at work». Wiley Computer Publishing, 2000.

[22] Примеры моделей, связанных с применением технологии Rational lliilliiil Process, здесь и далее приводятся в среде CASE-средства Rational

[23] Методической основой данного подраздела является технология Rational Unified Process.

[24] Коберн А. Современные методы описания функциональных требова­ний к системам: Пер. с англ. — М.: ЛОРИ, 2002.

[25] Методической основой данного и следующего подраздела является технология Rational Unified Process.

 

[26] Ларман К. Применение UML и шаблонов проектирования. - 2-е изд.: Пер. с англ. — М.: Вильяме, 2002.

[27]Приемы объектно-ориентированного проектирования. Паттерны про­ектирования / Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес: Пер. с англ. -СПб.: Питер, 2001

[28] Буч Г. и др. Язык UML. Руководство пользователя.: Пер. с англ. / Г. Буч, Дж. Рамбо, А. Джекобсон. - М.: ДМК, 2000.

[29] Палмер СР., Фелсинг Дж.М. Практическое руководство по функцио­нально-ориентированной разработке ПО: Пер. с англ. - М.: Вильяме, 2002;

 

[30] Маклаков СВ. Создание информационных систем с AllFusion Modeling Suite. - М.: Диалог-МИФИ, 2003.

 

1 Эффективность работы конечных пользователей определяется наличи­ем следующих функциональных возможностей.

 

 

 

[31] Сложная обработка характеризуется наличием у приложения следующих функциональных возможностей:

[32] Гибкость характеризуется наличием у приложения следующих воз­можностей:

 

[33] Putnam L.H. A General Empirical Solution to the Macro Software Sizing and Estimating Problem // IEEE Transactions on Software Engineering, 1978, July. — P. 345-361.

 

[34] Боэм Б.У. Инженерное проектирование программного обеспечения: Пер. с англ. — М.: Радио и связь, 1985.

[35] Более подробное описание модели СОСОМО II (на русском языке) приведено в книгах: Орлов С.А. Технологии разработки программного обес­печения. — СПб.: Питер, 2002; Фатрелл Р., Шафер Д., Шафер Л. Управление программными проектами: достижение оптимального качества при мини­муме затрат: Пер. с англ. — М.: Вильяме, 2003.

[36] Йордон Эд. Путь камикадзе: Пер. с англ. — М.: ЛОРИ, 2001 (в настоя­щее время готовится перевод второго издания).

 

[37] Tarek Abdel-Hamid, Stuart E. Madnick. Software Project Dynamics: An Integrated Approach. Englewood Cliffs, NJ: Prentice Hail, 1991.