воскресенье, 12 мая 2019 г.

33 группа. Учебная практика 2019: прикладное программирование, документация на ПО

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

  1. Техническое задание на создание программного обеспечения
  2. Описание программы
  3. Пояснительная записка
  4. Руководство программиста
  5. Руководство оператора

ПМ.01 Разработка программных модулей программного обеспечения для компьютерных систем

Проекты

Язык программирования C++, библиотека Qt.

1. Плеер шахматных партий. 
2. Инструмент Pixel Picker. 
3. Цветовой кодировщик RGB to HSB. 
4. Графический редактор для OLED дисплея. 
5. Менеджер конфигурационных файлов.
требования: структуры данных ключ - значение; 
прототип приложения; выбор языка интерфейса. 
7. Фотогалерея. 
требования: метаданные
8. Книжная галерея

API Yandex Maps

9. Плеер маршрута в Яндекс панораме. 

API Google Maps

10. Плеер маршрута в Google Street View. 

Подготовка к олимпиаде 

11. Всероссийская олимпиада профессионального мастерства 
по укрупненной группе специальностей СПО 
09.00.00 Информатика и вычислительная техника
http://www.olimpiada-profmast.ru/fos_2017/
http://www.olimpiada-profmast.ru/fos_2018/
http://it-olymp.rea.ru/index.html

Задача 1.
Задача 2.
Задача 3.
Задача 4.

Информационно-поисковая система.
Язык программирования Lazarus, СУБД MySQL.
https://github.com/ifizmat/lazarus_mysql_simply-01

12. (17.1) Личная библиотека. Картотека домашней библиотеки: 
выходные данные книги (авторы, название, издательство и т.д.), 
раздел библиотеки (специальная литература, хобби, домашнее 
хозяйство, беллетристика и т.д.), происхождение и наличие книги 
в данный момент, субъективная оценка книги. Выбор книг 
по произвольному запросу; инвентаризация библиотеки. 

13. (17.13) Касса автовокзала. Расписание автобусов: номер рейса, 
конечный и промежуточный пункты, время отправления. 
Количество свободных мест на каждом рейсе. Выбор ближайшего 
рейса до заданного пункта (при наличии свободных мест), 
оформление билетов, оформление посадочной ведомости. 
Предварительная продажа, возврат билетов. 

14. (17.14) Справочник меломана. База групп и исполнителей; 
база песен; база дисков с перечнем песен (в виде ссылок). 
Выбор всех песен заданной группы; всех дисков, где встречается 
заданная песня. 

15. (17.24) Сбербанк. Сведения о вкладчиках банка: номер лицевого 
счета, категория вклада, паспортные данные, текущая сумма вклада, 
дата последней операции. Операции приема и выдачи любой суммы, 
автоматическое начисление процентов. 

16. (17.28) Справочник владельца видеотеки. База видеофильмов: 
название, студия, жанр, год выпуска, режиссер, исполнители 
главных ролей, краткое содержание, субъективная оценка фильма. 
Факт наличия фильма в видеотеке. Оформеление выдачи 
и возврата кассеты. 

17. (17.37) Автосалон. База новых и подержанных отечественных 
и иностранных автомобилей: марка, год выпуска, технические 
характеристики, особенности исполнения, техническое состояние, 
запрашиваемая цена. База покупателей: контактные координаты, 
требования к марке, техническим характеристикам и техническому 
состоянию, финансовые возможности. Автоматизация подбора 
вариантов для покупателя, формирование заявки для поставщиков 
и перегонщиков. 

18. (17.41) Каталог запчастей автомобиля. В автомобиле 
насчитывается несколько тысяч деталей; некоторые используются 
в разных марках. Таблицы: фирма-изготовитель, марка автомобиля, 
агрегат, узел, деталь. Учет взаимозаменяемости. Пользователи: 
работники автосервиса, магазинов запчастей; поставщики-оптовики. 
 
