Вы находитесь на странице: 1из 57

TABLE OF CONTENTS

Acknowledgement Abstract List of Figures Table Of Contents

i ii iii iv

Chapter : 1

INTRODUCTION TO PROJECT
1.1. 1.2. 1.3. 1.4. Project Summary Purpose Scope Technology & Literature Review 1 1 1 2

Chapter : 2

PROJECT PROFILE 2.1 Project Features 2.2 Operating Environment 2.3 Details of Expected Functionality PROJECT MANAGEMENT
3.1. 3.2 3.3 3.4 3.5 Project Planning Project Development Approach Project Schedule Roles and responsibilities Risk management 3.5.1 Risk Identification 3.5.2Risk Management and Planning

Chapter : 3

9 9 11

3.6. Effort Estimation

12 12 12 12

Chapter : 4

SYSTEM REQUIREMENT STUDY


4.1. User Characteristics 4.2. Hardware & Software Specification 4.3. Constraints 15 16 16

Chapter : 5

SYSTEM ANALYSIS
5.1. Study of Current System 5.2. Problem & Weaknesses of current system 5.3. Requirement of new system 5.4. Feasibility Study 5.5. Requirements Validation 5.6. Functions of system 5.6.1. Use Case Diagram 5.7. Data Modeling 5.7.1. E-R Diagram 5.7.2. Activity Diagram 5.7.3. Data Dictionary 5.8. Functional & Behavioral modeling 5.8.1. Data Flow Diagram 5.9. Main modules of new system 17 17 17 18 19 19 20 22 22 24 27 28 28 29 30 31

Chapter :6

REFERENCES

32

Online Quiz

PART 1 INTRODUCTION

Online Quiz

Objective
Objective behind this project is, to purchase items online from provision stores available in the malls that manages and co-ordinate all the process of purchasing products very easily. Provide best service to customer.

Purpose
..1 Problem:
Online shopping is the buzz, the sensation in the current scenario. Getting anything by a click of the mouse right from fashion accessories to jewelry, apparel, electronic items, crockery, home appliances like LCD and washing machines, personal care products, and more has led to the popularity of the 'online shopping mall' phenomenon. It is the easiest and fastest way of shopping. At an online shopping mall, you can catch a glimpse of new product releases, combo deals, packages, discount offers, seasonal products, etc. and accordingly grab the best deal. But still in country like India people are afraid of buying products online on the Internet as they dont trust to give their credit card number over the web. Besides shopping items such as electronics and jewelry people do not trust on shopping online for products such as grocery/provision products. For this the people want to first check the grocery items such as wheat, grains, rice, and much more products that are available in a provision store and then only they purchase that products. Also in country like India there are very few websites available for shopping these grocery products online. Different Malls available in the city are also not providing any details on grocery products. The well educated people in the country are now tending to move towards online shopping for various grocery products in an provision store. As in cities like Chennai, Mumbai the hardworking people dont have much time to go to a mall for shopping so they prefer to purchase the grocery products online as they are very well familiar with the branded products.

Online Quiz

..2 Solution:
As per the growing needs of the customers there is a need in the market to provide the society a good and efficient website for people to fulfill their wishes and provide them the grocery products at a best value as per the customers own choice in different malls available in their cities. This will consume less time for the customers as well as their own benefit according to the discounts available in the malls for a particular product. Time is not the constraint; you can shop anytime - the facility is available round the clock. Besides saving your time of visiting an offline store and staying away from the hassles involved, you can gain an additional advantage, i.e., saving a lot on the money factor. Another plus point of online provision store is that you can compare products in terms of brands, specifications, features and prices and buy the right in a particular mall as per the customers satisfaction. It is discount shopping that attracts customers to shop online. There are a number of shopping platforms. Focus on one particular portal that provides complete products and offers the best deals. Get yourself registered to avail various benefits. For example, you can feed in your contact details so that you need not enter the same every time you shop. Also customers are free to check the details of various malls as per their area, membership, and choice. The customer will be able to make choice of his/her products in the malls as per their requirement. There are counted few platforms that facilitate group bargaining, helping buyers collectively avail maximum discounts in addition to enjoying voice video text chat, meeting new shoppers , winning prizes, and more. The scope of discount shopping is not only limited to one particular section. You can use your credit card or debit card to buy the desired products. Most online platforms provide payment facilities in all available modes right from Internet banking, paying by cash, paying cash at the time of delivery, etc. At a shopping mall, you can explore similar products representing some of the biggest brands at the national and international level. If you are fortunate, you can avail discounts over more than fifty per cent. You can always find something new and interesting. So shop online and stay benefited!

Online Quiz

