на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Объектно-ориентированная разработка программ
p align="left">Сопровождаемость ? это характеристики ПС, которые позволяют минимизировать усилия по внесению изменений для устранения в нем ошибок и по его модификации в соответствии с изменяющимися потребностями пользователей.

Мобильность ? это способность ПС быть перенесенным из одной среды (окружения) в другую, в частности, с одного компьютера на другой.

Функциональность и надежность являются обязательными критериями качества ПС, причем обеспечение надежности будет красной нитью проходить по всем этапам и процессам разработки ПС. Остальные критерии используются в зависимости от потребностей пользователей в соответствии с требованиями к ПС. Обеспечение этих критериев будет обсуждаться в подходящих разделах курса.

1.4 Обеспечение надежности ? основной мотив разработки программных средств

Рассмотрим теперь общие принципы обеспечения надежности ПС, что, как мы уже подчеркивали, является основным мотивом разработки ПС, задающим специфическую окраску всем технологическим процессам разработки ПС. В технике известны четыре подхода обеспечению надежности:

предупреждение ошибок;

самообнаружение ошибок;

самоисправление ошибок;

обеспечение устойчивости к ошибкам.

Целью подхода предупреждения ошибок ? не допустить ошибок в готовых продуктах, в нашем случае ? в ПС. Проведенное рассмотрение природы ошибок при разработке ПС позволяет для достижения этой цели сконцентрировать внимание на следующих вопросах:

борьба со сложностью,

обеспечение точности перевода,

преодоление барьера между пользователем и разработчиком,

обеспечение контроля принимаемых решений.

Этот подход связан с организацией процессов разработки ПС, т.е. с технологией программирования. И хотя, как мы уже отмечали, гарантировать отсутствие ошибок в ПС невозможно, но в рамках этого подхода можно достигнуть приемлемого уровня надежности ПС.

Остальные три подхода связаны с организацией самих продуктов технологии, в нашем случае ? программ. Они учитывают возможность ошибки в программах. Самообнаружение ошибки в программе означает, что программа содержит средства обнаружения отказа в процессе ее выполнения. Самоисправление ошибки в программе означает не только обнаружение отказа в процессе ее выполнения, но и исправление последствий этого отказа, для чего в программе должны иметься соответствующие средства. Обеспечение устойчивости программы к ошибкам означает, что в программе содержатся средства, позволяющие локализовать область влияния отказа программы, либо уменьшить его неприятные последствия, а иногда предотвратить катастрофические последствия отказа. Однако, эти подходы используются весьма редко (может быть, относительно чаще используется обеспечение устойчивости к ошибкам). Связано это, во-первых, с тем, что многие простые методы, используемые в технике в рамках этих подходов, неприменимы в программировании, например, дублирование отдельных блоков и устройств (выполнение двух копий одной и той же программы всегда будет приводить к одинаковому эффекту ? правильному или неправильному). А, во-вторых, добавление в программу дополнительных фрагментов приводит к ее усложнению (иногда ? значительному), что в какой-то мере мешает методам предупреждения ошибок.

1.5 Методы борьбы со сложностью

Мы уже обсуждали в лекции 2 сущность вопроса борьбы со сложностью при разработке ПС. Известны два общих метода борьбы со сложностью систем:

обеспечения независимости компонент системы;

использование в системах иерархических структур.

Обеспечение независимости компонент означает разбиение системы на такие части, между которыми должны остаться по возможности меньше связей. Одним из воплощений этого метода является модульное программирование. Использование в системах иерархических структур позволяет локализовать связи между компонентами, допуская их лишь между компонентами, принадлежащими смежным уровням иерархии. Этот метод, по существу, означает разбиение большой системы на подсистемы, образующих малую систему. Здесь существенно используется способность человека к абстрагированию.

1.6 Обеспечение точности перевода

Обеспечение точности перевода направлено на достижение однозначности интерпретации документов различными разработчиками, а также пользователями ПС. Это требует придерживаться при переводе определенной дисциплины. Майерс предлагает использовать общую дисциплину решения задач, рассматривая перевод как решение задачи. Лучшим руководством по решению задач он считает книгу Пойа "Как решать задачу". В соответствии с этим весь процесс перевода можно разбить на следующие этапы:

Поймите задачу;

Составьте план (включая цели и методы решения);

Выполните план (проверяя правильность каждого шага);

Проанализируйте полученное решение.

Подробно обсуждать этот вопрос мы здесь не будем.

1.7 Преодоление барьера между пользователем и разработчиком

Как обеспечить, чтобы ПС выполняла то, что пользователю разумно ожидать от нее? Для этого разработчикам необходимо правильно понять, во-первых, чего хочет пользователь, и, во-вторых, его уровень подготовки и окружающую его обстановку. Ясное описание соответствующей сферы деятельности пользователя или интересующей его проблемной области во многом облегчает достижение разработчиками этой цели. При разработке ПС следует привлекать пользователя для участия в процессах принятия решений, а также тщательно освоить особенности его работы (лучше всего ? побывать в его "шкуре").

1.8 Контроль принимаемых решений

Обязательным шагом в каждом процессе (этапе) разработки ПС должна быть проверка правильности принятых решений. Это позволит обнаруживать и исправлять ошибки на самой ранней стадии после ее возникновения, что, во-первых, существенно снижает стоимость ее исправления и, во-вторых, повышает вероятность правильного ее устранения.

С учетом специфики разработки ПС необходимо применять везде, где это возможно,

смежный контроль,

сочетание как статических, так и динамических методов контроля.

