Professional Documents
Culture Documents
Spring 2002
Group 10
Project Overview
Developed by
Terence Kyle Reynolds
Maria Tsipurskaya
Illeana Grimm
Glen Chen
INTRODUCTION
The purpose of this application was to develop physical RDMS and
its visual representation for general Restaurant Management
operations such as fulfilling customers orders and managing
inventory.
Tools used are Oracle 8i, SQL*Plus, PL/ SQL, Oracle Designer 2000
and Oracle Developer 2000.
The project required well-organized teamwork, squeezed in a strict
time frame, which was successfully carried out by the group.
Due the slow server on which Oracle Designer resided, we had a
difficult time getting things to work correctly while working on the
project. They were many instances in which Oracle Designer
suddenly became unresponsive, preventing us from completing
many parts of our project. Fortunately, we were able to get around
the slowness of the server by using alternative methods or working
on our project when there were less people in the computer lab.
STRATEGY
Strategy Document :
Business main entities that need to be kept records of in the database are
- restaurant products and its categories,
- purchase orders,
- employees records,
- suppliers,
- menu items and categories,
- meal orders and order details
- bills.
Top-level requirements:
The project is very efficient as far as resources are concerned. It will be developed by a
group of 4 students, who will be rewarded with nothing but a class grade for the
implementation of an Oracle database worth thousands.
Political environment:
The Oracle CASE tools will be heavily abused by other developers which expected to
slow down the system response significally. There is also security risk involved because
of the common public access to the application. Backups must be created with any
change in the application.
Work flow plan:
RMS Database must be designed and implemented in the period from Feb 19, 2002 to
June 15, 2002. Developers will meet weekly and complete one of the required sections
of the project. The project must be well planned and documented throughout SDLC, and
all client requirements must be met. Application will be stored in repository. Screen
shots and documentation will be presented to a client by the deadline. The key
deliverables of the strategy phase are the process flow diagram and the entity relationship
diagram. These two diagrams represent the processes and data in the system and will be
used to communicate with the user to ensure that the daily operation of the restaurant is
accurately modeled.
Strategy-level process flows:
The top level business processes that must be covered are:
- management of customer orders,
- management of inventory,
- human resources management.
PRE-ANALYSIS
Logical and Physical Database Diagrams, Process model, physical tables, table data and
forms will be developed using Oracle Designer 2000 and Developer 2000 CASE tools.
Restaurant ERD will be implemented in Entity Relationship Diagrammer. This logical
design "map" will be converted into Server model diagram by running Database
Transformer. All necessary constraints, triggers, procedures and functions must be set in
Design Editor. This can be further edited and transformed into SQL statements, which in
turn, generate real tables. Developers group will write DML SQL statements to populate
the Oracle tables.
Business processes are mirrored in a Process Modeler. This diagram will be transformed
into Function Hierarchy Diagram. Based on the last modules will be generated and
converted into forms. Forms layout can be tested and modified in Developer 2000.
ANALYSIS
The Analysis Document : User Requirements.
---these are not the user requirements/specs for the project.they are OUR
requirements to get an A on the project---pretend youre the user, talk about
why you need someone to design a system for you
1. Logical Database Diagram
2. Physical Database Diagram showing:
Tables
Join Tables
Columns
Relationships
Primary Keys
Foreign Keys
Approximate Row Counts
3. DDL Syntax creating:
Tables
Constraints such as primary keys, foreign keys, checks
Sequences
4. DML Syntax showing:
Table Inserts
5. Project-related PL/SQL Code for:
At least 3 functions
At lease 3 procedures
At lease 3 triggers
At least 1 package
A main program that calls all these functions, procedures, triggers and the
package
6. Screens or Forms
Display screens
Input/Output screens
logical ERD
PRE - DESIGN
Design Plan :
Based on the logical ERD Designer 2000 generated a physical model. Foreign and primary keys
relationships were established.
Process model Diagram developed turned out quite large. Here is a preview. More detailed
snapshots are provided below.
(bottom left)
(bottom right)
Screen prototype:
The developed forms will look similar to the one below, with buttons near the top of the form to
allow the user to insert, delete, save and query records from the database. The table fields, placed
in the center of the form, will have labels and display existing records in the database.
DESIGN
During the Design phase, modules were generated using the Oracle designer generators.
Modules are converted into forms and edited in the Developer 2000:
Product
Meal Order
Employee
BUILD
The following files are the DDL files that Designer 2000 generated based on the physical
model of our application.
- RMS.sql main script that calls all other scripts.
- RMS.tab creates Oracle tables
- RMS.drop for testing, drops all tables and constrains
- RMS.con creates constraints
- RMS.ind creates table indexes
- RMS.insert inserts database values into the tables
- RMS.trg sets triggers
- RMS.select displays all tables with data
-- RMS.sql --------------------------------------------------------------------------------------------------------- Generated for Oracle 8 on Sun Jun 09 12:47:39 2002 by Server Generator 2.1.19.5.0
SET LINESIZE 1000
SPOOL RMS.lst
@@ RMS.drop
@@ RMS.tab
@@ RMS.ind
@@ RMS.con
@@ RMS.trg
@@ RMS.insert
@@ RMS.select
SPOOL OFF
-- RMS.drop --------------------------------------------------------------------------------------------------ALTER
ALTER
ALTER
ALTER
ALTER
ALTER
ALTER
ALTER
ALTER
ALTER
ALTER
ALTER
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
RMS_PRODUCTS;
RMS_PURCHASE_ORDER_DETAILS;
RMS_PURCHASE_ORDERS;
RMS_MEAL_ORDERS;
RMS_SUPPLIERS;
RMS_MEAL_MENU_ITEMS;
RMS_PAYMENT_METHODS;
RMS_BILLINGS;
RMS_EMPLOYEES;
RMS_MEAL_ORDER_DETAILS;
RMS_MENU_ITEM_CATS;
RMS_PRODUCT_CATS;
,PREP_TIME VARCHAR2(10)
,MENU_ITEM_ID VARCHAR2(4) NOT NULL
,ITEM_NAME VARCHAR2(30) NOT NULL
,DESCRIPTION VARCHAR2(50)
,PRICE NUMBER(4,2) DEFAULT 0 NOT NULL
)
/
(EMP_EMPLOYEE_ID)
/
PROMPT Creating Primary Key on 'RMS_PURCHASE_ORDERS'
ALTER TABLE RMS_PURCHASE_ORDERS
ADD CONSTRAINT RMS_PO_PK PRIMARY KEY
(PURCHASE_ORD_ID)
/
PROMPT Creating Primary Key on 'RMS_EMPLOYEES'
ALTER TABLE RMS_EMPLOYEES
ADD CONSTRAINT RMS_EMP_PK PRIMARY KEY
(EMPLOYEE_ID)
/
PROMPT Creating Primary Key on 'RMS_PURCHASE_ORDER_DETAILS'
ALTER TABLE RMS_PURCHASE_ORDER_DETAILS
ADD CONSTRAINT RMS_POD_PK PRIMARY KEY
(PO_PURCHASE_ORD_ID
,PO_DET_SEQ)
/
PROMPT Creating Primary Key on 'RMS_BILLINGS'
ALTER TABLE RMS_BILLINGS
ADD CONSTRAINT RMS_BIL_PK PRIMARY KEY
(BILLING_ID)
/
PROMPT Creating Primary Key on 'RMS_MEAL_ORDERS'
ALTER TABLE RMS_MEAL_ORDERS
ADD CONSTRAINT RMS_MO_PK PRIMARY KEY
(MEAL_ORDER_ID)
/
PROMPT Creating Primary Key on 'RMS_MEAL_ORDER_DETAILS'
ALTER TABLE RMS_MEAL_ORDER_DETAILS
ADD CONSTRAINT RMS_MOD_PK PRIMARY KEY
(MO_MEAL_ORDER_ID
,ORD_DET_SEQ)
/
PROMPT Creating Primary Key on 'RMS_MEAL_MENU_ITEMS'
ALTER TABLE RMS_MEAL_MENU_ITEMS
ADD CONSTRAINT RMS_MMI_PK PRIMARY KEY
(MENU_ITEM_ID)
/
PROMPT Creating Check Constraints on 'RMS_EMPLOYEES'
ALTER TABLE RMS_EMPLOYEES
ADD CONSTRAINT RMS_EMPLOYEE CHECK (STATE in ('CA'))
/
PROMPT Creating Check Constraints on 'RMS_PURCHASE_ORDER_DETAILS'
ALTER TABLE RMS_PURCHASE_ORDER_DETAILS
ADD CONSTRAINT RMS_PO_CHK1 CHECK (QUANTITY > 0)
/
PROMPT Creating Check Constraints on 'RMS_BILLINGS'
-- Supplier values
-------------------------------------------------------PROMPT Inserting Values into Table 'RMS_SUPPLIERS'
INSERT INTO RMS_SUPPLIERS
(SUPPLIER_ID, SUPPLIER_NAME, ADDRESS, CITY, STATE, ZIP_CODE, COUNTRY,
CONTACT_NAME, CONTACT_TITLE, PHONE_NUMBER, FAX_NUMBER)
VALUES
('1', 'Best Foods Int.', '345 Herondo St.', 'Hermosa Beach', 'CA',
'92658', 'USA', 'Jess Carr', 'Sales Repr', '310-298-5752', '310-2985753');
INSERT INTO RMS_SUPPLIERS
(SUPPLIER_ID, SUPPLIER_NAME, ADDRESS, CITY, STATE, ZIP_CODE, COUNTRY,
CONTACT_NAME, CONTACT_TITLE, PHONE_NUMBER, FAX_NUMBER)
VALUES
('2', 'Fat Pigs Int.', '254 Main St.', 'Ontario', 'Quebec', '45867',
'Canada', 'Jason Ferr', 'Sales Repr', '2-3-476-255-4758', '2-3-476-2554759');
INSERT INTO RMS_SUPPLIERS
(SUPPLIER_ID, SUPPLIER_NAME, ADDRESS, CITY, STATE, ZIP_CODE, COUNTRY,
CONTACT_NAME, CONTACT_TITLE, PHONE_NUMBER, FAX_NUMBER)
VALUES
('3', 'Cal. Poultry Co.', '4110 Van Nuys', 'Studio City', 'CA', '95735',
'USA', 'Derek Johnson', 'Sales Manager', '818-485-8375', '818-4858376');
INSERT INTO RMS_SUPPLIERS
(SUPPLIER_ID, SUPPLIER_NAME, ADDRESS, CITY, STATE, ZIP_CODE, COUNTRY,
CONTACT_NAME, CONTACT_TITLE, PHONE_NUMBER, FAX_NUMBER)
VALUES
('4', 'Fresh Vegetables Co', '96 La Fontier', 'San Diego', 'CA',
'93856', 'USA', 'Dave Dubin', 'Sales Repr', '827-425-5735', '827-4255736');
INSERT INTO RMS_SUPPLIERS
(SUPPLIER_ID, SUPPLIER_NAME, ADDRESS, CITY, STATE, ZIP_CODE, COUNTRY,
CONTACT_NAME, CONTACT_TITLE, PHONE_NUMBER, FAX_NUMBER)
VALUES
('5', 'Lazy Potato Co.', '273 Eastern Way Blv.', 'Hatra', 'ID', '36455',
'USA', 'Veronica Johnson', 'Sales Repr', '237-576-2865', '237-5762866');
INSERT INTO RMS_SUPPLIERS
(SUPPLIER_ID, SUPPLIER_NAME, ADDRESS, CITY, STATE, ZIP_CODE, COUNTRY,
CONTACT_NAME, CONTACT_TITLE, PHONE_NUMBER, FAX_NUMBER)
VALUES
('6', 'Produce Unlim Co.', '1076 S. Virgil Ave.', 'Los Angeles', 'CA',
'90004', 'USA', 'Kate Williams', 'Sales Repr', '213-252-9263', '213-2529264');
INSERT INTO RMS_SUPPLIERS
(SUPPLIER_ID, SUPPLIER_NAME, ADDRESS, CITY, STATE, ZIP_CODE, COUNTRY,
CONTACT_NAME, CONTACT_TITLE, PHONE_NUMBER, FAX_NUMBER)
VALUES
('7', 'Cali Cheese Co.', '32 W. Alameda St.', 'Calabassas', 'CA',
'92646', 'USA', 'Alan Benson', 'Distributor', '482-476-3865', '482-4763866');
INSERT INTO RMS_SUPPLIERS
(SUPPLIER_ID, SUPPLIER_NAME, ADDRESS, CITY, STATE, ZIP_CODE, COUNTRY,
CONTACT_NAME, CONTACT_TITLE, PHONE_NUMBER, FAX_NUMBER)
VALUES
('8', 'Glory Foods', '2 Market St.', 'San Francisco', 'CA', '94114',
'USA', 'Mary Smith', 'Sales Repr', '415-431-0692', '415-431-0693');
INSERT INTO RMS_SUPPLIERS
(SUPPLIER_ID, SUPPLIER_NAME, ADDRESS, CITY, STATE, ZIP_CODE, COUNTRY,
CONTACT_NAME, CONTACT_TITLE, PHONE_NUMBER, FAX_NUMBER)
VALUES
('9', 'The Best Int.', '1434 18th Ave.', 'San Francisco', 'CA', '94122',
'USA', 'Ken Cobukki', 'Manager', '415-252-1625', '415-252-1626');
INSERT INTO RMS_SUPPLIERS
(SUPPLIER_ID, SUPPLIER_NAME, ADDRESS, CITY, STATE, ZIP_CODE, COUNTRY,
CONTACT_NAME, CONTACT_TITLE, PHONE_NUMBER, FAX_NUMBER)
VALUES
('10', 'Sweet Sin Int.', '283 Alwer St.', 'Marahn', 'Mar', '1647',
'Iran', 'Abdul Mahrngarukk', 'Manager', '52-3-356-3724', '52-3-3563725');
-- Employee values
------------------------------------------------------PROMPT Inserting Values into Table 'RMS_EMPLOYEES'
INSERT INTO RMS_EMPLOYEES
(EMPLOYEE_ID, FIRST_NAME, LAST_NAME, TITLE, ADDRESS, CITY, STATE,
ZIP_CODE, HOME_PHONE_NO)
VALUES
('1', 'Cris', 'Perez', 'General Manager', '1609 Montana Ave.', 'Santa
Monica', 'CA', '91637', '310-587-0755');
INSERT INTO RMS_EMPLOYEES
(EMPLOYEE_ID, FIRST_NAME, LAST_NAME, TITLE, ADDRESS, CITY, STATE,
ZIP_CODE, HOME_PHONE_NO)
VALUES
('2', 'Hechter', 'Garcia', 'Manager', '3367 Ocean Park Blv.', 'Santa
Monica', 'CA', '91637', '310-450-8665');
-- Purchase_Order values
--------------------------------------------------PROMPT Inserting Values into Table 'RMS_PURCHASE_ORDERS'
INSERT INTO RMS_PURCHASE_ORDERS
(PURCHASE_ORD_ID, EMP_EMPLOYEE_ID, DESCRIPTION, ORDER_DATE,
SUP_SUPPLIER_ID, DATE_PROMISED)
VALUES
('001', '2', '', '1-APR-02', '1', '4-APR-02');
INSERT INTO RMS_PURCHASE_ORDERS
(PURCHASE_ORD_ID, EMP_EMPLOYEE_ID, DESCRIPTION, ORDER_DATE,
SUP_SUPPLIER_ID, DATE_PROMISED)
VALUES
('002', '2', '', '7-APR-02', '3', '10-APR-02');
INSERT INTO RMS_PURCHASE_ORDERS
(PURCHASE_ORD_ID, EMP_EMPLOYEE_ID, DESCRIPTION, ORDER_DATE,
SUP_SUPPLIER_ID, DATE_PROMISED)
VALUES
('003', '4', '', '7-MAY-02', '3', '10-MAY-02');
INSERT INTO RMS_PURCHASE_ORDERS
(PURCHASE_ORD_ID, EMP_EMPLOYEE_ID, DESCRIPTION, ORDER_DATE,
SUP_SUPPLIER_ID, DATE_PROMISED)
VALUES
('004', '1', '', '8-APR-02', '10', '11-APR-02');
INSERT INTO RMS_PURCHASE_ORDERS
(PURCHASE_ORD_ID, EMP_EMPLOYEE_ID, DESCRIPTION, ORDER_DATE,
SUP_SUPPLIER_ID, DATE_PROMISED)
VALUES
('005', '6', '', '15-APR-02', '10', '18-APR-02');
INSERT INTO RMS_PURCHASE_ORDERS
(PURCHASE_ORD_ID, EMP_EMPLOYEE_ID, DESCRIPTION, ORDER_DATE,
SUP_SUPPLIER_ID, DATE_PROMISED)
VALUES
('006', '2', '', '18-APR-02', '9', '21-APR-02');
INSERT INTO RMS_PURCHASE_ORDERS
(PURCHASE_ORD_ID, EMP_EMPLOYEE_ID, DESCRIPTION, ORDER_DATE,
SUP_SUPPLIER_ID, DATE_PROMISED)
VALUES
('007', '2', '', '2-APR-02', '9', '5-APR-02');
INSERT INTO RMS_PURCHASE_ORDERS
(PURCHASE_ORD_ID, EMP_EMPLOYEE_ID, DESCRIPTION, ORDER_DATE,
SUP_SUPPLIER_ID, DATE_PROMISED)
VALUES
-- Purchase_Order_Detail values
---------------------------------------PROMPT Inserting Values into Table 'RMS_PURCHASE_ORDER_DETAILS'
INSERT INTO RMS_PURCHASE_ORDER_DETAILS
(PO_DET_SEQ, PROD_PRODUCT_ID, PO_PURCHASE_ORD_ID, QUANTITY)
VALUES
('1001', '101', '006', 5);
INSERT INTO RMS_PURCHASE_ORDER_DETAILS
(PO_DET_SEQ, PROD_PRODUCT_ID, PO_PURCHASE_ORD_ID, QUANTITY)
VALUES
('1002', '102', '001', 3);
INSERT INTO RMS_PURCHASE_ORDER_DETAILS
(PO_DET_SEQ, PROD_PRODUCT_ID, PO_PURCHASE_ORD_ID, QUANTITY)
VALUES
('1003', '103', '001', 2);
INSERT INTO RMS_PURCHASE_ORDER_DETAILS
(PO_DET_SEQ, PROD_PRODUCT_ID, PO_PURCHASE_ORD_ID, QUANTITY)
VALUES
('1004', '104', '004', 7);
INSERT INTO RMS_PURCHASE_ORDER_DETAILS
-- Meal_Order values
----------------------------------------------------------PROMPT Inserting Values into Table 'RMS_MEAL_ORDERS'
INSERT INTO RMS_MEAL_ORDERS
(MEAL_ORDER_ID, EMP_EMPLOYEE_ID, NUMBER_OF_PEOPLE, ORDER_DATE,
ORDER_TIME, TABLE_NUMBER, COMMENTS)
VALUES
('1001', '8', 3, '15-APR-02', to_date('9 AM', 'HH am'), '1', '');
INSERT INTO RMS_MEAL_ORDERS
(MEAL_ORDER_ID, EMP_EMPLOYEE_ID, NUMBER_OF_PEOPLE, ORDER_DATE,
ORDER_TIME, TABLE_NUMBER, COMMENTS)
VALUES
('1002', '9', 2, '15-APR-02', to_date('7 PM', 'HH pm'), '2', 'regular
customer');
INSERT INTO RMS_MEAL_ORDERS
(MEAL_ORDER_ID, EMP_EMPLOYEE_ID, NUMBER_OF_PEOPLE, ORDER_DATE,
ORDER_TIME, TABLE_NUMBER, COMMENTS)
VALUES
('1003', '10', 2, '16-APR-02', to_date('11:30 AM', 'HH:MI am'), '2',
'');
INSERT INTO RMS_MEAL_ORDERS
VALUES
('5006', '1004', 15.00, '30-APR-02', '3', 'Aisha Freeman', '', '');
INSERT INTO RMS_BILLINGS
(BILLING_ID, MO_MEAL_ORDER_ID, PAYMENT_AMOUNT, PAYMENT_DATE,
PM_PAYMENT_METHOD_ID, CARD_HOLDER_NAME, CREDIT_CARD_EXP_DATE,
CREDIT_CARD_NO)
VALUES
('5007', '1005', 30.00, '18-APR-02', '2', 'Monte Williams', '08/04',
'6244 1010 0837 1863');
INSERT INTO RMS_BILLINGS
(BILLING_ID, MO_MEAL_ORDER_ID, PAYMENT_AMOUNT, PAYMENT_DATE,
PM_PAYMENT_METHOD_ID, CARD_HOLDER_NAME, CREDIT_CARD_EXP_DATE,
CREDIT_CARD_NO)
VALUES
('5008', '1006', 15.50, '18-APR-02', '1', '', '', '');
INSERT INTO RMS_BILLINGS
(BILLING_ID, MO_MEAL_ORDER_ID, PAYMENT_AMOUNT, PAYMENT_DATE,
PM_PAYMENT_METHOD_ID, CARD_HOLDER_NAME, CREDIT_CARD_EXP_DATE,
CREDIT_CARD_NO)
VALUES
('5009', '1007', 32.80, '4-MAY-02', '3', 'Huan Lopez', '', '');
INSERT INTO RMS_BILLINGS
(BILLING_ID, MO_MEAL_ORDER_ID, PAYMENT_AMOUNT, PAYMENT_DATE,
PM_PAYMENT_METHOD_ID, CARD_HOLDER_NAME, CREDIT_CARD_EXP_DATE,
CREDIT_CARD_NO)
VALUES
('5010', '1008', 5.60, '22-APR-02', '1', '', '', '');
INSERT INTO RMS_BILLINGS
(BILLING_ID, MO_MEAL_ORDER_ID, PAYMENT_AMOUNT, PAYMENT_DATE,
PM_PAYMENT_METHOD_ID, CARD_HOLDER_NAME, CREDIT_CARD_EXP_DATE,
CREDIT_CARD_NO)
VALUES
('5011', '1009', 27.00, '7-MAY-02', '2', 'David Grimm', '05/03', '2456
3567 3565 4867');
INSERT INTO RMS_BILLINGS
(BILLING_ID, MO_MEAL_ORDER_ID, PAYMENT_AMOUNT, PAYMENT_DATE,
PM_PAYMENT_METHOD_ID, CARD_HOLDER_NAME, CREDIT_CARD_EXP_DATE,
CREDIT_CARD_NO)
VALUES
('5012', '1010', 9.70, '25-APR-02', '1', '', '', '');
INSERT INTO RMS_BILLINGS
(BILLING_ID, MO_MEAL_ORDER_ID, PAYMENT_AMOUNT, PAYMENT_DATE,
PM_PAYMENT_METHOD_ID, CARD_HOLDER_NAME, CREDIT_CARD_EXP_DATE,
CREDIT_CARD_NO)
VALUES
('5013', '1010', 20.00, '9-MAY-02', '3', 'Val Delon', '', '');
VALUES
('1', 'Hamburger', '02', 3.85, '', '8');
INSERT INTO RMS_MEAL_MENU_ITEMS
(MENU_ITEM_ID, ITEM_NAME, MIC_MENU_ITEM_CAT_ID, PRICE, DESCRIPTION,
PREP_TIME)
VALUES
('2', 'House special Steak', '02', 12.00, 'seasoned with misc spices',
'40');
INSERT INTO RMS_MEAL_MENU_ITEMS
(MENU_ITEM_ID, ITEM_NAME, MIC_MENU_ITEM_CAT_ID, PRICE, DESCRIPTION,
PREP_TIME)
VALUES
('3', 'Calzone', '02', 7.60, 'a pound of cheese, ham, mushrooms', '45');
INSERT INTO RMS_MEAL_MENU_ITEMS
(MENU_ITEM_ID, ITEM_NAME, MIC_MENU_ITEM_CAT_ID, PRICE, DESCRIPTION,
PREP_TIME)
VALUES
('4', 'Caesar Salad', '07', 4.00, 'with grilled chicken breast', '6
1/2');
INSERT INTO RMS_MEAL_MENU_ITEMS
(MENU_ITEM_ID, ITEM_NAME, MIC_MENU_ITEM_CAT_ID, PRICE, DESCRIPTION,
PREP_TIME)
VALUES
('5', 'Glass of Merlot, 1978', '06', 6.20, '', '');
INSERT INTO RMS_MEAL_MENU_ITEMS
(MENU_ITEM_ID, ITEM_NAME, MIC_MENU_ITEM_CAT_ID, PRICE, DESCRIPTION,
PREP_TIME)
VALUES
('6', 'Mushrooms', '03', 5.00, 'sliced mushrooms in in thick souce',
'');
INSERT INTO RMS_MEAL_MENU_ITEMS
(MENU_ITEM_ID, ITEM_NAME, MIC_MENU_ITEM_CAT_ID, PRICE, DESCRIPTION,
PREP_TIME)
VALUES
('7', 'Fruity Ice Cream', '04', 2.99, 'fat-free ice cream with fresh
strawberries', '');
INSERT INTO RMS_MEAL_MENU_ITEMS
(MENU_ITEM_ID, ITEM_NAME, MIC_MENU_ITEM_CAT_ID, PRICE, DESCRIPTION,
PREP_TIME)
VALUES
('8', 'Sweet and Sour Chicken', '02', 12.00, 'spicy', '35');
INSERT INTO RMS_MEAL_MENU_ITEMS
(MENU_ITEM_ID, ITEM_NAME, MIC_MENU_ITEM_CAT_ID, PRICE, DESCRIPTION,
PREP_TIME)
VALUES
('9', 'Tuna Sandwich', '02', 3.85, 'sourdough bread, tuna, honey
mustard, pickles', '8');
INSERT INTO RMS_MEAL_MENU_ITEMS
TEST
The system must be tested to evaluate its functionality in relation to the users expected
functionality. Logical testing was conducted on the database side as well as on the
application side during all stages of the project development to test the system for bugs
before delivering the system to the user.
--Insert snapshots of forms, triggers, etc here
IMPLEMENTATION
The new system will be implemented using phased implementation to ensure that each
component of the new system meets all the user requirements and that its results are
satisfactory before the other components are implemented. The new system will be
slowly phased in to gradually replace the old system. During this phase, the new system
will run in conjunction with the old systems for a specific amount of time. The results
from both systems will be compared after the specified amount of time has elapsed. If
the results are satisfactory, another component of the new system will be added and its
results will be compared again. The process will repeat until the old system is completely
phased out.
Once the system is fully implemented, training sessions will be conducted to familiarize
the users with the new system by showing them how they will use the new hardware and
software in the system. During training they will get a chance to practice on the actual
system and have their questions answered. They will also receive detailed user manuals
for future reference.
MAINTENANCE
Once the new system is fully implemented, it will be continually evaluated and improved
based on suggestions from users. This phase includes continuously monitoring,
maintaining and modifying the system to ensure the system performs as expected and
continues to meet all user needs.
A customer support group will be set up to establish and maintain user liaison. The group
will be available to address concerns and answer questions from users via telephone and
email. It will also keep track of and investigate all user concerns, problems and change
requests for potential improvements to the system.
A list of all user problems and change requests will be forwarded to the software
development department manager for analysis. Each problem is prioritized according to
its urgency and feasibility. The manager then determines which changes are most
important to users and reviews the costs, benefits and impacts of implementing changes
to the system. He also determines the necessary resources to carry out the changes.
Once the problems and user requests are identified and approved for change, the software
development team will analyze and make changes to the system so it continues to meet
all user needs. They will review details of the proposed system changes, design and code
system changes and test system changes to ensure everything is working properly as
planned. In addition, the appropriate user and technical documentation will be revised to
reflect the changes to the system.
Changes are implemented by sending software patches to all users, along with the
updated training materials and documentations. Additional training will be made
available.
CONCLUSION
What We Learned About SDLC and Designer 2000
System Development Life Cycle (SDLC) allows us to break down a complex project into
smaller and more detailed tasks so that we could better understand what we need to
accomplish in each phase of SDLC. It helps guide us through a project so that we can get
a better understanding of all user requirements and the things we need to do to fulfill the
user requirements.
The strategy phase helps us gain a clear understanding of the user environment, processes
and needs to define the scope of the project. The pre-analysis phase helps us create a
strategy plan that ensures the analysis will be carried out correctly. We created the Entity
Relationship and Process Flow Diagrams in the analysis phase based on the information
we gathered from the users and the analysis of their business processes. In the pre-design
phase we made decisions concerning the functionality and screen layout for the forms. In
the design phase we refined the table definitions and created table constraints, functions,
procedures and triggers and created modules based on the tables. In the build phase we
created tables in the database using the Database Design Transformer and generated
forms using the Application Design Transformer. In test phase we came up with a test
plan for testing our system for bugs before the system was implemented. In the
implementation phase we decided how we would implement our system for the user and
the type of user training we would provide. In the maintenance phase we created a plan
to deal with user problems and requests so that the system continues to meet their needs.
Oracle Designer 2000 is an invaluable tool for analyzing business requirements and
designing and creating robust database applications that meet those requirements. It
drastically reduces the amount of time required to design an application by allowing the
user to visually see all the various components of a project and how all the components
relate to one another.
The Entity Relationship Diagram allows us to define graphically all the entities that are
involved in the system we will create for the user and see how one entity relates to
another by defining relationships between them. Attributes for each entity are created to
better describe each entity and used to create primary keys and foreign keys to maintain
data integrity in the system. The Function Hierarchy Diagram allows us to see all the
functions involved in our system in a hierarchical manner like in an organizational chart
and decompose complex functions into more understandable ones. The Process Diagram
allows us to see our systems processes and graphically illustrates the storage and
exchange of data inside our system.
The Database Design Transformer facilitates the script creation process by generating the
SQL scripts and database tables for us from the data models we have created earlier.
Similarly, the Application Design Transformer facilitates the form creation process by
using information on the function hierarchy diagram to generate our forms.