Разработать прикладную систему ‘Склад продуктов для столовой или кафе’.

Заказать уникальную курсовую работу
Тип работы: Курсовая работа
Предмет: Проектирование баз данных
  • 31 31 страница
  • 9 + 9 источников
  • Добавлена 26.10.2023
1 496 руб.
  • Содержание
  • Часть работы
  • Список литературы
ОГЛАВЛЕНИЕ
Введение……………………………………………………………………………..3
1 Анализ предметной области……………………………………………………...4
1.1 Анализ организационной структуры автоматизируемого подразделения…. 4
1.2 Анализ функций каждого сотрудника, выделение функций, подлежащих автоматизации……………………………………………………………………….4
1.3 Анализ документооборота…………………………………………………… 4
2 Проектирование системы………………………………………………................5
2.1 Определение количества приложений и их внешняя спецификация………. 5
2.2 Разработка структуры базы данных……………………………………………9
3 Реализация системы……………………………………………………………. 11
3.1 Физическая схема базы данных……………………………………………… 11
3.2 Описание приложений, алгоритмов работы………………………………… 12
3.3 Безопасность данных…………………………………………………………. 18
4. Тестирование…………………………………………………………………… 20
4.1 Описание методики тестирования…………………………………………… 20
4.2 Оценка качества приложения……….. ……………………………………….20
Заключение…………………………………………………………………………22
Список использованных источников……………………………………………..23
Приложение А……………………………………………………………………...24


Фрагмент для ознакомления

