Что такое ручной контроль бск. Ручной контроль и покупка проездных карт: проблемы

💖 Нравится? Поделись с друзьями ссылкой

Введение.

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

Цель данной работы: сравнить световую отдачу ламп накаливания и светодиодов. Изучить разнообразие электрических фонарей и их экономичность.

Задачи: сравнить световую отдачу светодиодов и ламп накаливания измеряя фототок.

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

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


  1. Из истории создания электрического фонарика.
В те далёкие времена, когда уже был костёр, человек искал способы создания портативного (переносного) источника света. Сначала это была подожжённая в костре ветка дерева, затем появились факелы, свечи и керосиновые лампы, которые и по сей день с нами. У этих портативных источников света были проблемы – безопасность, непрактичность, выделение вредных веществ. Все эти факторы в будущем и повлияли на появление первого в мире электрического фонаря.

1896 год - первый электрический фонарь. Корпус этого фонаря был выполнен из дерева. Фонарь имел ручку для переноски, выключатель для включения и выключения, эту роль выполняла металлическая пластина, которая при повороте замыкала электрические

1899 год - первый ручной фонарь электрический цилиндрической формы,

В наши дни - это совсем другие электрические фонарики на батарейках квадратных , выполненные по передовым технологиям, с использованием современных материалов, источников тока и источников освещения.

За прошедшие сто лет форма фонариков почти не изменилась. По форме можно выделить две основные группы: цилиндрические и квадратные.

По источнику света фонарики делятся на классы: на лампах накаливания и светодиодами.


  1. Устройство лампы накаливания.
Лампа накаливания - электрический источник света, светящимся телом которого служит так называемое тело накала (нить накала, проводник, нагреваемый протеканием электрического тока до высокой температуры.) Конструкции ламп накаливания весьма разнообразны и зависят от назначения конкретного вида ламп. Однако общими для всех ламп накаливания являются следующие элементы: нить накала, колба, токовводы. В зависимости от особенностей конкретного типа лампы могут применяться держатели нити накала различной конструкции; лампы могут изготавливаться бесцокольными или с цоколями различных типов, иметь дополнительную внешнюю колбу и иные дополнительные конструктивные элементы.

очень низкий КПД у ламп накаливания, расходуют электроэнергии на свет всего 5% мощности, 95% на тепло. Лампы накаливания затрачивают электричество больше на нагрев нити, чем на свет


Устройство светодиода.

Светодио́д или светоизлучающий диод (СД , СИД , LED англ Light-emitting diode ) - п олупроводниковый прибор с электронно-дырочным переходом или контактом металл-полупроводник, создающий видимое излучение при пропускании через него электрического тока. Излучаемый свет лежит в узком диапазоне спектра, его спектральные характеристики зависят в том числе от химического состава использованных в нём полупрово дников . Устройство светодиодов различных типов упрощенно представлено на Рисунке Свет, излучаемый полупроводниковым кристаллом, попадает в миниатюрную оптическую систему, образованную сферическим рефлектором и самим прозрачным корпусом диода, имеющим форму линзы

В отличие от ламп накаливания светодиоды излучают свет в относительно узкой полосе спектра, ширина которой составляет 20-50 нм

Светодиоды встраивают куда угодно, во многие сферы жизнедеятельности человека и не только, эти новые источники света не обошли стороной и фонари.

Но на столько ли они эффективны, как кажется?


  1. Проведение эксперимента.
В своей работе я решил сравнить световую отдачу миниатюрной лампы накаливания от карманного фонаря(напряжение 3,5 В, сила тока 0,15 А) и 5 светодиодов (U=3B, I=0,02A), включенных параллельно (суммарная сила тока 0,1А). из данных справочника известно, что яркость такой лампы 1 канделла.

Для измерения силы тока и напряжения использовал цифровой мультиметр, вольтметр и милиамперметр.

Одной из характеристик источников света, позволяющей сравнивать их экономичность, является коэффициент световой отдачи. Он определяется отношение полного светового потока Ф, посылаемого лампой (в люменах), к мощности Р, затрачиваемой на питание лампы (в ваттах):