Scope
The main objective of this project is to conduct online test which will help them to become self paced learners and to make them aware of examination pattern of many competitive exams.Some of the aim of the project includes : Help students to go beyond their normal curriculum and learn about various other aspects which are apart from academic education. To provide an examination system where, there is virtually no scope of errors and the results are much faster. And the system is more transparent. To provide an environment where students not only can learn but also analyze their performance simultaneously. To train the students to work within time limit with constraints .

Goals
Shopping has long been considered a recreational activity by many. Shopping online is no exception. The goal of this application is to develop a web based interface for online retailers. The system would be easy to use and hence make the shopping experience pleasant for the users. The goal of this application is

To develop an easy to use web based interface where users can search for products, view a complete description of the products and order the products.

A search engine that provides an easy and convenient way to search for products specific to their needs. The search engine would list a set of products based on the search term and the user can further filter the list based on various parameters.

Drag and Drop feature which would allow the users to add a product to or remove a product from the shopping cart by dragging the product in to the shopping cart or out of the shopping cart.

A user can view the complete specification of the product along with various images
and also view the customer reviews of the product. They can also write their own reviews.

Online Quiz

1.5 Platform Specifications Deployment


1.5.1 Hardware Specification
Processor P IV RAM 250 MB Minimum Space Required 100 MB Display 16 bit color

1.5.2 Software Specification


Operating Environment Win 2000/XP Platform Hibernate Framework Database SQL Server 2005

Online Quiz

PART 2 PROJECT PROFILE

Online Quiz

2.1

Project Features

Objective questions -- multiple choice, single choice, true-false,fill in the blanks

Time bound/ Unlimited time quiz

Random selection of questions

User attempt restriction

Questions Sections/Categories User restriction for a quiz Jump to sections during quiz Detailed Grading reports

Can be used as single user,web or in networks

2.2 Operating Environment


The project is based on .NET technology which uses IIS server. The only requirement to access this website is the internet connection enabled.

2.3 Details of expected functionality


Functionality has been divided in to the following bullet points in shown tabs. Profile: o Register Profile 9

Online Quiz o Login with Profile o Update Profile o Delete profile Product: o Manufacturer o Features o Price Payment:

o Credit card o PayPal


Support: o FAQs, Help, Contact, About, Feedback etc.

10

Online Quiz

PART 3 PROJECT MANAGEMENT

11

Online Quiz

3.1 Project Planning


Project planning is concerned with identifying and measuring activities, milestones and Estimating some basic attributes of the project Cost : how much will it cost to develop the project?

Duration : How long will it take to complete the development? Efforts : How much efforts would be required?

The effectiveness of the subsequent planning activities is based on the accuracy of this estimation. Scheduling man power and other resources Staff organization and staffing plan Risk identification, analysis and abatement planning Miscellaneous plans such as quality assurance plan, configuration management Plan, etc. Project management involves planning, monitoring and control of people, process and the events that occurs as software evolves from a preliminary concept to an operational implementation. Cost estimation is a related activity that is concerned with estimating the resources to accomplish the project plan. Software project management is an umbrella activity within software engineering. It begins any technical activity is initiated and continues through out the definition, development and support of computer software. Project must be organized into effective teams, motivated to do high quality software work and coordinated to achieve effective communication. The product requirement must be communicated from customer to develop, partitioned into their constituted parts and position for work by the software team. The process framework is selected and appropriate software engineering paradigm is applied and set of work, task is chosen to get the work done. The project must be organized in a manner that enables the software team to succeed. A project management activity encompasses measurement and matrix, estimation, risk analysis, schedules, tracking, and control.

12

Online Quiz

3.2 Project development approach


Software process model is an abstract representation of a software process. Each process model represents a process from a particular perspective so only provides partial information about that process. These generic models are not definitive descriptions of software processes. Rather, they are useful abstractions, which can be used to explain different approaches to software developments. For many large systems, of course, there is no single software process that is used. Different processes are used to develop different parts of the system. Development approach of any project depends on many factors. They are like resources, clear-cut information available in the form of requirements, process maturity, tool maturity, manpower with skills, time duration to develop, complexity and criticality of the project.In this project, Spiral Model seems to be more suitable for development approach.

Figure: 2.1 Spiral Model

13

Online Quiz

Basically Spiral Model is split into four sectors or (quarters) as shown in figure. The first quadrant identifies the objective of the phase and alternatives solutions possible for the phase under consideration. In second phase, alternative solutions are evaluated to select the best solution possible, and for the chosen solution, the potential risks are identified and dealt with by developing an appropriate completion of a software project. Activities during third quadrant consist of developing and verifying the next level of the product. Activities during third quadrant consist of developing and verifying the next level of the product. Activities during the fourth quadrant concerns reviewing the results of the stages traversed so far with customer and planning the next iteration around the spiral. With each iteration around the spiral (beginning at the center and moving outwards), progressively a more complete version of the software gets built. And all the risks are resolved and the software is ready for development. As we have already mentioned that project is following the spiral approach to develop the whole project and spiral model can be viewed as a Meta Model because it subsumes all the models i.e. waterfall model, iterative model, prototype model, evolutionary model. So at each stage of the project development life cycle it follows the model which is more appropriate based on the condition met as well as it is also having pre-determined potential risks which is generally resolved as the spiral move outwards from one stage of development life cycle into next subsequent stage.

