Общие вопросы разработки и тестирования программного обеспечения

Жанр: Общие вопросы разработки и тестирования программного обеспечения

В предлагаемой книге описываются простые и изящные решения типичных задач, возникающих в объектно-ориентированном проектировании. Паттерны появились, потому что многие разработчики искали пути повышения гибкости и степени повторного использования своих программ. Найденные решения воплощены в краткой и легко применимой на практике форме. Авторы излагают принципы использования паттернов проектирования и приводят их каталог. Таким образом книга одновременно решает две задачи. Во-первых, здесь демонстрируется роль паттернов в создании архитектуры сложных систем. Во-вторых, применяя содержащиеся в справочнике паттерны, проектировщик сможет с легкостью разрабатывать собственные приложения. Издание предназначено как для профессиональных разработчиков, так и для программистов, осваивающих объектно-ориентированное проектирование.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Более 10 лет первое издание этой книги считалось одним из лучших практических руководств по программированию. Сейчас эта книга полностью обновлена с учетом современных тенденций и технологий и дополнена сотнями новых примеров, иллюстрирующих искусство и науку программирования. Опираясь на академические исследования, с одной стороны, и практический опыт коммерческих разработок ПО — с другой, автор синтезировал из самых эффективных методик и наиболее эффективных принципов ясное прагматичное руководство. Каков бы ни был ваш профессиональный уровень, с какими бы средствами разработками вы ни работали, какова бы ни была сложность вашего проекта, в этой книге вы найдете нужную информацию, она заставит вас размышлять и поможет создать совершенный код.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Эта книга — подробное руководство по разработке качественных требований к программному обеспечению. Здесь описаны десятки проверенных на практике приемов выявления, формулирования, разработки, проверки, утверждения и тестирования требований, которые помогут разработчикам, менеджерам и маркетологам создать эффективное ПО. Настоящее издание дополнено новыми приемами, посвященными разработке требований в проектах гибкой разработки (agile). Основная аудитория — бизнес-аналитики и разработчики, а также дизайнеры, программисты, тестировщики и другие члены команды, задача которых понять и удовлетворить чаяния клиентов, а также маркетологи, менеджеры по продуктам и менеджеры проекта, которые должны проникнуться «духом» и особенностями продукта, чтобы сделать его в полной мере конкурентоспособным. Книга состоит из 32 глав, 3 приложений и словаря терминов.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Основываясь на многолетнем опыте, эксперты Грегор Хоп и Бобби Вульф рекомендуют асинхронный обмен сообщениями в качестве оптимальной стратегии интеграции корпоративных приложений. Вместе с тем создание и развертывание решений, основанных на обмене сообщениями, представляет собой весьма непростую задачу для разработчиков. В книге Шаблоны интеграции корпоративных приложений рассматриваются шаблоны проектирования и приводятся практические примеры интеграции приложений, демонстрирующие преимущества обмена сообщениями и эффективность решений, создаваемых на основе этой технологии. Авторы подчеркивают как преимущества, так и недостатки обмена сообщениями, а также дают практические советы по созданию кода подключения приложения к системе обмена сообщениями, маршрутизации сообщений и мониторинга состояния. Если вы хотите научиться управлять системой обмена сообщениями и обеспечивать ее поддержку, а также осуществлять мониторинг, эта книга — для вас. Материал книги включает: • 65 шаблонов проектирования, использующихся при интеграции приложений • Список и графическое представление шаблонов, которые помогут описать крупномасштабные решения интеграции • Примеры использования технологий интеграции, таких как JMS, MSMQ, TIBCO ActiveEnterprise, Microsoft BizTalk, SOAP и XSL • Практикум, демонстрирующий создание системы формирования цен на облигации • Описание новых стандартов и перспектив развития технологий интеграции корпоративных приложений • В книге отражен многолетний опыт более чем 60 ведущих специалистов в области шаблонов проектирования и рефакторинга. Независимо от того, где, кем и над чем вы работаете, эта книга позволит вам повысить свой уровень разработчика программных проектов и поможет в работе над конкретными проектами, указав, как наиболее эффективно и безопасно повысить их качество.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

