Главная » Просмотр файлов » Компоненты систем программирования

Компоненты систем программирования (1119464)

Файл №1119464 Компоненты систем программирования (Лекции Карпова)Компоненты систем программирования (1119464)2019-05-09СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла

Предмет изучения:системы программирования• Основные определения• Программный продукт и его жизненный цикл• Основные компоненты системпрограммирования• Трансляторы: компиляторы и интерпретаторы• Языки программирования и средства ихформального описания• Объектно-ориентированный подход кпроектированию программных продуктов• Язык программирования Си++1Иерархия программноаппаратного обеспеченияПрикладныепрограммыСистемыпрограммированияПрограммы управлениялогическими ресурсамиПрограммы управленияфизическими ресурсамиАппаратура2Составляющие системпрограммирования• Языки программирования – основные средствавыражения потребностей пользователей – системныхи прикладных программистов• Трансляторы – основные компоненты системпрограммирования, обрабатывающие исходнуюинформацию, выраженную пользователями на языкахпрограммирования• Другие компоненты систем программирования,являющиеся их столь же неотъемлемыми частями, каки трансляторы3Основное определениеСистемой программированияназывается комплекс программныхсредств (инструментов, библиотек),предназначенных для поддержкипрограммного продукта напротяжении всего жизненного циклаэтого продукта4Программные продукты• Программа предназначена для решенияотдельной задачи автором программы ииспользуется в конкретной операционнойсреде• Программа неотделима от её автора.