19. (17.44) Справочник филателиста. Марки: страна, нарицательная 
стоимость, год выпуска, тираж, особенности. Филателисты: страна, 
имя, контактные координаты, наличие редких марок в коллекции. 
Собственная коллекция. 

20. (17.45) Справочник любителя живописи. Художники с анкетными 
данными и стилями. Картины со ссылкой на художников, датой создания, 
жанром. Коллекционеры и музеи: наличие оригиналов картин и копий. 
Аукционы и коммиссионки: дата проведения, список выставленных 
шедевров, лотов и цены на них. Собственная коллекция. 

Юркин А. Г. Задачник по программированию. — СПб.: Питер, 2002. — 192 с.

21. Задачи к олимпиаде.
1. Web-приложение для сервиса доставки ресторана. 
2. Разработка системы тестирования и сертификации.  
3. Web-приложение для библиотеки. 

Задачи учебной практики по модулю

  1. Анализировать проектную и техническую документацию на уровне взаимодействия компонент программного обеспечения.
  2. Проектирование и разработка ПО.
  3. Основы разработки программного обеспечения.
  4. Процесс и методология разработки ПО.
  5. Участники процесса разработки ПО.
  6. Инструментарий технологий разработки ПП.
  7. Модели и технологии разработки ПП.
  8. Использование инструментальных средств при проектировании программного обеспечения методами: индивидуальный, командный, модель зрелости возможностей.
  9. Выполнять отладку программного продукта с использованием специализированных программных средств.
  10. Принципы построения интерфейсов.
  11. Требования, предъявляемые к стандартному графическому интерфейсу пользователя. Разработка графического пользовательского интерфейса (GUI) для редактирования списка записей.
  12. Разработка описания и анализ информационной системы.
  13. Формализация бизнес-процессов предметной области.
  14. Разработка требований к информационной системе.
  15. Управление требованиями ИС.
  16. Моделирование данных ИС.
  17. Осуществлять разработку тестовых наборов и тестовых сценариев.
  18. Проектирование и разработка пользовательского интерфейса ИС.
  19. Тестирование ПО.
  20. Реализация диалога в графическом пользовательском интерфейсе.
  21. Производить инспектирование компонент программного продукта на предмет соответствия стандартам кодирования.
  22. Ручной контроль программы.
  23. Структурное тестирование.
  24. Функциональное тестирование.
  25. Оформление документации на программные средства.
  26. Составление программной документации.
  27. Определение сведений, необходимых для сопровождения и эксплуатации программного продукта.
  28. Разработка пояснительной записки, содержащей информацию о структуре и конкретных компонентах программного обеспечения, в том числе схемы алгоритмов, их общее описание, обоснование принятых технических решений.
  29. Руководство пользователя.

Репозиторий на GitHub

1. Создайте учетную запись на веб-сервис для хостинга IT-проектов
GitHub, перейдите по ссылке https://github.com
2. Создайте новый репозиторий с названием Вашего проекта
или базы данных, например, parking, bookmarket, delo, autoservice
и т.п.
Пример: https://github.com/ifizmat/lazarus_mysql_simply-01

Оформление документации на программные средства

Изучите по источнику [4stud.info] пример содержания документации на программное обеспечение.
Tребованиям к содержанию документации на программное обеспечение по ГОСТ ЕСПД:

  1. ГОСТ 34.602-89. Техническое задание (разрабатывается студентом самостоятельно на основе описания варианта задания)
  2. ГОСТ 19.401-78 ЕСПД. Текст программы. Требования к содержанию и оформлению
  3. ГОСТ 19.402-78 ЕСПД. Описание программы
  4. ГОСТ 19.404-79 ЕСПД. Пояснительная записка
  5. ГОСТ 19.502-78 ЕСПД. Общее описание. Требования к содержанию и оформлению
  6. ГОСТ 19.301-78 ЕСПД. Программа и методика испытаний
  7. ГОСТ 19.503-79 ЕСПД. Руководство системного программиста (системного администратора)
  8. ГОСТ 19.504-79 ЕСПД. Руководство программиста
  9. ГОСТ 19.505-79 ЕСПД. Руководство оператора (пользователя)