С появлением микропроцессоров, обладающих большим числом ядер, понимание конкуренции и параллелизма при разработке программного обеспечения стало еще более важным, чем прежде. В книге вы познакомитесь с преимуществами функционального программирования с точки зрения конкуренции, узнаете, как применять акторы для разработки распределенного программного обеспечения, и исследуете приемы параллельной обработки огромных объемов информации на нескольких процессорах. Эта книга поможет вам приобрести новые навыки в разработке программ, благодаря чему вы будете готовы решать сложные задачи в ближайшие несколько лет.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

В этой книге вы не найдете описания конкретных технологий, алгоритмов и языков программирования – ценность ее не в этом. Она представляет собой сборник практических советов и рекомендаций, касающихся ситуаций, с которыми порой сталкивается любой разработчик: отсутствие мотивации, выбор приоритетов, психология программирования, отношения с руководством и коллегами и многих других. Подобные знания обычно приходят лишь в результате многолетнего опыта реальной работы. По большому счёту перед вами – ярко и увлекательно написанное руководство, которое поможет быстро сделать карьеру в индустрии разработки ПО любому, кто поставил себе такую цель. Конечно, опытные программисты могут найти некоторые идеи автора достаточно очевидными, но и для таких найдутся темы, которые позволят пересмотреть устоявшиеся взгляды и выйти на новый уровень мастерства. Для тех же, кто только в самом начале своего пути как разработчика, чтение данной книги, несомненно, откроет широчайшие перспективы.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Перед вами один из самых интересных учебников по машинному обучению — разделу искусственного интеллекта, изучающего методы построения моделей, способных обучаться, и алгоритмов для их построения. Автор воздал должное невероятному богатству предмета и не упустил из вида объединяющих принципов. Читатель с первых страниц погружается в машинное обучение в действии, но без не нужных на первых порах технических деталей. По мере изучения предмета тщательно подобранные примеры, сопровождаемые иллюстрациями, постепенно усложняются. В книге описан широкий круг логических, геометрических и статистических моделей, затрагиваются и такие находящиеся на переднем крае науки темы, как матричная факторизация и анализ РХП. Особое внимание уделено важнейшей роли признаков. Устоявшаяся терминология дополняется введением в рассмотрение новых полезных концепций. В конце каждой главы приводятся ссылки на дополнительную литературу с авторскими комментариями. Книга ясно написана и хорошо организована. Начав с основ, автор умело ведет читателя, знакомя его с полезными фактами и подробно описывая ряд методов машинного обучения. Приводится также псевдокод ключевых алгоритмов. Благодаря всему этому книга задает новый стандарт изучения такой сложной дисциплины как машинное обучение.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Перед вами настольная книга для системных аналитиков, программистов, архитекторов программного обеспечения, менеджеров проектов и начальников отделов по разработке программ. Кроме того, книга будет полезным учебным пособием для преподавателей, студентов и аспирантов кафедр IT в технических вузах. Как воплотить неясные ожидания заказчика в блестящий и прибыльный проект? Как избежать ошибок на начальном этапе? Как стать эффективным аналитиком? Авторы отвечают на эти вопросы и делятся своими ноу-хау, которые позволят вам стать гуру в разработке программного обеспечения. Главное достоинство книги — ее практическая направленность. В ней собрана полезная информация со ссылками на теоретические материалы из разных областей разработки программного обеспечения: анализа, архитектуры, управления проектами, лидерства и управления персоналом — все, что понадобится в реальных производственных проектах. Помимо этого в книге содержится анализ разнообразных кейсов и ситуаций, а также примеры документов и шаблонов, необходимых для разработки ПО. Авторы структурируют огромный массив теоретической информации исходя из ее практической ценности на каждом этапе профессиональной карьеры. Книга написана простым и доступным языком. Авторы многие годы шли к высшему уровню профессионализма, а вас отделяет от тех же знаний только прочтение этой книги.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Излагаются основные направления в области разработки корпоративных систем: организация хранилищ данных, оперативный (OLAP) и интеллектуальный (Data Mining) анализ данных. В третьем издании по сравнению со вторым, выходившем под названием «Технологии анализа данных: Data Mining, Text Mining, Visual Mining, OLAP», добавлены визуальный (Visual Mining) и текстовый (Text Mining) анализ данных, анализ процессов (Process Mining), анализ Web-ресурсов (Web mining) и анализ в режиме реального времени (Real-Time Data Mining). Приведено описание методов и алгоритмов решения основных задач анализа: классификации, кластеризации и др. Описание идеи каждого метода дополняется конкретным примером его использования. Прилагаемый компакт-диск содержит стандарты Data Mining, библиотеку алгоритмов Xelopes и графический интерфейс к ней; JDK 1.6 и драйверы, необходимые для работы графического интерфейса, свободно распространяемую среду разработки Eclipse и лабораторный практикум по интеллектуальному анализу данных.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Даже плохой программный код может работать. Однако если код не является «чистым», это всегда будет мешать развитию проекта и компании-разработчика, отнимая значительные ресурсы на его поддержку и «укрощение». Эта книга посвящена хорошему программированию. Она полна реальных примеров кода. Мы будем рассматривать код с различных направлений: сверху вниз, снизу вверх и даже изнутри. Прочитав книгу, вы узнаете много нового о коде. Более того, вы научитесь отличать хороший код от плохого. Вы узнаете, как писать хороший код и как преобразовать плохой код в хороший. Книга состоит из трех частей. В первой части излагаются принципы, паттерны и приемы написания чистого кода; приводится большой объем примеров кода. Вторая часть состоит из практических сценариев нарастающей сложности. Каждый сценарий представляет собой упражнение по чистке кода или преобразованию проблемного кода в код с меньшим количеством проблем. Третья часть книги — концентрированное выражение ее сути. Она состоит из одной главы с перечнем эвристических правил и «запахов кода», собранных во время анализа. Эта часть представляет собой базу знаний, описывающую наш путь мышления в процессе чтения, написания и чистки кода.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Мировое сообщество программистов признает, что моделирование предметных областей — ключевой раздел проектирования программного обеспечения. В моделях предметных областей разработчики выражают сложные функции своих программ, реализуя их затем в таком виде, который отвечает реальным потребностям пользователей. Но, несмотря на очевидную важность предмета, существует очень мало пособий по эффективному внедрению моделирования предметных областей в практику разработки программ. Книга Эрика Эванса восполняет этот пробел. Она посвящена не отдельным технологиям, а систематическому предметно-ориентированному подходу. В ней представлен широкий набор приемов и методик, основанных на практическом опыте, и фундаментальных принципов, помогающих в реализации программных проектов из сложных предметных областей. Органично переплетая практику проектирования и реализации программ, эта книга содержит множество фактических примеров, иллюстрирующих применение общих стратегических принципов в реальных программных проектах. Из книги читатель узнает, как с помощью модели предметной области придать разработке сложной системы нужную направленность и динамику. Выделены основные приемы и образцы-шаблоны, образующие общий язык группы разработчиков, Особо подчеркивается необходимость рефакторинга не только кода, но и модели в его основе, что в сочетании с итерационной agile-методикой приводит к углублению знаний о предметной области и повышению качества взаимодействия между специалистами и программистами. Подход книги строится именно на этом фундаменте, предлагая модели и архитектуры для систем и организаций любой сложности. В частности, в книге рассматриваются следующие темы: • Единый язык общения для всей группы разработчиков. • Глубокая связь между моделью и программной реализацией. • Выделение ключевых черт модели. • Управление циклом существования объектов. • Написание легко интегрируемого кода предметной области. • Как сделать сложный код очевидным и предсказуемым. • Формулировка введения в предметную область. • Дистилляция ядра предметной области. • Поиск неявных понятий, скрытых в модели. • Применение аналитических шаблонов. • Архитектурные шаблоны в моделях. • Поддержание целостности больших систем. • Сосуществование нескольких моделей в одном проекте. • Организация систем в соответствии с крупномасштабными структурами. • Качественные скачки в моделях. Имея под рукой эту книгу, разработчики объектно-ориентированных программ, системные аналитики и архитекторы будут всегда располагать набором рекомендаций по организации своего труда, созданию сложных и полезных моделей предметных областей, превращению их в высококачественные программные продукты.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Принципы создания ПО изменяются. Традиционный подход с нарастающей интенсивностью разработки и перенапряжением членов команды приводят к замедлению работы. Осознав это, организаторы начали уделять больше внимания «командным» способностям группы и влиянию отдельных разработчиков. Вместо того чтобы увеличивать загрузку отдельного разработчика, создатели «быстрых» методологий спрашивают: «Как изменить процесс, чтобы работа команды стала не просто более продуктивной, но и более качественной?» И отвечают: «Учиться «играть»». Написанная для разработчиков и менеджеров проектов книга Быстрая разработка программного обеспечения уподобляет создание ПО игре. Игроки должны быть восприимчивы к разным методологиям и сосредоточены на разработке качественного ПО за короткий период времени. Им необходимо запоминать все, что узнается в процессе работы, поскольку ни одна игра не повторится дважды. В этой книге, основанной на десятилетнем опыте, исследованиях и интервью с членами команд разработчиков ПО, даются практические советы по успешному завершению проектов с минимальными усилиями.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Работа посвящена анализу профессиональных и массовых человеко-компьютерных интерфейсов с позиций деятельностного подхода. Деятельностный подход к разработке интерфейсов базируется на разработанной отечественными учеными в середине XX века теории деятельности. Этот подход широко распространен среди зарубежных исследователей. В книге рассматриваются инструментальные интерфейсы, то есть интерфейсы для специалистов в какой-либо области, использующих их как средство для осуществления своей профессиональной деятельности, а также интерфейсы — инструменты общего назначения. На базе деятельностного подхода проведен анализ деятельности работников различных категорий в связи с используемыми инструментальными интерфейсами. На примере проведенных коллективом авторов проектирования и разработки прототипов медицинских интерфейсов рассматриваются возможности внедрения деятельностного подхода в широкую практику проектирования. Работа предназначена как для разработчиков интерфейсов, так и для руководителей и постановщиков задач по компьютеризации производства и управления.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