Очевидно, что чем источник экономичен, тем выше его коэффициент световой отдачи.

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

то для того, чтобы найти отношение коффициентов световой отдачи, достаточно измерить освещенность фотоэлемента с помощью микроамперметра и расстояние R линейкой. Потребляемую мощность P измерил амперметром(A) и вольтметром(B).

Коэффициент световой отдачи для светодиода получился в 12,3 раза больше, чем для лампы накаливания.

Опыт 2. Зависимость разрядки батарей от времени работы осветительного прибора.

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


  1. Дальнейшее совершенствование электрических фонарей
Во многом работа электрического фонаря зависит от источника тока. Батареи, применяемые с ним подразделяются на следующие группы:

а) по размерам (таб.3)

б) по химическому составу

Большая часть электрических фонарей, подразделяются на две основные категории:


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

  2. К этой группе относятся и тактические фонари. В продаже можно увидеть лазерные патроны для холодной пристрелки.
2. Большинству людей требуется более простой фонарь электрический, который стоит недорого. Ассортимент таких недорогих фонарей очень большой и может удовлетворить любого покупателя. Эти источники света можно разделить на следующие подгруппы:

1.электрические фонарики на батарейках выполненные по передовым технологиям, с использованием современных материалов, источников тока и источников освещения.

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

3. Сегодня уже никого не удивишь электрическим фонарём, который можно неоднократно перезаряжать, где нет внутри батареек, там стоят надёжные, неоднократно перезаряжаемые аккумуляторы - это аккумуляторные фонари.

4. С появлением в производстве миниатюрных источников тока - батареек и очень надёжных источников света - светодиодов, появилась возможность производить фонари миниатюрных размеров – фонарики-брелки.


Лампа накаливания

светодиод

Фонарь светодиодный






























Приложение.




  1. Миниатюрные лампы накаливания.



  1. Проведение эксперимента

Разряд батареи от лампы накаливания и светодиодов

а)от лампы накаливания



напряжение, В

сила тока. А

время, мин

мощность, Вт

3,5

0,16

0

0,56

3,2

0,15

20

0,48

2,8

0,13

40

0,36

2,6

0,12

60

0,31

2,3

0,11

80

0,25

2,2

0,1

100

0,22

Падение мощности батарейки

б)от светодиодов



напряжение, В

сила тока. А

время, мин

мощность, Вт

3,5

0,1

0

0,35

3,4

0,1

20

0,34

3,35

0,1

40

0,34

3,33

0,098

60

0,33

3,2

0,096

80

0,31

3
,15


0,093

100

0,29

Виды гальванических элементов

Размер в мм

Название

Стандарт

IEC (щелочные/
солевые)


ANSI*

JIS*
(щелочные/
солевые)


диаметр 14,5
высота 50,5


Mignon
(Пальчиковая)


LR6/R6

AA

AM3/UM3N

диаметр 10,5
высота 44,5


Micro

LR03/R03

AAA

AM4/UM4N

диаметр 26,2
высота 50


Baby

LR14/R14

C

AM2/UM2N

диаметр 34,2
высота 61,5


Mono

LR20/R20

D

AM1/UM1N

26 x 22 x 67

9V Bloc

6LR61/6F22

1604D

6AM6/006PN
Таблица3

  1. Думайте сами, решайте сами…..
Что лучше: лампа накаливания и светодиод?

Лампа накаливания

светодиод

Фонарь светодиодный

высокое потребление электроэнергии лампой накаливания

минимальное потребление электроэнергии светодиодом, низкое рабочее напряжение

Низкое напряжение питания фонарей от 1,5 В при минимальном потреблении электроэнергии, Батарейки или аккумулятора теперь хватает не на часы, а на сутки.

мерцание и вспышки светового потока при изменениях напряжения питания лампы накаливания, а при падении напряжения, свет тускнеет

не зависимо от падения напряжения, светодиодное освещение постоянное, для этого используется импульсный режим питания светодиодов

Постоянная яркость светового потока светодиодного фонаря не зависимо от падения напряжения источника тока.

лампа накаливания боится ударных и механических нагрузок, вибрации, тряски

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

Высокая надёжность источника света к ударным и механическим нагрузкам.

