Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПО.doc
Скачиваний:
6
Добавлен:
19.02.2016
Размер:
172.54 Кб
Скачать
  1. Разработка основной программы

Приложение состоит из одного класса: clsTimer.

Текст программы:

1) Project1.Dpr

library Project1;

uses

SysUtils,

Classes,

Forms,

ComServ,

Project1_TLB in 'Project1_TLB.pas',

Unit1 in 'Unit1.pas' {clsTimer: CoClass},

Unit2 in 'Unit2.pas' {Form2};

function ShowForm : integer; stdcall;

var

Form : TForm2;

begin

Form := TForm2.Create(application);

Result := Form.ShowModal;

Form.free;

end;

exports

DllGetClassObject,

DllCanUnloadNow,

DllRegisterServer,

DllUnregisterServer,

ShowForm;

begin

end.

2)Unit1.Pas

unit Unit1;

interface

uses

ComObj, ActiveX, Project1_TLB, StdVcl,Dialogs,unit2,Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms;

type

TclsTimer = class(TAutoObject, IclsTimer)

protected

function Get_Read: Integer; safecall;

function Get_Start: Integer; safecall;

procedure Set_Read(sec: Integer); safecall;

procedure Set_Start(sec: Integer); safecall;

end;

uses ComServ;

function TclsTimer.Get_Read: Integer;

begin

//Unit2.Form2.Timer1.Enabled:=True;

end;

function TclsTimer.Get_Start: Integer;

begin

end;

procedure TclsTimer.Set_Read(sec: Integer);

begin

Unit2.Form2.Edit1.Text:=IntToStr(sec);

end;

procedure TclsTimer.Set_Start(sec: Integer);

begin

end;

TAutoObjectFactory.Create(ComServer, TclsTimer, Class_clsTimer,

ciMultiInstance, tmApartment);

end.

3)Unit2.Pas

unit Unit2;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ExtCtrls, StdCtrls;

type

TForm2 = class(TForm)

Label1: TLabel;

Timer1: TTimer;

Edit1: TEdit;

procedure Timer1Timer(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

{$R *.dfm}

var

// интервал

sec: integer; // количество секунд

procedure TForm2.Timer1Timer(Sender: TObject);

begin

sec := StrToInt(Edit1.Text);

sec:=sec- 1;

ifsec= 0then

// заданный интервал истек

begin

Timer1.Enabled := False; // стоп

ShowMessage('Заданный интервал истек!');

Label1.Visible:=False; // скрыть индикатор

// сделать видимыми поля ввода интервала

exit;

end;

end;

procedure ShowTime;

var

buf:string[20];

begin

// секунды выводим двумя цифрами

if sec < 10 then

buf := buf + '0' + IntToStr(sec)

else

buf := buf + IntToStr(sec);

Form2.Label1.Caption := buf;

end;

end.

Рис.8 Интерфейс программы

7. Оформление индивидуальной программной документации

Таблица 2. Индивидуальная программная документация

Верификация и валидация

SVVP(План экспертизы программного обеспечения)

В данном проекте не используется

Контроль качества

SQAP(План контроля качества программного обеспечения)

В данном проекте не используется

Конфигурация

SCMP(План управления конфигурациями программного обеспечения)

См пункт 5 данного отчета

Статус проекта

SPMP(План управления программным проектом)

Высший приоритет имеет исполнение приложения в срок. На втором месте по приоритетности стоит достижение заданного уровня качества.

Риск №1, «неисполнение программного приложения в срок» связан с тем, что разработчик помимо данного приложения выполняет другие поручения и задачи, не связанные с курсовой работой.

В приложении для проектирования используется среда RationalRose, а реализация ведется на языкеDelphi.

Требования

SRS(Спецификация требований к программному обеспечению)

Требования представлены в таблице 1

Проектирование

SDD(Проектная документация программного обеспечения)

См пункт 7 данного отчета

Код

Исходный код

См пункт 6 данного отчета

Тестирование

STD(Документация по тестированию программного обеспечения)

См пункт 5 данного отчета

Использование

Руководство пользователя

В данном проекте не используется