В современных условиях стремительно меняющейся среды разработки процессы тестирования программного обеспечения играют все большую роль. Если методологии ускоренной разработки нацелены на потребность компании в быстром выпуске продукта, то процессы тестирования направлены на столь же существенную потребность в выпуске его в надлежащем виде. В этой книге Рекс Блэк, опираясь на свой богатый опыт, выделяет двенадцать процессов тестирования, являющихся ключевыми для достижения успеха. За описанием каждого из этих процессов следует отменно выстроенный пример использования процесса в различных организационных, операционных и технологических условиях. Вместо громоздких правил представлены списки контрольных вопросов — легкие, гибкие инструменты для внедрения тестирования, ориентированного на процесс, для сбора измерений и внесения последовательных изменений.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

В новом издании своей книги автор вновь сумел собрать неотразимую коллекцию программистских трюков, позволяющих программисту писать элегантные и эффективные программы, быстро создавать эффективно работающий код, становясь при этом настоящим, глубоко знающим свое дело профессионалом. Трюки автора в высшей степени практичны, но при этом чрезвычайно интересны, а иногда и просто неожиданны — как решение большой головоломки. Изложенный материал позволит повысить квалификацию даже бывалому программисту, но при этом книга будет понятна и полезна даже начинающему.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

В книге описано тестирование программных продуктов в Google: как устроены процессы, как организованы команды, какие техники используются, кто ответственен за качество. Принципы, на которых построено тестирование в Google, применимы в проектах и компаниях любого размера. Авторы книги сами работали над продуктами Google, создавая инструменты тестирования, настраивая процессы и занимаясь непосредственно тестированием. Книга рассчитана на профессионалов из индустрии разработки программного обеспечения: специалистов по тестированию, программистов, менеджеров.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