Advantages of the Spiral Model:


The spiral model is a realistic approach to the development of large-scale software Products because the software evolves as the process progresses. In addition, the Developer and the client better understand and react to risks at each evolutionary Level. The model uses prototyping as a risk reduction mechanism and allows the Development of prototypes at any stage of the evolutionary development. It maintains a systematic stepwise approach, like the classic life cycle model, but Incorporates it into an iterative framework that more reflect the real world. If employed correctly , this model should reduce risks before they become Problematic, as considerations of technical risks are considered at all stages.

14

Online Quiz

Phases of Development: Analysis Phase:


The tendency of the targeted users and resource restriction probably the major decisional factors in selecting analysis approach and development methodology. At

the very beginning i.e. first level of spiral, basic requirements related to the project is clearly mentioned by the customer as well as easily understood by the Analyst. So there is no way in the deficiency of the requirements and made it easy for the developer to proceed there work in the development part. With the requirements available potential risks for this phase are also identified so that it cannot make the

situation more worsen later on as well as feasible solution for the same are also identified and chose the best possible option for implementing. Modules such as admin, student, faculty, attendance, scheduler, FSC, etc. are properly analyzed one by one.

Design Phase:
The ultimate goal of the design planning is the optimization of the system. Design

phase decides the relative structured arrangement of system entities in a way that optimize the output, though the system is confined within the available resources and boundaries. All the design parts such as Form Design, Database Design, overall system architecture, and report layout design, actual report generation design come under this phase and risks associated with it in the form of rejection of ideas or work carried out are also resolved during this phase.

Implementation Phase:
Implementation phase includes development of UI components, creating prototypes of each module involved with the proper functioning of all the stated tasks in the design phase as well as actual database design with entry of records are also carried out to check whether any inconsistency or redundancy occurred in the database or fulfilled all the constraints mentioned in the design phase.

15

Online Quiz

Testing Phase:
The testing phase ensures whether the produced system meets the specification decided in analysis phase. The uncertainty is removed in the testing. The methods of testing are explained in testing phase. This phase mainly deals with checking the standards of the system whether they fulfill or not.

3.3 Project schedule


Scheduling the project is an important activity. It involves deciding which tasks would be taken up when .Project Manager of project has done these following tasks. Break down large tasks into small activities.

Weeks 1st week 2nd week


3rd week 4th week 5th week

Starting Date 12th August 15th September 20th October


2 November 10th November
nd

Ending Date 14th August 19th September 25th October


7 November 15th November
th

Work Done Defining project Planning on project


Designing model DFD, Class Diagram Database Design

Table 3.1

16

Online Quiz

3.4 Roles and responsibilities


Analysis Design Flow Diagrams Database Creation Testing Documentation Ravi, Harshil, Harsh Ravi, Harshil, Harsh Harshil, Harsh Ravi, Harshil Ravi, Harsh Ravi, Harshil, Harsh Table 3.2

3.5 Risk management


Risk Analysis and management are a series of steps that helps a software team to understand and manage uncertainty. Many problems can plague a software project. A risk is a potential problem it might happen, it might not but, regardless of the outcome, its really good idea to identify it, assess its probability of occurrence, estimate its impact, and establish a contingency plan should the problem occur. Software is difficult undertaking. Lots of thing can go wrong, may often do. Its for this reason that being prepared-understanding the risks and talking pro active measures to avoid or manage them-is a key element of good software project management. Different steps in risk analysis and management are Risk Identification, Risk Analysis and Risk Planning & Management.

3.5.1 Risk Identification


Risk identification is the first stage of Risk Management. It is concern with discovering possible risks to the project. In principle, this should not be assessed or prioritized at this stage, although in practice risks with very minor consequences or very low probability risk are not usually considered.

17

Online Quiz Dependencies: Availability of trained, experienced people Intercommoning or Inter group dependencies Customer furnished items or information

Requirement Issue: Lack of clear product vision Lack of agreement on product requirement Technical staff conflict Un prioritized requirements New market with uncertain needs Rapidly changing requirements

Management Issues: Inadequate planning and task identification Inadequate visibility into actual project status Unclear project owner ship and decision making Unrealistic commitment made, some times for the wrong reasons. Managers or customers with unrealistic expectation Staff Personality conflicts Poor communication

General Risks: The general risks that can be affect the development of software as follows: 1. Lack of resources: The resources which are needed for the development of this project are not available during project. We need at least one computer per member in the company with all the software required software installed in order to develop the project as well as for evaluation purpose.