колбы ламп накаливания сильно нагреваются, очень высокая рабочая температура

светодиод - это минимальный нагрев, всего 20% электричества тратится на тепло

Минимальный нагрев отражателя фонаря.

лампа накаливания боится частого включения и выключения, основная причина, резкие перепады напряжения

частое включение и выключение никак не влияет на срок эксплуатации светодиода

Светодиод - надёжный источник света для фонаря.

Светодиодов в хорошем фонаре несколько, если даже вдруг перегорит один из светодиодов, Вы не останетесь без света!

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

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

и выходные данные. При динамическом - выполняютручное тестирование., т. е. вручную моделируют процесс выполнения программы на заданных исходных данных.

Исходными данными для таких проверок являются: техническое задание, спецификации, структурная и функциональная схемы программного продукта, схемы отдельных компонентов

и т. д., а для более поздних этапов - алгоритмы и тексты программ, а также тестовые наборы.

Доказано, что ручной контроль способствует существенному увеличению производительности и повышению надежности программ и с его помощью можно находить от 30 до 70 % ошибок логического проектирования и кодирования. Следовательно, один или несколько из методов ручного контроля обязательно должны использоваться в каждом программном проекте.

Основными методами ручного контроля являются:

инспекции исходного текста,

сквозные просмотры,

проверка за столом,

оценки программ.

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

участникам группы заранее выдается листинг программы и спецификация на нее;

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

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

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

I. Контроль обращений к данным

Все ли переменные инициализированы?

Не превышены ли максимальные (или реальные) размеры массивов и строк?

Не перепутаны ли строки со столбцами при работе с матрицами?

Присутствуют ли переменные со сходными именами?

Используются ли файлы? Если да, то при вводе из файла проверяется ли завершение файла?

Соответствуют ли типы записываемых и читаемых значений?

Использованы ли нетипизированные переменные, открытые массивы, динамическая память? Если да, то соответствуют ли типы переменных при «наложении» формата? Не выходят ли индексы за границы массивов?

2. Контроль вычислений

Правильно ли записаны выражения (порядок следования операторов)?

Корректно ли выполнены вычисления над неарифметическими переменными?

Корректно ли выполнены вычисления с переменными различных типов (в том числе с использованием целочисленной арифметики)?

Возможно ли переполнение разрядной сетки или ситуация машинного нуля?

Соответствуют ли вычисления заданным требованиям точности?

Присутствуют ли сравнения переменных различных типов?

3. Контроль передачи управления

Будут ли корректно завершены циклы?

Будет ли завершена программа?

Существуют ли циклы, которые не будут выполняться из-за нарушения условия входа? Корректно ли продолжатся вычисления?

Существуют ли поисковые циклы? Корректно ли отрабатываются ситуации «элемент найден»

и «элемент не найден»?

4. Контроль межмодульных интерфейсов

Соответствуют ли списки параметров и аргументов по порядку, типу, единицам измерения?

Не изменяет ли подпрограмма аргументов, которые не должны изменяться?

Не происходит ли нарушения области действия глобальных и локальных переменных с одинаковыми именами?

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

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

участникам группы заранее выдают листинг программы и спецификацию на нее;

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

участники заседания мысленно выполняют каждый тест в соответствии с логикой программы, при этом состояние программы (значения переменных) отслеживается на бумаге или доске;

при необходимости программисту задают вопросы о логике проектирования и принятых допущениях.

В большинстве сквозных просмотров при выполнении самих тестов находят меньше ошибок, чем при опросе программиста.

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

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

Такая оценка выполняется следующим образом. Выбирается программист, который должен выполнять обязанности администратора процесса. Администратор набирает группу от шести до 20-ти участников, которые должны заниматься разработкой сходных программ. Каждому участнику предлагается представить для рассмотрения две программы, с его точки зрения - наилучшую и наихудшую. Отобранные программы случайным образом распределяются между участниками. Им дают по четыре программы -две наилучшие и две наихудшие, но не говорят, какие программы плохие, а какие - хорошие. Программист просматривает эти программы и заполняет анкету, в которой оценивает качество программ по семибалльной шкале.

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