Минимальные требования к содержанию:

  1. Введение (краткое описание предметной области для которой разработана программа)
  2. Цель разработки
  3. Обзор аналогов (3-4 подобных программы, информация о разработчике, описание возможностей, преимущества и недостатки)
  4. Постановка задачи и требования, предъявляемые к программе
  5. Описание алгоритма работы программы (текстовое и графическое (блок-схемы на уровне структурных компонентов — обязательно))
  6. Выбор и обоснование выбора средства разработки, исходный код программы
  7. Тестирование программы (описание методики тестирования, набор тестовых данных и результаты выполнения)
  8. Руководство по установке
  9. Руководство пользователя
  10. Руководство администратора (если требуется)
3. Установите на вашем компьютере систему Git, например,
с помощью программы PortableGit
4. Выполните настройки Git.
Пример настроек
git config --global --list
git config --global user.name "myusername"
git config --global user.email "myusername.com"
git config --global core.autocrlf true
git config --global core.safecrlf true
6. Изучите методы работы с системой Git с помощью одного из источников [1, 2, 3] или других.
7. Выполните экспорт базы данных в формате SQL
Пример команды экспорта в папке сервера MySQL bin:
mysqldump -u root -p > database.sql

Пример команды импорта в папке сервера MySQL bin:
mysql -u root -p 
mysql>source D:/3kurs/database.sql
8. Перенесите в Ваш репозиторий на GitHub
  • 8.1. Минимальный набор файлов исходного кода проекта.
  • 8.2. Файл БД в формате SQL.
  • 8.3. Исполнимый модуль программного проекта.
  • 8.4. Файл с документацией в формате DOC MS Word 2003
  • 8.5. Файл с презентацией в формате PPT MS PowerPoint 2003.
Пример
project1.lpi
project1.lpr
unit1.lfm
unit1.lrs
unit1.pas
project_database.exe
database.sql
Отчет.doc       (в формате MS Word 2003)
Презентация.ppt (в формате MS PowerPoint 2003)
9. В GitHub создайте в разделе Issues 5 сообщений о дефектах собственной программы и 5 сообщений о дефекте проекта одного из однокурсников по ссылке в блоге.
10. Поделитесь ссылкой на Ваш репозиторий в комментариях к блогу
  1. 2019 год: 33 группа. Учебная практика 2019: прикладное программирование, документация на ПО
  2. 2018 год: 33 группа. Учебная практика 2018: прикладное программирование, документация на ПО
  3. 2017 год: Учебная практика 2017: репозиторий GitHub
  4. 2016 год: Учебная практика: репозиторий GitHub
  5. 2015 год: Прикладное программирование: SVN Git
  1. Тест 1: Информационные технологии

Примеры документации

  1. Пример 1: Техническое задание
  2. Пример 2: Техническое задание
  3. Пример 3: Техническое задание
  4. Пример 4: Описание предметной области


Источники

Основные
  1. 4stud.info: Пример содержания документации на программное обеспечение
  2. habrahabr.ru: Как начать работать с GitHub: быстрый старт
  3. htmlstudio.ru: Git для начинающих. Краткое руководство
  4. habrahabr.ru: Ежедневная работа с Git
