Организационная структура программы это

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

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

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

1.19 Типы организационных структур

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

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

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

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

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

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

Функциональная организация (Functional Organization) ( рис. 1.9). Иерархически выстроенная организация, в которой у каждого сотрудника есть один прямой начальник, сотрудники разделены на группы (отделы) по областям специализации. Каждая группа (отдел) управляется одним человеком, имеющим компетенцию в данной области — функциональным руководителем (руководителем отдела).

Типы организационных структур

Линейно-функциональная структура организации


Рис. 1.9. Линейно-функциональная структура организации

Матричная организация (Matrix Organization) ( рис. 1.10) — любая организационная структура, в которой Руководитель проекта разделяет с функциональными руководителями (руководителями отделов) ответственность по заданию приоритетов и управлению работой лиц, назначенных на исполнение проекта.

Матричная структура организации


Рис. 1.10. Матричная структура организации

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

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

Читайте также:
В аграрной программе перенесение центра тяжести на советы батрацких депутатов

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

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

Основные функции отдела Консультаций и настроек ИС: настройка модулей ИС с использованием готовых алгоритмов, экранных форм и отчетов, оказание консультаций пользователям ИС.

Основные функции отдела Маркетинга и продаж: продажи ИС и услуг по ее внедрению.

Источник: intuit.ru

Организационная структура программы

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

В нашей программе будем иметь: для класса ind — файлы index.hpp и index.cpp, для класса akt — akt.hpp и akt.cpp, для класса cena — cena.hpp и cena.cpp, для класса ved — vedom.hpp и vedom.cpp.

Файл управления (upr.cpp) содержит внешние функции (main, menu, podmenu), необходимые для управления программой.

3.3Проектирование файлов интерфейсов классов. Лекция № 13. Файл интерфейса базового класса

Спроектируем базовый класс ind. Поместим index и kol в часть private, т.к. они используется только элементами-функциями данного класса, а im_f и элементы-функции — в часть public, т.к. они используются в классах akt, cena, ved.