18

Online Quiz 2. Time Duration: We are creating this software module for real time project of company so it takes time to implement correctly and completely. 3. Customer Requirement : Customer may have such requirement during project development that will cause change of the whole design. So we might not implement the project according the schedule.

3.5.2 Risk Management and Planning


During the risk analysis process, each identified risk is contained in turn and a judgment made about the probability and seriousness of the risk. Once the risks have been analyzed and ranked, a judgment must then make about which are the most important risks, which must be considered during the project. Risk planning process considers each of the key risks, which have been identified and identified strategies to manage the risk. Again there is no simple process that can be followed to establish risk management plans. It relies on the judgment and experience of the project manager.

Risk
Resources unavailability Domain misunderstanding Interface with other software Change of Customer requirement Unknown dependency of system Lack of direct contact with user Gap due to communication Low

Portability
Serious

Effect

Moderate Moderate Moderate Low Low Low

Catastrophic Serious Serious Tolerable Tolerable Tolerable

19

Online Quiz Schedule break up Compatibility Low High Tolerable Serious

Table 3.3 Risk Factors

Risk
Resources unavailability Domain misunderstanding Interface with other software Change of customer requirement Unknown dependency of system Lack of direct contact with user Gap due to communication Schedule Break up Compatibility in wide range

Planning
Prior analysis of resource required Study of existing and root application Demonstration required Periodic online meeting and support help External scope and future planning Online meeting and e-communication Progress and problem report etiquette Preplanned schedule with recovery & review Maturity in development process

Table 3.4 Potential Risk and Planning

20