В современном мире разработки ПО успех программиста во многом зависит не только от качества кода, но и от его взаимодействия с другими людьми. В этой занимательной и ироничной книге раскрываются основные закономерности и шаблоны поведения, возникающие в команде разработчиков ПО. Рассматриваются основные роли каждого из участников коллектива, партнёры их поведения и примеры организации наиболее эффективного взаимодействия внутри команды программистов. Эта книга поможет вам оценить важность человеческого фактора в процессе разработки ПО и научиться выстраивать эффективно работающую команду для IT-проекта любой сложности.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Объектно Ориентированное Программирование (ООП) — технология, которую обязан знать, понимать и применять каждый программист. Печально, но многие программисты не знают, не понимают и не применяют. А многие, что ещё хуже, — находятся в заблуждении, что знают, понимают и применяют. Из этой книги вы узнаете всё, что надо знать об ООП — и даже немного больше. Кратко, понятно, с примерами. Для умных людей.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Объектно-ориентированное программирование — это фундамент современных языков программирования, включая C++, Java, C#, Visual Basic, .NET, Ruby и Objective-C. Кроме того, объекты лежат в основе многих веб-технологий, например JavaScript, Python и PHP. Объектно-ориентированное программирование обеспечивает правильные методики проектирования, переносимость кода и его повторное использование, однако для того, чтобы все это полностью понять, необходимо изменить свое мышление. Разработчики, являющиеся новичками в сфере объектно-ориентированного программирования, не должны поддаваться искушению перейти непосредственно к конкретному языку программирования (например, Objective-C, VB .NET, C++, C#, .NET или Java) или моделирования (например, UML), а вместо этого сначала уделить время освоению того, что автор книги Мэтт Вайсфельд называет объектно-ориентированным мышлением. Несмотря на то, что технологии программирования изменяются и эволюционируют с годами, объектно-ориентированные концепции остаются прежними — при этом неважно, какой именно является платформа.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Немногие книги о компьютерах оказали такое заметное влияние на управление разработкой программного обеспечения, как «Человеческий фактор». Уникальное озарение этой книги, долгие годы сохранявшей свое положение в списке бестселлеров: самые сложные проблемы разработки ПО носят не технологический, а социальный характер. Эти человеческие проблемы решать не просто, однако, решив их, вы увеличите шансы на успех до верхнего предела. В третьем издании появилось шесть новых глав и внесены многочисленные правки в основной текст, так что теперь книга лучше соответствует современным средам разработки и современным проблемам. В частности, обсуждаются патологии лидерства, которые раньше за патологии не считались, эволюционирующая культура собраний, а еще растущее понимание того, что некоторые наши инструменты служат скорее якорями, а не двигателями. Каждый, кому необходимо управлять проектом по разработке ПО или целой организацией такого рода, найдет на страницах этой книги множество ценных советов.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Team Foundation Server — это инструмент управления жизненным циклом приложений (Application Lifecycle Management, ALM), который помогает в управлении и планировании всей работы, включая управление портфелем, управление всеми тестовыми случаями и проведение тестов. Взаимодействие с TFS осуществляется с использованием различных клиентов, таких как Microsoft Visual Studio, Microsoft Test Manager (MTM) и веб-портал. Эта книга научит вас настраивать TFS, используя массу точек настройки и расширения. Умение настраивать TFS — очень полезный и мощный навык. Применяя его, вы сэкономите массу времени своим пользователям, а также облегчите для них понимание данных в отчетах. Для пользователей со средним опытом, которые уже знакомы с TFS.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Подробно рассматриваются методологии, технологии, языки и системы программирования, аппаратная и операционная платформы, как давно известные, так и новейшие. Представлены различные их классификации. Описывается управления программным проектом и его особенности. Обсуждаются планирование, мотивация и реализация профессиональной карьеры в программировании и другие важные социальные вопросы информатики. Предлагается большой список литературы, включающий основные работы по каждой из исследуемых областей. Во втором, существенно переработанном и дополненном издании, отражены изменения последних лет в области информационных систем и дана оценка текущему состоянию дел в анализируемых областях.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