Спроектируем прототипы элементов-функций класса ind:

  • void init_ind(int,char*); — инициализирует (создает) элемент индексного массива; принимает номер записи и значение ключа записи;
  • void init_kol(int); — инициализирует кол-во элементов массива;
  • int dob_ind(char*); — поиск номера добавляемой записи; принимает значение ключа записи, возвращает номер записи файла;
  • int poisk_ind(char*,int,int — поиск номера искомой записи; принимает значение ключа записи, индекс элемента начала поиска; возвращает номер записи файла и соответствующий индекс элемента;
  • void cor_ind(int,char*); — корректирует элемент индексного массива; принимает индекс элемента и значение ключа записи.

//файл интерфейса класса ind-index.hpp

#ifndef index_hpp

#define index_hpp

const int max_mass=100;

const int max_pole=10;

class ind //определение базового класса

private: //закрытые элементы класса

struct tip_index //индексный массив

char kluch[max_pole]; //ключ записи

int nomer; //номер записи в файле данных

> index[max_mass];

int kol; //кол-во элементов индексного массива

public: //защищенные элементы класса

char* imf; //имя файла данных

ind(char* im):imf(im) //конструктор базового класса

void init_ind(int,char*); //инициализация элемента массива

void init_kol(int); //инициализ. количества элементов

int dob_ind(char*); //добавление нового элемента

int poisk_ind(char*,int,int//поиск элемента массива

void cor_ind(int,char*); //корректировка массива

Файлы интерфейсов производных классов

Рассмотрим производные классы akt и cena. Элементы-данные этих классов наследуются классом ved, и поэтому, поместим их в часть protected. Так как элементы-функции formecran, vvod, vyvod вызываются только функциями данного класса, разместим их в части private.

Элементы-функции init, sozdanie, correct будут вызываться из файла управления через объект класса, и, согласно правилам доступа, должны быть расположены в части public. Элементы-функции zapis_zap и chtenie_zap используются функциями этих классов, а также — класса ved. Поэтому, поместим их в часть protected.

//файл интерфейса класса akt — akt.hpp

#ifndef akt_hpp

#define akt_hpp

#include «index.hpp»

class akt : public ind //определение производного класса akt

protected: //защищенные элементы класса

char tabn[10]; //табельный номер рабочего

char fio[30]; //ф.и.о.

char vid[10]; //вид выполненной работы

Читайте также:
Программа для настройки времени на компьютере

float objem; //объем выполненной работы

public: //открытые элементы класса

akt(char* im):ind(im) //конструктор производного класса akt

tabn[0]=’’; //и инициализирует собственные элементы

> //прототипы элементов-функций класса:

void init(); //инициализация индексного массива

void sozdanie(); //ввод новых документов и запись в файл

void correct(int); //корректировка (замена, удаление)

void zapis_zap(int); //запись записи в файл

void chtenie_zap(int);//чтение записи из файла

private: //закрытые элементы-функции класса

void formecran(char* podmenu);//вывод формы документа

void vvod(); //ввод содержимого документа

void vyvod(); //вывод содержимого документа

Может возникнуть вопрос — почему выбран атрибут наследования public? Если выбрать private, то элементы-функции класса ind становятся в классах akt и cena private. Доступ к ним в этих классах есть, но они становятся закрытыми для дальнейшего наследования и недоступны в классе ved. А ведь функция sozdanie класса ved, выполняющая обработку файлов, должна использовать элементы класса ind. Именно поэтому, необходимо использовать public.

//файл интерфейса класса cena — cena.hpp

#ifndef cena_hpp

#define cena_hpp

#include «index.hpp»

class cena : public ind //определение производного класса cena

protected: //защищенные элементы класса

char vid[10]; //вид работы

char naim[30]; //наименование работы

float rascenka; //расценка работы

public: //открытые элементы класса

cena(char* im):ind(im)//конструктор

vid[0]=’’; //и инициализирует собственные элементы

> //прототипы элементов-функций класса:

void init(); //инициализация индексного массива

void sozdanie(); //ввод новых документов и запись в файл

void correct(int); //корректировка (замена, удаление)

void zapis_zap(int); //запись записи в файл

void chtenie_zap(int);//чтение записи из файла

private: //закрытые элементы класса

void formecran(char* podmenu);//вывод формы документа

void vvod(); //ввод содержимого документа

void vyvod(); //вывод содержимого документа

Рассмотрим класс ved, являющийся производным от двух классов akt и cena. Элементы-данные класса stoim, itog и элемент-функция formecran, используемые только функциями данного класса, разместим в части private. Функция sozdanie будет вызываться из файла управления через объект класса ved, и, согласно правилам доступа, должна быть расположена в части public.

//файл интерфейса класса ved — vedom.hpp

#ifndef vedom_hpp

#define vedom_hpp

#include «akt.hpp»

#include «cena.hpp»

class ved : public akt,public cena //определение производного

private: //закрытые элементы класса

float stoim; //стоимость работы

float itog; //итоговая стоимость всех работ рабочего

public: //открытые элементы класса

ved(char* im1,char* im2):akt(im1),cena(im2)//конструктор

stoim=itog=0; //akt и cena,иниц. собственные элементы

> //прототипы элементов-функций:

void sozdanie(); //расчет и вывод документов

private: //закрытый элемент класса

void formecran(char*);//вывод формы документа

Дадим объяснение тому, почему выбран атрибут наследования public? Будем вызывать в файле управления элементы-функции классов с помощью переменной obj, объекта класса ved. Если выбрать атрибут private, то объект obj будет иметь доступ только к собственным элементам из части public (функция sozdanie), а доступ к наследуемым элементам (функции init, sozdanie, correct) будет закрыт. Следовательно, выберем атрибут public.

Источник: studfile.net

Организационная структура компании

Регина Бабужина

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

Корпорация — это организационная структура компании. Сеть офисов по миру — это организационная структура. Стартап — тоже отчасти про организационную структуру.

В основе лежит схема компании — она может быть представлена в виде диаграммы, графика, кружочков. Любой способ визуализации подойдёт. Но оргструктура — не только схема. Это ещё и описание правил работы, уставных отношений сотрудников, правил трансляции ценностей, миссии и целей компании.

Читайте также:
Как записать dvd диск программы

Давай для начала разберёмся, какими могут быть организации.

Виды организационных структур

Иерархическая структура

Иерархические отношения — когда есть прямое подчинение начальнику. Есть главный босс, у него есть вице-босс, у того — отделы, которые курируют другие боссы, и так далее. Это директивно-подчинённый тип управления, весьма привычная структура. В 20 веке такой формат лёг в основу многих предприятий, и мы наследуем его в лице крупных корпораций. Такой вид оргструктуры подходит для целевого развития.

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

Иерархическая организационная структура

Матричная структура

Матричная структура — сотрудник подчиняется нескольким руководителям: например, и руководителю проекта, и руководителю отдела. Допустим, на проект набираются сотрудники из разных отделов — и тогда становится два формальных босса. Структуру используют банки, например, «Райффайзенбанк» или корпорации, как Disney. Там сотрудники могут работать над постоянными задачами в одном отделе, а могут выбирать проекты. Происходит временная «пересборка» — в проекте оказываются люди из разных отделов и новый начальник над ними.

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

Матричная организационная структура

Дивизионная структура

На базе главной компании делают группу автономных подразделений — мини-копии неповторимого оригинала, дивизионы. Дивизион копирует общие ценности и глобальные цели, оперативно отвечает за продукт и за прибыль на местах.

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

  • Market-based дивизионная структура — несколько дивизионов могут заниматься развитием на разных рынках или ориентироваться на разные группы клиентов с опорой на положения компании. Минус — различия в маркетинговых подходах дивизионов иногда мешают достигать результатов. Например, разные дивизионы Huawei одновременно ориентируются на клиентов с маленьким бюджетом и на состоятельных.
  • Product-based дивизионная структура — каждое подразделение внутри организации посвящено определённой линейке продуктов. Минус — отсутствие синхронизации по продуктам между дивизионами. Например, Unilever — компания-гигант, которая развивает более 400 брендов параллельно.
  • Географическая дивизионная структура — сеть офисов одной компании в городе, регионе или стране. Позволяет клиентам быть ближе к продукту, подходит для масштабирования и расширения без географических ограничений. Примеры — компания Mars, Coca-Cola, General Motors с точками производства и логистики в разных странах. Минусы — возникновение риска оторванности от миссии компании.

Дивизионная организационная структура

Сетевая структура

Сетевая — гибрид матричной структуры (когда есть несколько начальников) и дивизионной (когда у компании несколько филиалов). Это сеть организаций, объединённых брендом, стилем, названием, ассортиментом. Под пример подойдёт любой сетевой магазин: у точек одинаковый стиль, формат, ассортимент, но они адаптируются под контекст и местность, корректируя долю продуктов в линейке, к примеру. Подходит под описание магазин Hhttps://weeek.net/ru/blog/organizacionnaa-struktura-kompanii» target=»_blank»]weeek.net[/mask_link]

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru