- •Экзаменационные вопросы Дисциплина: «Технология разработки программных продуктов»
- •Определение технологии конструирования программного обеспечения. Технология программирования. Программная инженерия.
- •Требования к программному средству.
- •Существенные черты программных средств как сложных систем.
- •Характеристики качества программного изделия.
- •Структура жизненного цикла. Большой жизненный цикл.
- •Структура жизненного цикла. Малый жизненный цикл.
- •Классический жизненный цикл пи. Водопадная модель. Классический жизненный цикл
- •Макетирование.
- •Стратегии конструирования по: инкрементная модель.
- •Стратегии конструирования по: быстрая разработка приложений.
- •Стратегии конструирования по: спиральная модель.
- •Руководство проектом. Планирование расписания работ.
- •Руководство проектом. Ввод, распределение ресурсов, анализ полученного расписания. Ввод и распределение ресурсов для выполнения проекта
- •Анализ полученного расписания
- •Руководство проектом. Контроль за исполнением проекта.
- •Особенности ценообразования программных продуктов.
- •Конструктивная модель стоимости: затратный подход.
- •Конструктивная модель стоимости: рыночный подход.
- •Конструктивная модель стоимости: доходный подход.
- •Проектирование программного изделия. Основные этапы.
- •Системный анализ. Требования при разработке технического задания. Техническое задание
- •Общие положения
- •Содержание разделов технического задания
- •Стадии разработки программ: эскизный проект.
- •Стадии разработки программ: технический проект.
- •Стадии разработки программ: рабочий проект.
- •Виды схем и их особенности.
- •Модульно – иерархическое построение программы. Основные принципы структурной методологии.
- •Типовая структура модуля.
- •Модуль. Виды связности.
- •Модуль. Виды сцепления.
- •Сцепление по управлению
- •Общие правила проектирования программного средства: связь по управлению.
- •Общие правила проектирования программного средства: связь по информации.
- •Стиль программирования
- •Стандарты структурного программирования.
- •Внешнее проектирование модулей.
- •Проектирование и кодирование логики модулей.
- •Проектирование программных средств: разработка архитектуры.
- •Проектирование программных средств: процедурная разработка.
- •Принципы объектно-ориентированного программирования: инкапсуляция.
- •Принципы объектно-ориентированного программирования: полиморфизм.
- •Принципы объектно-ориентированного программирования: наследование.
- •Объектно-ориентированный подход в программировании: области доступности элементов класса.
- •Сущность объектного подхода к разработке программных средств: классы, объекты, методы.
- •Основные принципы создания пользовательского интерфейса.
- •Типичные ошибки разработки интерфейса.
- •Современные компоненты интерфейса пользователя. Размещение информации на экране
- •Выделение элементов интерфейса яркостью
- •Использование цвета при проектировании эргономичного интерфейса
- •Непротиворечивость и стандартизация
- •Тексты и диалоги
- •Средства управления графического интерфейса пользователя.
- •Изображения (Иконки)
- •Ментальная модель пользовательского интерфейса.
- •Модель пользователя.
- •Модель программиста.
- •Основные принципы создания меню. Меню
- •Основные принципы создания меню
- •Предотвращение, обнаружение и исправление ошибок.
- •Обработка ошибок в формах ввода
- •Средства организации и работы с графикой.
- •Файлы проекта Delphi.
- •Структура модуля программы Delphi.
- •Окна программы Delphi.
- •Библиотека визуальных компонентов vcl и ее базовые классы.
- •Управление свойствами визуальных компонент в процессе выполнения.
- •Организация ветвлений при разработке программ.
- •Средства организации и обработки событий.
- •Средства организации и работы с файлами.
- •Подпрограммы работы с файлами
- •Компоненты tOpenDialog и tSaveDialog
- •Средства организации и работы с модулями.
Основные принципы создания пользовательского интерфейса.
Основные принципы создания интерфейса
Естественность (интуитивность)
Работа с ситемой не должна вызывать у пользователя сложностей в поиске необходимых директив (элементов интерфейса) для управления процессом решения поставленной задачи.
2. Непротиворечивость
Если в процессе работы с системой пользователем были использованы некоторые приемы работы с некоторой частью системы, то в дургой части системы приемы работы должны быть идентичны. Также работа с системой через интерфейс должна соответствовать установленным, привычным нормам (например, использование клавиши Enter).
3. Неизбыточность
Это означает, что пользователь должен вводить только минимальную информацию для работы или управления системой. Например, пользователь не должен вводить незначимые цифры (00010 вместо 10). Аналогично, нельзя требовать от пользователя ввести информацию, которая была предварительно введена или которая может быть автоматически получена из системы. Желательно использовать значения по умолчанию где только возможно, чтобы минимизировать процесс ввода информации.
4. Непосредственный доступ к системе помощи
В процессе работы необходимо, чтобы система обеспечивала пользователя необходимыми инструкциями. Система помощи отвечает трем основным аспектам - качество и количество обеспечиваемых команд; характер сообщений об ошибках и подтверждения того, что система делает. Сообщения об ошибках должны быть полезны и понятны пользователю.
5. Гибкость
Насколько хорошо интерфейс системы может обслуживать пользователя с различными уровнями подготовки? Для неопытных пользователей интерфейс может быть организован как иерархическая структура меню, а для опытных пользователей как команды, комбинации нажатий клавиш и параметры.
К аппаратному обеспечению компьютерного интерфейса относятся клавиатура, манипулятор «мышь», системный блок, монитор.
Программное обеспечение пользовательского интерфейса содержит все, что помогает пользователям видеть, слышать, отмечать, трогать на экране компьютера, а также информацию, с которой пользователь работает. Кроме того, в интерфейсе есть печатная и электронная информация – справочники, руководства, учебники и много другой документации, дополняющей программное и аппаратное обеспечение. Это делает взаимодействие с программными и аппаратными средствами интерфейса более удобным и позволяет человеку общаться с компьютером, а компьютеру – представлять информацию пользователю.
Типичные ошибки разработки интерфейса.
Наиболее общие проблемы графических и объектно – ориентированных интерфейсов:
двусмысленные меню и иконки;
ориентация на один язык;
ограничения по вводу и прямому манипулированию;
ограничения по выделению и выбору;
неясный порядок шагов;
управление интерфейсом требует больше шагов, чем собственно решение задач;
сложные связи между и внутри приложений;
неадекватная обратная связь и подтверждение;
недостаточно рациональная и предупредительная система помощи;
несовершенные сообщения об ошибках, справочные элементы, руководства и документация.
Рекомендации по разработке пользовательского интерфейса:
асимметрия = активное состояние,
симметрия = состояние покоя;
никогда не гоняйтесь за умеренностью;
тщательно следите за последовательностью и согласованностью;
помните, что согласованные интерфейсы означают лучшую внедряемость системы;
четко выравнивайте управляющие элементы;
если вы собираетесь располагать некоторые элементы за пределами выравнивания, то делайте это логично;
создавайте экранные объекты по образу и подобию объектов из реального физического мира;
не забывайте: абсолютная симметричность затрудняет чтение информации с экрана;
элементы, не соответствующие шаблону, выделяются из общей массы;
элементы одинакового размера и цвета воспринимаются как принадлежащие к одной группе.
Типичные ошибки разработки интерфейсов по Трауэру
Ошибки |
Объяснение |
Ведение разработки ради технологии, а не пользователя |
Иногда у разработчиков возникает желание продемонстрировать возможности технологии. Интерфейс пользователя разрабатывается после того, как заложен технический фундамент программы |
«Классность» разработки |
Броские графические решения не спасут слабый интерфейс |
Логическое мышление в противоположность визуальному |
Разработка программного обеспечения требует логического мышления. Пользователи, работающие с программами, как правило имеют менее структурированное мышление, и не могут оценить связей между одной частью кода и другими. |
Ввод информации пользователем только верный или только ошибочный |
Интерфейс должен предусматривать ошибки ввода информации и при работе с интерфейсом |
Рассредоточение базовых элементов |
Расширяйте возможности базовых элементов интерфейса, например стандартных диалоговых окон. Не ставьте под угрозу простые операции, чтобы включить редко используемые – делайте простые вещи простыми, а сложные вещи возможными |
Определения в документации |
Как правило, пользователи обращаются к документации в последнюю очередь, когда они уже растеряны. Не пытайтесь разбирать дефекты пользовательского интерфейса в документации |
Определения в следующей версии |
Нередко пользователи привыкают к «странностям» интерфейса и попадают к ним в зависимость. Человеку по его природе сложно отказаться от привычного выполнения операций, несмотря на преимущества новой версии |