Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Билеты рспс.docx
Скачиваний:
9
Добавлен:
23.09.2019
Размер:
817.89 Кб
Скачать

37) Отладчики программ.

Отладчик или дебаггер (англ. debugger}}) является модулем среды разработки или отдельным приложением, предназначенным для поиска ошибок в программе. Отладчик позволяет выполнять пошаговую трассировку, отслеживать, устанавливать или изменять значения переменных в процессе выполнения программы, устанавливать и удалять контрольные точки или условия остановки и т. д.

Для крэкера отладчик - это инструмент анализа программы в реальном времени, используя опыт и отладчик крэкер может легко найти ключевые места в защите программы для последующего патча или для изготовления кейгена.

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

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

39) Средства автоматизации разработки программ (case-средства).

В рамках программной инженерии CASE-средства представляют собой основную технологию, используемую для создания и эксплуатации систем ПО. Под CASE-средством (в соответствии с международным стандартом ISO/IEC 14102:1995(Е)) понимается программное средство, поддерживающее процессы жизненного цикла ПО (определенные в стандарте ISO/IEC 12207:1995), включая анализ требований к системе, проектирование прикладного ПО и баз данных, генерацию кода, тестирование, документирование, обеспечение качества, управление конфигурацией ПО и управление проектом, а также другие процессы. CASE-средства вместе с системным ПО и техническими средствами образуют среду разработки ПО ЭИС (Software Engineering Environment).

CASE-средствам присущи следующие основные особенности:

• наличие мощных графических средств для описания и документирования системы, обеспечивающих удобный интерфейс с разработчиком и развивающих его творческие возможности;

• интеграция отдельных компонентов CASE-средств, обеспечивающая управляемость процессом разработки ПО;

• использование специальным образом организованного хранилища проектных метаданных (репозитория).

Интегрированное CASE-средство (комплекс средств, поддерживающих полный ЖЦ ПО) содержит следующие компоненты:

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

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

- средства разработки приложений, включая языки 4GL (Fourth Generation Language — язык 4-го поколения) и генераторы кодов;<неи• средства управления требованиями;

- средства управления конфигурацией ПО;

- средства документирования;

- средства тестирования;

- средства управления проектом;

- средства реверсного инжиниринга ПО и баз данных.

В CASE-средствах обычно реализуются следующие виды контроля:

• контроль синтаксиса диаграмм и типов их элементов. Обычно такой контроль осуществляется при вводе и редактировании элементов диаграмм;

• контроль полноты и состоятельности диаграмм: все элементы диаграмм должны быть идентифицированы и отражены в репозитории. Например, для DFD контролируются неименованные или несвязанные потоки данных, процессы и хранилища данных;

• сквозной контроль диаграмм одного или различных типов на предмет их состоятельности по уровням — вертикальное и горизонтальное балансирование диаграмм. При вертикальном балансировании диаграмм одного типа выявляются несбалансированные потоки данных между детализируемой и детализирующей диаграммами. Горизонтальное балансирование определяет несоответствия между DFD,ERD, структурами данных и спецификациями процессов. Так, при балансировании DFD-ERD контролируется соответствие каждого хранилища данных на DFD сущности или отношению на ERD.

Можно привести много примеров различных классификаций CASE-средств, встречающихся в литературе. Остановимся на двух наиболее распространенных вариантах: по типам и категориям. Классификация по т и п а м отражает функциональную ориентацию CASE-средств на те или иные процессы ЖЦ и включает следующие типы:

1. средства анализа и проектирования, предназначенные для построения и анализа как моделей деятельности организации

2. средства проектирования баз данных, обеспечивающие моделирование данных и генерацию схем баз данных

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

5. средства документирования. Наиболее известным из них является SoDA — Software Document Automation — автоматизированное документирование ПО (Rational Software)

6. средства тестирования. Наиболее развитым на сегодняшний день средством является Rational Suite TestStudio (Rational Software) - набор продуктов, предназначенных для автоматического тестирования приложений;

7. средства управления проектом — Open Plan Professional (Welcom Software), Microsoft Project 98 и др.;

8. средства реверсного инжиниринга, предназначенные для переноса существующей системы ПО в новую среду.

Классификация по к а т е г о р и я м определяет степень интегрированности по выполняемым функциям и включает отдельные локальные средства, решающие небольшие автономные задачи (tools), набор частично интегрированных средств, охватывающих большинство процессов ЖЦ ПО (toolkit), и полностью интегрированные средства, поддерживающие весь ЖЦ ПО и связанные общим репозиторием. Помимо этого, CASE-средства можно также классифицировать по применяемым структурным или объектно-ориентированным методам анализа и проектирования ПО.

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

Среди последних тенденций развития технологий, учитываемых производителями средств групповой работы, следует выделить превращение Internet из хранилища документов в инструмент бизнес-решений, а также широкое распространение мобильных устройств, используемых не только в качестве средств коммуникации, но и в качестве рабочих мест. Поэтому современные средства групповой работы, как правило, способны обслуживать не только сотрудников, присутствующих на своих рабочих местах в офисе компании, но и мобильных пользователей, обладающих переносными компьютерами, PDA и сотовыми телефонами, расширяя тем самым само понятие офиса. Кроме того, некоторые средства групповой работы, такие как Microsoft Exchange 2000, обладают возможностями для организации информационных, аудио- и видеоконференций в режиме реального времени, а также для управления доступом пользователей к ресурсам этих конференций.

Как правило, современные средства коллективной работы способны не только управлять маршрутизацией сообщений, но и осуществлять «обход» участков, на которых происходят сбои в каналах связи, что критично для надежности доставки сообщений. Все ICE обычно поддерживают репликацию хранимых данных, их архивирование и резервное копирование, а нередко осуществляют и поддержку кластеров с репликацией данных между ними в реальном времени, что позволяет создавать на их базе отказоустойчивые решения. Естественно, ICE должны обеспечивать определенный уровень конфиденциальности сообщений, для чего в их состав входят средства аутентификации и средства шифрования сообщений. Interactive Connectivity Establishment — расширение протокола SIP, предназначенное для надежной поддержки передачи RTP пакетов, между двумя пользовательскими приложениями, в сложном сетевом окружении. В апреле 2010 года принят соответствующий документ RFC 5768Lotus Notes — самое первое средство групповой работы, которое в течение довольно продолжительного времени (до появления Novell GroupWise, Microsoft Exchange и иных продуктов подобного класса) было единственным таким средством на рынке программного обеспечения.

Microsoft Exchange Server 2000 представляет собой масштабируемую платформу для обмена Средство групповой работы Novell GroupWise довольно популярно в компаниях, использующих серверы Novell NetWare, так как серверная часть данного продукта работает под управлением этой операционной системы.