Скачиваний:
9
Добавлен:
17.06.2023
Размер:
1.6 Mб
Скачать

11.Ревунков Г.И. Проектирование баз данных [электронный ресурс]:

учебное пособие / Г.И. Ревунков. – М: МГТУ им. Н.Э. Баумана (Московский

государственный технический университет имени Н.Э. Баумана): 2009. – 20 с.

Режим доступа: http://e.lanbook.com/books/element.php?pl1_id=52390

12.Методология IDEF1X / Статьи раздела BPWin // ITteach.ru [электронный ресурс]. 2016. URL : http://itteach.ru/bpwin/metodologiya-idef1x (дата обращения 03.11.17).

13.Васильев В. С. Диаграммы классов UML / В. С. Васильев // Блог программиста [электронный ресурс]. 07.06.2017. URL : https://pro-

prof.com/archives/3212 (дата обращения 03.11.17).

14 Гущин А.Н. Базы данных [электронный ресурс]: учебно-методическое пособие / А.Н. Гущин. - Электронные текстовые данные. - М.: Директ-Медиа, 2015.

- 311 с.

15 Дьяков И.А. Базы данных. Язык SQL [электронный ресурс]: учебное пособие / И.А. Дьяков. - Электронные текстовые данные. - Тамбов: Издательство ФГБОУ ВПО «ТГТУ», 2012. - 82 с.

16 Документация для пользователей // Всемирная Группа Разработчиков

PostgreSQL. URL: http:// postgresql.ru.net/ userdocs.html (дата обращения: 03.11.17) 17 Weinberg P., Groff J., Oppel A., SQL.The Complete Reference, Third Edition. 18 Документация по фреймворку Ruby on Rails на русском языке

[Электронный ресурс] URL: http://rusrails.ru/

19 Руби С., Томас Д., Хэнссон Д. Гибкая разработка веб-приложений в среде

Rails. 4-e издание – СПб.: Питер, 2014. – 448с.

20 Проць С. Методы тестирования программного обеспечения и их сравнение./ С. Проць // Информационный портал FB.ru [электронный ресурс]. 2016. URL : http://fb.ru/article/247668/metodyi-testirovaniya-programmnogo-obespecheniya- i-ih-sravnenie-testirovanie-metodom-chernogo-yaschika-i-testirovanie-metodom- belogo-yaschika (дата обращения 03.11.17).

42

ПРИЛОЖЕНИЕ А Глоссарий

Информационные технологии (ИТ) – это процесс, состоящий из четко регламентированных правил выполнения операций над информацией,

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

Бизнес-процесс – это совокупность взаимосвязанных мероприятий или работ, направленных на создание определённого продукта или услуги для потребителей.

Клиент-серверная архитектура – вычислительная или сетевая архитектура, в

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

называемыми серверами, и заказчиками услуг, называемыми клиентами.

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

Физическая модель – логическая модель, выраженная в терминах языка описания данных конкретной СУБД.

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

Атрибут – данные, описывающие свойства сущности.

Модуль – это отдельная функционально-законченная программная единица,

которая структурно оформляется стандартным образом по отношению к компилятору и по отношению к объединению ее с другими аналогичными единицами и загрузке.

Model-View-Controller (MVC, «Модель-Представление-Контроллер», «Модель-Вид-Контроллер») — схема разделения данных приложения,

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

43

компонента: модель, представление и контроллер — таким образом, что модификация каждого компонента может осуществляться независимо.

«Черный ящик» – стратегия (метод) тестирования функционального поведения объекта (программы, системы) с точки зрения внешнего мира, при котором не используется знание о внутреннем устройстве тестируемого объекта.

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

44

ПРИЛОЖЕНИЕ Б

Модель бизнес-процесса по стандарту IDEF0

Рисунок Б.1 – Организация автоматизации учета работы сотрудников (0 уровень)

Рисунок Б.2 – Авторизация в системе (уровень 1)

45

Рисунок Б.3 –Смена пароля (уровень 2.1)

Рисунок Б.4 – Введение данных о результатах проведенной работы (уровень 3)

Рисунок Б.5 – Ввод данных (уровень 3.1)

46

Рисунок Б.6 – Ввод данных о сотруднике (уровень 311)

Рисунок Б.7 – Вывод отчета (уровень 4)

47

ПРИЛОЖЕНИЕ В

Текст модулей объектов

Листинг В.1 – Контроллеры системы

class AdminController < ApplicationController def index

end end

class AllAvariiController < ApplicationController def index

end

def search

@month_s = Date.civil(params[:start]["written_on(1i)"].to_i,params[:s tart]["written_on(2i)"].to_i, params[:start]["written_on(3i)"].to_i).month

@day_s = Date.civil(params[:start]["written_on(1i)"].to_i,params[:s tart]["written_on(2i)"].to_i, params[:start]["written_on(3i)"].to_i).day