Кей, Хорстманн Java 2. Библиотека профессионала. Том 1. Основы / Хорстманн Кей. - М.: Диалектика / Вильямс, 2022. - 368 c.Машнин, Тимур Современные Java-технологии на практике / Тимур Машнин. - М.: БХВ-Петербург, 2022. - 167 c.Роберт, Лафоре Структуры данных и алгоритмы в Java / Лафоре Роберт. - М.: Питер, 2020. - 354 c.Сеттер, Р. В. Изучаем Java на примерах и задачах / Р.В. Сеттер. - М.: Наука и техника, 2020. - 240 c.ПРИЛОЖЕНИЕАОбработчиккнопки«Печать» для выведения на печать накладной:varnavCollapsed = 0;if ($("body").hasClass("js-navExpanded")) { $("#t_Button_navControl").click(); navCollapsed = 1;};setTimeout(3000);//////// Hide //////////Hide Navigation Bar List$("#t_Header").hide();//Hide Navigation Menu$("#t_Body_nav").hide();//Hide Breadcrumb$("#t_Body_title").hide();//Hide Content Offset$("#t_Body_content_offset").hide();//Hide Report Column Edit Link$(".apex-edit-page").hide();//Hide Report Download Links$(".t-Report-links").hide();//Hide Buttons$(".t-Button").hide();//Hide Footer$(".t-Footer").hide();//////// Browser Print ////////window.print();//////// Show //////////Show Navigation Bar List$("#t_Header").show();//Show Navigation Menu$("#t_Body_nav").show();//Show Breadcrumb$("#t_Body_title").show();//Show Content Offset$("#t_Body_content_offset").show();//Show Report Column Edit Link$(".apex-edit-page").show();//Show Report Download Links$(".t-Report-links").show();//Show Buttons$(".t-Button").show();//Show Footer$(".t-Footer").show();//// Expand Left Navigation Bar If It Was Colapsed ////if ( navCollapsed == 1 ) { $("#t_Button_navControl").click();}Код создания таблиц базы данных:CREATE TABLE "DISHES" ("DISHID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, "DISHNAME" VARCHAR2(100) COLLATE "USING_NLS_COMP" NOT NULL ENABLE, "COOKINGRECIPE" VARCHAR2(1000) COLLATE "USING_NLS_COMP", CONSTRAINT "DISHES_PK" PRIMARY KEY ("DISHID") USING INDEX ENABLE ) DEFAULT COLLATION "USING_NLS_COMP"/CREATE OR REPLACE EDITIONABLE TRIGGER "BI_DISHES" before insert on "DISHES" for each row begin if :NEW."DISHID" is null then select "DISHES_SEQ".nextval into :NEW."DISHID" from sys.dual; end if; end; /ALTER TRIGGER "BI_DISHES" ENABLE/CREATE TABLE "PRODUCTS" ("PRODUCTID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, "PRODUCTNAME" VARCHAR2(100) COLLATE "USING_NLS_COMP" NOT NULL ENABLE, "PRODUCTDESC" VARCHAR2(500) COLLATE "USING_NLS_COMP", "CURRENTQUANTITY" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, CONSTRAINT "PRODUCTS_PK" PRIMARY KEY ("PRODUCTID") USING INDEX ENABLE ) DEFAULT COLLATION "USING_NLS_COMP"/CREATE OR REPLACE EDITIONABLE TRIGGER "BI_PRODUCTS" before insert on "PRODUCTS" for each row begin if :NEW."PRODUCTID" is null then select "PRODUCTS_SEQ".nextval into :NEW."PRODUCTID" from sys.dual; end if; end; /ALTER TRIGGER "BI_PRODUCTS" ENABLE/CREATE TABLE "COMPOSITIONDISH" ("RECORDID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, "DISHID" NUMBER NOT NULL ENABLE, "PRODUCTID" NUMBER NOT NULL ENABLE, "QUANTITY" FLOAT(126) NOT NULL ENABLE, CONSTRAINT "COMPOSITIONDISH_PK" PRIMARY KEY ("RECORDID") USING INDEX ENABLE, CONSTRAINT "COMPOSITIONDISH_UK1" UNIQUE ("DISHID", "PRODUCTID") USING INDEX ENABLE ) DEFAULT COLLATION "USING_NLS_COMP"/ALTER TABLE "COMPOSITIONDISH" ADD CONSTRAINT "COMPOSITIONDISH_FK_DISHES" FOREIGN KEY ("DISHID") REFERENCES "DISHES" ("DISHID") ON DELETE CASCADE ENABLE/ALTER TABLE "COMPOSITIONDISH" ADD CONSTRAINT "COMPOSITIONDISH_FK_PRODUCTS" FOREIGN KEY ("PRODUCTID") REFERENCES "PRODUCTS" ("PRODUCTID") ON DELETE CASCADE ENABLE/CREATE OR REPLACE EDITIONABLE TRIGGER "BI_COMPOSITIONDISH" before insert on "COMPOSITIONDISH" for each row begin if :NEW."RECORDID" is null then select "COMPOSITIONDISH_SEQ".nextval into :NEW."RECORDID" from sys.dual; end if; end; /ALTER TRIGGER "BI_COMPOSITIONDISH" ENABLE/CREATE OR REPLACE EDITIONABLE TRIGGER "COMPOSITIONDISH_T1" AFTERinsert on "COMPOSITIONDISH"for each rowbeginupdate products p set p.currentquantity=p.currentquantity + :new.quantity where p.productid = :new.productid;end;/ALTER TRIGGER "COMPOSITIONDISH_T1" ENABLE/CREATE TABLE "ISSUANCEPRODUCTS" ("RECORDID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, "ISSUANCEDATE" DATE NOT NULL ENABLE, "NUMBERSERVINGS" FLOAT(126) NOT NULL ENABLE, "COSTSONESERVING" FLOAT(126) NOT NULL ENABLE, "OVERHEADCOSTS" FLOAT(126), "PRODUCTID" NUMBER NOT NULL ENABLE, CONSTRAINT "ISSUANCEPRODUCTS_PK" PRIMARY KEY ("RECORDID") USING INDEX ENABLE ) DEFAULT COLLATION "USING_NLS_COMP"/ALTER TABLE "ISSUANCEPRODUCTS" ADD CONSTRAINT "ISSUANCEPRODUCTS_FK_PRODUCTS" FOREIGN KEY ("PRODUCTID") REFERENCES "PRODUCTS" ("PRODUCTID") ON DELETE CASCADE ENABLE/CREATE OR REPLACE EDITIONABLE TRIGGER "BI_ISSUANCEPRODUCTS" before insert on "ISSUANCEPRODUCTS" for each row begin if :NEW."RECORDID" is null then select "ISSUANCEPRODUCTS_SEQ".nextval into :NEW."RECORDID" from sys.dual; end if; end; /ALTER TRIGGER "BI_ISSUANCEPRODUCTS" ENABLE/CREATE TABLE "WAREHOUSE" ("RECEIPTNUMBER" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, "PRODUCTID" NUMBER NOT NULL ENABLE, "RECEIPTDATE" DATE NOT NULL ENABLE, "RECEIPTQUANTITY" FLOAT(126) NOT NULL ENABLE, "SUPPLIERCOMPANY" VARCHAR2(100) COLLATE "USING_NLS_COMP" NOT NULL ENABLE, "UNITPRICE" FLOAT(126) NOT NULL ENABLE, "ISFULLYSHIPPED" NUMBER DEFAULT 0, CONSTRAINT "WAREHOUSE_PK" PRIMARY KEY ("RECEIPTNUMBER") USING INDEX ENABLE ) DEFAULT COLLATION "USING_NLS_COMP"/ALTER TABLE "WAREHOUSE" ADD CONSTRAINT "WAREHOUSE_FK_PRODUCTS" FOREIGN KEY ("PRODUCTID") REFERENCES "PRODUCTS" ("PRODUCTID") ON DELETE CASCADE ENABLE/CREATE OR REPLACE EDITIONABLE TRIGGER "BI_WAREHOUSE" before insert on "WAREHOUSE" for each row begin if :NEW."RECEIPTNUMBER" is null then select "WAREHOUSE_SEQ".nextval into :NEW."RECEIPTNUMBER" from sys.dual; end if; end; /ALTER TRIGGER "BI_WAREHOUSE" ENABLE/

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. Oracle APEX URL:https://apex.oracle.com/en/
2. Блох, Дж. Java: эффективное программирование / Дж. Блох. - М.: Диалектика, 2019. - 464 c.
3. Дашнер, С. Изучаем Java ЕЕ.Современное программирование для больших предприятий / С. Дашнер. - СПб.: Питер, 2018. - 384 c.
4. Анатолий, Фридман Построение Интернет-приложений на языке Java. Практический курс / Фридман Анатолий. - М.: Горячая линия - Телеком, 2019. - 593 c.
5. Гарнаев, А.Ю. Web-программирование на Java и JavaScript / А.Ю. Гарнаев. - М.: БХВ-Петербург, 2019. - 413 c.
6. Кей, Хорстманн Java 2. Библиотека профессионала. Том 1. Основы / Хорстманн Кей. - М.: Диалектика / Вильямс, 2022. - 368 c.
7. Машнин, Тимур Современные Java-технологии на практике / Тимур Машнин. - М.: БХВ-Петербург, 2022. - 167 c.
8. Роберт, Лафоре Структуры данных и алгоритмы в Java / Лафоре Роберт. - М.: Питер, 2020. - 354 c.
9. Сеттер, Р. В. Изучаем Java на примерах и задачах / Р.В. Сеттер. - М.: Наука и техника, 2020. - 240 c.