Этапы работы над программным проектом
Создание программы — это не только написание кода: есть этапы анализа, проектирования, программирования, тестирования, внедрения и сопровождения. Рассматриваем также управление версиями и работу в команде.
Список тем (11 из 11)
Глава 1. Алгоритмы
Глава 2. Структуры данных
Глава 3. Базы данных
Глава 4. Современные технологии и проекты
Большие программы — это не код, написанный одним человеком за одну ночь, а результат продуманного процесса. Жизненный цикл программного обеспечения обычно состоит из таких этапов: анализ (выяснить, что нужно), проектирование (планирование структуры и внешнего вида программы), программирование, тестирование, внедрение (передача пользователям) и сопровождение (исправление ошибок, добавление новых возможностей).
На этапе анализа записывают требования: для кого программа, какие задачи она выполняет и чего не умеет. Например, в проекте «школьная библиотека»: добавить книгу, выдать ученику, принять обратно, просмотреть список должников. При проектировании эти задачи делят на модули, продумывают структуру данных (например, таблицы базы данных) и рисуют эскиз интерфейса. Хороший план потом экономит много времени.
На этапе тестирования проверяют правильность работы программы: на обычных значениях, на граничных случаях (ноль, пустая строка) и на неверном вводе. Тестирование можно автоматизировать; например, в Python простой оператор assert f(3) == 6 проверяет, что результат функции равен ожидаемому. Чем раньше найдена ошибка, тем дешевле её исправить. Важно также добавлять к коду комментарии и краткую документацию: через несколько месяцев даже автор должен суметь понять свой код.
При работе в команде необходима система управления версиями, самая распространённая — Git. Она сохраняет каждое изменение кода, позволяет при необходимости вернуться к прежнему состоянию и работать нескольким людям одновременно. Основные команды: git init (создать репозиторий), git add и git commit (сохранить изменение), git push (отправить на сервер). Распределение ролей, деление задач на небольшие шаги и назначение сроков помогают успешно завершить проект.
Главное
- Жизненный цикл ПО: анализ, проектирование, программирование, тестирование, внедрение, сопровождение.
- Требования заранее чётко определяют, что должна делать программа.
- Проектирование делит задачи на модули и определяет структуру данных.
- Тестируют на обычных, граничных и неверных значениях; чем раньше найдена ошибка, тем дешевле её исправить.
- Git сохраняет изменения кода и облегчает работу в команде.
Практические задания
- Запишите требования к программе «журнал посещаемости» для класса: укажите не менее 5 задач и 2 вещи, которых программа делать не будет.
- Составьте для выбранного проекта план по каждому этапу (анализ, проектирование, программирование, тестирование, внедрение) и укажите для каждого примерный срок.
- Напишите на Python функцию
bigger(a, b), возвращающую большее из двух чисел, и проверьте её не менее чем четырьмяassert(обычные значения, равные числа, отрицательные числа, ноль).
Вопросы для закрепления
Проверьте себя: сначала подумайте, потом откройте ответ.
1Из каких этапов состоит жизненный цикл программного обеспечения?Показать ответСкрыть ответ
Анализ, проектирование, программирование, тестирование, внедрение и сопровождение.2Для чего нужна система управления версиями (Git)?Показать ответСкрыть ответ
Она сохраняет каждое изменение кода, позволяет вернуться к прежнему состоянию и работать в команде одновременно.
Войдите на сайт
Слайды и PDF доступны только зарегистрированным пользователям: и просмотр, и скачивание. Вход бесплатный.
Войдите на сайт
Слайды и PDF доступны только зарегистрированным пользователям: и просмотр, и скачивание. Вход бесплатный.
Пройдено тем: 0 из 11
Войти и отметить