Monday, October 14, 2019
E-commerce website
E-commerce website Introduction This document consists of a project designed to construct an E-Commerce website for a mobile phone store. Using different methodologies this report will explain in depth how the website was constructed and whether this project was a success. The website allows users shop online for mobile phones and mobile phone accessories. The website consists of many features, which aid the users in locating their desired item i.e. powerful search engine, language translator and easy to use guided navigation menu. These features facilitate users in pin pointing the exact product they are looking for. The website is based around a mobile phone store located in Victoria Greater London. The store is called E Cell Mobile and is a small PLC, which sells mobile phones and accessories. This website has been constructed for the sole purpose of helping the company expand their business to a vast range of customers and to increase company revenue. In order to achieve this goal there were a couple meetings that were held between the developer (me) and the storeowner. During these meetings it was decided that one of the most efficient ways to accomplish this goal, was to create a website to reach out to customers. This should help increase company revenue as well as, being cost efficient given that it is not very costly to run a website, if compared to opening another store. An administrator account has been created, which is to be used by the storeowner. This account was created to allow simple and efficient maintenance of the website. With the use of this account the administrator has access to the whole website and can easily edit data with use of a simple GUI, no PHP knowledge is needed. This would be a great benefit to the storeowner since he can very easily maintain the site. This account allows the admin to add more products using the CSV Import Function, add/edit/delete customers and/or product data and much more. The payment aspect of the website is dealt by PayPal. Once a user selects an item they wish to buy they are redirected to PayPals SSL page. It is made clear to the user that they do not need a PayPal account in order to purchase an item on the website. Once the user is redirected to PayPals secure payment page, they can select the option to pay by direct debit or credit card. If there are any discrepancies with payment then E Cell cannot be held responsible and the case shall go to PayPals accounts department. Analysis During the stage at which the PID was constructed there were a few aspects, which were overlooked. Throughout the analysis phase of this report there will be a few stages from the PID that will be extended, rearranged and added. This project is based around a mobile phone company that does not have an online system. All transactions, customer details and product information are stored on a database that is located on the shop floor. The system that is used to interact with day-to-day customers is pretty slow and lags most of the time. The system that is currently being used is called Metasys. This particular software is a database system, which stores customer and product information. When the store gets a new customer, a staff member inputs the customers details manually into the database. All products are added to the database through a Point of Sale System (POS). Now after doing a bit of research it was discovered that this company (Metasys) was no longer in business and as a result no upgrades are available for this software. To get an idea of how bad the current system was, a few surveys were designed and given out to staff members on the shop floor (these can be seen in Appendix B). Judging by the results received from this assessment it was clear to see that a new system needed to be put in place. Below is a list that has been devised to show the problems with the current system: System often freezes when taking down customer information The database can be very slow at times when accessing large amounts of data Does not have the latest security updates due to the company no longer being in business Opening and closing the database sometimes leads to corruption of data. The system can be slow to respond to common tasks such as View Customer Info A secondary issue that needs to be discussed is that this particular company (E Cell Mobile) would like to expand their business and reach out to a larger customer base and therefore increasing the businesses revenue. The company does not wish to open a new store since this would require a large sum of money, which the organization cannot afford. This project proposes to replace this old system with a new a modern way of doing business. The new system needs to be faster, easy to maintain and a lot more reliable. Although the current database running on the shop floor has a lot of disadvantages there is one positive aspect that allows new mobile phones that arrive for delivery to be added to the database quickly and easily. This is the POS (Point of Sale) system currently used by the employees at E Cell. When a bunch of mobile phones arrive for delivery, a staff member uses an electronic laser to scan the bar codes; these are displayed on the packaging of all the mobile phones. After a particular product has been scanned it will automatically be added to the companys database. E Cell also receives an electronic spreadsheet from their supplier, which consists of all the items that have been delivered to them on that specific date. The point of sale system is a great method for populating information into database. It is fast, simple and requires minimal effort. In order for this project to be a success it is important that this particular method for adding information to the companys database is either improved upon or kept the same. If for any reason the POS system is removed and another system is put into place, then this new system must be able to perform tasks, which are faster and much simpler then the point of sale system. Aims Objectives Every project consists of a number of goals, which need to be achieved. These goals decipher whether the project will be a success or a failure. A successful project would have met and accomplished each target. The main aim of this project is to create a product, which resolves the problems that are encountered by the current system. Below is a list of aims and objectives for this particular project. Some of these aims and objectives that were looked at during the project initiation stage have been changed and modified. There has been an addition of some new goals to the list. The list below has been based around, how appalling the current system is and if a new system was to be created what would it need in order to be successful. Aims: The system should be easy to navigate around Buying an item should be fast and efficient The system must be user friendly The system must be faster and more reliable than the old system The admin should be able to add/delete/edit customer and product information Objectives: To provide a mobile system that allows users to purchase mobile phones and accessories. Allow users to create their own customer account online. To provide an interface usable by less literate computer users. Allow users to save any transactions that have been made Provide users with tracking info so they can track their purchase As mentioned in the project initiation document this project will take the DSDM approach. DSDM states that in order to achieve maximum business benefit and a fully working system that is fit for purpose; one must outline the user/business requirements and aim to accomplish them all. DSDM uses an excellent prioritisation method called MoSCoW. This prioritisation method outlines the crucial requirements that need to be achieved in order to get a system fit for purpose. All requirements shown in the Must Have section below have to be completed in order for this project to be successful. MoSCoW Prioritization Must Have Users must be able to buy a mobile phone online (M1) System must contain search parameters to allow ease of use (M2) Site should be user friendly (M3) Admin should be able to add/delete/edit product and customer information (M4) POS system needs to be improved upon or left as it is (M5) Should Have The user is contacted via email once they have made a purchase (S1) The user can email a staff member if they have a question (S2) Could Have Google Maps to display location of shop (C1) An online chat client to answer user queries (C2) Wont Have Selling mobile tariffs (All mobile phones will be pay-as-you-go and not on contract) (W1) All of the requirements of the Moscow prioritization have been tagged e.g. M1, M2, S1, W1 etc. The reason they have been tagged is because they will be referred to as M1, M2, S1 etc during the implementation phase of this report. Requirements There are certain sets of requirements that need to be achieved when creating this new system. These requirements are split into two sections, Functional and Non-Functional. These are outlined below. Functional requirements Multiple transactions can be made at the same time Customers can add items to a shopping basket Customers can view, edit and remove items from shopping basket Customer is notified via email when purchase is complete Non-Functional Guided navigation menu makes browsing easy for the user Transactions can be completed using multiply currencies Availability System will be up 24/7 with minimum down time Accessibility The system can be viewed in other languages other than English Requirements Table A central list of requirements was constructed by the client, these have been listed below. Each of these requirements need to be met otherwise this project will be a failure since the final product will not be fit for purpose. The client gave a larger list of requirements (shown in Appendix D) however the requirements listed in table below is what the client has said to be mandatory prerequisites and thus need to be completed. Feasibility Study In the feasibility study the following areas will be looked at, project risk analysis, cost benefit analysis and stakeholder analysis. Project Risk Analysis Cost Benefit Analysis Since this is a student project there wont be a huge budget. The software that will be used to create this product will either be freeware or already available to the developer. As a result cost will be kept to a minimal. In terms of hardware, a pc/laptop is already available since the University provides this and electrical fees/bills will also be covered by the University. If the system is to be hosted online then these fees will be paid by E Cell Mobile although a free hosting provider will be the first priority. Stakeholder Analysis Managing stakeholders is an important factor in order for this project to be successful. Below is a list of all the stakeholders involved in this project i.e. people that are affected by the work that is done, who influence or have power over it or have an interest in its successful or unsuccessful conclusion. Vishal Verma (Project Manager/Developer) The developers role will be to manage the project, make sure all milestones are met and that the final product is produced within the set deadline. Jim Johnston (Client/General Manager) Jim will be the first point of contact. He manages most of the staff and deals with all sales related aspects. Dean Forster (Store Manager/Company Owner) Dean is the owner of the store and will be the second point of contact. Project Method Approach There is one main objective, which needs to be fulfilled in order for this project to be a success. The new E Cell Mobile system needs to be fit for purpose. A system that is fit for purpose will ideally meet all user/business requirements of this project. Below is a quote from Harvey and Green (1993) that explains what fit for purpose actually is. Quality is thus judged in terms of the extent to which the product or service fits its purpose. This notion is quite remote from the idea of quality as something special, distinctive, elitist, conferring status, or difficult to attain. It is a functional definition of quality rather than an exceptional one. If something does the job it is designed for then it is a quality product or service. (p.16) Every product and service has the potential to fit its purpose and thus be a quality product or service. Fitness for purpose has emerged as the fashionable way to harness the drive for perfection. The ultimate measure of perfection, zero defects, may be excellent as a definition of quality but runs the fatal risk of being perfectly useless. If the product does not fit its purpose then its perfection is irrelevant. (p.17) This specific project will be using the DSDM approach, this is because by using the DSDM approach the project itself will be carefully planned e.g. MoSCoW, timeboxing, facilitated workshops etc. At times it can be very easy for a project manager to become unorganized especially if the project has not been planned and as result, the final results may be below satisfactory. Due to this reason MoSCoW prioritisation has been discussed earlier on in this report so that the project manager/developer and the client know what exactly the final product will contain. In conjunction to the management of this project, DSDM Atern will be the main forefront. This technique mainly focuses on Time, Cost and Quality. Figure 1 below (Atern Approach) states that Time, Cost, Quality is fixed and will not be changed throughout the projects life cycle, whereas features can be manipulated since it is a variable. The traditional approach to this is the complete opposite and will be avoided since quality should never be compromised. Facilitated Workshops Facilitated workshops are part of the DSDM Atern development approach. Since this project uses the Atern management method it was vital to incorporate the facilitated workshop technique into this project. By using an interactive environment, effective group dynamics and visual aids, facilitated workshops are designed to extract high quality of information in a compressed time frame in order to meet the predetermined set of deliverables. By constructing these workshops it will make it easier to achieve the targets that have been set from the beginning. The project manager will act as the facilitator and arrange these meetings. Information that maybe be discussed in the workshops is as follows: Who is the target audience? How can the business reach out to customers? Advertising Sponsorship The list is just a small number of topics that maybe be discussed during the workshops. It is vital that all the project stakeholders attend these meetings. Facilitated workshops will give the project manager an overview of what needs to be done and the time everything needs to be completed in. Design During the design phase of this project there were a number of solutions that came to mind. The new system that is to be created must overcome the problems faced by the old outdated/system. Below is a list of solutions that could be implemented to solve the problems discussed during the analysis phase. Rebuild the system on the shop floor. Install new database software and get faster and more reliable hardware to cater for the new database. Build a website to cater for customers, this will also have an online database Open a new branch in order expand the business Two of the solutions shown above (Rebuilding the system and opening a new branch) just do not seem feasibly. Opening a new branch would just to be too costly and would require a lot more man power, effort and time which the company does not have. In terms of rebuilding the new system, the cost of installing a new database and installing new hardware was just too high and above the companys budget. The only measurable idea was to create a website; this would be cost efficient and require minimal effort. The final solution was to create an E-Commerce website. This website will be online 24/7, and as a result can be accessed by staff members anytime of the day/night. Employees will no longer need to go to the shop floor to access the database. The website will contain an administrator account that will only be able to be accessed by staff members. This account will give access to the companys database, which will include access to product details, customer information and any transactions that have taken place. Users will be able to go onto this website buy a mobile phone (or any mobile accessories), add the item to a basket and then pay for it. PayPal will handle the payment system so the business will have the peace of mind that their money is safe and secure and so will the customers. The way the payment system will work is once the user has added an item to their shopping basket they will have the option to checkout. The checkout page will give the user a brief description (preliminary invoice) of the transaction, this will include; item description and total price. On this page it will be made clear to the user that they will be paying via PayPal and that a PayPal account is not necessary need in order to make a payment. Once the user accepts these conditions they will be redirected to PayPals payment page, this is where account details such as bank account number, sort code are entered. PayPal will verify this information and send out two emails. The first email will be sent to the customer verifying payment and the second email will be sent to the administrator of the site which will contain an invoice of that particular transaction. Once payment has been confirmed by PayPal the administrator can deliver the item to the customers address. Tracking of all delivered items will be provided to all customers. There will be a Tracking section on the website which will give a detailed explanation on how customers can track their purchased products. The way the tracking system will work is once the payment has been confirmed by PayPal the administrator will post the item via Royal Mail/DHL to the customers address. Royal Mail/DHL will then provide the administrator with a tracking number. This particular number will be posted to the customer via email. The customer can then visit Royal Mails/DHLs website (the link for this is provided in the email) and enter the transaction number to get a rough idea of when their purchased item will be arriving. Organisational Benefits By creating an E-Commerce website it will tackle all the problems the company is currently facing and also, it will be very cheap to run and maintain. Below is a list outlining the benefits of opening an E-Commerce store for E Cell Mobile. Expand business Interact with a larger customer base Increase company revenue Faster and more reliable system Easy to maintain Secure Software Tools To develop the website the following languages/tools/software will be used: PHP/PHP Editor This will be used as the server side code. PHP will be used to communicate with the MySQL database. AJAX AJAX will be helpful since you can update part of a webpage without refreshing the whole content. So in this case the user can enter a search query and instead of refreshing the whole page the results for the search are shown instantly Jscript/jQuery Guided navigation menu MySQL All customer/product data will be stored on a MySQL database. Adobe Flash Flash player will be used on the home page in order attract the audience to the website. Swish This program will be used to create a flash video. Although this program is not freeware it is still possible to use the 30 day trial period. phpMyAdmin By using the easy to use GUI provided by phpMyAdmin it will make it a lot easier to manage the MySQL database. CSS/HTML/XML Designing the website (Aesthetics) Adobe Photoshop Constructing the company logo Quick n Easy FTP Uploading files to the server Apache v2.5 To enable local host a web server needs to be initialised ergo Apache will be utilised. Prototyping Since this project will use an agile approach it was important to build a horizontal prototype. This allows the developer to construct the product in an iterative cycle and therefore achieving better functionality. The horizontal prototype is the man-machine interface (MMI). At first a quick sketch is drawn on a piece of paper in order to get an idea of what is to be done. To make a prototype for the E Cell Mobile system, the website www.gomockingbird.com was utilised. These prototype models can be seen on page 15 (Figure 4, 4.1, 4.2 etc) During the horizontal prototyping surface interface software functionalities were not working but by creating a sketch (using the go mockingbird website) it allowed the developer to achieve a perception test. This helped to evaluate how easily other users could understand the interface. During the perception test users were just shown a bunch of windows and buttons, on a piece of paper. The users were then asked to explain what they understand from the information displayed before them. The results for the perceptions test can be seen in Appendix C Horizontal prototyping allows the developer to check the behavior of the interface and decipher the vital points, where usability inconsistencies are likely to appear. After completing the horizontal prototype, and in order to get a full analysis of the user interface, another set of tests was done. These tests are known as Vertical Prototyping. This helped to implement a consistent set of functionalities in order to allow the user to achieve a typical scenario of usability. These tests were only done after the GUI was 90% complete. At this stage the prototyping consisted of a series of user tests during, which the vital points raised throughout the horizontal prototyping phase are evaluated. Usability Test This specific test allows identifying of usability problems and analysing their cause with the users. The user is given the system and allowed to beta test it in any way they like. Solutions are elaborated and implemented during this stage of the prototype and as a result may change the final look and feel of the system. The results for this particular test can be seen in Appendix E. This test was constructed after the website was completed. If any discrepancies were found during these tests then website was modified accordingly. GUI Design Before the implementation phase a few screen designs were constructed. This gave a rough idea of how the website should be built. These screen designs were shown to a random bunch of users in order to assess the usability of the interface (Perception testing Appendix C) The customer must enter their user name password into these fields in order to login. By using the Forgot Password? link the user can input their email address which they used to register with the website, and a new password will be sent to this email address. By checking the Remember Me? check box a cookie will be added to the users internet explorer folder. This means the user will no longer need to type in their user name and password every time they visit this page. Product Details These are images of the product Breadcrumb trail; the user can use these links to go back and forth. This section of the page displays information regarding the product. The user can use this link to tell a friend about a product listed on this page. Necessary information such as friends name, email etc must be filled out The information in the Captcha must be entered to verify that you are human and not a bot. A message can be written regarding the contents of this email. A short description of the company such as when it started and who is involved in the organisation. Contact information will also be shown in this section e.g. address, email telephone etc. Using the Google Maps API, E Cell Mobiles location will be shown on this interactive map. UML Case Diagram Below is a case diagram for the system that is to be built. It displays two Actors, the User and the Administrator. In the middle is the system where all calculations and processes are made. The user (customer) is able to perform a number of functions, such as searching for an item they wish to buy, adding that specific item to a basket, emailing the site owner etc. The Administrator is able to perform high priority decisions such as viewing all customer transactions, removing or adding customer and product information etc. The ERM diagram shown in figure 6 displays the different types of tables that will be used in order to create the database. Each table has a different number of attributes and each attribute has its own data type. Each table has its own primary key; this is a unique identifier for every table and is not repeated. Some tables include foreign keys; this is a referential constraint between two tables. The entity relationships between each table can clearly be seen by the bold and dotted lines. Certain tables have a one to one relationship whereas some may have a one to zero relationship. This ERM model was constructed using MySQL Workbench. This is a freeware program provided by MySQL. Information is taken from a phpMyAdmin database and then converted into an ERM model automatically. Below is a brief description of each table in the database. Admin Users: This table holds details for all the administrators. Administrators are split into two categories; Super User and User. An administrator classed as a super user will have full control over the website and an administrator classed as user will be able to control certain aspects of the website. Search: This table holds details for all search related queries posed by the user. If a user searches for Apple iPhone then this particular search request will be recorded in to this table. This is mainly for the administrator to view and analyse what the most popular search requests are. As a result the admin can cater for the users needs. For example, a large number of users search for the same mobile phone however, there is no such phone is listed in the database. The administrator can view this particular search query and cater for the users needs by adding that specific handset model to the database and thus increasing sales. Brands: This table will hold details for all the different types of brands of mobile phones and their related images. Order Summary: Once the user has bought a product, the details of that particular transaction will accumulate in this table. This table will hold information such as customer details, product details and the total price of that particular sale. Towards the finalization of a transaction the customer is shown a summary page, this consists of details regarding their purchase. This information is taken from the Oder Summary table. Inventory: This table holds details of all the products in the database; this will include attributes such as price, description, name etc. Order Inventory: All transactions that are made will be stored in this table. Customer: This table holds customer details such address, phone number, postcode etc. Activity Diagram The Activity diagram (Figure 7), displays how the new system will work. The current system works in a similar way however orders are not shipped to the customer, since the customer is already in store when making the purchase. The new system will be online and therefore when a customer makes a purchase their item will be delivered to their specified destination. An invoice will also be sent to the customer via email. The invoice will be sent to the users registered email address. Once payment has been made through PayPal, they administrator will be notified by PayPal, via an email outlining the transaction details and confirmation of payment. Dataflow Diagram (New/Improved User Interface) The dataflow diagram below shows a brief outline of how the user interface will look like for the new E Cell Mobile system. The diagram explains some user interactions such as, the user can search or browse for a product, items can be added to a shopping basket etc. From the flowchart we can clearly see that it is not obligatory for the user to login in order to search or browse the site however, in order to purchase an item it is mandatory that all users register and login. Hosting When building a website it is crucial to setup a web server. This can either be hosted on your own personal computer or hosting can be bought. There are a number of advantages/disadvantages for hosting online and from your pc. As the developer of this project it is important to choose the correct hosting method so that it does not affect the development of the system. Below is a list of two hosting methods that can be used, each method has its pros and cons. Localhost Localhost means this computer and is donated by an IP address of 127.0.0.1. It can be used to host content to the World Wide Web. There is no charge for this since content is hosted from you own computer. In order for localhost to wor,k a web server needs to be installed. Since this website will be using a large database, MySQL and PHP also need to be installed. The two main web servers out there today are Apache and IIS. As the developer of this project it is important to decipher which one of these is the best web server to use for this project. After doing a bit of research the following results were obtained. IIS and Apache operate very differently and thus have a variety of advantages of disadvantages. IIS is designed and available to work only within the Windows environment. With IIS 6.0, the only platform currently supported is Windows Server 2003. Although this limits the deployment platf
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.