lanning Phase
  
 CEO James Smith Speaks

We plan to Develop a Demo Software which can calculate Telephone bills based on number of calls made by the customer, and using Business logic as defined by the telephone company, considering that time and again business rules change as decided by the management . The software must have provisions to be accessed thru Swing , JSP , Remote Clients, Wireless Clients and suitable Authentication mechanisms to be used at all possible levels of access

Dear Team please remember ur performance will be monitored and u will be rewarded !

 
  DESIGN PLAN
Before we need to design or develop anything we need to write them down .on a paper what we require and what we wish, which is also called as understanding Requirements

Requirement 1.

We will develop software, which will calculate telephone bills based on the number of calls made by customer

Requirement 2.

Each Customer will have an Option to choose 1 in 4 different plans the telecom Company Offers

Requirement 3.

Customer Data, is stored in database

Requirement 4.

Bill Data of each customer, is stored in database

Requirement 5.

Only people belonging to billing group can calculate the bill, and print bills

Requirement 6.

Customer can view his Bill

Requirement 7.

Ids are to be generated automatically wherever they are needed

Requirement 8.

Only People Belonging to Customer Data Entry group will add a customer data

Requirement 9.

Members belonging to Management Group can view individual or monthly bill amount of single or all customers

Requirement 10.

Access must be given to remote clients, who don't use browsers but still need to work on the system

Requirement 11.

Login Screen

Requirement 12.

Manager must grant discounts or levy charges on all or few customers

Wish List1.

Save Customer Data in XML Format

Wish List2.

Better Performance
  EJBs and Requirements
EJB 1. -------------- Phase 1 ------------ Customer Data Management

Entity Bean to Add / Modify / View and Delete Customer Data

EJB 2. -------------- Phase 2 ------------ Bill Calculating System

Session Bean to Calculate Bill Amount based on Number of calls made by customer [Assume just for 1 month]

EJB 3. -------------- Phase 3 ------------ Bill Data Management

Entity Bean to Add / Modify / View and Delete Bill Data after they are calculated.

EJB 4. -------------- Phase 4 ------------ Manager Management System

Session Bean for Manager
View Customer Data,
View Best Customer of the Month,
View Total Bill Amount for the Month

EJB 5. -------------- Phase 5 ------------ Messaging System

Client to Server
Message Driven Beans for Sending messages from Customer Data Entry Group to Manager
Client to Client
Message Driven Beans for Sending messages from Customer Data Entry Group to Bill Data Entry Group


  Database Design
Table 1 : To store customer data
CREATE TABLE phone_cust ( 
  CUSTID    VARCHAR2 (50), 
  CUSTNAME  VARCHAR2 (50), 
  CUSTPH    VARCHAR2 (50), 
  PLANID  VARCHAR2 (50) ) ; 
Table 2 : To store bill data
CREATE TABLE phone_bill ( 
  BILLID     VARCHAR2 (10), 
  CUSTID     VARCHAR2 (50), 
  NOOFCALLS  NUMBER, 
  BILLAMT    NUMBER 
  ) ; 
Table 3 : To keep track of phone plans
CREATE TABLE phone_plan ( 
  PLANID     VARCHAR2 (10), 
  PLANNAME   VARCHAR2 (50) 
) ; 
INSERT INTO PHONE_PLAN ( PLANID, PLANNAME ) VALUES ( '1', 'General'); 
INSERT INTO PHONE_PLAN ( PLANID, PLANNAME ) VALUES ( '2', 'Super'); 
INSERT INTO PHONE_PLAN ( PLANID, PLANNAME ) VALUES ( '3', 'Economy'); 
INSERT INTO PHONE_PLAN ( PLANID, PLANNAME ) VALUES ( '4', 'Special'); 
  Security Design Consideration
1. Customer Data Entry Group CDEG will be responsible for Add/ Mod/ Del/ View Customer Data

2. Bill Data Entry Group BDEG will be responsible for Add/ Mod/ Del/ View Bill Data

2. Manager will be responsible for Viewing Customer-Bill Data and Other info

  What Next => Available : YES
Chapter 4. Create Customers before u can bill them using Entity Bean
 Reach me!
   My Web URL : http://www.oocities.org/james_smith73
   If you like this article and/or code mailme or Join our small Group of Java Programmers ,
Till we meet next time BYE     

  Java, J2EE, J2SE and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc.
in the United States and other countries.