Результатом анализа и проектирования больших, сложных систем ПО должен стать законченный продукт. Его можно изобразить на бумаге или выразить в виде завершенной модели. Однако аналитики и разработчики ПО редко переносят на бумагу «анатомию» своего труда. В данной книге показан процесс объектно-ориентированного анализа и проектирования реальных систем. Помимо терминологии, обозначений и модельной структуры рассматриваются вопросы анализа, разработки проекта и управления им. Книга помогает перейти от изучения теории объектно-ориентированного анализа/проектирования (OOA/OOD) к ее применению в сложном реальном мире. Она охватывает следующий круг тем: — Поиск правильных объектов. — Построение модели анализа. — Документирование, проверка и исправление модели анализа. — Переход к проектированию. — Построение модели проектирования. — Вопросы реализации. — Переход к объектно-ориентированной технологии. Книга предназначена для практиков. В ней содержится детальное описание действующих структурных моделей: постановка проблемы, анализ/проектирование и, наконец, реализация. Переводчик: П. Быстров.

Жанр: Общие вопросы разработки и тестирования программного обеспечения

В качестве фундаментальных средств разработки программ рассматриваются такие вопросы, как структурное решение задач, абстракция данных, принципы программной инженерии и сравнительный анализ алгоритмов. Дано полное освещение большинства модулей знаний, касающихся структур данных и алгоритмов. Большая часть глав начинается основной темой и сопровождается примерами, приложениями и практическими исследованиями. Это учебное пособие дает основательные знания, которые позволяют студентам по ходу своей дальнейшей работы использовать его также в качестве справочного пособия.