@month_f = Date.civil(params[:finish]["written_on(1i)"].to_i,params[ :finish]["written_on(2i)"].to_i, params[:finish]["written_on(3i)"].to_i).month

@day_f = Date.civil(params[:finish]["written_on(1i)"].to_i,params[ :finish]["written_on(2i)"].to_i, params[:finish]["written_on(3i)"].to_i).day

end end

class ApplicationController < ActionController::Base protect_from_forgery with: :exception before_action :authorize

protected def authorize

unless User.find_by(id: session[:user_id])

redirect_to login_url, notice: "Пожалуйста, пройдите авторизацию"

end end end

class AvariisController < ApplicationController before_action :set_avarii, only: [:show, :edit, :update,

:destroy] def index

@avariis = Avarii.all end

def show end

def new

@avarii = Avarii.new end

def edit end

def create

@avarii = Avarii.new(avarii_params)

respond_to do |format| if @avarii.save

format.html { redirect_to @avarii, notice: 'Новая авария была успешно добавлена' }

format.json { render :show, status: :created, location: @avarii }

else

format.html { render :new }

format.json { render json: @avarii.errors, status: :unprocessable_entity }

end end

end

def update

respond_to do |format|

if @avarii.update(avarii_params)

format.html { redirect_to @avarii, notice: 'Avarii was successfully updated.' }

format.json { render :show, status: :ok, location: @avarii }

else

format.html { render :edit }

format.json { render json: @avarii.errors, status: :unprocessable_entity }

end end

end

def destroy @avarii.destroy respond_to do |format|

format.html { redirect_to avariis_url, notice: 'Avarii was successfully destroyed.' }

format.json { head :no_content } end

end

private

def set_avarii

@avarii = Avarii.find(params[:id]) end

def avarii_params params.require(:avarii).permit(:brigada_id,

:vidremonta, :result, :data, :status, :s_delete) end

end

class BrigadasController < ApplicationController before_action :set_brigada, only: [:show, :edit, :update,

:destroy]

def index

@brigadas = Brigada.all end

def show

48

end

def new

@brigada = Brigada.new end

def edit end

def create

@brigada = Brigada.new(brigada_params)

respond_to do |format| if @brigada.save

format.html { redirect_to @brigada, notice: 'Бригада была успешно добавлена.' }

format.json { render :show, status: :created, location: @brigada }

else

format.html { render :new }

format.json { render json: @brigada.errors, status: :unprocessable_entity }

end end

end

def update

respond_to do |format|

if @brigada.update(brigada_params)

format.html { redirect_to @brigada, notice: 'Бригада была успешно изменена.' }

format.json { render :show, status: :ok, location: @brigada }

else

format.html { render :edit }

format.json { render json: @brigada.errors, status: :unprocessable_entity }

end end

end

def destroy @brigada.destroy respond_to do |format|

format.html { redirect_to brigadas_url, notice: 'Бригада была успешно удалена.' }

format.json { head :no_content } end

end

private

def set_brigada

@brigada = Brigada.find(params[:id]) end

def brigada_params params.require(:brigada).permit(:nomer, :status,

:s_delete) end

end

class ExamenController < ApplicationController

before_action :set_examan, only: [:show, :edit, :update, :destroy]

def index

@examen = Examan.all end

def show end

def new

@examan = Examan.new end

def edit end

def create

@examan = Examan.new(examan_params)

respond_to do |format| if @examan.save

format.html { redirect_to @examan, notice: 'Экзамен был успешно добавлен' }

format.json { render :show, status: :created, location: @examan }

else

format.html { render :new }

format.json { render json: @examan.errors, status: :unprocessable_entity }

end end

end

def update

respond_to do |format|

if @examan.update(examan_params)

format.html { redirect_to @examan, notice: 'Экзамен был успешно обновлен' }

format.json { render :show, status: :ok, location: @examan }

else

format.html { render :edit }

format.json { render json: @examan.errors, status: :unprocessable_entity }

end end

end

def destroy @examan.destroy respond_to do |format|

format.html { redirect_to examen_url, notice: 'Экзамен был успешно удален' }

format.json { head :no_content } end

end

private

def set_examan

49

@examan = Examan.find(params[:id]) end

def examan_params params.require(:examan).permit(:sotrudnik_id,

:resultat, :data, :sleddata, :status, :s_delete) end

end

class GraficsController < ApplicationController before_action :set_grafic, only: [:show, :edit, :update,

:destroy]

def index

@grafics = Grafic.all end

def show end

def new

@grafic = Grafic.new end

def edit end

def create

@grafic = Grafic.new(grafic_params)

respond_to do |format| if @grafic.save

format.html { redirect_to @grafic, notice: 'График был успешно создан' }

format.json { render :show, status: :created, location: @grafic }

else

format.html { render :new }

format.json { render json: @grafic.errors, status: :unprocessable_entity }

