СПИСОК ОСНОВНЫХ СОКРАЩЕНИЙ
АС — автоматизированная система
БД - база данных
ГНИ — Государственная налоговая инспекция
ЕСПД — Единая система программной документации
ЖЦ - жизненный цикл
ИС - информационная система
МДР - метод декомпозиции работ
НМО — нормативно-методическое обеспечение
ООП — объектно-ориентированный подход
ПК — персональный компьютер
ПО — программное обеспечение
СУБД — система управления базами данных
ТС ПО — технология создания программного обеспечения
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 experience in training and teaching hundreds of students and software developers.
Intended Audience: students in computer science or software engineering 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 knowledge 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.