Технологии программирования (факультатив): различия между версиями
Материал из Поле цифровой дидактики
Patarakin (обсуждение | вклад) |
Patarakin (обсуждение | вклад) |
||
Строка 45: | Строка 45: | ||
=== Тема 2. Требования к программному обеспечению === | === Тема 2. Требования к программному обеспечению === | ||
==== Полезное текстовое описание программы | ==== Полезное текстовое описание программы ==== | ||
# Назначение. Что является главной функцией программы и причиной ее написания? | # Назначение. Что является главной функцией программы и причиной ее написания? | ||
Строка 56: | Строка 56: | ||
# Время работы. Сколько времени занимает решение задачи заданного размера на заданной конфигурации? | # Время работы. Сколько времени занимает решение задачи заданного размера на заданной конфигурации? | ||
# Точность и проверка. Какова ожидаемая точность результатов? Какие имеются средства проверки точности? | # Точность и проверка. Какова ожидаемая точность результатов? Какие имеются средства проверки точности? | ||
[[:Категория:DigitalTool]] | |||
==== Требования к программе в форме [[UML]] ==== | |||
=== UML представление требований === | === UML представление требований === |
Версия 11:47, 22 февраля 2023
Планируемые результаты обучения (Знать, Уметь, Владеть) | Целью освоения дисциплины является формирование у студентов понимания принципов разработки программного обеспечения. Результаты обучения: обучающийся понимает, как устроен процесс разработки программного обеспечения
|
---|---|
Содержание разделов курса |
|
Видео запись | |
Среды и средства, которые поддерживают учебный курс | UML, Mermaid, Graphviz |
Книги, на которых основывается учебный курс | Head First. Паттерны проектирования, Мифический человеко-месяц или как создаются программные системы, СИСТЕМНАЯ ИНЖЕНЕРИЯ — 2022, Разработка компьютерных учебников и обучающих систем |
Содержание разделов дисциплины:
Тема 1. Классификация программных средств
- Классификация языков программирования
- https://www.acm.org/publications/computing-classification-system/1998/d.3.2
Тема 2. Требования к программному обеспечению
Полезное текстовое описание программы
- Назначение. Что является главной функцией программы и причиной ее написания?
- Среда. На каких машинах, аппаратных конфигурациях и конфигурациях операционной системы будет она работать?
- Область определения и область значений. Каковы допустимые значения входных данных? Какие правильные значения выходных результатов можно ожидать?
- Реализованные функции и использованные алгоритмы. Что конкретно может делать программа?
- Форматы ввода(вывода, точные и полные.
- Инструкция по работе, в том числе описание вывода на консоль и устройство вывода при нормальном и аварийном завершении.
- Опции. Какой выбор предоставляется пользователю в отношении функций? Каким образом его нужно задавать?
- Время работы. Сколько времени занимает решение задачи заданного размера на заданной конфигурации?
- Точность и проверка. Какова ожидаемая точность результатов? Какие имеются средства проверки точности?
Требования к программе в форме UML
UML представление требований
Тема 3. Жизненный цикл программы. Модели жизненного цикла
Тема 4. Организация процесса разработки программного обеспечения
- Использовать различные подходы к организации процесса разработки программного обеспечения.
Тема 5. Общие принципы разработки программного обеспечения и разработки учебных материалов
- Структурное программирование
- Переносить принципы разработки программного обеспечения на разработку учебных материалов и организацию учебного процесса.
Тема 6. UML
- Использовать различные виды UML диаграмм для описания и проектирования программного обеспечения.
Диаграмма классов
Диаграмма Ганта
Тема 7. Среды коллективной разработки программного обеспечения
Использовать цифровые средства и среды коллективной разработки программного обеспечения.
Критерии оценки по дисциплине
Образовательный результат | Тема | Задание | Пример |
---|---|---|---|
Находить, описывать и классифицировать программные средства | Классификация программных средств | Принять участие в обсуждении классификации программных средств, привести собственные примеры программных средств см ACM_Digital_Library
|
Категория:DigitalTool + Категория:Book |
Использовать общепринятые и предлагать собственные основания для категоризации программных средств | Классификация программных средств | Используя WebGrid соберите поле своих собственных представлений о программных средствах | |
Сравнивать между собой программные средства, предназначенные для решения сходных задач. | Классификация программных средств | На примере сравнения средств обучения программированию Категория:DigitalTool , обучающих играх Категория:DEG , средствах создания диаграмм Категория:Diagrams , средствах анализа библиометрических данных, средах анализа данных Категория:Dataset, средах выращивания данных. | TheBrain, ShinyItemAnalysis, VUE, VOSviewer + ChatbotACM (dataset), NetLogo + StarLogo Nova |
Формулировать требования к программному обеспечению. | Требования к программному обеспечению | ? | Примеры требований |
Объяснять и изображать при помощи диаграмм модели жизненного цикла программ. | Жизненный цикл программ | ? | ? |
Использовать различные подходы к организации процесса разработки программного обеспечения. | Организация процесса разработки программного обеспечения | ? | ? |
Переносить принципы разработки программного обеспечения на разработку учебных материалов и организацию учебного процесса. | Общие принципы разработки программного обеспечения и разработки учебных материалов | ? | ? |
Использовать различные виды UML диаграмм для описания и проектирования программного обеспечения | UML диаграммы в проектировании программного обеспечения | Создание и описание собственных UML диаграмм | Категория:Diagrams |
Использовать цифровые средства и среды коллективной разработки программного обеспечения. | Среды коллективной разработки программного обеспечения. | ? | ? |
? | ? | ? |