9.3. Структурное тестирование

Структурное тестирование называют также тестированием по «маршрутам», так как в этом случае тестовые наборы формируют путем анализа маршрутов, предусмотренных алгоритмом. Подмаршрутами при этом понимают последовательности операторов программы, которые выполняются при конкретном варианте исходных данных.

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

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

Структурный подход к тестированию имеет ряд недостатков. Так тестовые наборы, построенные по данной стратегии:

не обнаруживают пропущенных маршрутов;

не обнаруживают ошибок, зависящих от обрабатываемых данных, например, в операторе if (a - b) < eps - пропуск функции абсолютного значения abs проявится только, если а < Ь;

не дают гарантии, что программа правильна, например, если вместо сортировки по убыванию реализована сортировка по возрастанию.

Для формирования тестов программу представляют в виде графа, вершины которого соответствуют операторам программы, а дуги представляют возможные варианты передачи управления. Ниже приведен текст программы, которая определяет значение х в зависимости от значений параметров процедуры. Алгоритм этой программы представлен на рис. 9.2, а, а соответствующий граф передач управления - на рис. 9.2,6.

Procedure т(а, b: rеа1; var x: real); begin

if (a1) and (b=0) then x: =x/a; if (a=2) or (x>1) then x: =x+1;

Формирование тестовых наборов для тестирования маршрутов может осуществляться по нескольким критериям:

покрытие операторов;

покрытие решений (переходов);

покрытие условий;

покрытие решений/условий;

комбинаторное покрытие условий.

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

Для фрагмента, алгоритм и граф которого представлены на рис. 9.2, можно было бы выполнить каждый оператор один раз, задав в качестве входных данных а = 2, b = О, х = 3. Но при этом из второго условия следует, что переменная х может принимать любое значение, и в некоторых версиях языка Pascal это значение проверяться не будет (!).

Кроме того:

если при написании программы в первом условии указано: (а > 1) or (b = 0), то ошибка обнаружена не будет;

если во втором условии вместо х > 1 записано х > 0, то эта ошибка тоже не будет обнаружена;

существует путь 1-2-4-6 (см. рис. 9.2, б), в котором х вообще не меняется и, если здесь есть ошибка, она не будет обнаружена.

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

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

Нетрудно видеть, что критерий покрытия решений удовлетворяет критерию покрытия операторов, но является более «сильным».

Программу, алгоритм которой представлен на рис. 9.2, а, можно протестировать по методу покрытия решений двумя тестами, покрывающими либо пути: 1-2-4-6, 1-2-3-4-5-6, либо пути: 1-2-3-4-6, 1-2-4-5-6, например:

а = 3, Ь = 0, х = 3- путь 1-2-3-4-5-6;

а = 2, b = 1, х = I - путь 1-2-4-6.

Однако путь, где х не меняется, будет проверен с вероятностью 50 %: если во втором условии вместо условия х > 1 записано х < 1, то этими двумя тестами ошибка обнаружена не будет.

Покрытие условий. Критерий покрытия условий является еще более «сильным» по сравнению с предыдущими. В этом случае формируют некоторое количество тестов, достаточное для того, чтобы все возможные результаты каждого условия в решении были выполнены, по крайней мере, один раз.

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

Программа, алгоритм которой представлен на рис. 9.2, а, проверяет четыре условия:

Тесты, удовлетворяющие этому условию:

а = 2, Ь = 0, х = 4 - путь 1-2-3-4-5-6, условия: 1 - да, 2 - да, 3 - да, 4 - да;

а = 1, b = 1, х = 1 - путь 1-2-4-6, условия: 1 - нет, 2 - нет, 3 - нет, 4 - нет.

Критерий покрытия условий часто удовлетворяет критерию покрытия решений, но не всегда. Тесты критерия покрытия условий для ранее рассмотренных примеров покрывают результаты всех решений, но это случайное совпадение. Например, тесты:

а= 1, b = 0, х = 3 - путь 1-2-3-6, условия: 1 - нет, 2 - да, 3 - нет, 4 - да;

