|
Книги, рекомендуемые вместе с этой книгой:
Раздел каталога:
Оглавление книги "Анализ требований и проектирование систем. Разработка информационных систем с использованием UML" Об авторах
|
ПредисловиеКраткое содержание книгиРазработка информационной системы (ИС) - от становления идеи до первой версии, передаваемой заказчикам, - состоит из трех этапов: анализа, проектирования и реализации, в результате итеративного выполнения которых происходит пошаговое "наращивание" системы. В этой книге представлены методы и средства, используемые на первых двух этапах. Вопросы реализации затрагиваются только в той мере, в которой они необходимы при рассмотрении этапа проектирования. Тестированию и управлению изменениями посвящена последняя глава. Центральной темой книги являются вопросы объектно-ориентированной разработки программного обеспечения (ПО). Для описания артефактов при моделировании используется язык UML (Unified Modeling Language - унифицированный язык моделирования). Основное внимание уделяется разработке ИС с помощью метода последовательного уточнения, при этом упомянутый язык моделирования (UML) используется на протяжении всего жизненного цикла разработки. Аналитики, разработчики и программисты "говорят" на одном языке, хотя иногда в своих профессиональных интересах и могут пользоваться диалектами (профилями) языка. Поначалу объектная технология применялась для разработки графических интерфейсов пользователя (GUI - graphical user interface) и была в основном направлена на ускорение разработки новых систем и ускорение выполнения программ. В этой книге основной упор сделан на применение объектной технологии к разработке ИС. На этом пути необходимо преодолеть такие трудности, как большие объемы и сложные структуры данных, совместный доступ к информации со стороны многих пользователей, обработка транзакций, изменяющиеся требования и т.д. Основным преимуществом применения объектной технологии в среде ИС является то, что она облегчает решение проблем, связанных с сопровождением и масштабируемостью. Разработка информационной системы может служить синонимом анализа и проектирования "в большом". Проект ИС не может быть успешным при несоблюдении строго определенного процесса разработки, а также в отсутствии понимания лежащей в основе системы архитектуры ПО. Подобную разработку можно охарактеризовать как крупномасштабную, объектно-ориентированную, итеративную и наращиваемую. Архитектура ПО основана на решениях клиент/сервер, где клиент представляет собой рабочую станцию с GUI, а на сервере хранится база данных. Программы клиента и сервера выполняются в рамках отдельных процессов и взаимодействуют через обмен сообщениями между объектами. База данных сервера может быть реляционной, объектно-реляционной или чисто объектно-ориентированной. В книге предложен детализированный подход к анализу и проектированию информационных систем с использованием UML, и определены способы решения следующих задач. 1. Преодоление сложности моделей больших систем. 2. Усовершенствование архитектуры ПО. 3. Повышение уровня понятности, удобства сопровождения и масштабируемости. 4. Обеспечение многоуровневой структуризации объектов. 5. Управление интеграцией компонент. 6. Усовершенствование модели взаимодействия между GUI и перманентными объектами базы данных и т.д. Отличительные особенности книгиКниге присущи некоторые отличительные черты, сочетание которых делает ее просто уникальной. Изложение ведется с позиций подхода, который можно назвать "обучением на примерах". В основу рассмотрения положены примеры, а также наставление по анализу и проектированию. Примеры независимы друг от друга и относятся к пяти проблемным областям: Запись на университетские курсы (University Enrollment), Магазин видеопроката (Video Store), Управление контактами с клиентами (Contact Management), Телемаркетинг (Telemarketing) и Internet-магазин (OnLine Shopping). Примеры построены в виде разбора конкретных ситуаций, которые можно расширить или модифицировать с помощью вопросов, приведенных в конце большей части глав в разделе "Упражнения". В некоторых из упражнений используется шестая проблемная область - Оценка расходов на рекламу (Advertising Expenditure Measurement). Чтобы облегчить самостоятельное изучение материала, наставление (Internet-магазин) и анализ примеров излагаются в форме вопросов и ответов. В начале книги помещен специальный раздел, "Диаграммы видов деятельности для книги", содержащий диаграммы, которые связывают шаги "вопрос/ответ", используемые в наставлении и при разборе ситуаций. Диаграммы видов деятельности могут служить в качестве альтернативного "оглавления" для примеров, разбросанных по книге. В данном пособии рассматриваются принципы, методы и приемы, способные обеспечить надлежащий анализ и надлежащее проектирование. Особое внимание уделяется этапу проектирования, трактовка которого далека от его понимания как простого преобразования результатов анализа. При этом в книге находит подтверждение факт существования трудностей и сложностей на пути разработки крупномасштабных объектно-ориентированных систем клиент/сервер. Во многих отношениях книга содержит свежий взгляд на проектирование "в большом", итеративную пошаговую разработку больших систем, а также на возможности и ограничения, присущие средствам и методам, которые применяются при создании крупных программных изделий. Своим уникальным характером книга обязана в первую очередь гармоничному сочетанию практического акцента в объяснении материала с проникновением в его теоретическую суть. В качестве основной предпосылки является стремление избежать ненужной сложности, не утратив необходимой строгости. Книга написана с позиций опыта. Вопросы, не имеющие прямого отношения к индустрии ПО либо представляющие сегодня чисто научный интерес, не вошли в книгу. Книга отражает последние достижения в сфере информационной технологии; использует самый последний стандарт в области моделирования систем - язык UML и обращается к новейшим разработкам в технологии баз данных, включая объектно-реляционные базы данных. В этом контексте в книге не могло не найти отражения такое явление, как возврат от "толстого клиента" (т.е. мощного настольного компьютера) к серверным вычислениям, происходящий под влиянием развития Internet. Рассматриваемые в книге принципы анализа и проектирования в равной мере применимы как в случае решений, основанных на архитектуре клиент/сервер, так и современных распределенных приложений, построенных с использованием компонентного подхода. Разработка ПО не сводится к однозначным решениям типа "черное-белое", "истина-ложь", "нуль-один". Источником эффективных программных решений служат идеи толковых бизнес-аналитиков, системных проектировщиков и программистов, а не безоглядное применение алгоритмов. Здесь проводится линия, направленная на то, чтобы предупреждать читателя о потенциальных трудностях, которые не могут быть полностью разрешены в рамках предлагаемого подхода. Благодаря этому можно надеяться, что читатели станут применять приобретенные знания обдуманно и не будут рассчитывать на то, что использование предлагаемого подхода не потребует от них усилий, в противном случае они рискуют обмануться в своих ожиданиях. Подводя итог, можно отметить следующие отличительные черты, свойственные книге. 1. Книга устанавливает связь теории с действительностью - в виде практических проблем и ограничений, на которые следует обращать внимание, применяя предлагаемый подход на деле. 2. Особое внимание в книге уделяется этапу проектирования. Проектирование не рассматривается как простое преобразование результатов анализа, при этом внимание читателей обращается на трудности и сложности, присущие разработке крупномасштабных систем клиент/сервер. 3. Книга изобилует нетривиальными примерами и упражнениями, которые приводятся вместе со всеми необходимыми решениями и пояснениями. Для кого предназначена эта книгаЭто пособие предназначено как для студентов, так и для практиков, что полностью отвечает растущей потребности в университетских курсах, более приближенных к отраслевой практике. Его подготовка была непростой задачей, но есть основания надеяться, что ее удалось успешно решить. Чтобы полученные знания оставались актуальными в течение более продолжительного времени, относящиеся к разработке ПО аспекты реализации рассматриваются безотносительно к специфике тех или иных конкретных программных продуктов, представленных сегодня на рынке (хотя коммерческие CASE-средства используются в иллюстративных целях и в качестве примеров решений). Книга призвана служить в качестве учебного курса по теории вычислительных систем и информационным системам. Поскольку она содержит как "высокоуровневые" темы, относящиеся к системному моделированию, так и "низкоуровневые" вопросы проектирования пользовательского интерфейса и баз данных, книга может оказаться полезной для курсов по системному анализу, проектированию систем, программной инженерии, базам данных, объектной технологии, а также курсов по программным проектам, которые требуют от студентов разработки системы в соответствии с жизненным циклом разработки: начиная с определения требований и заканчивая реализацией GUI и баз данных. Настоящее пособие задумано как односеместровый курс, однако потенциально может быть использовано при чтении двух односеместровых курсов - одного по анализу требований, а другого по проектированию систем. Для той части читателей, которые относятся к специалистам-практикам, представленные теории увязываются с реальными проблемами. Источником большинства постановок задач, примеров и упражнений послужил опыт работы автора в качестве консультанта. Мы предупреждаем читателя о потенциальных трудностях и ограничениях, связанных с предлагаемым подходом. По нашему мнению, наибольшую пользу от книги могут получить следующие категории специалистов-практиков: бизнес-аналитики и системные аналитики, проектировщики, программисты, системные архитекторы, руководители и менеджеры проектов, специалисты по анализу решений, тестированию и подготовке технической документации, инструкторы производственного обучения. Структура книгиКнига полностью охватывает вопросы объектно-ориентированного анализа и проектирования информационных систем. Материал представлен в порядке, соответствующем современным процессам разработки. Пособие состоит из десяти глав. Охват материала равномерно распределен между анализом и проектированием. Первые пять глав касаются вопросов анализа, а вторые пять - проектирования и связанных с ним сведений. Читатели с различным базовым уровнем подготовки должны иметь возможность по-разному работать с книгой применительно к своим потребностям. Две главы книги посвящены объяснению оснований анализа и проектирования. Оставшиеся главы предполагают понимание этих оснований. Читателям предоставляется выбор: изучать главы, посвященные "основаниям" досконально, или же использовать их только в качестве обзора. Чтобы сделать изложение более ясным и нарушить его однообразие, в книге используется несколько приемов, перечисленных ниже.
Вспомогательные материалыНа Web-узлах, дополняющих книгу, в распоряжение читателей предоставляется обширный комплект вспомогательных материалов. К большей части Web-документов читатели имеют свободный доступ, но некоторые материалы защищены паролем в интересах преподавателей, которые станут применять пособие в учебном процессе. Информационные страницы по книге одновременно поддерживаются на следующих Web-узлахhttp://www.booksites.net/maciaszek Комплект вспомогательных материалов включает следующие Web-документы. 1. Instructor's Manual (Руководство преподавателя), содержащее нижеприведенные материалы.
2. Student's Resources (Материалы для студентов), пригодные для печатания лекционных слайдов в формате Acrobat Read. 3. Self-education Resources (Материалы для самообразования) - файлы моделей, представленных средствами Rational Rose (.mdl) и PowerDesigner (.pdm), содержащие решения задач из наставления, анализ ситуаций и все прочие примеры моделирования из учебника. 4. Errata (Список опечаток) - страница, предназначенная для исправления ошибок и описок, встретившихся в книге. 5. For More Information (Дальнейшие сведения) - страница, указывающая читателям на последние идеи и тенденции, относящиеся к предмету книги. Также служит указателем на курсы, построенные на основе книги, которые подготовлены для совместного использования другими читателями с помощью WWW. Ваши комментарии, исправления, предложения по улучшению и приглашения к сотрудничеству будут приняты с большой благодарностью. Пожалуйста, направляйте вашу корреспонденцию автору Leszek A. Maciaszek Department of Computing Macquarie University Sydney NSW 2109 Australialeszek@ics.mq.edu.auhttp://www.comp.mq.edu.au/~leszek/ телефон: +61 2 9850-9519 факс: +61 2 9850-9551 обычная почта: North Ryde, Herring Road, Bld. E6A, Room 319 БлагодарностиНаписание этой книги было бы невозможно без общения с моими друзьями, коллегами, студентами, ведущими специалистами отрасли и многими другими людьми, которые сознательно или нет оказали влияние на формирование моих знаний о проблемной области. Я действительно в большом долгу перед ними. Попытка перечислить всех могла бы показаться неблагоразумной и невыполнимой, поэтому - большое спасибо всем. Однако, даже при отсутствии достаточного места для благодарностей некоторых "товарищей" следует упомянуть особо.
Издатели благодарят за предоставление разрешений на воспроизведение следующих охраняемых авторским правом материалов. Рис. 2.34 воспроизводится с разрешения Gateway, Inc. c Gateway, Inc.; рис. 7.1, 7.4, 7.6, 7.7, 7.8, 7.9, 7.11, 7.12, 7.13, 7.14, 7.15, 7.16, 7.17, 7.19, 7.20, 10.6, 10.7, 10.8, 10.9, 10.10, 10.11 и 10.12 воспроизводятся с разрешения ACNielsen; рис. 7.10 воспроизводится с разрешения Маккуарийского университета. Web-узел, дополняющий книгу Лешека А. Мацяшека Анализ требований и разработка систем.Посетите Web-узел, дополняющий книгу Анализ требований и разработка систем, расположенный по адресуhttp://www.booksites.net/maciaszek Здесь вы найдете ценные материалы, необходимые для преподавания, обучения Для преподавателей:
Для студентов и преподавателей:
|
Copyright © 1992-2007 Издательская группа "Диалектика-Вильямс"
|