Суд, правоохранительные органы и органы юстиции

Тема 1

СОДЕРЖАНИЕ

Таблица 28.2. Примеры несовместимости и противоречивости значений данных

Loop

-- Get получает значения переменных из окружения системы Get (Time-on, Time-off, Time, Setting, Temp, Switch); case Switch of

when On => if Heating-status = off then

Switch-heating; Heating-status:= on; end if;

when Off=> if Heating-status = on then

Switch-heating; Heating-status:=off;

end if;

when Controlled =>

if Time >= Time-on and Time <= Time-off then

if Temp > Setting and Heating-status = on then

Switch-heating; Heating-status = off;

elsif Temp < Setting and Heating-status = off then

Switch-heating; Heating-status:= on;

end if;

end if;

end case;

end loop;

В процессе реструктуризации программ можно также упрощать сложные условные операторы. В листинге 28.3 показан пример упрощения условного оператора, содержавщего логический оператор отрицания not.

Листинг 28.3. Упрощение условия

-- Сложное условие

if not (A > В and (С < D or not (E > F)))…

-- Упрощенное условие if А <= В and (С <= D or Е > F)..

В известной работе [50] доказано, что любую программу можно переписать с помощью простых условных операторов if-then-else и циклов while-loop, при этом можно исключить все безусловные операторы перехода. Эта теорема является основой автоматической структуризации программ. Этапы такого преобразования программ показаны на рис 28. Сначала программа представляется в виде ориентированного граф, после чего создается структурированная программа без использования операторов перехода.

Рис. 28.6. Автоматическая реструктуризация программ

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

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

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

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

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

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

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

• интенсивность сбоев в работе программы;

• процентное соотношение кода, измененного на протяжении года;

• сложность компонентов.

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

28.4. Создание программных модулей

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

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

1. Абстракции данных. Это абстрактные типы данных, которые создаются путем объединения данных с компонентами их обработки. Этот тип модулей рассмотрен в разделе 28.4.1.

2. Аппаратные модули. Тесно связаны с абстракцией данных и объединяют все функ­ции, управляющие отдельными аппаратными устройствами.

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

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

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

28.4.1. Создание абстракций данных

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

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

Чтобы преобразовать общие используемые области данных в объекты или абстрактные типы данных, следует выполнить ряд действий.

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

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

3. Осуществить поиск всех ссылок на данные с использованием системы просмотра
программ или генератора перекрестных ссылок. Заменить эти ссылки соответствующими функциями.

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

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

28.5. Изменение данных

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

обеспечении. Изменение данных — это процесс анализа и реорганизации структуры данных, а иногда еще и изменение значений системных данных.

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

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

2. Программные ограничения. При разработке систем многие программисты включают в программы ограничения на количество обрабатываемых данных. Но согласно современным требованиям программы должны обрабатывать значительно больше данных, чем было предусмотрено изначально. Именно для устранения подобных ограничений может понадобиться изменение данных. В книге [296] приведен при­мер системы управления ценными бумагами, которая была способна обрабатывать до 99 транзакций за одну операцию. В компании, где эта система использовалась, осуществлялось управление 2000 транзакций, что вызвало необходимость в созда­нии 23 копий системы. По этой причине впоследствии компания прияла решение о реинжениринге системы и изменении данных.

3. Эволюция системной архитектуры. При переходе с централизованной системы на распределенную ядром архитектуры должна стать система управления данными с удаленным доступом. Для перемещения данных из отдельных файлов на сервер системы управления базой данных (СУБД) может потребоваться большая работа по изменению этих данных.

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

Таблица 28.1. Методы изменения данных

Метод Описание
Чистка данных Устраняется дублирование, стирается избыточная информация, ко всем записям применяется единый формат. Все это, как правило, не влечет за собой никаких изменений в программах
Расширение возможностей обработки данных Данные и связанные с ними программы подвергаются реинженирингу для устранения ограничений на обработку данных. Например, уве­личивается длина полей, увеличиваются верхние границы массивов и т.п. Также вносятся соответствующие изменения в программы. После этого данные обычно перезаписываются и очищаются
Миграция данных Данные переводятся под управление современной СУБД. Этот под­ход проиллюстрирован на рис. 28.7

Рис. 28.7. Миграция данных

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

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

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

Проблема организации записей. Записи, относящиеся к одному и тому же элементу, в разных программах могут быть представлены по-разному. Обычно эта проблема возникает с такими языками программирования, как COBOL, где физическая организация записей определяется программистом. В языках типа C++ или Java такой проблемы не существует, так как физической организацией записей занимается компилятор

4. Проблема констант. Константы (литеральные величины), например налоговые ставки,
частоопределены и программе, что затрудняет создание символьных ссылок на них.

5. Отсутствие словаря данных. Часто отсутствует словарь данных, в котором отображе­
ны применяемые имена, их представления и использование.

Если определения данных несовместимы или противоречивы, их значения могут храниться и обрабатываться некорректно. Примеры несовместимости и противоречивости данных приведены в табл. 28.2, взятой из [293]. После изменения определений данных их значения преобразуются так, чтобы соответствовать новой структуре данных.

