5 Pages with references. Create a test plan.++See attachments for more info/background for creating test plan.++Paper should include the following:· A description of the test plan for your pro
Beta Version of the Online Store’s Checkout/Payment business process
The Visual Interface (Tanaka & Ichikawa, 1988)
The visual interface of the Store’s checkout process has navigation that provides all the available options to the user/customer. The user can shop and pay online by accessing the official website of the store. There is also a tab named as about in which the user can get all the information related to the store and the available products/services. The interface has been designed according to the principles laid by the HCI domain of software development so that the users can get a friendly experience while using the website. The links to major options are placed at the top in a horizontal row which eliminates the need to use navigation slide bar and makes the website experience more pleasant.
Functionality with the Database for the Project (J.Banerjee, D.K.Hsiao, & F.K.Ng, 1980)
import java.util.*; // java library initialization
class hashtablecl{ // query for hash table creation
public static void main(String args[]){ // start of main
Hashtable ht=new Hashtable(); // constructor initialization
Enumeration names; // enumeration used for storing the online store’s products in tables of database
String str; // string declaration
double bal; // type declaration of balanace
ht.put("A",new Double(32.25)); // addition of online store items in the database
ht.put("B",new Double(23.45)); // addition of online store items in the database
ht.put("C",new Double(-25.45)); // addition of online store items in the database
names =ht.keys();
while(names.hasMoreElements()){ // condition introduced using the while statement
str=(String)names.nextElement();
System.out.println(ht.get(str)); // command to system for printing information
}
System.out.println();
bal=((Double)ht.get("Ram")).doubleValue(); // balance calculated using this query
ht.put("Ram",new Double(bal+200));
System.out.println("new balance:"+ht.get("Ram")); // output query
names =ht.keys();yt\
while(names.hasMoreElements()){
str=(String)names.nextElement(); // displays the list of all elements in order
System.out.println(ht.get(str));
} // end of while loop condition
}
} // end of main
// for creating database tables
create table reg (usrid varchar2(10) constraint uid_pk primary key,pwd varchar2(10) not null,
hque varchar2(20),hans varchar2(10),fname varchar2(10) not null,lname varchar2(10) not null,
dob date not null,add varchar2(10) not null,city varchar2(10) not null,pin number(6) not null,
state varchar2(10) not null,country varchar2(10) not null,ccname varchar2(10) not null,
ccno varchar2(10) not null,email varchar2(30) not null);
create table items (tno number(4) constraint tno_pk primary key,title varchar2(10) not null,
dop date not null,subject varchar2(10) not null,pname varchar2(10) not null,nocs number(3) not null,
rate number(7,2)not null);
create table bill (cdno number(4) constraint cdno_pk primary key, type varchar2(1) not null,
title varchar2(10) not null, dor date not null, artist1 varchar2(10) not null,artist2 varchar2(10) not null,
nocs number(3) not null, s1 varchar2(10) not null,s2 varchar2(10) not null, rate number(7,5) not null);
create table adress(ino number(4) constraint hino_pk primary key,iname varchar2(10) not null,
make varchar2(50) not null, rate number(7,2) not null); // table for storing the address of customers
create table shippment (ino number(4) constraint sion_pk primary key,iname varchar2(10) not null,
make varchar2(50) not null);
create table cart (usrid varchar2(10) constraint cuid_pk primary key, // table for user id
ino number(4) not null,iname varchar2(10) not null,
qty number(2) not null, rate number(7,2) not null);
Code for the Project
import java.io.*; // initializing input and output for java Library
import java.sql.*; // initializing SQL
import javax.servlet.*; // initilaizig servlet
import javax.servlet.http.*; // initializing online servlet over http
public class chkout extends HttpServlet // checkout class created
{ // class body starts here
public void doGet(HttpServletRequest req,HttpServletResponse res) throws ServletException,IOException
{
Connection con; // connection generation
Statement stmt;
ResultSet rs;
res.setContentType("text/html");
PrintWriter pw=res.getWriter();
try
{ // class for the customer data like name
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:sri","scott","tiger");
//pw.println("Connection Established and Driver Loaded");
stmt=con.createStatement();
String qry="select * from cart"; // cart selected by the customer for adding items
rs=stmt.executeQuery(qry);
//pw.println("Statement Prepared and Executed...");
pw.println("<pre><b><font size=6>"+"\t\t\t"+"<u>"+"BILL"+"</pre></u></b></font>");
//pw.println("<form action=\"http://localhost:8080/servlet/addcart\" method=post>");
pw.println("<br><font size=4><b>"); // font size of 4 selected
pw.println("<pre>"+"ITEM NAME\t\t\tQUANTITY\t\tRATE\t\tVALUE"+"</pre></font></b>"); // for printing customer items’ data on screen like ITEM, NAME, QUANTITY, RATE, and VALUE
while(rs.next()) //while condition for initialing the list
{
String t=rs.getString(1);
int len=t.length();
len=40-len;
String s=" ";s=s.concat(t);
len=t.length();
for(int i=len;i<40;i++)
s=s.concat(".");
t=rs.getString(2);
s=s.concat(t);
len=t.length();
for(int i=len;i<8;i++) // for loop for length
s=s.concat(".");
t=rs.getString(3);
len=t.length();
s=s.concat(t);
pw.println(s);
for(int i=len;i<8;i++) // for loop executed for items list
s=s.concat(".");
int n1=Integer.parseInt(rs.getString(2));
int n2=Integer.parseInt(rs.getString(3));
int n=n1*n2; // variable n formula declaration
pw.println(s);
/*s=s.concat(String.valueOf(n));
pw.println(s+"\t "+n);
pw.println(s+"<br>");*/
}
int r=stmt.executeUpdate("delete cart"); // reset the cart option
pw.println("Now your cart is empty");
r=stmt.executeUpdate("update reges set flag='n' where flag='y'");
catch(ClassNotFoundException e){} // no record class
catch(SQLException e){}
/*finally
try
{ if (con!=null) // if condition applied for null values
con.close();
}catch(SQLException e){}}*/
} // program for SQL connection ends
{
String t=rs.getString(1);
int len=t.length();
len=40-len;
String s=" ";s=s.concat(t);
len=t.length();
for(int i=len;i<40;i++) // limits of loop defined in this command
s=s.concat(".");
t=rs.getString(2);
s=s.concat(t);
len=t.length();
for(int i=len;i<8;i++) // for loop for length
s=s.concat("."); // command for concatenation of values
t=rs.getString(3);
len=t.length();
s=s.concat(t);
pw.println(s);
for(int i=len;i<8;i++) // for loop executed for items list
s=s.concat(".");
int n1=Integer.parseInt(rs.getString(2));
int n2=Integer.parseInt(rs.getString(3));
int n=n1*n2; // variable n formula declaration
pw.println(s);
/*s=s.concat(String.valueOf(n)); // concatenation of string values
pw.println(s+"\t "+n);
pw.println(s+"<br>");*/
}
int r=stmt.executeUpdate("delete cart"); // to reset the cart option
pw.println("Now your cart is empty"); // when the cart becomes empty
r=stmt.executeUpdate("update reges set flag='n' where flag='y'");
}} // main program ends
External System Requirements (Maiden, 2008)
Hardware Requirements
The application designed can run on any hardware that has a RAM of minimum 128 Mb. The processor required must be of more than two cores with a clock speed equal to or more than 1 GHz. The hardware must be capable of supporting the online services over the internet and smooth access should be available to the online store’s website.
Software Requirements
The software required can be any web browser capable of accessing the official website of online store like Linux, Android, Windows or IOS. Moreover, the browser must be capable of supporting efficiently the online payment procedures that need high end security protocols. The software must also support networking of different web applications so that all the shopping and payment is done effectively without any bugs.
Key parts of the Application
The key parts of the application include a database for storing store items, database for storing data of customers, graphical user interface for providing customers with an interface, process of purchasing the items in the form of cart, payment procedures, and delivery option which stores the addresses of customers at which the products are to be delivered. These delivery services are provided in association with different courier services provider both nationally and internationally.
STATUS
The current STATUS of the project is fully functional as the Alpha version is already released and now the Beta version with improved operations and less bugs is ready. The databases associated with the project are also completely functional and are in proper connection with the application. The testing phase is will be the next phase in order to discover errors or bugs if any.
References
Banerjee, J., Hsiao, D., & Ng, F. (1980). Database Transformation, Query Translation, and Performance Analysis of a New Database Computer in Supporting Hierarchical Database Management. IEEE Transactions On Software Engineering, SE-6(1), 91-109. doi: 10.1109/tse.1980.234466
Maiden, N. (2008). User Requirements and System Requirements. IEEE Software, 25(2), 90-91. doi: 10.1109/ms.2008.54
Tanaka, M., & Ichikawa, T. (1988). A visual user interface for map information retrieval based on semantic significance. IEEE Transactions On Software Engineering, 14(5), 666-670. doi: 10.1109/32.6144