Смежный контроль означает, проверку полученного документа лицами, не участвующими в его разработке, с двух сторон: во-первых, со стороны автора исходного для контролируемого процесса документа, и, во-вторых, лицами, которые будут использовать полученный документ в качестве исходного в последующих технологических процессах. Такой контроль позволяет обеспечивать однозначность интерпретации полученного документа.

Сочетание статических и динамических методов контроля означает, что нужно не только контролировать документ как таковой, но и проверять, какой процесс обработки данных он описывает. Это отражает одну из специфических особенность ПС (статическая форма, динамическое содержание).

2. Практическая часть: Разработать форму и интерфейс приложений, реализовать алгоритмы решения задач на языке Delphi

2.1 Программа «Треугольники» определяет, может ли быть построен прямоугольный треугольник по заданным длинам сторон а,b,с и выводит соответствующее сообщение

2.2. В заданных массивах А и В поменять местами максимальные элементы. Вывести на экран преобразованные массивы.

2.3. Разместить на форме объект “Shape”( эллипс) и кнопку “Button” с названием «Цвет формы». При запуске (выполнении) программы при нажатии на кнопку выводится стандартное диалоговое окно выбора цвета и цвет формы изменяется соответственно.

Для решения этой задачи, мы разработаем форму и интерфейс приложений на языке Delphi. Разработаем форму, которая будет основным меню для решения поставленных задач. Вызова форм colorshape, parray и тugol, которые будут реализовывать задачи. Программа построенна на модальных окнах.

Анализ технического задания и постановка задачи проектирования.

Так, согласно заданию, программа должна быть реализована в среде Delphi и должна выполнять следующие функции:

- вывод на экран информации о задании и назначении программы;

- ввод пользователем значений, определяющих параметры;

- проверка полученного от пользователя значения и вывод результатов работы программы;

Составим следующий алгоритм:

1. По запуску программы вывести диалоговое окно с выбором программ которые нужно выполнить.

2. Программа треугольник при запуске запрашивает у пользователя значение сторон и выводит сообщение о возможности построения прямоугольного треугольника.

3. В заданных массивах А и В поменять местами максимальные элементы. Вывести на экран преобразованные массивы.

4. Программа цвет формы выводит пользователю диалоговое окно, меняет цвет формы и фигуры при нажатии кнопку соответственно.

Наиболее важными свойствами формы (всего их 38) являются:

Caption - заголовок, указывающий наименование формы;

Color - цвет фона формы;

Height - высота окна формы в пикселях;

Left - смещение по горизонтали в пикселях левого верхне

Top - смещение по вертикали в пикселях левого верхнего

Width - ширина окна формы в пикселях.

BorderStyle - тип рамки;

Font - шрифт и его атрибуты;

Icon - пиктограмма для изображения свернутой формы;

Visible - задает видимую или невидимую форму;

Для создания интерфейса можно использовать базовые компоненты к ним можно отнести:

Label -- поле вывода текста;

Edit -- поле ввода/редактирования текста;

Button -- командная кнопка;

GroupBox - рамка группы

CheckBox -- «флажок», независимая кнопка выбора;

RadioGroup - рамка группы переключателей

RadioButton - радиокнопка , «переключатель»,

ListВox -- список выбора;

Combo Box-- комбинированный список выбора.

Для построения данного приложения, применялись следующие свойства формы из всех возможных:

Caption заголовок, указывающий наименование формы;

Color цвет фона формы;

Height высота окна формы в пикселях;

Left смещение по горизонтали в пикселях левого верхне

Top смещение по вертикали в пикселях левого верхнего

Width ширина окна формы в пикселях.

BorderStyle - тип рамки;

Font - шрифт и его атрибуты;

Icon - пиктограмма для изображения свернутой формы;

Visible - задает видимую или невидимую форму;

Position - задает расположение формы при выполнении приложения

Событий, которые могут произойти с каким-либо элементом управления не так уж и много. Для кнопки, например, есть два основных события: 1) - одинарный щелчок мышью на ней (click), 2) - двойной щелчок мышью на ней (double click). Программист, если необходимо реакция на нажатие кнопки (а иначе зачем она нужна?), должен написать процедуру-обработчик сообщения (Event handler), вызывающую определенные ответные действия.

Визуальный Компонент TLabel представляет собой статический текст и применяется для идентификации других объектов приложения. Он располагается рядом с полями редактирования, флажками, переключателями и помогает пользователю сориентироваться в их назначении. Обычно компонент TLabel события не обрабатывает.

Визуальный Компонент TEdit позволяет пользователю ввести с клавиатуры строку символов, или вывести в их поле редактирования. При вводе-выводе данных изменяется значение свойства Text компонента типа TEdit. Заметим, что введенный текст будет типа string, и выводимый текст должен быть типа string. Для преобразования строки символов в число и обратно существуют специальные функции, например, некоторые из них:

1) StrToInt(Text_String) - преобразует строку Text_String в целое число (конечно, если она состоит из символов, которые соответствуют цифрам, иначе, преобразование бессмысленно);

2) IntToStr(Number_Integer) - преобразует целое число Number_Integer в строку эквивалентных символов;

· Листинг программы содержится в приложении А.

· Результат тестового запуска приведен в приложении В.

· Программа разработана с использованием языка Delphi.

Приложение А

Листинг программ:

unit tmain;

{$mode objfpc}{$H+}

interface

uses

Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,

StdCtrls;

type

{ TForm1 }

TForm1 = class(TForm)

Страницы: 1, 2, 3



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.