а = 2, b = 1, х = 1 - путь 1-2-3-4-5-6, условия: 1 - да, 2 - нет, 3 - да, 4 - нет

покрывают результаты всех условий, но только два из четырех результатов решений: не выполняется результат «истина» первого решения и результат «ложь» второго.

Основной недостаток метода - недостаточная чувствительность к ошибкам в логических выражениях.

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

Ручной контроль и покупка проездных карт: проблемы

К сожалению, большинству из нас приходится иметь дело с метро почти каждый день. Многое в нем может не нравиться - дело субъективное. Но вот едва ли кто-то в восторге от ставшего правилом и нормой грубого отношения контроллеров. Получая "удар" по ногам от вертушки пропускного автомата, мы еще слышим "студенческий билет!", а то еще что-нибудь такое: "Студенческий билет надо предъявлять!! Сколько можно говорить?!" Бесит, не правда ли?

Вообще какова суть ручного кoнтрoля? В чем "прикол" в таком случае так называемых автoмaтичeских карт?? Да и разве видит она фото в вашем студенческом или, может, видит до какого он действителен? Конечно, нет, да ей это и не надо!! Господи… главное - дай покричать.

Ну это эмоции. Теперь второй случай, который меня окончательно вывел и заставил порыться в законодательстве в поисках ответа и утешения. Это приобретение, точнее продление студенческого единого билета. Были у нас магнитные карты и жили мы спокойно - карта, студенческий и деньги - а тебе проленный билет.
Выдали нам смарт-карты (так называемые "умные" карты). Ладно. Взяли денег, промурыжили. Бог с ним. Но когда я пошел получать ее в первый раз, мне сказали "паспорт". Я человек терпеливый - на следующий день пришел с паспортом. Катался себе преспокойно месяц.
Настало время продлевать. Даю обычный набор: смарт-карту, студенческий, деньги и слышу "паспорт". Тут не выдержал. "Да ведь там моя фамилия и фотография!! Вот студенческий. Мало???" - удивился я. "Без паспорта не могу!!! " - был ответ.

Это же, позвольте, абсурд! Кто сказал, что студенческий не является документом, удостоверяющем личность? Хотя это вопрос, может быть, и спорный. Ну а водительское удостоверение? Да, есть указ Президента, по которому паспорт признается основным документом, удостоверяющем личность, но это вовсе не значит, что только он!

Ну да не будем сейчас разбирать эту тему - вы увидите это вовсе не нужно.

"Без паспорта не могу". Читаем ответ в Распоряжении Комитета по транспорту администрации Санкт-Петербурга от 24 июня 2002 г. N 81-р "Об утверждении Временного положения о порядке продажи, обращения, использования и контроля билетов на основе бесконтактных смарт-карт для учащихся средних специальных учебных заведений и студентов высших учебных заведений": при продаже Проездных билетов в кассах метрополитена Студенты предъявляют студенческий билет и БСК (бесконтактную смарт-карту). При чтении БСК в кассовой машине авторизуются данные о Студенте в базе данных и проверяется его право на приобретение Проездного билета (п. 3.1). Более того, это еще дополняется п. 3.12: Студенту отказывается в продаже Проездного билета на следующий срок действия и в кодировании БСК при:

Предъявлении БСК, находящейся в списке запрещенных к использованию;

При несоответствии информации в базе данных метрополитена данным предъявленных в кассу студенческого билета, БСК;

При несоответствии именных документов (студенческий билет, БСК) личности предъявителя.

Вот так! Так что теперь спокойно можете покричать и пригрозить администрацией.

Теперь "Студенческий билет надо предъявлять!! Сколько можно говорить?! ". П. 3.13 того же распоряжения дает удовлетворяющий нас ответ: Если на станции включен режим "Ручной контроль студенческих проездных билетов ", то на табло турникета загорается красный крест. В данном случае Студент обязан подойти к контролеру метрополитена, предъявить Проездной билет и после проверки пройти через пункт ручного контроля.

И кто после этого та злая тетя?? Ругайтесь в ответ! :)

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