Дополнительные
  1. Git How To: курс обучения Git на русском
  2. delphi-devs.ru: Уменьшение размера исполняемого файла в Lazarus
  3. delphi-devs.ru: Lazarus - работа с базами данных
  4. freepascal.ru: MySQL+Lazarus: Работа и базой данной на Web сервере из Lazarus
  5. freepascal.ru: Использование SQLdb в Lazarus: основы работы с базами данных
  6. wiki.freepascal.org: MySQLDatabases - Free Pascal wiki
  7. wiki.freepascal.org: Подключение к MySQL из приложения Lazarus.
  8. freepascal.ru: Инструменты Lazarus IDE. Часть I. Codetools - инструменты редактора исходного кода среды Lazarus.
  9. freepascal.ru: Инструменты Lazarus IDE. Часть II. Рефакторинг.
  10. sourceforge.net: XAMPP - Browse /XAMPP Windows at SourceForge.net
  11. apachefriends.org: Download XAMPP
  12. apachefriends.org: Установка XAMPP. Пошагово: скачивание, установка, запуск.
  13. ifizmat.000webhostapp.com: Графический стек фреймворка Qt: QGraphicsScene, QGraphicsView, QGraphicsItem
  14. books.google.ru: Класс QGraphicsScene. Шлее М.Е. Qt 5.3: Профессиональное программирование на C++
  15. doc.crossplatform.ru/qt: Каркас графического представления: QGraphicsScene, QGraphicsItem, QGraphicsView.
  16. evileg.com: Qt/C++ - Урок 018. QGraphicsItem - наследование и СЛОТы.
  17. cxem.net: OLED i2c дисплей 128х64 пикселя
  18. cxem.net: Цветной OLED дисплей 96х64 пикселя
  19. codeproject.com: ExifLib - A Fast Exif Data Extractor for .NET 2.0+

31 комментарий:

  1. https://docs.google.com/forms/d/e/1FAIpQLSe61F8H7HyQ_p0diqdwlhRGa763WcLb9oEzWlnO-4rOmaMk2g/viewform?usp=sf_link

    ОтветитьУдалить
  2. Этот комментарий был удален автором.

    ОтветитьУдалить
  3. https://docs.google.com/forms/d/1WdJGWApWDlAU9Y1oV6F2aLjLcxnLbkyiEwoYLJ3fhNU/edit?usp=sharing

    ОтветитьУдалить
  4. https://docs.google.com/forms/d/1sHuIqmYFCcKDTc5d9BHZ-bgE_lmG7wt9FK8pSNWvZ2c/edit?usp=sharing

    ОтветитьУдалить
  5. https://drive.google.com/open?id=1hGRaE1Pabx44YlwPalv1-5MXjrl0Bolhbl_tXlWxBeg

    ОтветитьУдалить
  6. https://docs.google.com/presentation/d/1dYkBV-2_F8QKO3HVbD7vHprZjobJqTlXv-VBqRI5HrE/edit?usp=sharing

    ОтветитьУдалить
  7. https://drive.google.com/open?id=13jSajr4eN_Gmz7D4it6RKkzlUmt3MQKt

    ОтветитьУдалить
  8. https://docs.google.com/presentation/d/15ch2pq47fcoI1RmzdBPSxrgm_tuGFTOAVM4Sis3tHMo/edit?usp=sharing

    ОтветитьУдалить
  9. https://drive.google.com/file/d/1KRnXtX3T2ftwuDo4ue7GB4mgxAbO6x_A/view?usp=sharing

    ОтветитьУдалить
  10. https://github.com/BigSmokeRememberThatName/tests_on_php

    ОтветитьУдалить
  11. https://github.com/hocikeng/friendly-happiness

    ОтветитьУдалить
  12. https://docs.google.com/forms/d/1zlLXVvPOGX1jTbCr89W4EeWVH2oKDO1g4kSJLumIZP8/edit?usp=sharing

    ОтветитьУдалить
  13. https://docs.google.com/spreadsheets/d/15CkgpKMVXV0Bq0Dt5zGh5NOx2BVGYxLuUT-D4noYftA/edit?usp=sharing

    ОтветитьУдалить
  14. Шутов Никита
    https://github.com/Crewman322/Uchebnaja-Praktika

    ОтветитьУдалить
  15. https://docs.google.com/forms/d/1_2X0-2jBpsCjLbUIu1EEqtelF666qglmQKp8ntRG8IE/edit?usp=sharing

    ОтветитьУдалить
  16. https://docs.google.com/spreadsheets/d/19ZffA1sKt_j-eq_yH1ireNTxEPqFYNUqVfYBIgOh26o/edit?usp=sharing

    ОтветитьУдалить