Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

СТиЛ практикум

.pdf
Скачиваний:
18
Добавлен:
11.03.2015
Размер:
457.44 Кб
Скачать

11

 

 

 

 

Таблица 2. Перечень наименований документов для задания №1.3

 

 

 

Перечень документов

 

 

вар.

 

 

 

 

 

 

 

 

1

 

Схема функциональной структуры

 

 

 

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

2

 

Описание автоматизируемых функций

 

 

 

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

3

 

Описание постановки задачи (комплекса задач)

 

 

 

Локальная смета

4

 

Паспорт

 

 

 

Проектная оценка надежности системы

5

 

Общее описание системы

 

 

 

Схема организационной структуры

6

 

Программа и методика испытаний

 

 

 

Ведомость эксплуатационных документов

7

 

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

 

 

 

Методика (технология) автоматизированного проектирования

8

 

Описание комплекса технических средств

 

 

 

Описание организационной структуры

9

 

Перечень входных сигналов и данных

 

 

 

Описание информационного обеспечения системы

10

 

Перечень выходных сигналов (документов)

 

 

 

Описание организации информационной базы

11

 

Каталог базы данных

 

 

 

Описание алгоритма (проектной процедуры)

12

 

Описание программного обеспечения

 

 

 

Инструкция по формированию и ведению базы данных (набора данных)

13

 

Описание автоматизируемых функций

 

 

 

Формуляр

14

 

Проектная оценка надежности системы

 

 

 

Описание организационной структуры

12

Лабораторная работа №4

Оценка качества и сложности программного средства

Цель работы: изучить некоторые методы оценки качества и сложности программных средств; получить практические навыки применения обозначенных методов.

Задания к лабораторной работе №4

Часть 1. Оценка качества программного средства

1.1.Приведите краткую информацию об оцениваемом программном средстве (название, разработчик, год создания, язык программирования).

1.2.Выберите характеристики, по которым будете оценивать качество программного средства. Определите их сущность на основании назначения анализируемого программного средства. Например:

Для программного продукта были выбраны характеристики качества: функциональность, надежность, … .

Функциональность. Рассматриваемый программный продукт <название программы> должен выполнять следующие функции <перечислить>.

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

1.3. Для каждой характеристики качества установите весовые коэффициенты (wi), отражающие значимость i-й характеристики на фоне остальных для оцениваемого программного средства. Весовые коэффициенты следует устанавливать исходя из своих интуитивных представлений (представьте себя в роли эксперта) и назначения программного средства с учетом того, что wi = 1.

1.4. Для каждой характеристики качества установите численную оценку ri от 0 до 1 (представьте себя в роли эксперта). Результаты по п.1.3 и 1.4 представьте в виде таблицы следующей структуры:

13

Характеристика

Сущность

Вес wi

Оценка

качества

характеристики

 

эксперта ri

 

 

 

 

Например:

Характеристика

 

Сущность

Вес wi

Оценка

качества

 

характеристики

 

эксперта ri

 

 

 

 

Функциональность

<записать, в какой степени

 

реализован набор функции, изна-

 

 

 

чально определенный для ПС –

 

 

 

что реализовано, что не реали-

 

 

 

зовано или реализовано в недо-

 

 

 

статочной степени>

 

 

 

 

 

 

 

Надежность

1)

Программа работает без

 

 

сбоев, если пользователь

 

 

 

 

вводит допустимые входные

 

 

 

 

данные;

 

 

 

2)

Ввод недопустимых значе-

 

 

 

 

ний не обрабатывается про-

 

 

 

 

граммой и вызывает ошибку

 

 

 

 

выполнения.

 

 

 

3)

 

 

 

 

 

 

 

 

 

 

 

 

 

1.5.Определите общее качества ПС по формуле wi ri

1.6.Постройте гистограмму распределения характеристик качества по интервалам оценок.

1.7.Проанализируйте популенные результаты. Есть ли характеристики с оценками = 0? На каком уровне общее качество ПС? Какие дефекты ПС выявлены?

1.8.Самостоятельно найдите информацию о других методах оценки качества программных средств. Выполните расчет по одному из них. Сравните результаты с ранее полученным значением качества ПС.

Часть 2. Оценка сложности программного средства

Краткие теоретические сведения.

При оценке сложности программ, как правило, выделяют три основные группы метрик:

метрики размера программ;

14

метрики сложности потока управления программ;

метрики сложности потока данных программ.

Метрики размера программ. Традиционной характеристикой размера программ является количество строк исходного текста. Под строкой понимается любой оператор программы. В этой связи будут рассмотрены простейшие объемные метрики и метрика Холстеда.