Данные Описание
Различные значения по умолчанию В различных программах одному и тому же логическому элементу данных могут быть присвоены разные значения по умолчанию. Это вызывает трудности в работе программ, которые обрабатывают эти данных. Особая проблема: недопустимое значение присваивается по умолчанию как допустимое
Различные единицы измерения Разные программы представляют одинаковую информацию в разных единицах измерения. Например, в США и Великобритании вес может измеряться в фунтах (если взять более старую программу) и в килограммах (в современных системах). Проблема такого же рода возникла в Европе с введением единой валюты. Пришлось изменять системы, рассчитанные на работу с национальной валютой, для того чтобы они смогли работать с евро
Несовместимость правил проверки данных В разных программах различные правила проверки данных. Данные, приемлемые для одной программы, могут не восприниматься другой. Особая проблема возникает с архивными данными, которые не обновлялись в соответствии с изменениями правил проверки
Противоречия в семантике представлений Программы могут присваивать значения в зависимости от способа представления элементов. Например, в некоторых программах текст в верхнем регистре означает адрес. Программы используют различные соглашения о представлении данных и поэтому могут не воспринимать данные, хотя они и будут верными
Несогласованность при обработке отрицательных величин В некоторых программах величинам, которые должны быть всегда положительными, не может быть присвоено отрицательное значение. Другие программы при предъявлении отрицательных величин могут конвертировать их в положительные и т.д.

Перед изменением данных необходимо провести подробный анализ программ, которые работают с этими данными. Главная цель анализа — определение в программе декла­раций функций, выявление литеральных величин, требующих заменены на именованные константы, поиск встроенных правил проверки данных. При анализе помогают такие средства, как анализаторы перекрестных ссылок и сопоставление с образцом. Для фикса­ции мест ссылок на элементы данных и изменений, которые там требуются, удобно соз­дать набор таблиц регистрации изменений, которые содержат описание всех этапов из­менения данных. Схема процесса изменения данных показана на рис. 28.8.

Рис. 28.8. Процесс изменения данных

На первом этапе процесса изменения данных модифицируются определения данных. На сами данные такая модификация не оказывает влияния. Чтобы автоматизировать этот процесс, можно использовать системы сопоставления с образцом, например awk [5], которые помогают находить и заменять определения, или же можно создать определения данных [326] и использовать их для управления средствами конвертирования данных. Несмотря на это, ручной работы над данными практически невозможно избежать. Если ставится цель улучшить понимаемость определений данных, то работу можно остановить на этой стадии. Если же имеются проблемы со значениями данных, описанные выше, следует начать второй этап процесса изменения данных.

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

КЛЮЧЕВЫЕ ПОНЯТИЯ

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

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

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

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

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

• Разбиение на модули реорганизует исходные программы в совокупность модулей, объединяющих

группу взаимосвязанных элементов. Благодаря этому программы легче понимать и изменять.

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

• Если данные нужно преобразовать в новый формат, стоимость замены данных резко возрастает.

Упражнения

28.1. В каких случаях необходимо заменить старое ПО новым вместо его реинжениринга?

28.2. Сравните управляющие структуры (циклы и условные операторы) в двух любых известных вам языках программирования. Кратко опишите процесс перевода управляющих структур с одного языка на другой.

28.3. Переведите процедуру, приведенную в листинге 28.4, в эквивалентную структурированную, выполнив все необходимые для этого действия.

28.4. Напишите ряд указаний по определению модулей в неструктурированной программе.

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

словарь данных для этих имен.

28.6. Какие трудности возникнут при переносе данных из СУБД одного типа в СУБД другого типа

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

ориентированную)?

28.7. Объясните, почему невозможно восстановить системную спецификацию путем автоматического

анализа исходного кода системы.

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

28.9. Проблема 2000 года (когда даты представлены с помощью двух цифр) стала одной из основных

причин для многих организаций внести коррективы в сопровождение программ. Как это повлияло

на процесс изменения данных?

Листинг 28.4. Неструктурированная программа

routine BS (К, Т, S, L)

В:= 1

NXT: if S >= В goto CON

L = -1

goto STP

CON: L:= INTEGER(B / S)

L:= INTEGER((В + S) / 2)

If T (L) = К then return

If T (L) > К then goto GRT

В:= L + 1

goto NXT

GRT: S:= L-lgoto NXT STP: end

Тема 1. ПРЕДМЕТ, СИСТЕМА И ОСНОВНЫЕ ПОНЯТИЯ УЧЕБНОЙ ДИСЦИПЛИНЫ «СУДОУСТРОЙСТВО»

1.1. Предмет, система и значение курса «Судоустройство». Его соотношение с другими юридическими дисциплинами

1.2. Правоохранительная деятельность: понятие, признаки и основные направления (функции)

1.3. Суд, правоохранительные органы и органы юстиции

1.4. Концепция судебно-правовой реформы в Республике Беларусь

1.5. Правовые источники курса «Судоустройство»

Тема 2. СУДЕБНАЯ ВЛАСТЬ И ПРАВОСУДИЕ

2.1. Понятие судебной власти