Толькоавтор способен запустить программу в рамкахнекоторой вычислительной среды, снабдить еёнеобходимыми для работы данными, понятьрезультат её работы5Программные продукты• Программный продукт – это программа,которая работает без авторского надзора врамках некоторого набора операционных сред.Программный продукт может исполняться,тестироваться и модифицироваться без участияавтора (он отчуждён от автора)• "Дружественный" интерфейс, наличиетехнической и пользовательскойдокументации, наличие параметров настройки6Программные продукты• Интегрированный (системный)программный продукт есть комплекспрограммных продуктов (пакет)• Согласованные интерфейсы программныхпродуктов, включённых в пакет. Одинаковыеили похожие способы задания параметров,режимов работы и действий пользователя вовсех компонентах7Фазы жизненного циклапрограммного продуктаФаза использованияФаза разработкиФаза сопровождения(продолжающейся разработки)8Искажение жизненного циклапрограммного продукта(срыв фазы сопровождения)Фаза использованияФаза разработкиФаза сопровождения(продолжающейся разработки)9Искажение жизненного циклапрограммного продукта(срыв фазы использования)Фаза использованияФаза разработкиФаза сопровождения(продолжающейся разработки)10Жизненный циклпрограммного продукта,сопровождаемого разработчикомФаза использованияФаза разработкиФаза сопровождения(продолжающейся разработки)11Этапы разработкипрограммного продукта• Анализ (определение) требований• Проектирование• Написание текста программ (собственно программирование,“кодирование”)• Компоновка или интеграция программного комплекса• Верификация, тестирование и отладка• Документирование• Внедрение• Тиражирование• Сопровождение, повторяющее все предыдущие этапы12Этапы разработкипрограммного продукта• Анализ (определение) требований: Словарь терминов – система понятий для общения спользователями Создаваемые материалы: от текстов до формализованныхописаний Языки описания требований:• Таблицы решений• Функциональные диаграммы• Языки спецификаций (CLU, MSC, SDL, …) Результат: внешняя спецификация, описание системы сточки зрения пользователя13Этапы разработкипрограммного продукта• Проектирование: Проектирование структуры системы Проектирование совокупности взаимосвязанныхподсистем Управление сложностью Декомпозиция• Алгоритмическая декомпозиция• Объектно-ориентированная декомпозиция Результат: схема иерархии подсистем, функциональность иинтерфейсы каждой подсистемы Результат: структуры данных и алгоритмы отдельных14модулейЭтапы разработкипрограммного продукта• Написание текста программ• Верификация, тестирование и отладка Верификация – процесс проверки на правильность• Валидация – доказательство правильности программ сиспользованием логических методов Тестирование – процесс обнаружения дефектов путемсравнения результатов работы программы с эталоном• Поведенческое, структурное, пользовательское,техническое, регрессивное тестирование и др. Отладка – процесс выявления причин дефектов, а также ихустранения15Этапы разработкипрограммного продукта• Компоновка программного комплекса Связывание отдельных частей программы в единуюсистему программного обеспечения• Документирование• Внедрение – процесс привлечения заказчика к использованиюпрограммного продукта• Тиражирование• Сопровождение16Идеальный случай разработкипрограммного обеспеченияОпределениетребованийПроектированиеПрограммированиеНисходящая схема –обратная связьотсутствуетКомпоновка(интеграция)ТестированиеДокументирование17Итеративная разработкапрограммного обеспеченияКаскадная схема(вариант итеративной схемы)ОпределениетребованийПроектированиеПрограммированиеКомпоновка(интеграция)ТестированиеДокументирование18Реальный ход разработкипрограммного обеспеченияКаскадно-возвратная схемаОпределениетребованийПроектированиеПрограммированиеКомпоновка(интеграция)ТестированиеДокументирование19Реальный ход разработкипрограммного обеспеченияНаписание текстаПроектированиеСпиральная схема(создание прототипов)Анализ(определениетребований)КомпоновкаВерификация,тестирование,отладкаДокументированиеВерсия 1Версия 2 ТиражированиеВерсия 3Внедрение20Основные требования ксистемам программирования• Поддержка процесса разработки программногообеспечения на каждом этапе работы• Согласованность интерфейсов• Непротиворечивость результатов работы• Полнота набора системных компонентов• Удобство работы с системами программированияи их отдельными компонентами21Требования ксистемам программирования• Процесс разработки программного продукта един,хотя он и состоит из отдельных этапов• Содержание работ, производимых на всех этапах,базируется на результатах других этапов• Все этапы должны быть согласованы между собой• Для достижения этого согласования необходимосоздавать и вести базу данных проекта22Требования ксистемам программированияБаза данных проекта• В электронном виде поддерживается информация опроекте, истории его развития, контролируется еговнутренняя согласованность• Изменения требований должны указывать на местапроекта, в которых эти требования использованы• Постоянно контролируется корректность,санкционированность изменений инепротиворечивость решений23Требования ксистемам программированияСистема управления проектом• Заблаговременное планирование работ• Предупреждение о возможных источникахзатруднений (рисках)• Управление устранимыми и неизбежными рисками• Контроль и координация календарного плана работ• Примеры систем: Microsoft Project, TimeLine,SureTrack, Primavera Project Planner, OpenProj24Требования ксистемам программированияЭтап анализа требований• Описание требований на формальных языках, анализтребований и их непротиворечивости• Средства построения сетевых графиков, анализазанятости ресурсов и стоимости этапов работ• Основные компоненты: текстовые и графическиередакторы, средства контроля непротиворечивоститаблиц решений, функциональных диаграмм, текстовна языках спецификаций25Требования ксистемам программированияЭтап проектирования• Обработка текстовых и графических материалов• Основные компоненты: текстовые и графическиередакторы, база данных проекта• Средства автоматического построения визуальныхописаний классов объектов, их просмотра исогласованного редактирования26Требования ксистемам программированияЭтап программирования• Основные компоненты: Средства автоматизациипроцесса написания программ и документации• Средства автоматизации графического интерфейсапользователя• Библиотеки• Средства редактирования текстов программ• Трансляторы и редакторы связей27Требования ксистемам программированияЭтап компоновки• Формирование программного комплекса изавтономно запрограммированных, автономноотлаженных и протестированных компонентов,возможно объединённых в библиотеки• Основные компоненты: редакторы связей• Средства контроля версий программныхкомпонентов28Требования ксистемам программированияЭтапы отладки и тестирования• Основные компоненты: Отладчики• Генераторы тестов, позволяющие формироватьвходные данные для трансляторов• Средства автоматизации прогонов тестов• Средства автоматизации анализа результатовпрогона тестов• Средства анализа уровня тестового покрытия29Требования ксистемам программированияЭтапы документирования,внедрения и тиражирования• Основные компоненты: Средства подготовки иредактирования документации• Средства управления проектами• Средства управления версиями программныхпродуктов30Виды современныхсистем программирования• Наборы отдельных компонентов Текстовые редакторы, трансляторы, редакторы связей• Системы командных файлов Командные координаторы (make) и интерпретаторы (shell)• Интегрированные системы программированияПоддержка единой базы проектов (репозитория)Поддержка визуальных методов проектированияИспользование унифицированного языка моделированияНаличие и интеграция всех средств поддержки для всехэтапов жизненного цикла программных продуктов31Классическая система программированияИсходнаяпрограммаСистематекстовогоредактированияСистемаграфическогоредактированияМакрогенераторБиблиотекиКомпиляторАссемблерРедактор связей(компоновщик)ОтладчикГотоваяпрограммаОбъектныймодуль…ЗагрузчикВыполнение(в составе ОС)32Типы трансляторов.Интерпретаторы и компиляторы• Конечная цель создания программного продуктаявляется достижение некоторого результата, способполучения которого закодирован в этой программе• Этот результат может быть получен только при работеаппаратуры вычислительной системы, которой дляработы передаётся программа, а также входныеданные, требующиеся программе при её работе33Типы трансляторов.Интерпретаторы и компиляторы• Варианты взаимодействия с аппаратурой в целяхдостижения требуемого результата:1.

Характеристики

Тип файла
PDF-файл
Размер
755,14 Kb
Тип материала
Высшее учебное заведение

Тип файла PDF

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

Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.

Список файлов лекций

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6505
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее