Практическое задание
Практическое задание к лабораторной работе № 1 выполняется студентами по вариантам, в соответствии с указаниями преподавателя, и, кроме того, содержит общую для всех вариантов часть.
Варианты задания:
Напишите программу, определяющую, является ли выпуклым многогранник, заданный координатами вершин, содержащимися в файле или вводимыми с клавиатуры (по желанию пользователя). Если многогранник выпуклый,
необходимо вычислить его объем, в противном случае - выдать соответствующее сообщение.
Напишите программу, анализирующую и вычисляющую некоторое выражение, содержащееся в файле или вводимое с клавиатуры (по желанию пользователя). Анализируемое выражение может содержать числовые константы (в двоичном, шестнадцатиричном и десятичном форматах представления), а также символы «+», «-», «/», «*», «(», «)».
Напишите программу, вычисляющую матрицу, обратную содержащейся в файле или вводимой с клавиатуры (по желанию пользователя).
Общая часть
Программа должна быть устойчива к случайному нажатию клавиш, вводу некорректных данных, иметь удобный пользовательский интерфейс.
Язык программирования, на котором должна быть выполнена программа, указывает преподаватель.
Программная документация должна содержать следующие документы:
техническое задание,
руководство пользователя,
программу и методику испытаний, выполненных в соответствии с ЕСПД.
Отчет по данной лабораторной работе включает демонстрацию работы программы на компьютере, представление перечисленной выше программной документации, а также собеседование с преподавателем по теоретическим вопросам и выполненному практическому заданию.
Лабораторная работа № 2
(9 аудиторных часа)
Теоретическая часть
Целью лабораторной работы № 2 является закрепление лекционного материала по теме «Потребительские и технические критерии качества ПО»
Параметрами, характеризующими программу, могут выступать различные показатели. Сложность оценки качества ПО возникает из-за того, что пользователи и разработчики смотрят на программу с разных сторон. Это значит, что необходимо сопоставление потребительских и технических показателей качества ПО.
Потребительские критерии качества ПО
В конечном итоге качество программ определяется ее потребительскими свойствами и имеет стоимостное воплощение, которое включает:
оценку затрат на разработку и эксплуатацию;
экономические преимущества использования программы по сравнению с другими средствами решения данной прикладной задачи;
перспективы дальнейшего использования разработанного программного материала.
Легче всего оценить эксплуатационные затраты и значительно сложнее - перспективы.
Преимущества в эксплуатации программы определяет комплекс оценок, который включает,в частности:
проверку выполнения принадлежащих ей функций в реальных жизненных ситуациях как в нормальных условиях, так и в разнообразных неблагоприятных обстоятельствах (ошибки оператора; сбои и отказы среды; официальные "атаки");
удобство ее использования по сравнению с другими средствами решения задач;
время обслуживания, которое, в частности, включает время на возобновление после сбоев/отказов и время, необходимое для подключения спецперсонала и т.п.
Многие из характеристик, определяющих удобство использования программы, могут быть оценены в единицах времени:
время на освоение программы;
время на подготовку входных (исходных) данных;
время для анализа данных;
• время, необходимое для восстановления сил пользователя после работы с программой (!).
Таким образом, в рамках потребительских критериев программ есть множество измерений. Технические ориентиры еще более разнообразны и спорны. В целом же, ни один отдельно взятый показатель, используемый на практике или предлагаемый для использования, не может быть надежной базой для оценки программ.
Технические критерии качества
Базовыми техническими характеристиками программы выступают:
полнота - в программе есть все, что необходимо;
отсутствие избыточности - в программе нет ничего лишнего,
соответствие - программа и ее части соответствуют правилам и законам внешнего мира.
Оценка свойств имеет 2 значения: ДА - свойство есть, НЕТ -свойства нет. Такая оценка отражает первичное содержание решений, принимаемых при программировании, а не последствия, измеряемые количественно.