Диплом: Автоматизация отдела техподдержки компании "UMAG"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
86
ЗАКЛЮЧЕНИЕ
Проект разработки информационной системы, автоматизирующей учет
заявок, осуществлялся для ТОО «UMAG». Организация на протяжении
десятилетий предоставляет услуги автоматизации розничной торговли в Москве
и Московской области. Рассмотренные показатели деятельности организации за
пять лет говорят о положительной динамике развития, а снижение чистой
прибыли в некоторых периодах были связаны с инвестированием в модернизацию
магистральной сети предприятия.
Компания имеет линейную организационную структуру, которая включает
в себя органы управления и структурные подразделения организации. Проект
автоматизации охватывает ряд отделов, к которым относятся: call-центр, ИТ-
отдел, монтажный и сервисный отделы.
На основании анализа бизнес-процессов предприятия было выявлено, что
«узким местом» является процесс учета заявок от клиентов. В существующей
организации бизнес-процесса заявки передаются с помощью системы
мгновенного обмена сообщениями, что делает процесс мало контролируемым, а
такое представление перечня заявок является сложным для восприятия
сотрудниками.
Прежде чем перейти к разработке программного обеспечения были
проанализированы трудозатраты на осуществление бизнес-процесса по текущей
схеме и после автоматизации. В результате проведенного анализа было выявлено
снижение трудозатрат после внедрения программного обеспечения. Затем был
проанализирован рынок программного обеспечения для автоматизации учета
заявок. Однако, представленные на рынке системы не подходили по выделенным
критериям, главными их которых являлись кросс-плаформенность,
функциональность и надежность. Поэтому было принято решение о разработке
программного обеспечения силами сотрудников организации согласно стратегии
автоматизации «по участкам». Разработка программного обеспечения
осуществлялась согласно стандарту ГОСТ Р ИСО/МЭК 12207-2010
«Информационная технология. Системная и программная инженерия. Процессы
жизненного цикла программных средств» и спиральной модели жизненного
цикла. А внедрение информационной системы осуществлялось согласно
87
стратегии «узкое место».
На основании документооборота процесса было описано информационное
обеспечение. Согласно этому описанию была разработана информационная
модель и база данных информационной системы. Затем был осуществлен выбор
программного обеспечения для поставленной задачи, к которому относятся:
серверная операционная система Linux, операционная система клиентских ПК
Windows 10, среда программирования Java и СУБД MySQL.
В ходе проектирования системы была дана характеристика входной,
выходной, оперативной и справочной информации и созданы макеты экранных
форм. Также были перечислены функции системы и описан сценарий диалога
пользователя с проектируемой системой. Поскольку система должна иметь
модульную структуру, были описаны ее модули и приведены алгоритмы их
работы.
В результате проделанной работы была разработана информационная
система, автоматизирующая учет заявок техподдержки. Далее было проведено
тестирование системы, в ходе которого была введена входная, справочная и
оперативная информация и сформирована результатная информация. Введенные
данные отображались на формах приложения корректно, результатная
информация также была рассчитана корректно.
Важным этапом в оценке разработанной системы являлся расчет
показателей экономической эффективности проекта. Для оценки экономической
эффективности проекта был выбран метод оценки затрат на осуществление
бизнес-процесса по существующей схема и после внедрения программного
обеспечения с последующим сравнением результатов. Для этого были рассчитаны
трудовые и стоимостные затраты на осуществление процесса учета заявок.
Согласно проведенным расчетам, внедрение информационной системы ведет к
снижению трудовых затрат на 32% (270 человеко-часов в год) и стоимостных
затрат на 44% (152 500 рублей в год). Расчет срока окупаемости проекта показал,
что проект разработки информационной системы учета заявок окупается в
течении 1,2 года с момента внедрения системы. На основании проведенных
расчетов можно сделать вывод о том, что проект разработки информационной
системы учета заявок является эффективным для ТОО «UMAG».
88
89
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. ГОСТ 34.601-90 «Информационная технология. Комплекс
стандартов на автоматизированные системы. Автоматизированные системы.
Стадии создания».
2. ГОСТ Р ИСО/МЭК 12207-2010. Информационная технология.
Системная и программная инженерия. Процессы жизненного цикла программных
средств.
3. Абросимова М.А. Информационные технологии: Учебное пособие. -
М.: КноРус, 2015. - 368 стр.: ил.
4. Балдин К.В. Информационные технологии в менеджменте. - М.: ИЦ
Академия, 2016. - 328 с.
5. Васильков А.В. Информационные системы и их безопасность. – М.:
Форум, 2014. – 544 с.
6. Вдовин В.М. Предметно-ориентированные информационные
системы. - М.: Дашков и К, 2017. - 388 с.
7. Вендров А.М. Проектирование программного обеспечения
экономических информационных систем / А.М. Вендоров. М.: «Финансы и
статистика», 2014 г. - 347 с.
8. Гаврилов М.В. Информатика и информационные технологии. - М.:
Юрайт, 2016. - 378 с.
9. Гвоздева В.А. Информатика и автоматизированные
информационные системы. - М.: ИД Форум, 2014. - 544 c.
10. Голицына О.Л. Информационные технологии: Учебник. - М.: Инфра-
М, 2015. - 608 с.
11. Голицына О.Л., Попов И.И. Базы данных. Учебное пособие. 3-е изд.,
перераб. и доп. М. : ФОРУМ, 2016. 400 с.
12. Грекул В.И., Денищенко Г.Н. Проектирование информационных
систем - М.: ИУИТ, 2014 - 300 с.
13. Гришин В.Н. Информационные технологии в профессиональной
деятельности: Учебник / В.Н. Гришин. - М.: ИД ФОРУМ, НИЦ ИНФРА-М, 2016.
- 416 c.
90
14. Емельянова Н.З., Партыка Т.Л. Устройство и функционирование
информационных систем. Н. З. Емельянова, Т. Л. Партыка. Учебное пособие. М.
: ФОРУМ : НИЦ ИНФРА-М, 2015. 448 с.
15. Исаев Г.Н. Информационные системы в экономике: Учебник / Г.Н.
Исаев. - М.: Омега-Л, 2012. - 462 c.
16. Кузнецов С. Д. Базы данных. Модели и языки – М.: Бином-Пресс,
2014 г. - 720 с.
17. Маклаков С.В. BPWin и ERWin. CASE-средства разработки
информационных систем / С.В. Маклаков. М.: Диалог-МИФИ, 2015. - 256 с.
18. Максимов, Н.В. Современные информационные технологии:
Учебное пособие / Н.В. Максимов, Т.Л. Партыка, И.И. Попов. - М.: Форум, 2013.
- 512 c.
19. Мельников В.П. Информационная безопасность и защита
информации, В.П. Мельников, М.: Академия, 2016, - 336 с.
20. Робсон М., Уллах Ф. Практическое руководство по реинжинирингу
бизнес-процессов / М. Робсон, Ф. Уллах. М.: Аудит, 2014 г. – 280с.
21. Ткалич Т.М. Экономическая эффективность информационных
систем: теория и практические приложения / Т.М. Ткалич. - Минск : Право и
экономика, 2016. - 314 с.
22. Черемных С.В., Семенов И.О., Ручкин В.С. Структурный анализ
систем: IDEF-технологии / С.В. Черемных, И.О. Семенов, В.С. Ручкин. М.:
Финансы и статистика, 2014 г. - 208 с.
23. Шивцова А.М. Введение в автоматизированное проектирование:
учебное пособие / А.М. Шивцова, П.Я. Пантюхин. - Москва : БИНОМ.
Лаборатория знаний, 2017. - 283 с.
24. Naumen Service Desk: управление ИТ и сервисным обслуживанием
[Электронный ресурс]: // Naumen Service Desk [Офиц. сайт].
https://www.naumen.ru/products/service_desk/ (Дата обращения: 30.03.2019).
25. Simple open ticket system [Электронный ресурс]: // Open supports
[Офиц. сайт]. https://www.opensupports.com/ (Дата обращения: 30.03.2019).
26. OkDesk: система учета и управления заявками [Электронный
ресурс]: // OkDesk [Офиц. сайт]. https://okdesk.ru/ (Дата обращения: 30.03.2019).
91
27. PostgreSQL: About [Электронный ресурс]: // PostgreSQL [Офиц.
сайт]. https://www.postgresql.org/ (Дата обращения: 30.03.2019).
92
ПРИЛОЖЕНИЕ 1
Листинг программного кода
Модуль авторизации
public class AdminActivity extends AppCompatActivity {
ListView userList;
DatabaseHelper databaseHelper;
SQLiteDatabase db;
Cursor userCursor;
SimpleCursorAdapter userAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_admin);
userList = (ListView)findViewById(R.id.list);
userList.setOnItemClickListener(new
AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int
position, long id) {
Intent intent = new Intent(getApplicationContext(),
UserActivity.class);
intent.putExtra("id", id);
startActivity(intent);
}
});
databaseHelper = new DatabaseHelper(getApplicationContext());
}
@Override
public void onResume() {
super.onResume();
// открываем подключение
db = databaseHelper.getReadableDatabase();
//получаем данные из бд в виде курсора
userCursor = db.rawQuery("select * from "+ DatabaseHelper.TABLE,
null);
// определяем, какие столбцы из курсора будут выводиться в ListView
try {
String[] headers = new String[] {DatabaseHelper.COLUMN_NAME,
DatabaseHelper.COLUMN_YEAR, DatabaseHelper.COLUMN_ADDRESS,
DatabaseHelper.COLUMN_PHIO, DatabaseHelper.COLUMN_PHONE};
// создаем адаптер, передаем в него курсор
userAdapter = new SimpleCursorAdapter(this,
R.layout.three_line_list_items,
userCursor, headers, new int[]{R.id.head, R.id.pay,
R.id.info}, 0);
userList.setAdapter(userAdapter);
} catch (Exception e){
String[] headers = new String[] {DatabaseHelper.COLUMN_NAME,
DatabaseHelper.COLUMN_YEAR};
// создаем адаптер, передаем в него курсор
userAdapter = new SimpleCursorAdapter(this,
R.layout.three_line_list_items,
userCursor, headers, new int[]{R.id.head, R.id.pay,
R.id.info}, 0);
userList.setAdapter(userAdapter);
}
93
}
// по нажатию на кнопку запускаем UserActivity для добавления данных
public void add(View view){
Intent intent = new Intent(this, UserActivity.class);
startActivity(intent);
}
public void lookHelp(View view){
Intent intent = new Intent(this, HelpActivity.class);
startActivity(intent);
}
@Override
public void onDestroy(){
super.onDestroy();
// Закрываем подключение и курсор
db.close();
userCursor.close();
}
}
public class DatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "homestore.db"; // название
бд
private static final int SCHEMA = 1; // версия базы данных
static final String TABLE = "users"; // название таблицы в бд
// названия столбцов
public static final String COLUMN_ID = "_id";
public static final String COLUMN_NAME = "name";
public static final String COLUMN_YEAR = "year";
public static final String COLUMN_ADDRESS = "addres";
public static final String COLUMN_PHONE = "phone";
public static final String COLUMN_PHIO = "phio";
//База запросов
static final String TABLE1 = "help";
public static final String COLUMN_ID1 = "_id";
public static final String COLUMN_NAME1 = "name";
public static final String COLUMN_SURNAME1 = "surname";
public static final String COLUMN_USERNAME1 = "username";
public static final String COLUMN_TYPE = "type";
public static final String COLUMN_ABOUT = "about";
public static final String COLUMN_COMPLETED = "complited";
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, SCHEMA);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE users (" + COLUMN_ID
+ " INTEGER PRIMARY KEY AUTOINCREMENT," + COLUMN_NAME
+ " TEXT, " + COLUMN_ADDRESS + " TEXT, " + COLUMN_PHONE + "
TEXT, " + COLUMN_PHIO
+ " TEXT, " + COLUMN_YEAR + " TEXT);");
//About
db.execSQL("CREATE TABLE help (" + COLUMN_ID1
+ " INTEGER PRIMARY KEY AUTOINCREMENT," + COLUMN_NAME1
+ " TEXT NOT NULL, " + COLUMN_SURNAME1 + " TEXT NOT NULL, "
+ COLUMN_USERNAME1
+ " TEXT NOT NULL, " + COLUMN_TYPE + " TEXT NOT NULL, " +
94
COLUMN_ABOUT + " TEXT NOT NULL, "
+ COLUMN_COMPLETED + " TEXT NOT NULL);");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int
newVersion) {
db.execSQL("DROP TABLE IF EXISTS "+TABLE);
onCreate(db);
db.execSQL("DROP TABLE IF EXISTS "+TABLE1);
onCreate(db);
}
}
public class HelpActivity extends AppCompatActivity {
ListView userList;
DatabaseHelper databaseHelper;
SQLiteDatabase db;
Cursor userCursor;
SimpleCursorAdapter userAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_help);
userList = (ListView)findViewById(R.id.list);
userList.setOnItemClickListener(new
AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int
position, long id) {
Intent intent = new Intent(getApplicationContext(),
HelpLookActivity.class);
intent.putExtra("id", id);
startActivity(intent);
}
});
databaseHelper = new DatabaseHelper(getApplicationContext());
}
@Override
public void onResume() {
super.onResume();
// открываем подключение
db = databaseHelper.getReadableDatabase();
//получаем данные из бд в виде курсора
userCursor = db.rawQuery("select * from "+ DatabaseHelper.TABLE1,
null);
// определяем, какие столбцы из курсора будут выводиться в ListView
try {
String[] headers = new String[] {DatabaseHelper.COLUMN_NAME1,
DatabaseHelper.COLUMN_SURNAME1, DatabaseHelper.COLUMN_TYPE,
DatabaseHelper.COLUMN_COMPLETED};
// создаем адаптер, передаем в него курсор
userAdapter = new SimpleCursorAdapter(this,
R.layout.help_line_items,
userCursor, headers, new int[]{R.id.head, R.id.pay,
R.id.info, R.id.appac}, 0);
userList.setAdapter(userAdapter);
} catch (Exception e){
String[] headers = new String[] {DatabaseHelper.COLUMN_NAME1,
DatabaseHelper.COLUMN_SURNAME1, DatabaseHelper.COLUMN_TYPE,
95
DatabaseHelper.COLUMN_COMPLETED};
// создаем адаптер, передаем в него курсор
userAdapter = new SimpleCursorAdapter(this,
R.layout.help_line_items,
userCursor, headers, new int[]{R.id.head, R.id.pay,
R.id.info, R.id.appac}, 0);
userList.setAdapter(userAdapter);
}
}
// по нажатию на кнопку запускаем UserActivity для добавления данных
public void add(View view){
Intent intent = new Intent(this, HelpLookActivity.class);
startActivity(intent);
}
@Override
public void onDestroy(){
super.onDestroy();
// Закрываем подключение и курсор
db.close();
userCursor.close();
}
}
public class HelpLookActivity extends AppCompatActivity {
TextView nameBox;
TextView infoBox;
TextView payBox;
TextView adres;
TextView phone;
DatabaseHelper sqlHelper;
SQLiteDatabase db;
Cursor userCursor;
long userId=0;
Spinner spinner;
String[] active = {обработке", "Выполнено", "Отложено", "Не
выполнимо"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_help_look);
nameBox = (TextView) findViewById(R.id.name);
payBox = (TextView) findViewById(R.id.paymnt);
adres = (TextView) findViewById(R.id.adres);
phone = (TextView) findViewById(R.id.phone);
infoBox = (TextView) findViewById(R.id.info);
spinner = (Spinner) findViewById(R.id.active);
// Создаем адаптер ArrayAdapter с помощью массива строк и
стандартной разметки элемета spinner
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, active);
// Определяем разметку для использования при выборе элемента
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_it
em);
// Применяем адаптер к элементу spinner
spinner.setAdapter(adapter);
sqlHelper = new DatabaseHelper(this);

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)