Обладателям магнитных карт тоже не стоит расстраиваться. Для них действует Распоряжение Комитета по транспорту администрации Санкт-Петербурга от 27 апреля 2002 г. N 45-р "О совершенствовании порядка продажи и использования проездных билетов для учащихся и студентов". Здесь, приобретая магнитную карту в первый раз нужен паспорт (п. 2.2), а в последующие уже нет (п. 2.3)! Вот только с этой картой, к сожалению, уже придется предъявлять студенческий билет в наземном транспорте и при ручном контроле в метро (пп. 3.1 и 3.2).

Вот так. Знай свои права и защищай себя… гневными криками и угрозами. ;)

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

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

и выходные данные. При динамическом - выполняют ручное тестирование., т. е. вручную моделируют процесс выполнения программы на заданных исходных данных.

Исходными данными для таких проверок являются: техническое задание, спецификации, структурная и функциональная схемы программного продукта, схемы отдельных компонентов

и т. д., а для более поздних этапов - алгоритмы и тексты программ, а также тестовые наборы.

Доказано, что ручной контроль способствует существенному увеличению производительности и повышению надежности программ и с его помощью можно находить от 30 до 70 % ошибок логического проектирования и кодирования. Следовательно, один или несколько из методов ручного контроля обязательно должны использоваться в каждом программном проекте.

Основными методами ручного контроля являются:

Инспекции исходного текста,

Сквозные просмотры,

Проверка за столом,

Оценки программ.

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

Участникам группы заранее выдается листинг программы и спецификация на нее;

Программист рассказывает о логике работы программы и отвечает на вопросы инспекторов;

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

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

I. Контроль обращений к данным

Все ли переменные инициализированы?

Не превышены ли максимальные (или реальные) размеры массивов и строк?


Не перепутаны ли строки со столбцами при работе с матрицами?

Присутствуют ли переменные со сходными именами?

Используются ли файлы? Если да, то при вводе из файла проверяется ли завершение файла?

Соответствуют ли типы записываемых и читаемых значений?

Использованы ли нетипизированные переменные, открытые массивы, динамическая память? Если да, то соответствуют ли типы переменных при «наложении» формата? Не выходят ли индексы за границы массивов?

2. Контроль вычислений


Правильно ли записаны выражения (порядок следования операторов)?

Корректно ли выполнены вычисления над неарифметическими переменными?

Корректно ли выполнены вычисления с переменными различных типов (в том числе с использованием целочисленной арифметики)?

Возможно ли переполнение разрядной сетки или ситуация машинного нуля?

Соответствуют ли вычисления заданным требованиям точности?

Присутствуют ли сравнения переменных различных типов?

3. Контроль передачи управления

Будут ли корректно завершены циклы?

Будет ли завершена программа?

Существуют ли циклы, которые не будут выполняться из-за нарушения условия входа? Корректно ли продолжатся вычисления?

Существуют ли поисковые циклы? Корректно ли отрабатываются ситуации «элемент найден»

и «элемент не найден»?

4. Контроль межмодульных интерфейсов

Соответствуют ли списки параметров и аргументов по порядку, типу, единицам измерения?

Не изменяет ли подпрограмма аргументов, которые не должны изменяться?

Не происходит ли нарушения области действия глобальных и локальных переменных с одинаковыми именами?

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

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

Участникам группы заранее выдают листинг программы и спецификацию на нее;

Участникам заседания предлагают несколько тестов;

Участники заседания мысленно выполняют каждый тест в соответствии с логикой программы, при этом состояние программы (значения переменных) отслеживается на бумаге или доске;

При необходимости программисту задают вопросы о логике проектирования и принятых допущениях.

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


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

Такая оценка выполняется следующим образом. Выбирается программист, который должен выполнять обязанности администратора процесса. Администратор набирает группу от шести до 20-ти участников, которые должны заниматься разработкой сходных программ. Каждому участнику предлагается представить для рассмотрения две программы, с его точки зрения - наилучшую и наихудшую. Отобранные программы случайным образом распределяются между участниками. Им дают по четыре программы - две наилучшие и две наихудшие, но не говорят, какие программы плохие, а какие - хорошие. Программист просматривает эти программы и заполняет анкету, в которой оценивает качество программ по семибалльной шкале.

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



Рассказать друзьям