Online Quiz Disaster / Recovery Planning It is a means of addressing the concern for system availability by identifying potential exposure (burns out, disgruntled employee inflicts serious damage), prioritizing application and designing safeguards the minimize loss if a disaster occurs. And in this circumstances business survive because disaster/recovery plan allows quick recovery. Alternatives Fortress approach (Entire facility one location) Cold backup service (Lease terms on a site with no computer but with adequate electric power, air conditioning, and telecommunication to support a computer facility. Mutual backup (two companies from different industries but similar system agree to backup up each other)

Private warm backup site

3.6 Effort Estimation


The estimation of various project parameters is a basic project planning activity. The important project parameters that are estimated include: project size, effort required to develop the software, project duration and cos. The estimates not only help in quoting the project cost to the customer, but also prove in resource planning and scheduling. There are three board categories of estimation techniques: Empirical estimation techniques Heuristic techniques Analytical estimation techniques

COCOMO(Construcive Cost estimation Model) Heuristic techniques It can be classified into three categories Organic Semidetached Embedded 21

Online Quiz Using Semidetached Intermediate COCOMO Model Software project estimation in todays era may result in companies profit and loss, thus a small error in estimating have very large impact on project and company itself. But then too its also true that estimation can never be exact particularly in software we have many variables human, technical, environmental, political etc. The cost estimation model is concerned with the representation of the process to be estimated. Before project cost estimation project scope, modules and delay estimation must be done. Here we have user COCOMO Cost Constructive Model for the estimation of the project cost. COCOMO is the hierarchy of cost estimation models those ranges from very large complex project to in house development by inexperienced developers. Among the range of the COCOMO models we have used the semidetached intermediate model of it. Reasons of selecting semidetached Intermediate model: It provides the flexibility in estimation according to the problem on hand. It considers all around cost drivers that affect the project cost. The development team in case of out project includes mixture of experienced and less experienced team members. It is not only assumes factors such as effort and development time to find product size but also consider other factors taken into account using a set of 15 cost driver(multiplier) based on various attributes of software development. The cost drivers are classified into following items: Product Computer Personnel Development environment

22

Online Quiz

The Intermediate COCOMO models with their co-efficient are given below

Project Organic Semidetached Embedded

Effort 2.4 (KLOC) 1.05 3.0 (KLOC) 1.12 3.6 (KLOC) 1.20

T Dev 2.5 (Effort) 0.38 3.0 (Effort) 0.35 3.0 (Effort) 0.32

The Equations for the Intermediate model of the COCOMO is given below Efforts = 2.4(KLOC) * Total effort multiplier T DEV (Time for Development) = 2.5(Efforts) * Total effort multipliers

23

Online Quiz

PART 4 System Requirement Analysis

24

Online Quiz

4.1 Information Gathering


As the goal of the application is ease of use and to provide an interactive interface, extensive research has been done to gain an insight into the needs and behaviors of various users. The working of the application is made convenient and easy to use for the end user.

Users can be classified into two types based on their knowledge of the products that suit their needs. They can be classified as users who know about the product that would satisfy their needs and users who have to figure out the product that would satisfy their needs. Users who know about the product should be able to find the product easily with the click of a button. Such users can search for the product by using the product name as the search term. Users who have to figure out the product that would satisfy their needs could use a search term to find a list of products and then should be able to filter the results based on various parameters like product type, manufacturer, price range, platform supported etc.

The users should be able to view the complete specification of the product and various images at different Zoom levels. The user should be able to read the customer reviews for the product and the ratings provided. They should be able to write their own reviews. They should be able to print out the specifications for a product or email the product page to a friends etc.

To increase the ease of use the user should be able to add a product to the shopping cart by dragging a product and dropping it in the shopping cart. A user should able to edit the contents of a shopping cart. They should be able to update the quantities of the products added to the cart and remove the products from the cart. The user should be able to remove the product from the shopping cart by dragging the product and dropping it outside the cart.

The application can be made interactive by pop up messages when a product has been dropped in to the shopping cart or out of the shopping cart. The user can be notified if the cursor enters a drop area and the object that could be dropped. 25

Online Quiz

4.2

System Feasibility

The system feasibility can be divided into the following sections:

4.2.1 Economic Feasibility


The project is economically feasible as the only cost involved is having a computer with the minimum requirements mentioned earlier. For the users to access the application, the only cost involved will be in getting access to the Internet.

4.2.2 Technical Feasibility


To deploy the application, the only technical aspects needed are mentioned below:

Operating Environment Win 2000/XP/Windows 7 Platform .Net Framework & IIS Database SQL Server 2005

For Users:

Internet Browser Internet Connection

4.2.3 Behavioral Feasibility


The application requires no special technical guidance and all the views available in the application are self explanatory. The users are well guided with warning and failure messages for all the actions taken.

26

Online Quiz

4.3

Procedural/Modular Approach

Following are all the modules designed for the Online Provision System. Shop Products Module This module starts when the user visits the home page or when a user searches for a product by entering a search term. This part of the application includes displaying all the products that are available or the products that match the search term entered by the user. The user can then filter these products based on various parameters like manufacturer, product type, operating system supported or a price range. The user browse through the products and each product would be displayed with an image and its features like operating system supported, number of user licenses and if it is a full version or an upgrade version. A user can add a product to the cart either by dragging the product and dropping it in the cart or by clicking a button. The user would be able to see the shopping cart summary.

Product Description Module This module starts when a user visits the product description page. A user can view various images of the product of different sizes. The use can see an enlarged image in a popup window. The user can view the complete specification of the product like its features, operating system supported, system requirements etc. A user can also view the manufacturer information and also information about rebates, exchange policies etc. A user can also view the reviews of the product. A user can also write a review for the product.

Shopping Cart Module This module starts when the user views the shopping cart. All the products that have been added to the shopping cart by the user are listed along with their price and the quantity. The total price of all the products added to cart is displayed. A user can edit the quantity of each product or remove the product from the shopping cart. A user can remove the product from the cart by clicking a button or by dragging the product and dropping it outside the cart. The total price changes accordingly when a user edits the quantity of a product or when a product is removed from the cart.

27

Online Quiz

4.4 Performance Requirements:


Speed: Any web-based application is by default concern with the speed at which user can access the application. The connection line require for the efficient access of the data through database is sufficient for the proposed application. Furthermore the network resides beneath the communication path plays vital role in getting the higher performance. o Trades off between appearance and speed by precisely deciding to extend of the images and background effects. It requires number of execution occurrence. o The way of transferring the data from web form to another on or to the permanent data storage.

Reusability: The approach used for the development of this application is expected to incline towards Object Oriented. The overall functionality of the system is divided into the module in such a way the each individual module can be reused efficiently and independently if developer wants. The performance requirement is not directly concerns with this issue as such it seems and it is the development time issue but the future modification and overall productivity of the developer is concerns, this will be the case of consideration.

Maintainability: Maintainability of the system is the ration of the productivity the rework done. At any phase of the system either development or after the usage of the system, this ratio should be maintained. However this is also a dependent feature of the system and is concern with many other one.

Complexity: The complexity of system should be minimum with the maximum performance. There is always remains tradeoff between complexity and performance but the Extents should be selected from the perspective of the user.

28

Online Quiz Consistency: The Constance nature of the behavior of the system is requiring. User always tends to see the consistency for the data end for the response to the particular event. User should get the same response on same event in any phase and in any condition of the system. Validation sequence: The validation check sequence should be optimized to minimize the execution time. This will be the major issues when more then two conditions we have to check to validate the input of the user, especially e.g. at login time. Screen format: All the major functionality will be included into the single screen-multiple interface. Menus: All the functionality will also be accessible by menus. It will be easy to access through menu for non-technical person even. Reports: Reports of the all conversations access will be generated in the clear and concise manner. The report will help to the management in monitoring the activities.

29

Online Quiz

PART 5 SYSTEM DESIGN

30

Online Quiz

5.1 Data Flow Diagram:


5.1.1. Level 0:

Figure 5.1

5.1.2. Level 1:

Figure 5.2

31

Online Quiz

5.1.3.Level: 2.0:

Figure 5.3

32

Online Quiz

5.1.4.Level: 2.1

Figure 5.4

33

Online Quiz

5.2 Use Case Diagram:


5.2.1. Customer Module

Fig 5.5 Use case for CUSTOMER

34

Online Quiz

5.2.2. Admin Module

Fig 5.6 Use case for ADMIN

35

Online Quiz

5.3 Flowchart:

Fig 5.7 Flowchart

36

Online Quiz

5.4 Class diagram:

Fig 5.8 Class Diagram

37

Online Quiz

PART 6 IMPLEMENTATION

38

Online Quiz

6.1 Data Dictionary


TABLE::- {Cart Item} Field Name product_ID product_name quantity product_price Total_cost Type and Size int(5) varchar(50) int double double Constraint Not_Null Not_Null Not_Null Not Null Not_Null Description Product Identification Product Name product quantity Product price Total cost

Primary Key::- product_id

TABLE::- {ProductType} Field Name product_typeId Type and Size int(5) Constraint Not_Null Description Identification of Product Type product_typeName varchar(20) Not_Null Name of Procut Type

Primary Key::- product_typeId

39

Online Quiz

TABLE::- {Products} Field Name product_id product_name product_price license_type Type and Size int(10) varchar(50) double varchar(10) Constraint Not_Null Not_Null Not_Null Null Description Product Identification Product Name Product Price Define Types of License number_users int(10) Not Null Number of Users

Primary Key::- product_id Foreign Key::- manufacturer_id

TABLE::- {Shop Product} Field Name product_id Type and Size int(10) Constraint Not_Null Not_Null Description Product in Cart Number of Product Buyer

Number_of_product int

Primary Key::- product_id

40

Online Quiz

TABLE::- {Images} Field Name image_id product_id image_path Type and Size int(10) int(10) varchar(100) Constraint Not_Null Not_Null Not_Null Not_Null Description Image Identification Product Identity Link to Image Link to Big Image

enlarged_imagePath varchar(100)

Primary Key::- image_id Foreign Key::- product_id TABLE::- {Specification} Field Name product_id Type and Size int(10) Constraint Not_Null Description Product Identification Brand Model Type Version Features varchar(20) varchar(10) varchar(10) varchar(15) Text Not_Null Not_Null Not_Null Not_Null Null Name of Brand Model Name/No. Type of Model Version of Model Features of Product

Primary Key::- product_id

41

Online Quiz

TABLE::- {Manufacturer} Field Name manufacturer_id Type and Size varchar(5) Constraint Not_Null Description Identity of Manufacturer manufacturer_name varchar(50) Not_Null Name of The Manufacturer manufacturer_website varchar(25) Not_Null Manufacturer Website support_phoneNumber int(15) Not_Null Manufacturer Contact Number support_website varchar(20) Not_Null Email Address of manufaturer

Primary Key::- manufacturer_id

42

Online Quiz

6.2

Database Design

The design of the database is similar to the analysis phase. The database has been developed using SQL Server 2005.

Specifications
ProductID Brand Model Type Name Version System_Requirments Features
FK_Shopping Cart_Cart Item

Shopping Cart
Cart_ItemID Total_Items Total_Cost

FK_Specifications_Product

Product
Product_id Product_name

Cart Item
Cart_ItemID ProductID ProductName
FK_Cart Item_Product

Product_Type
Product_TypeID Product_Type_Name

Product_price
FK_Product_Product_Type

Price Quantity TotalCost

Product_TypeID ManufacturerID LicenseType Number_Users

FK_Product_Manufacturer FK_Images_Product

Manufacturer
ManufacturerID Manufacturer_Name Manufacturer_Website Support_PhoneNumber
FK_ShopProducts_Product

Images
ImageID ProductID ImagePath Enlarged_ImagePath

Support_Website

ShopProducts
Shop_ProductsID ProductID Number_of_Products

Fig 6.1 Database Design

These are the main tables in the application and others are lookup and query tables.

43

Online Quiz

6.3

Technical Discussions
The products can be filtered based on various parameters like Manufacturer, Product Type, Operating System supported etc. Initially it was decided to have the various list items predefined. But with time new manufacturers and product types could be added. So the values for the list of manufacturers and product types are loaded dynamically by retrieving from the database. Also it was decided initially to have a drop down list for price range and the user could select a price range from the ranges available. But this would limit the users ability to filter the products based on different price ranges. Instead providing two text fields so that the user can enter their price range would give them more flexibility.

A product could be added to a shopping cart by dragging it and dropping it in the cart area. Items in the cart could be removed by clicking a button. To maintain symmetry and ease of use products could be removed from the cart by dragging the product out of the cart.

A product can be added to the cart by dragging it and dropping it in the cart. Initially it was decided that when a product is dropped in the cart the cart summary label could be updated on the client side without any call to the server and later the session variables (Shopping cart) could be updated. This would result in loss of information when the user loses internet connection. So when a product is dropped in the cart area a web service is called and this service updates the session variables for the shopping cart and the cart summary is recalculated and sent back to the client. This would improve the reliability of the application.

44

Online Quiz

PART 7 TESTING

45

Online Quiz

7.1 Introduction
Software testing is an important technique for assessing the quality of a software product. Software testing is the process of analyzing a software item to detect the differences between existing and required conditions (that is, bugs) and to evaluate the features of the software item. Software testing is an activity that should be done throughout the whole development process. Software testing is one of the verification and validation, or V&V, software practices. Verification (the first V) is the process of evaluating a system or component to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase. Verification activities include testing and reviews. Validation is the process of evaluating a system or component during or at the end of the development process to determine whether it satisfies specified requirements. At the end of development validation (the second V) activities are used to evaluate whether the features that have been built into the software satisfy the customer requirements and are traceable to customer requirements. Through verification, we make sure the product behaves the way we want it to. Through validation, we check to make sure that somewhere in the process a mistake hasnt been made such that the product build is not what the customer asked for; validation always involves comparison against requirements.

7.2 Testing Strategies / Techniques


Black box testing should make use of randomly generated inputs (only a test range should be specified by the tester), to eliminate any guess work by the tester as to the methods of the function. Data outside of the specified input range should be tested to check the robustness of the program. Boundary cases should be tested (top and bottom of specified range) to make sure the highest and lowest allowable inputs produce proper output. 46

Online Quiz The number zero should be tested when numerical data is to be input. Stress testing should be performed (try to overload the program with inputs to see where it reaches its maximum capacity), especially with real time systems. Crash testing should be performed to see what it takes to bring the system down. Test monitoring tools should be used whenever possible to track which tests have already been performed and the outputs of these tests to avoid repetition and to aid in the software maintenance. Other functional testing techniques include: transaction testing, syntax testing, domain testing, logic testing, and state testing. Finite state machine models can be used as a guide to design functional tests

7.3

Software Testing Techniques

BlackBox Technique
It takes an external perspective of the test object to derive test cases. These tests can be functional or non-functional, though usually functional. The test designer selects valid and invalid input and determines the correct output. There is no knowledge of the test object's internal structure. Black Box Testing is testing without knowledge of the internal workings of the item being tested. For example, when black box testing is applied to software engineering, the tester would only know the "legal" inputs and what the expected outputs should be, but not how the program actually arrives at those outputs. It is because of this that black box testing can be considered testing with respect to the specifications, no other knowledge of the program is necessary. For this reason, the tester and the programmer can be independent of one another, avoiding programmer bias toward his own work. Due to the nature of black box testing, the test planning can begin as soon as the specifications are written. This method of test design is applicable to all levels of software testing: Unit, integration, Functional Testing, System and Acceptance.

47

Online Quiz White Box Technique The opposite of black box testing would be glass box testing, where test data are derived from direct examination of the code to be tested. For glass box testing, the test cases cannot be determined until the code has actually been written. Both of these testing techniques have advantages and disadvantages, but when combined, they help to ensure thorough testing of the product. Software testing approaches that examine the program structure and derive test data from the program logic. Structural testing is sometimes referred to as clear-box testing since white boxes are considered opaque and do not really permit visibility into the code. Unit Testing Unit testing is the process of test verification on the smallest unit of software designsoftware module. It is used to uncover errors within the boundary of the module.

Integrating Techniques The Integration Testing is associated with Unit testing. Here the modules of unit testing are put together and checked weather they work properly, when they are integrated, or not. It contains different strategies for same. They are as follows. We performed integrating Testing by merging all the Modules and Testing as whole Application. We used one Test Case for flow of whole Application, and remove the Errors.

Validation Testing In integration testing, the software is assembled as a package. Validation Testing is completely associated with requirement satisfaction of customers. This testing checks weather all functional requirements of customer are satisfied or not. According to this test, the project is tested and found to be satisfactory for functional characteristics, behavioral characteristics and performance requirement. It is also found to have good documentation up to the last stage. So, the performance characteristics conform to specification and are accepted.

48

Online Quiz

CHAPTER 8 TECHNOLOGY DESCRIPTION

49

Online Quiz

8.1 .NET Framework


The .NET Framework is Microsoft's platform for building applications that have visually stunning user experiences, seamless and secure communication, and the ability to model a range of business processes. The .Net Framework consists of:

Common Language Runtime provides an abstraction layer over the operating system Base Class Libraries pre-built code for common low-level programming tasks Development frameworks and technologies reusable, customizable solutions for larger programming tasks

The .NET Framework allows you to:

Apply common skills across a variety of devices, application types, and programming tasks

Integrate with other tools and technologies to build the right solution with less work Build compelling applications faster

50

Online Quiz

8.2 Server
In the client/server programming model, a server is a program that awaits and fulfils requests from client programs in the same or other computers. A given application in a computer may function as a client with requests for services from other programs and also as a server of requests from other programs. Specific to the Web, a web server is the computer program (housed in a computer) that serves requested HTML pages or files. A Web client is the requesting program associated with the user. The Web browser in your computer is a client that requests HTML files from Web servers. IIS SERVER: IIS (Internet Information Server) is a group of Internet server (including a Web or Hypertext Transfer Protocol server and a FTP server) with additional capabilities for Microsoft's Windows NT and Windows 2000 Server operating systems. IIS is Microsoft's entry to compete in the Internet server market that is also addressed by Apache, Sun Microsystems, O'Reilly, and others. With IIS, Microsoft includes a set of programs for building and administering Web sites, a search engine, and support for writing Web-based applications that access database. Microsoft points out that IIS is tightly integrated with the Windows NT and 2000 Servers in a number of ways, resulting in faster Web page serving.

8.3 My SQL Database


MySQL is an open source relational database management system. Information in a MySQL database is stored in the form of related tables. MySQL databases are typically used for web application development (often accessed using PHP).A MySQL database can be accessed (queried) directly using; C, C++, Eiffel, Java, Perl, PHP and Python computer languages. There is also third party support for connection in a Windows environment. MySQL databases are queried using a subset of the standard Structured Query Language (SQL) commands.

51

Online Quiz

8.4 User Interface


8.4.1 HTML:
HTML is HyperText Mark-up Language. HyperText is the method by which you move around on the web by clicking on special text called hyperlinks which bring you to the next page. The fact that it is hyper just means it is not linear i.e. you can go to any place on the Internet whenever you want by clicking on links -there is no set order to do things in. Mark-up is what HTML tags do to the text inside them. They mark it as a certain type of text.HTML is a Language, as it has code-words and syntax like any other language.

8.4.2 CSS:
Short for Cascading Style Sheets, a new feature being added to HTML that gives both web developers and users more control over how pages are displayed. With CSS, designers and users can create style sheets that define how different elements, such as headers and links, appear. These style sheets can then be applied to any Web page. The term cascading derives from the fact that multiple style sheets can be applied to the same Web page. CSS was developed by W3C.

8.4.3 JAVASCRIPT:
A scripting language developed by Netscape to enable Web authors to design interactive sites. Although it shares many of the features and structures of the full Java language, it was developed independently. JavaScript can interact with HTML source code, enabling Web authors to spice up their sites with dynamic content. JavaScript is endorsed by a number of software companies and is an open language that anyone can use without purchasing a license. It is supported by recent browsers from Netscape and Microsoft, though Internet Explorer supports only a subset, which Microsoft calls Jscript.

52

Online Quiz

PART 9

CONCLUSION

53

Online Quiz The Online Provision is designed to provide a web based application that would make searching, viewing and selection of a product easier. The search engine provides an easy and convenient way to search for products where a user can Search for a product interactively and the search engine would refine the products available based on the users input. The user can then view the complete specification of each product. They can also view the product reviews and also write their own reviews.

9.1

Benefits
Simple and User-friendly design User needs no plug-in or special browser No software to install on staff or user computers Point and click administration Complete web based solutions The system is confined within the companys product, so it is secure in case of any conversations.

Each activity of user is stored in database of system in different tables as per defined by Data Architect.

Information is always available on demand. Facility for generating customized report is provided. Different users can created with different access level of system and also their privileges can be changed through modification in database.

Give special discounts to Premier customers

54

Online Quiz

9.2

Limitations
This application does not have a built in check out process.

Also users cannot save the shopping carts so that they can access later i.e. they cannot create wish lists which they can access later.

This application does not have features by which user can set price ranges for products and receive alerts once the price reaches the particular range.

9.3

Scope for Future Work

The following things can be done in future.

The current system can be extended to allow the users to create accounts and save products in to wish list.

The users could subscribe for price alerts which would enable them to receive messages when price for products fall below a particular level.

The current system is confined only to the shopping cart process. It can be extended to have an easy to use check out process.

Users can have multiple shipping and billing information saved.

55

Online Quiz

PART 10

BIBLIOGRAPHY

56

Online Quiz Reference Sites:

1. http://www.smartdraw.com/ 2. http://www.msdn.microsoft.com 3. www.dotnetnuke.com 4. http://www.asp.forums.net 5. Dino Esposito, (2005) Programming Microsoft ASP.Net Core Reference, Publisher: Microsoft Press 6. Robin A. Reynolds-Haertle, (2002) OOP with Microsoft VB.NET and C#.NET Step By Step, Publisher: Microsoft Press

57

Вам также может понравиться