end end

end

def update

respond_to do |format|

if @grafic.update(grafic_params)

format.html { redirect_to @grafic, notice: 'График был успешно обновлен' }

format.json { render :show, status: :ok, location: @grafic }

else

format.html { render :edit }

format.json { render json: @grafic.errors, status: :unprocessable_entity }

end end

end

def destroy @grafic.destroy

respond_to do |format|

format.html { redirect_to grafics_url, notice: 'График был успешно удален' }

format.json { head :no_content } end

end

private

def set_grafic

@grafic = Grafic.find(params[:id]) end

def grafic_params params.require(:grafic).permit(:sotrudnik_id, :data,

:otrabotannoevrema, :vid, :status, :s_delete) end

end

class MaxController < ApplicationController def index

end

def search

@month_s = Date.civil(params[:start]["written_on(1i)"].to_i,params[:s tart]["written_on(2i)"].to_i, params[:start]["written_on(3i)"].to_i).month

@day_s = Date.civil(params[:start]["written_on(1i)"].to_i,params[:s tart]["written_on(2i)"].to_i, params[:start]["written_on(3i)"].to_i).day

@month_f = Date.civil(params[:finish]["written_on(1i)"].to_i,params[ :finish]["written_on(2i)"].to_i, params[:finish]["written_on(3i)"].to_i).month

@day_f = Date.civil(params[:finish]["written_on(1i)"].to_i,params[ :finish]["written_on(2i)"].to_i, params[:finish]["written_on(3i)"].to_i).day

end end

class SdachaExzamenaController < ApplicationController

def index end

def search

@month_s = Date.civil(params[:start]["written_on(1i)"].to_i,params[:s tart]["written_on(2i)"].to_i, params[:start]["written_on(3i)"].to_i).month

@day_s = Date.civil(params[:start]["written_on(1i)"].to_i,params[:s tart]["written_on(2i)"].to_i, params[:start]["written_on(3i)"].to_i).day

@month_f = Date.civil(params[:finish]["written_on(1i)"].to_i,params[ :finish]["written_on(2i)"].to_i, params[:finish]["written_on(3i)"].to_i).month

@day_f = Date.civil(params[:finish]["written_on(1i)"].to_i,params[

50

:finish]["written_on(2i)"].to_i, params[:finish]["written_on(3i)"].to_i).day

end end

class SessionsController < ApplicationController skip_before_action :authorize

def new end

def create

user = User.find_by(name: params[:name])

if user and user.authenticate(params[:password]) session[:user_id] = user.id

redirect_to admin_url else

redirect_to login_url, alert: "Неверная комбинация имени и пароля"

end end

def destroy session[:user_id] = nil

redirect_to login_url, notice: "Сеанс работы завершен" end

end

class SnsController < ApplicationController before_action :set_sn, only: [:show, :edit, :update,

:destroy]

def index @sns = Sn.all

end

def show end

def new

@sn = Sn.new end

def edit end

def create

@sn = Sn.new(sn_params)

respond_to do |format| if @sn.save

format.html { redirect_to @sn, notice: 'Нарушение было успешно записано' }

format.json { render :show, status: :created, location: @sn }

else

format.html { render :new }

format.json { render json: @sn.errors, status: :unprocessable_entity }

end end

end

def update

respond_to do |format|

if @sn.update(sn_params)

format.html { redirect_to @sn, notice: 'Нарушение было успешно обновлено' }

format.json { render :show, status: :ok, location: @sn

}

else

format.html { render :edit }

format.json { render json: @sn.errors, status: :unprocessable_entity }

end end

end

def destroy @sn.destroy respond_to do |format|

format.html { redirect_to sns_url, notice: 'Нарушение было успешно удалено' }

format.json { head :no_content } end

end

private

def set_sn

@sn = Sn.find(params[:id]) end

def sn_params params.require(:sn).permit(:sotrudnik_id,

:vidnarushenium_id, :status, :s_delete) end

end

class SotrsController < ApplicationController def index

respond_to do |format| format.html format.xls

end end

def search

@month_s = Date.civil(params[:start]["written_on(1i)"].to_i,params[:s tart]["written_on(2i)"].to_i, params[:start]["written_on(3i)"].to_i).month

@day_s = Date.civil(params[:start]["written_on(1i)"].to_i,params[:s tart]["written_on(2i)"].to_i, params[:start]["written_on(3i)"].to_i).day

@month_f = Date.civil(params[:finish]["written_on(1i)"].to_i,params[ :finish]["written_on(2i)"].to_i, params[:finish]["written_on(3i)"].to_i).month

@day_f = Date.civil(params[:finish]["written_on(1i)"].to_i,params[ :finish]["written_on(2i)"].to_i, params[:finish]["written_on(3i)"].to_i).day

end end

51

Соседние файлы в папке Курсовые работы