cse255proj - Dhaka University of Engineering and Technology

Download Report

Transcript cse255proj - Dhaka University of Engineering and Technology

Semester Project Requirements
CSE
255
Prof. Steven A. Demurjian, Sr.
Computer Science & Engineering Department
The University of Connecticut
191 Auditorium Road, Box U-155
Storrs, CT 06269-3155
[email protected]
http://www.engr.uconn.edu/~steve
(860) 486 - 4818
Important Note: When Emailing Questions, Please Include
All Emails of your Entire Team so that I can do a GROUP
Response to your email.
Project-1
Clients and Software Architecture
Connect and
Interact with
any DBMS
CSE
255
Web Client
Customer
Query Program
API
Personal
Oracle
MS Access
Java Client
Employee
MySQL
Front half contains
API (Java calls) that
hide DB interactions
from Client
Back half is the implementation of
the classes that contains code to open
the database connection, perform a
query, collect results, etc.
Project-2
Phase III Project Requirements

CSE
255


Design! Design! Design!
Development! Development! Development!
Objectives of Phase III
 Organize your Team
Database
Creation and Maintenance
DB API (Middle Layer) Development
GUIs for Customers, Clerks, and Administrators

Finalize your Technologies
DB
to Use
Middle Layer (C++, Java, etc.)
GUIs (Applications vs. html vs. 4GL)
Project-3
Clients and Software Architecture
Connect and
Interact with
any DBMS
CSE
255
Web Client
Customer
Query Program
API
Personal
Oracle
MS Access
Java Client
Employee
MySQL
Front half contains
API (Java calls) that
hide DB interactions
from Client
Back half is the implementation of
the classes that contains code to open
the database connection, perform a
query, collect results, etc.
Project-4
Organize your Team

CSE
255

Objectives
 Allow Team Members to Work in Parallel
 Must Come to Agreement w.r.t. Common Software
 Arrive at a Working Plan
 Set Achievable Milestones/Deadlines for Team
Assigning Responsibilities:
 1 Person - Database Creation and Maintenance
 1 Person - DB API (Middle Layer) Development
 1 Person - GUIs
Project-5
Database Creation and Maintenance

CSE
255

Objectives
 Choose your DBMS Platform
 Install/Configure your DBMS Platform
 SQL DDL (Create) for DB Schema
 Creation of DB Tuples (use Excel File as Guide)
Responsibilities of DB Team Member
 Writing/Testing SQL Queries
 Maintain DB
Project-6
DB API (Middle Layer) Development

CSE
255
Objectives
 Choose your Middle Layer Design/Implementation
Approach
 Thick
Java Clients (Include all Middle Layer)
 Separate Middle Layer Program (Interaction with Clients
via RMI)
 Other Technologies - Other Choices

Responsibilities of Middle Layer Team Member
 Providing APIs for Each of the “Major” System
Functionalities
 Middle Layer Includes DB Open, Access, Close
 Incorporating SQL Queries into Middle Layer
Project-7
Middle Layer APIs

CSE
255
Encapsulates Database Software for Querying/Storing
 Login Programs
 Query Program
Retrieval and
Join in Support of Users
Traveler Profiles, Automobile Profiles, Reservations
Support for Report Generation

Registration Program
All

Database Interactions for Registering a Customer
Traveler/Automobile Profile Update Program
Customer
Can Make Changes to His/Her Profile
Administrator can Change/Define Automobile Profiles

Reservation Program
Clerks
can Process Pick-Up/Drop Offs
Project-8
What is an API?

CSE
255


API Organizes and Hides the Database Design and
Implementation from Client Applications
Provides an OO Characterization that is Consistent with
Client View of Data/Access
Design/Prototype Five APIs:
 Login Programs
 Query Program
 Registration Program
 Traveler/Automobile Profile Update Program
 Reservation Program
Project-9
What does an API Contain?

CSE
255
Consider the Query Program API
class Login_Program
{public:
VERIFY_IDENTITY(LoginName, Password) returns boolean;
REGISTER_NEWUSER(LoginName, Password) returns boolean;
}
class Query_Program
{public:
GET_RESERVATIONS(CustomerName, Month, Location, CarClass)
returns ReservationVector;
etc...
}


What Does Each Method Implement?
 SQL Query (SELECT)
 Query Customized Based on Parameter Values
 Results Returned as Individual Tuples or Data Sets
 Uses JDBC (ODBC)
Develop APIs in Parallel to GUIs and Populating DB
Project-10
GUIs (Applications vs. html vs. 4GL)

CSE
255


Recall Five Programs
 Login Programs
 Query Program
 Registration Program
 Traveler/Automobile Profile Update Program
 Reservation Program
Objective - Structure Four Programs (APIs) into Two or
More GUIs
 Customer GUI - Reserve Cars, Change Profile, etc.
 Clerk GUI - Pickup/Drop-off/Upgrade
 Management GUI - Reports
You Must Define the Scope and Capability of Each GUI
that is Then Realized
Project-11
Sample Java GUIs from CT Insurance Dept.
CSE
255
Project-12
Sample Java GUIs from CT Insurance Dept.
CSE
255
Project-13
Sample MS Access GUIs
CSE
255
Project-14
Web Pages from CSE293 Project
CSE
255
Project-15
MS Access Data Entry/Display Screens
CSE
255
Project-16
Sample Reports from CT Insurance Dept.
CSE
255
Main Menu
Project-17
Sample Reports from CT Insurance Dept.
CSE
255
Project-18
Sample Reports from CT Insurance Dept.
CSE
255
Project-19
GUI from CSE255 Spring 2003 Project
CSE
255
Project-20
GUI from CSE255 Spring 2003 Project
CSE
255
Project-21
GUI from CSE255 Spring 2003 Project
CSE
255
Project-22
GUI from CSE255 Spring 2003 Project
CSE
255
Project-23
GUI from CSE255 Spring 2003 Project
CSE
255
Project-24
GUI from CSE255 Spring 2003 Project
CSE
255
Project-25
GUI from CSE255 Spring 2003 Project
CSE
255
Project-26
Finalize your Technologies

CSE
255



Make Choice to Allow “Ease” of Demonstration
DB to Use
 If you Haven’t as Yet - You MUST Immediately!
 Personal Oracle, MSAccess, MSSQL, Others
Middle Layer (C++, Java, etc.)
 Choices will Dictate Architecture
GUIs (Applications vs. html vs. 4GL)
 Choices will Impact DB Interactions
Project-27
Final Thoughts

CSE
255

Phase III Report (see 6 Bullet Items)
 Purpose, Tasks, System Requirements, Revisions to
Phases I and II
 Problems Found and Solutions
 System Architecture and Choices
 Conclusion, Assessment, Evaluation
 Team Member Contributions
 SQL DDL, Source Code, DB Instances, Screen Shots
Demos on in December for Each Team (1/2 hour)
Project-28