Простейшие объемные метрики. К ним можно отнести: L – число строк в программе, включая комментарии; S – число исполняемых операторов; U – число программных модулей: процедур, функции и т.д; S/U – средний размер программного модуля.

Метрика Холстеда. Ее основу составляют 4 измеряемых характеристики программы:

n1 – число уникальных операторов программы;

n2 – число уникальных операндов программы (словарь операндов);

N1-общее число операторов в программе;

N2-общее число операндов в программе;

Операнд – константа, переменная, функция, выражение и др. объект языка программирования, над которым производится операция. Операция – действия, производимые над операндами.

Оператор – фраза алгоритмического языка, определяющая законченный этап обработки данных. В состав оператора входят ключевые слова, данные, выражения и др.

Оценки Холстеда:

словарь программы – n= n1 + n2 длина программы – N= N1 + N2 объем программы – V=N log2(n) бит

длина теоретического словаря – n*= n1* + n2*

потенциальный объем программы – V*=n*log2(n*) теоретическая длина программы – N^= n1log2(n1) + n2log2(n2);

Для стилистически корректных программ отклонение в оценке теоретической длины N^ от реальной N не превышает 10%.

Уровень качества программирования (уровень программы) – L=V*/V. Для идеальной программы L=1, для реальной – всегда L<1. Холстед предлагает аппроксимировать эту оценку выражением, включающим только фактические характеристики программы: L^=(2n2)/(n1N2).

Интеллектуальное содержание конкретного алгоритма – I= L^V.

15

Число требуемых элементарных решений при написании программы

E=N^log2(n/L).

Затраты на восприятие готовой программы E’=Nlog2(n/L).

Задание.

2.1. Определить простейшие объемные метрики программного средства. Результаты оформить в виде таблицы:

Объемные метрики

 

L

 

S

 

U

S/U

 

 

 

 

 

 

 

 

 

 

2.2. Определить элементы и характеристики программы для метрик Холстеда. Результаты оформить в следующем виде (привести формулы и промежуточные расчеты):

n1 = …; n2 = …; n = n1 + n2 = …; N1 = …; N2 = …; N = …;

V = …; n*= …; V* = …; N^ = …; L = …; L^ = …; I = …;

E = …;

E’ = ….

 

 

 

Метрики Холстеда

N

N

V

V*

N^

L

L^

I

E

E’

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

2.4.Самостоятельно найдите информацию о других метриках программного кода.

16

Лабораторная работа №5

Разработка проекта легализации программного обеспечения

Цель работы: познакомиться с программами лицензирования крупных производителей программного обеспечения; получить практические навыки подбора лицензионного программного обеспечения для нужд некоторой организации.

Задания к лабораторной работе №5

1.Ознакомьтесь с программами лицензирования, предлагаемыми известными производителями программного обеспечения (см. табл.1). В отчет включите следующие сведения: специализация компаниипроизводителя, перечень программ лицензирования и их краткая характеристика.

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

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

 

 

 

17

 

 

 

 

 

Таблица 1. Перечень организаций-производителей ПО

 

 

 

Перечень документов

 

 

вар.

 

 

 

 

 

 

 

 

1

 

Kaspersky Lab (Лаборатория Касперского)

2

 

Autodesk

3

 

Adobe Systems

4

 

ABBYY

5

 

Symantec

6

 

Embarcadero

7

 

Oracle

8

 

Citrix Systems

9

 

VMware

10

 

SAP

11

 

Corel Corporation

12

 

Autodesk

13

 

Microsoft Corporation

14

 

VMware

 

 

 

 

Таблица 2. Перечень предметных областей для разработки проекта

 

 

 

 

легализации ПО

 

 

 

Перечень документов

 

 

вар.

 

 

 

 

 

 

 

 

1

 

Рекламное агентство

2

 

Издательский дом

3

 

Компания, специализирующаяся на дизайне помещений

4

 

Агентство недвижимости

5

 

Фотостудия

6

 

Отдел взаимоотношений с клиентами компании, специализирующейся на разра-

 

 

 

ботке программного обеспечения

7

 

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

 

 

 

разработке программного обеспечения

8

 

Бюро переводов (на иностранные языки)

9

 

Отдел организации удаленных совещаний (видеоконференций) международной

 

 

 

компании

10

 

IT-компания по разработке Web-приложений и сайтов

11

 

Отдел бухгалтерии бизнес-учреждения

12

 

Отдел бухгалтерии бюджетного учреждения

13

 

Отдел продаж магазина компьютерной техники

14

 

Рекламное агентство