Documente Academic
Documente Profesional
Documente Cultură
080200107040
Page 1
B2B Portal
080200107040
1.1
Project Definition
Definition: Live Web application of Online BUSINESS-2- BUSINESS PORTAL using JAVA SERVER PAGES (J2EE), SERVLET as a front end tool and MYSQL as backend tool.
1.2
Introduction: B2B stands for Business to Business, as the name suggest its about trading between two or more Business just like Manufacturer supplies the raw materials to the Wholesale companies. It can be treated in other way like, Wholesalers supply the goods to the Retailers or A Distributor in one country can ask for goods in bulk from the exporter in other company. In short it all about trade between two businesses. With the growth in electronic communications, B2B has taken on even more importance. Instead of simply focusing on business-to-business sales, modern corporations are conducting other financial transactions online. B2B communications are now being used to promote investment, trade stocks and form financial alliances The B2B Web sites can be sorted into following types is: Company Web sites. Product supply and procurement exchanges. Specialized or vertical industry portals. Brokering sites. Information sites. Among of these types we are going to launch a B2B portal for trade which provides a platform for buyers and sellers. Its like an online B2B directory services to promote different company as well as Products in the market. This Portal becomes bridge between two unknown companies for right business across the world. It includes huge number of companies profiles and its products range. Purpose: Our Main Purpose is to transit products online for buyer and seller. This will save time works fast and convenient for the seller and distributor. This web portal provides services like Online Database on Indian & International Exporter and Importers, Online Products Display, weekly Newsletter/Discussion forms, online videos Visualization, Membership options and affordable packages, Banner advertisement, etc.
Page 2
B2B Portal
080200107040
1.3
Project Features
This web portal covered more than 20 categories like Agriculture, Automobile, Computer Hardware & software, consumer Electronics, Energy & Power, Food & beverage etc. Each and every category has their sub categories and product list. It display 8/10 product show case on the home page. The major Features that we have included in our project are: Online Latest Product Display Banner Advertisement Online Video Visualization Buying and Selling Leads Online Purchasing (Shopping Cart) Chatting Email Facility We have done the entire validation dynamically using validator object. We have include Servlet-api.jar is used for servlet programming to implement incoming request handler to handle incoming request. Tag libraries have been used for better performance. Advance Search facility by product, by country and by selling and buying leads In this web portal there are 3 Business Listing plans for the companies Plan-A, Plan-B, and Plan-C which include number of different general features like company name, Product list, Contact person, Contact add., Contact no., Company logo, etc. Plan-B and Plan-C provide some additional features like Company logo, Product images, Flash, Video etc Companies also put their advertisement in this website. They can also advertise their product through video visualization. If any buyer or seller want to tread through this website, they have to register them self with the website with any of the respective plan as they choose any of the plan which fit properly with their activities. This website also provide the general Plan-A for the trial.
Page 3
B2B Portal
080200107040
1.4
Project Profile
Project Title
Other Tool
NetBeansIDE-5.0 and above Apache Tomcat 4.0 and Above Glassfish Server Heidi SQL as back-end environment Web Browsers: Mozilla Fire fox, Chrome, Internet Explorer Notepad Editor++ Microsoft Windows XP, windows 98 Microsoft Windows7, Linux ISHU Info net Pvt, Ltd. ISHU HOUSE, Near Rashtriya Shala, Yagnik Road, Rajkot-360002 E-mail:info@ishuinfonet.com
Platform
Organization
Developed by
Sandip K. Parmar
Submitted To
Page 4
B2B Portal
080200107040
Page 1
B2B Portal
080200107040
2.1
2.1.1
Project scheduling is an activity that distributes estimated effort across the planned project duration by allocating the effort to specific software engineering tasks. It is important to note, however, that the schedule evolves overtime. During early stages of project planning, a macroscopic schedule is developed. This type of schedule identifies all software framework activities and the product functions to which they are applied. As the project gets under way, each entry on the macroscopic schedule is refined into a detailed schedule. Here, specific software tasks (required to accomplish an activity) are identified and scheduled. Out of Four months: First month:- January 22th 2011 Project Started Study & analysis of project and java platform.
Second & Third month:- February & March Designing of various forms, DFD, Use Case diagram, Class diagram and Database Design.
2.1.2
Project Planning:
The plan of any project is the basis for the execution and tracking of all the project activities. It shall be used throughout the life of the project and shall be kept up to date to reflect the actual accomplishments and plans of the project. The purpose of Project Planning is to identify the scope of the project, estimate the work involved, and create a project schedule. Project planning begins with requirements that define the software to be developed. The project plan is then developed to describe the tasks that will lead to completion.
B2B Portal
080200107040
2.2
Risk Management
Page 3
B2B Portal
080200107040
Risk Identification
Risk Assessment
Risk Analysis
Risk Prioritization Risk Risk Management Planning Risk Control Risk Resolution
2.2.1
Risk Management The job of Software Risk Management is to identify, Address & Eliminate Sources of Risk before they become threats to successful Completion of a software Project. Different Levels of Risk Management are: 1. Crisis Management 2. Fix on failure 3. Risk Mitigation 4. Prevention 5. Elimination of root causes. Risk Management is made up of Risk Assessment & Risk Control. Risk Assessment: Risk Assessment made up of 1. Risk Identification: It produces list of risk that have the potential to disrupt the project schedule.
Page 4
B2B Portal
080200107040
2. Risk Analysis: It accesses the impact of each risk & risk levels using various practices. 3. Risk Prioritization: Produces list of risk Prioritize by impact. Risk Control: It is made up of 1. Risk Management Planning : It produces plan for dealing with each significant risk 2. Risk Resolution: It is execution the plan for dealing with each significant risk. Risk Monitoring: It is the activity of Monitoring Progress towards resolving each Risk. Risk Identification
Majorities of the risk components lie under the following categories: 1. Performance Risks 2. Project Risks (includes Schedule risk) 3. Technical Risks List of common risk: Feature creep Requirement or Developer gold platting Short Changed Quality Overly optimistic schedule Inadequate Design Silver bullets Syndrome Research Oriented Development Weak Personnel Contractor Failure Friction between Developer & Customer Risk Mitigation, Monitoring and Management (RMMM) Plan Introduction: RMMM plan tackles risks through Risk Assessment and Risk Control. Risk Assessment involves Risk Identification, Risk Analysis and Risk Prioritization; while Risk Control involves Risk Management Planning, Risk Resolution and Risk Monitoring.
Page 5
B2B Portal
080200107040
Purpose: The RMMM plan outlines the risk management strategy adopted. We adopt proactive approach to tackle risks and thus reduce the performance, schedule and cost overruns, which we may incur due to occurrence of unexpected problems. Scope: This Risk Mitigation Monitoring and Management Plan identifies the risks associated with system. In addition to project risks and technical risks, business risks are also identified, analyzed and documented. This document outlines the strategy that we have adopted to avoid these risks. A contingency plan is also prepared for each risk, in case it becomes a reality. Only those risks have been treated whose probability and impact are relatively high, i.e. above a referent level.
Page 6
B2B Portal
080200107040
2.3 Estimation
Project management begins with a set of activities that are collectively called project planning. Before the project can begin, the project manager and the Employee team must estimate the work to be done, the resource that are required, and the time that will elapse from start to finish. Only when this completes, development can proceed further
Page 7
B2B Portal
080200107040
Page 1
B2B Portal
080200107040
3.1
This section describes the various hardware and software requirements by the developer during the development of the project and the tools used. It also includes specification required by the client for implementing and using the system. This includes the decision about the operation system to be used. The alternatives are passed through the mandatory requirements and screening criteria, which is a combination of the requirements and some implicit requirements that the alternative should satisfy.
3.1.1
Hardware: Intel Pentium processor at 2.66 GHz 256 MB RAM minimum, Recommended 512 MB Ram And other regular hardware devices Software: Windows Xp, Windows7, windows 98 apache Web server, Glassfish server,tomcat NetBeansIDE-5.5 and above, notepad++ editor, Browser:- Chrome
3.1.2
Software: Microsoft Windows 98/2000/XP Operating System or higher version Microsoft Internet Explorer 4.0 or higher
Install Java Development Kit(JDK1.6 and above Version)
Hardware: Intel Pentium P III 450MHz or higher 256 MB RAM, recommended 512 or MB higher And other regular hardware devices
Page 2
B2B Portal
080200107040
3.1.3
Software: Microsoft Windows 2000 Server with Apache server, Windows XP or Windows2003 Macromedia Dreamweaver MX 2004, NetBeans IDE-6.9.1, Notepad++ Editor Apache Tomcat Server Or Glassfish server Hardware: Intel Pentium IV at 2.66 GHz minimum, recommended 3.02 GHz 512 MB RAM minimum, Recommended 1 GB Ram And other regular hardware devices
Page 3
B2B Portal
080200107040
3.2.1
JDK 1.6
This application needed to be designed to handle thousands of users simultaneously 24 hours a day, seven days a week, without any downtime. One the major challenges to building such a complex application is to be design and test it. Core components of java such as Java Servlets are considered during implementation of project.Jdk1.5.06 are freely available on www.sun.java.com. It provides following features which support development of web application. Java is simple: Java uses automatic memory allocation and garbage collection. There are many programmers who can understand and write code in Java, so that many people can participate in developing open source software. Java is object-oriented: Object-oriented feature allows creating modular programs and reusable code. So these web services can be reused. Java is platform-independent: One of the most significant advantages of Java is its ability to move easily from one computer system to another. The ability to run the same program on many different systems is crucial to
Page 4
B2B Portal
080200107040
World Wide Web software, and Java succeeds at this by being platform-independent at both the source and binary levels. Java is distributed: Distributed computing involves several computers on a network working together. Java is designed to make distributed computing easy with the networking capability that is inherently integrated into it. Writing network programs in Java is like sending and receiving data to and from a file. Java is interpreted: An interpreter is needed in order to run Java programs. The programs are compiled into Java Virtual Machine code called byte code. The byte code is machine independent and is able to run on any machine that has a Java interpreter. With Java, the program need only be compiled once, and the byte code generated by the Java compiler can run on any platform. Java is secure: Java is one of the first programming languages to consider security as part of its design. The Java language, compiler, interpreter, and runtime environment were each developed with security in mind. Java is robust: Robust means reliable and no programming language can really assure reliability. Java puts a lot of emphasis on early checking for possible errors, as Java compilers are able to detect many problems that would first show up during execution time in other languages. Java is multithreaded: Multithreaded is the capability for a program to perform several tasks simultaneously within a program. In Java, multithreaded programming has been smoothly integrated into it, while in other languages, operating system-specific procedures have to be called in order to enable multithreading. Multithreading is a necessity in visual and network programming.
Page 5
B2B Portal
080200107040
Single-paradigm language: Java is predominantly a single-paradigm language. However, with the addition of static imports in Java 5.0 the procedural paradigm is better accommodated than in earlier versions of Java.
3.2.2
JSP 2.0
Java Server Pages (JSP) technology allows you to easily create Web content that has both static and dynamic components. JSP technology projects all the dynamic capabilities of Java Servlet technology but provides a more natural approach to creating static content. The main features of JSP technology are: A language for developing JSP pages, which are text-based documents that describe how to process a request and construct a response. Constructs for accessing server-side objects. Mechanisms for defining extensions to the JSP language. A JSP page is a text-based document that contains two types of text: static template data, which can be expressed in any text-based format, such as HTML, SVG, WML, and XML; and JSP elements, which construct dynamic content. The Life Cycle of a JSP Page A JSP page services requests as a servlet. Thus, the life cycle and many of the capabilities of JSP pages (in particular the dynamic aspects) are determined by Java Servlet technology. When a request is mapped to a JSP page, it is handled by a special servlet that first checks whether the JSP page's servlet is older than the JSP page. If it is, it translates the JSP page into a servlet class and compiles the class. During development, one of the advantages of JSP pages over servlets is that the build process is performed automatically. Translation and Compilation During the translation phase, each type of data in a JSP page is treated differently. Template data is transformed into code that will emit the data into the stream that returns data to the client. JSP
Page 6
B2B Portal
080200107040
is transformed into code that will emit the data into the stream that returns data to the client. JSP elements are treated as follows: Directives are used to control how the Web container translates and executes the JSP page. Scripting elements are inserted into the JSP page's servlet class. Elements of the form <jsp: XXX ... /> are converted into method calls to JavaBeans components or invocations of the Java Servlet API. Both the translation and compilation phases can yield errors that are only observed when the page is requested for the first time. If an error occurs while the page is being translated (for example, if the translator encounters a malformed JSP element), the server will return a Parse Exception, and the servlet class source file will be empty or incomplete. The last incomplete line will give a pointer to the incorrect JSP element. If an error occurs while the JSP page is being compiled (for example, there is a syntax error in a scriptlet), the server will return a JasperException and a message that includes the name of the JSP page's servlet and the line where the error occurred. Once the page has been translated and compiled, the JSP page's servlet for the most part follows the Servlet Life Cycle: If an instance of the JSP page's servlet does not exist, the container: Loads the JSP page's servlet class Instantiates an instance of the servlet class Initializes the servlet instance by calling the jspInit method Invokes the _jspService method, passing a request and response object. JSP Architecture: The Model 2 architecture is a hybrid approach for serving dynamic content, since it combines the use of both servlets and JSP. It takes advantage of the predominant strengths of both technologies, using JSP to generate the presentation layer and servlets to perform processintensive tasks. Here, the servlet acts as the controller and is in charge of the request processing
Page 7
B2B Portal
080200107040
and the creation of any beans or objects used by the JSP, as well as deciding, depending on the user's actions, which JSP page to forward the request to. There is no processing logic within the JSP page itself; it is simply responsible for retrieving any objects or beans that may have been previously created by the servlet, and extracting the dynamic content from that servlet for insertion within static templates. This approach typically results in the cleanest separation of presentation from content, leading to clear delineation of the roles and responsibilities.
MySQL, the most popular Open Source SQL database management system, is developed, distributed, and supported by MySQL. The MySQL has the following features: MySQL is a database management system. A database is a structured collection of data. It may be anything from a simple shopping list to a picture gallery or the vast amounts of information in a corporate network. MySQL is a relational database management system. A relational database stores data in separate tables rather than putting all the data in one big storeroom. This adds speed and flexibility.
MySQL software is Open Source.
Open Source means that it is possible for anyone to use and modify the software. Anybody can download the MySQL software from the Internet and use it without paying anything. The MySQL software uses the GPL (GNU General Public License),
Page 8
B2B Portal
080200107040
http://www.fsf.org/licenses/, to define what you may and may not do with the software in different situations.
The MySQL Database Server is very fast, reliable, and easy to use.
MySQL Server was originally developed to handle large databases much faster than existing solutions and has been successfully used in highly demanding production environments for several years. Although under constant development, MySQL Server today offers a rich and useful set of functions. Its connectivity, speed, and security make MySQL Server highly suited for accessing databases on the Internet.
MySQL Server works in client/server or embedded systems.
The MySQL Database Software is a client/server system that consists of a multi-threaded SQL server that supports different back ends, several different client programs and libraries, administrative tools, and a wide range of application programming interfaces (APIs). We also provide MySQL Server as an embedded multi-threaded library that you can link into your application to get a smaller, faster, easier-to-manage standalone product.
A large amount of contributed MySQL software is available.
It is very likely that your favorite application or language supports the MySQL Database Server.
3.2.4
Tomcat is a Servlet container with a JSP environment is developed under the Apache license. A Servlet container is a runtime shell that manages and invokes Servlet on behalf of users. Its primary goal is to be an accurate implementation and serve as a reference implementation of the Servlet and JSP APIs, and also to be a quality production Servlet container. Tomcat works as a standalone server or as a helper for Apache and other major web servers (IIS, NES, and AOL Server). Tomcat is the Reference Implementation for the Java Servlet 2.2 and Java Server Pages 1.1 Technologies. It is the official reference implementation for these complementary technologies. Tomcat and Servlet As mentioned above Tomcat is the reference implementation for the Java Servlet 2.2 technology and obviously conforms to the specification that describes the programming environment that
Page 9
B2B Portal
080200107040
must be provided by all Servlet containers that is documented in the Servlet API Specification, Version 2.2.Tomcat will operate under any Java Development Kit (JDK) environment that provides a JDK 1.1 or JDK 1.2 compatible platform. The JDK is required so that youre Servlets, other classes, and JSP pages can be compiled. Once you have downloaded the required file, unzip it to a directory of your choice. A sub-directory named Jakarta-tomcat is created and this is the root directory of the tomcat hierarchy. This sub-directory should contain the following directories as highlighted in the table below. A description of the directories is also given. Directory bin Description Contains the startup, shutdown, tomcat, scripts. These scripts are used to start and shutdown the server and also set the class path and other environment variables. Contains various configuration files including server.xml (Tomcat's main configuration file) and web.xml that sets the default values for the various web applications deployed in Tomcat. Contains miscellaneous documents regarding Tomcat. Contains various jar files that are used by Tomcat. On UNIX any file in this directory is appended to Tomcat's class path. This is where Tomcat places its log files. The Servlet APIs source files. Don't get excited, though; these are only the empty interfaces and abstract classes that should be implemented by any Servlet container. This is where we place our web applications. Usually contains sub-directories and the names usually indicates the respective web applications that are placed in the directory. Table 3.1 Directories The following directories may also be present in the root directory of our Tomcat hierarchy structure: Directory work classes Description Automatically generated by Tomcat, this is where Tomcat places intermediate files (such as compiled JSP files) during its work. If you delete this directory while Tomcat is running you will not be able to execute JSP pages. You can create this directory to add additional classes to the classpath. Any class that you add to this directory will find its place in Tomcat's classpath. Table 3.2 Root Directories
Webapps
Page 10
B2B Portal
080200107040
3.2.5
NetBeans-6.9.1
Net Beans IDE is use for Java/PHP/Ruby development. Net Beans IDE supports integrated configuration windows for managing web servers and databases directly from the IDE.The Net Beans IDE supports various Java EE servers and other web servers for application deployment. You can have multiple servers configured in Net Beans irrespective of the server that will be used in your projects.
3.2.6
Servlet
Servlets are modules of Java code that run in a server application (hence the name "Servlets", Similar to "Applets" on the client side) to answer client requests. Servlets are not tied to a specific client-server protocol but they are most commonly used with HTTP and the word "Servlet" is often used in the meaning of "HTTP Servlet". Typical uses for HTTP Servlets include: Processing and/or storing data submitted by an HTML form. Providing dynamic content, e.g. returning the results of a database query to the client. Managing state information on top of the stateless HTTP, e.g. for an online shopping cart. System which manages shopping carts for many concurrent customers and maps every request to the right customer. Lifecycle of a Servlet The Servlet lifecycle consists of the following steps: 1. The Servlet class is loaded by the container during start-up. 2. The container calls the init () method. This method initializes the servlet and must be called before the servlet can service any requests. In the entire life of a servlet, the init () method is called only once. 3. After initialization, the servlet can service client requests. Each request is serviced in its own separate thread. The container calls the service () method of the servlet for every request. The service () method determines the kind of request being made and dispatches it to an appropriate method to handle the request. The developer of the
Page 11
B2B Portal
080200107040
servlet must provide an implementation for these methods. If a request for a method that is not implemented by the servlet is made, the method of the parent class is called, typically resulting in an error being returned to the requester. 4. Finally, the container calls the destroy () method which takes the servlet out of service. The destroy () method like init () is called only once in the lifecycle of a Servlet.
3.2.7
Java Script
Java Script is use to add interactivity to the html and CSS pages, is a scripting language. Java script is an interpreted language it means that scripts execute without preliminary compilation. Everyone can use this language without purchasing a license. Java Script does the following functionality: Java script gives HTML designer a programming tool. It can put dynamic text into an HTML page. It can react as an event. It means it is working event handling mechanism. Java script can read and write HTML elements. It is use to validate the data. It can be used to detect the visitors browser. It can be used to create cookies.
3.2.8
Struts 3.1
Apache Struts is a free open-source framework for creating Java web applications. Web applications differ from conventional websites in that web applications can create a dynamic response. Many websites deliver only static pages. A web application can interact with databases and business logic engines to customize a response. Web applications based on Java Server Pages sometimes commingle database code, page design code, and control flow code. In practice, we find that unless these concerns are separated, larger applications become difficult to maintain. One way to separate concerns in a software application is to use Model-View-Controller (MVC) architecture. The main aim of the MVC architecture is to separate the business logic and
Page 12
B2B Portal
080200107040
application data from the presentation data to the user. The Model represents the business or database code, the View represents the page design code, and the Controller represents the navigational code. The Struts framework is designed to help developers create web applications that utilize MVC architecture. The framework provides three key components: A "request" handler provided by the application developer that is mapped to a standard URI. A "response" handler that transfers control to another resource which completes the response. A tag library that helps developers creates interactive form-based applications with server pages. The MVC architecture has the following benefits: 1) Multiple views using the same model: The separation of model and view allows multiple views to use the same enterprise model. Consequently, an enterprise application's model components are easier to implement, test, and maintain, since all access to the model goes through these components. 2) Easier support for new types of clients: To support a new type of client, you simply write a view and controller for it and wire them into the existing enterprise model. 3) Clarity of design: By glancing at the model's public method list, it should be easy to understand how to control the model's behavior. When designing the application, this trait makes the entire program easier to implement and maintain. 4) Efficient modularity: Of the design allows any of the components to be swapped in and out as the user or programmer desires - even the model! Changes to one aspect of the program aren't coupled to other aspects, eliminating many nasty debugging situations. Also, development of the various components can progress in parallel, once the interface between the components is clearly defined.
Page 13
B2B Portal
080200107040
5) Ease of growth: Controllers and views can grow as the model grows; and older versions of the views and controllers can still be used as long as a common interface is maintained. 6) Distributable: With a couple of proxies one can easily distribute any MVC application by only altering the startup method of the application.
Page 14
B2B Portal
080200107040
Page 1
B2B Portal
080200107040
4.1
The specific methods analysts use for collecting data about requirements are called the fact finding techniques. During requirements determination phase, the system analyst has to find out how the current system works and what is expected from a new system. For that it is required to spend considerable time in talking with users and gathering all relevant information on the project. Information Sources: Main sources of information are: Users of the system. Study of different manufacturer, service provider, exporter, importers in the system. Procedure manuals and dictionary of the categories and its product and sub-products which specify how various activities, are carried out in the organization. Various reports used in the organization. Computer programs of existing systems. Methods Of Searching for Information: Interviewing Technique:- The primary purpose of interviewing is to obtain both quantitative and qualitative data regarding user requirements, policies, procedures and practices. Questionnaires: - Detailed questionnaires are to gather quantitative information. They are no substitutes for interviews, as questionnaires do not get qualitative information. The shorter a questionnaires, the higher is the probability of getting replies back quickly. Other Methods of Information Search:Other methods of information search are to examine: Systems used in other similar organization. Trade and national statistics. The results of fact-finding are summarized as a report. The report should contain the following data: Background information. Sources used in obtaining information Method used in gathering information. Current procedures. Currently available data.
Page 2
B2B Portal
080200107040
4.2
As long as organization are small, and have limited optional goal, manual information systems are satisfactory. Many trends in the development of industry and commerce have made computer based information systems essential to efficiently run organization these are: The size of the organization is becoming larger. This is true due to increase in population and rapid rate of industrial development. Computer based process enables the same data to be processed in many ways, based on needs, thereby allowing managers to look at the performance of an organization from different angles. As the volume of data increased and variety of information and their timeliness is now of great importance, computer based information processing has now become essential for efficiency managing organization. Organizations are now distributed with many branches. Markets are becoming competitive. To maintain favorable balance of payments in a country, organizations have to be internationally competitive. The general socio-economic environment demands more up to date and accurate information. It is practically infeasible to think of plotting large amount of data without use of computers. Plotting, Meta data finding, everything is not all possible manually. The entire above developments demand decision making based on up to date, well analyze and presented information rather thumb rules and hunches of an earlier era. The weakness of the current system is that the system has not validation for the buyer according to plan as it required. Any Buyer can buy any products even if seller doesnt want to sell the products which are high rated in the market. We have removed this problem by defining 4 plans for the buyer to buy and put their own advertisement and video visualization features.
Page 3
B2B Portal
080200107040
4.3
The current System which we are developing is beneficial for non-authorized persons. We have included 4 plans according to price and other extra features that buyer and seller needed. According to 4 plans buyer has to register their detailed information for online business transaction of the products with the seller. So that we have divide plans into 4 sections that is Plan-A, Plan-B, Plan-c and general. These plans contains different payment condition according that buyer has to do registration and required to be member of the B-2-b site. Following are the functions that our project has these are: In this system, you can get the information about different companies detail and their categories, products and its sub-categories. Buyer can communicate with companys owner or with seller online by chatting, email and by asking questionnaire online. All the information in this web site is fully dynamic. Video Visualization, Advertisement of the products is shown here. Product and their sub category catalogue have been defined in our project.
Page 4
B2B Portal
080200107040
4.4
Feasibility Study
A feasibility study is a short, focused study, which aims to answer a number of questions: Does the system contribute to the overall objectives of the organization? Can the system implemented using the current technology and within given cost and schedule constraints? Can the system be integrated with systems which are all ready in the place? There are various types of feasibility studies Operational Feasibility Technical Feasibility Scheduling Feasibility Economical Feasibility Implementation Feasibility
Now each of them is explained briefly, as below. Technical Feasibility: Can the work for the project be done with current equipment, existing software technology and available personnel? If the new technology is required, what is the likelihood that it can be developed? All the answers to the above and below given questions comprises of the technical feasibility. Technical feasibility tries to answer the following question to make the software feasible to develop. The software or tools necessary for building and running the application are easily available or not The compatibility amongst software exists or not? Are developers aware of these technologies? What about the alternative of these chosen technologies? Factors Considered: Here we have to consider those tools that will be required for developing the project. The tools that are available and tools that will be required have to take in account. Internet facility is always available for technical as well as advanced software help. Considering all above points and aspects it is observed that the cost and effort that would be incurred in developing this project from a technical perspective would not be too high. Thus it is feasible to company.
Page 5
B2B Portal
080200107040
Economic Feasibility: Economical feasibility address to the following issues: Is organization having the suitable budget to develop the proposed system? How much profit can be earned from the system by an organization? Would it be cost-effective to develop the system or it is worthwhile to remain with current system? Operational Feasibility: Operational feasibility focuses on whether the system will work when it is developed and installed. Operationally the system is feasible because: There is sufficient support for the project from management and user. The system is well liked and used to the extent that persons will not be able to see reasons for change. The current business methods are not acceptable because the manual system is time consuming. The users though initially repressive worked along with the development team once the initial doubts were cleared. The users have been involved in the planning and development of the project. This reduces the chances of resistance to the system. The proposed system will not cost any harm to the existing system and its users. No special training required for the user as it has a self explanatory interface. Validation of data input is taken care of by the system and not by the user. Implementation Feasibility: Implementation feasibility is also a very effecting factor while for a new system. The project manager will check whether the developer can make the project in time with the specified requirements and best performance. The project leader will also check that the given tools and technologies to the developer will make the system a success or not.
Page 6
B2B Portal
080200107040
4.5
The user interface is created using various web controls. This interface allows user to graphically select, open and operate on an image file. Apart from this GUI will also enable configuration of software to some extent. We will use black box testing to ensure that software opens an image file correctly. We will also use invalid input file name and see whether software displays appropriate error message or not. Opening of file in high resolution will also be tested and verified. GUI command buttons and their combination will be tested to ensure valid combination of enabling/disabling takes place to justify business logic. All this and other GUI tests will be done. Requirement Specification: A software requirements specification (SRS) is a complete description of the behavior of the system to be developed. It includes a set of use cases that describe all of the interactions that the users will have with the software. In addition to use cases, the SRS contains functional requirements and nonfunctional requirements. Functional requirements define the internal workings of the software: that is, the calculations, technical details, data manipulation and processing, and other specific functionality that shows how the use cases are to be satisfied. Nonfunctional requirements impose constraints on the design or implementation (such as performance requirements, quality standards, or design constraints).
Page 7
B2B Portal
080200107040
Page 1
B2B Portal
080200107040
5.1
Data Dictionary
As a system data model is derived, many named entities, relationships and so forth will be identified. The names given to the entities should be chosen to give to the reader some clues to their meaning. However, further description of the named entities is usually needed to make the model understandable. The description can be informal or formal. Whatever approach I used, it is always worth collecting all description in a single repository or data dictionary. Advantages of using a data dictionary are: It is a mechanism for name management. Many different people who have to invent names for entities and relationships may develop a large system model. These names should be used consistently and should not clash with their meaning. The data dictionary software can check for name uniqueness and tell requirements analysts of name duplication. It serves as a store of organizational information, which can link analysis, design, implementation and evolution. As the system is developed, information is taken to inform the development. New information is added to it. All information about an entity is in one place.
Sr. No. 1 2 3 4 5 6 7 8 9 10 11
Field Uid UserName Email Password Status SecurityQue Ans Suspend Roles LastLogedin User_type
Description User Identification User Name User Email User Password Enable/Disable Security Question Answer of security question Suspended user of not(True/False) Authorization Date Type
Data Type Varchar(10) Varchar(15) Varchar(30) Varchar(30) Boolean Varchar(50) Varchar(50) Boolean Varchar(15) Date & Time Varchar(10)
Constraints Primary Key Not Null Not Null Not Null Not Null Not Null Not Null
Not Null
Page 2
B2B Portal
080200107040
Table 5.2 CATEGORY Sr. No. 1 2 Field CatagoryId CatagoryName Description Category Id Category Name Data Type Varchar(10) Varchar(20) Constraints Primary Key Not Null
Table 5.3 SUB-CATEGORY Sr. No. 1 2 3 Field CatagoryId Sub_CatagoryId Sub_CatagoryName Description Category Id Sub Category id Sub Category Name Data Type Varchar(10) Varchar(10) Varchar(20) Constraints Foreign Key Primary Key Not Null
Sr. No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Field CategoryId Sub_CategoryId SCid Product Id ProductType ProductDesc ProductPrice MinOrderQty Supply Cap PaymentTerms Packaging Storage Expiration_dt Production_dt
Description Category Id Sub Category id Company Id Product Id Name of the product Product Description Price per unit Minimum Qty order by the buyer Maximum capacity of seller to supply product Cash/Cheque/Draft/Card Packaging of the product Where to store the product Expire date of the product Production date
Data Type Varchar(10) Varchar(10) Varchar(10) Varchar (10) Varchar(20) LongText(300) Numeric(10,2) Numeric(5) Numeric(5) Varchar(20) LongText(50) LongText(100) Date Date
Constraints Foreign Key Foreign Key Foreign Key Primary Key Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null
Page 3
B2B Portal
080200107040
Table 5.5 PRODUCT-IMAGE Sr. No. 1 2 Field ProductId Product_image Description Product id Product Image Data Type Varchar(10) LongText(100) Constraints Foreign key Not Null
Sr. No. 1 2 3 4
Description Plan ID Plan Name Feature provided by plan Price of the plan
Sr. No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Field SCid Company CLogo Address City State Country ContPerson TelNo Fax Mobile Email Website PlanId Flash_Pre
Description SellerCompanyId Company Name Company Logo Company Address City State Country Contact Person Telephone No Fax No. Mobile No. E-mail id Website Plan Flash Presentation
Data Type Varchar(10) Varchar(25) LongText(100) Varchar(30) Varchar(25) Varchar(20) Varchar(15) Varchar(20) Numeric(10) Numeric(10) Numeric(12) Varchar(15) Varchar(15) Varchar(05) LongText(100)
Constraints Primary Key Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Foreign Key Not Null
Page 4
B2B Portal
080200107040
Sr. No. 1 2 3 4 5 6 7 8
Description Buyer CompanyId Company Name Company Address City State Country Telephone Email Id
Data Type Varchar(10) Varchar(25) Varchar(30) Varchar(25) Varchar(20) Varchar(15) Numeric(12) Varchar(30)
Constraints Primary Key Not Null Not Null Not Null Not Null Not Null Not Null Not Null
Sr. No. 1 2 3 4 5 6 7 8
Field BCid Productid Categoryid Description Qty Price Total Price Shipping
Description Buyer Company Id Product id Category Id Brief Description of product Qty Price per pieces Qty*Price Transportation of the product
Data Type Varchar(10) Varchar(10) Varchar(10) LongText(300) Numeric Numeric(10,2) Numeric(10,2) LongText(50)
Constraints Foreign Key Foreign Key Foreign Key Not Null Not Null Not Null Not Null Not Null
Sr. No. 1 2
Page 5
B2B Portal
080200107040
3 4
Feature Price
LongText(300) Numeric(8,2)
Sr. No. 1 2 3
Sr. No. 1 2 3
Sr. No. 1 2 3
Sr. No. 1 2
Page 6
B2B Portal
080200107040
3 4 5
Sr. No. 1 2 3 4 5
Description User id Date & Time Question by the user Reply Reply by whom
Constraints Foreign Key Not Null Not Null Not Null Not Null
Sr. No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Field Uid CompanyName Address City State Country PinCode ContPerson TelNo Fax Mobile website Com_regi Com_certi Confirm
Description User Id Company Name Company Address City State Country Postal code Contact Person Telephone No Fax No. Mobile No. Web Site CompanyRegistration CompanyCertificate Confermation
Data Type Int(5) Varchar(50) LongText Varchar(30) Varchar(30) Varchar(15) Varchar(10) Varchar(20) Numeric(10) Numeric(10) Numeric(12) Varchar(15) Varchar(15) Varchar(50) LongText
Constraints Primary Key Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null Not Null
Page 7
B2B Portal
080200107040
ENTITY TYPE
RELATIONSHIP TYPE
ATTRIBUTE KEY ATTRIBUTE MULTIVALUED ATTRIBUTE DERIVED ATTRIBUTE TOTAL PARTICIPATION OF E2 IN R Cardinality Ratio 1:N FOR E1:E2 IN R Structural Constraint(Min,Max) On Participation Of E In R
Page 8
B2B Portal
080200107040
Page 9
B2B Portal
080200107040
5.3
Class Diagram
Class diagram is composed from a set of classes, interface, and their relationships. Class diagram model is the static view of a system. The basic elements for the class diagram are classes and relationship (associations, aggregations, and generalizations).After developed a class diagram, we need to decide the protocol and the implementation on the classes. Visibility can be categorized to public protocol, private protocol and protected protocol.
Page 10
B2B Portal
080200107040
Page 11
B2B Portal
080200107040
Page 12
B2B Portal
080200107040
Page 13
B2B Portal
080200107040
Page 14
B2B Portal
080200107040
Fig. 5.8 Class Diagram of Buyer Info, Cart and Product Detail
Page 15
B2B Portal
080200107040
5.4
Page 16
B2B Portal
080200107040
5.5
Activity Diagram
Page 17
B2B Portal
080200107040
Page 1
B2B Portal
080200107040
6.1
Introduction
Without testing any system doesnt have a stage of Completeness. We also have applied some sort of testing to our project. Testing is integral part of any system or project. If a system is implemented without being tested it may lead to an erroneous working and dissatisfaction on part of the customer. It will also prove disastrous to the reputation of the organization or the person who developed the system and lead to loss in business. Keeping all these things in view, we left no store unturned in testing our systems. It was tested keeping in view the different possibilities on part of the user. As human beings are prone to commit errors under different working conditions, we had to keep our vigil on different possibilities that can occur on part of the user. Software is not unlike other physical processes where inputs are received and outputs are produced. Where software differs is in the manner in which it fails. Most physical systems fail in a fixed set of ways. By contrast, software can fail in many ways. Detecting all of the different failure modes for software is generally infeasible. Software testing is a critical element of software quality assurance and represents the ultimate view of specification, design and coding. When a system is developed, it is hoped that it works properly. In practice, however, some errors always occur.
Page 2
B2B Portal
080200107040
documentation is correct, and human engineered and other requirements are met.
Page 3
B2B Portal
080200107040
System Testing: It tests the system as a whole. It is a functional testing, performed to validate that the application meets requirement specifications. White Box Testing: White-box test design allows one to peek inside the "box", and it focuses specifically on using internal knowledge of the software to guide the selection of test data. Synonyms for white-box include: structural, glass-box and clear-box. White box testing is much more expensive than black box testing. It requires the source code to be produced before the tests can be planned and is much more laborious in the determination of suitable input data and the determination if the software is or is not correct. This testing is concerned only with testing the software product; it cannot guarantee that the complete specification has been implemented. Black Box Testing: Black-box test design treats the system as a "black-box", so it doesn't explicitly use knowledge of the internal structure. Black-box test design is usually described as focusing on testing
functional requirements. Synonyms for black box include: behavioral, functional, opaque-box, and closed-box. Black box testing is concerned only with testing the specification; it cannot guarantee that all parts of the implementation have been tested. Thus black box testing is testing against the specification and will discover faults of omission, indicating that part of the specification has not been fulfilled.
Page 4
B2B Portal
080200107040
Page 5
B2B Portal
080200107040
Table 6.1 TEST CASE AND TEST RESULT: Module Select Login What User Sees Page with forget password, create new user and submit button Page with registration page and create new user for login User can see its product, can view its product detail and can edit product detail User can view latest product, can view all product of particular category, product detail, product image, information of suppler Page with forget password, create new user and submit button User Input User should select radio button for user, enter email and password Expected Result Comment
Input s are successful and Passed respective page will get opened Check Validation of Text Boxes for Proper Values & Passed email should be unique, confirming password Check Validation of Text Boxes for Proper Values.
Select Seller
User have to select product name to view its detail and can update detail of product Buyers have to select category, its subcategory. Can add the product in cart User should select radio button for user, enter email and password
Passed
Select Buyer
Passed
Select Login
Input s are successful and Passed respective page will get opened
Page 6
B2B Portal
080200107040
Page 1
B2B Portal
080200107040
7.1
Security Features
Security means protecting the data and programs against accidental or intentional destruction or disclosure to unauthorized person. The data and programs must be protected from theft, fire, disk corruption and other types of physical destruction. Following steps are taken by us to protect our system. We needed to take regular backups of our project in a fire-proof vault away from the data processing center, so data will be reconstructed when necessary. Only registered viewer would get access to the system and it keeps logs for those attempts, so security cant be violated.
7.2
Coding Standard
The coding standard is the well-defined and standard style of coding. With the help of the coding standard any person can go into any code and figure out what's going on and new people can get up to speed quickly. A coding standard sets out standard ways of doing several things such as the way variables are to be named, the code is to be laid out, the comments are to be described, the work of function are to carried out etc. This section describes the coding standards, which we have used in the program. In the context of coding standard the tag consists of one to four lower case characters followed by an underscore and is used to indicate the type of an object, control, or variable. The prefix applies only to variable names and consists of a single lower case character used to indicate the variables scope.
Page 2
B2B Portal
080200107040
Page 1
B2B Portal
080200107040
8.1 Limitation
There were many problems faced when application has been under construction. The disadvantages that found are: Seller cant interact with their customer or buyer. It was difficult to manage price and trade update at worldwide. The plans that have been mentioned are not satisfied. Limited videos can be uploaded by the buyers and seller No dynamism has been there in project
8.2
Future Enhancement
Providing Buying Leads and Selling leads facility for every product and their sub category. We will implement this application into hibernate and spring framework of the java. We will build the project which would be the platform independent. When buyer will purchase the products, buyer will get SMS.
Page 2
B2B Portal
080200107040
Chapter 9 Annexure
9.1 Screen Shots 9.2 Bibliography
Page 1
B2B Portal
080200107040
Page 2
B2B Portal
080200107040
Page 3
B2B Portal
080200107040
Page 4
B2B Portal
080200107040
Page 5
B2B Portal
080200107040
Page 6
B2B Portal
080200107040
Page 7
B2B Portal
080200107040
Page 8
B2B Portal
080200107040
Page 9
B2B Portal
080200107040
Page 10
B2B Portal
080200107040
Page 11
B2B Portal
080200107040
Page 12
B2B Portal
080200107040
Page 13
B2B Portal
080200107040
Page 14
B2B Portal
080200107040
Page 15
B2B Portal
080200107040
Page 16
B2B Portal
080200107040
Page 17
B2B Portal
080200107040
Page 18
B2B Portal
080200107040
Page 19
B2B Portal
080200107040
Page 20
B2B Portal
080200107040
Page 21
B2B Portal
080200107040
Page 22
B2B Portal
080200107040
9.2 Bibliography
Books:
Java 2: The Complete Reference, Fifth Edition Servlet Essential MySQL & JSP Web Applications Data-Driven Programming Using Tomcat & MySQL Beginning JSP 2 From Novice to Professional J2EE Development Frameworks , Rod Johnson, Interface21, January 2005 Websites: www.RoseIndia.com www.DeniWeb.com www.java2s.com www.strutstutorial.com
Page 23