2.2. Свойства (признаки) судебной власти

2.3. Символы судебной власти

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

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

Тема 3. КОНСТИТУЦИОННЫЕ ПРИНЦИПЫ СУДЕБНОЙ ВЛАСТИ

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

3.2. Принцип осуществления судебной власти только судами

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

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

3.5. Принцип гласности судебного разбирательства

3.6. Принцип состязательности и равенства сторон в процессе

3.7. Принцип обеспечения права граждан на судебную защиту

3.8. Право граждан на юридическую помощь

3.9. Презумпция невиновности

3.10. Принцип выборности и назначения судей

Тема 4. СТАТУС СУДЕЙ И НАРОДНЫХ ЗАСЕДАТEЛЕЙ

4.1. Требования, предъявляемые к кандидатам на должность судьи

4.2. Понятие правового статуса судей

4.3. Права и обязанности судей

4.4. Несменяемость судей. Приостановление и прекращение полномочий судьи

4.5. Неприкосновенность судей

4.6. Материальное и социальное обеспечение судей

4.7. Аттестация судей. Квалификационные классы судей

4.8. Дисциплинарная ответственность судей

4.9. Народные заседатели

Тема 5. СУДЕБНАЯ СИСТЕМА (ОБЩИЕ ПОЛОЖЕНИЯ)

5.1. Понятие судебной системы, ее звена и судебной инстанции

5.2. Принципы построения судебной системы. Виды судов

5.3. Становление и развитие судебной системы в Республике Беларусь

Тема 6. СУДЕБНАЯ СИСТЕМА РЕСПУБЛИКИ БЕЛАРУСЬ

6.1. Общая характеристика действующей судебной системы

6.2. Конституционный Суд Республики Беларусь

6.3. Районный (городской) суд, специализированный суд

6.4. Областной, Минский городской суды

6.5. Военные суды

6.6. Верховный Суд Республики Беларусь

6.7. Хозяйственные суды

6.8. Международный арбитражный (третейский) суд

6.9. Экономический суд СНГ

Тема 7 ОРГАНЫ СУДЕЙСКОГО СООБЩЕСТВА

7.1. Понятие органов судейского сообщества

7.2. Съезд судей и Республиканский совет судей

7.3. Конференции судей

7.4. Квалификационные коллегии судей

Тема 8. ОРГАНИЗАЦИОННОЕ И МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ДЕЯТЕЛЬНОСТИ СУДОВ

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

8.2. Роль Министерства юстиции и его органов по организационному и материально-техническому обеспечению деятельности судов. Другие его функции

8.3. Система и структура Министерства юстиции Республики Беларусь

Тема 9. ПРОКУРАТУРА

9.1. Понятие прокуратуры и история ее развития в Республике Беларусь

9.2. Задачи и направления деятельности прокуратуры

9.3. Принципы организации и деятельности прокуратуры

ПРЕДМЕТ, СИСТЕМА И ОСНОВНЫЕ ПОНЯТИЯ УЧЕБНОЙ ДИСЦИПЛИНЫ «СУДОУСТРОЙСТВО»

1.1. Предмет, система и значение курса «Судоустройство». Его соотношение с другими юридическими дисциплинами.

1.2. Правоохранительная деятельность: понятие, признаки и основные направления (функции).

1.3. Суд, правоохранительные органы и органы юстиции.

1.4. Концепция судебно-правовой реформы в Республике Беларусь.

1.5. Правовые источники курса «Судоустройство».

1.1. Предмет, система и значение курса «Судоустройство». Его соотношение с другими юридическими дисциплинами

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

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

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

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

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

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

Связь курса «Судоустройство» с курсом «Административное право» определяется тем, что последний изучает исполнительно-распорядительную деятельность органов исполнительной власти государства. К этим органам относится и часть правоохранительных органов (Министерство юстиции, Министерство внутренних дел и др.).

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

Определенная связь существует между курсом «Судоустройство» и курсами «Общая теория государства и права», «История государства и права Беларуси». Это обусловлено тем, что изучение многих вопросов организации и деятельности суда и правоохранительных ор­ганов, истории их становления и развития требует от студентов общетеоретических и исторических знаний.

1.2. Правоохранительная деятельность: понятие, признаки и основные направления (функции)

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

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

Правоохранительной деятельности присущ ряд специфических черт:

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

- правоохранительная деятельность осуществляется только на основании предписаний нормативных правовых актов, а также в установленной процессуальной форме;

- правоохранительная деятельность осуществляется специально уполномоченными на то субъектами - судами и правоохранительными органами;

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

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

В зависимости от стоящих целей и задач правоохранительная деятельность подразделяется на ряд направлений (функций). К числу таких направлений относятся:

1) судебный контроль за конституционностью нормативных правовых актов в государстве; 2) правосудие; 3) организационное и материально-техническое обеспечение деятельности судов и управление в области юстиции; 4) прокурорский надзор; 5) выявление и расследование преступлений; 6) охрана общественного порядка и обеспечение государственной безопасности; 7) оказание юридической помощи и юридических услуг физическим и юридическим лицам и иным субъектам правоотношений.

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

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

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

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

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: