This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.
Just for 99 is a commercial shopping web site that provides the best home shopping services of Ladies and Gents clothing, Toys, Gifts etc. Here customer can see his product view with its price and also can see the total amount of shopping at the order time and can pay the amount threw credit card or cash at product receiving time.
At the justfor99 the ultimate goal of the project is to provide a simple, one stop shop for all Asian wear shopping needs. Our products including designer Sarees, different things like mobile, watches, men's traditional attire, clothing for children, exclusives jewellery and much more. We have products for whatever your sense of style or budget. We are combined to providing the greatest selection of brands on the net and to making your shopping experience as easy and enjoyable as possible. With IT revolution as its peak, this task should also be converted into a computerized process and keeping this in mind we thought of buildings this web site which all reduces the time, energy and efforts for systematic processing of data.
Web site comprises following modules:
- Administration Module
- User Module
- Search Module
- Database Design
This website is developed to facilitate and manage the various peoples to search for their Products .This web site is developed in ASP.Net, Microsoft SQL Server 2005 and Java Script for designing. I have also use HTML, DHTML and XML.
First part of the report over the problem Definition, Methodology we have used and System Requirements.
Second part covers the Design of the system, main functions, how data is flowing between different modules, Relationship between different entities, database used.
Third part of the report describes the project plan assumption we have made.
Fourth part covers the Screen shots of the project
In Sixth part describes the coding standards and conventions used
In the end describes the testing of the system.
First and foremost I am heartily thankful to my supervisor, Dr. Mike Boyd, whose encouragement, guidance and support from the initial to the final level of the project enabled me to build a complete understanding of the subject and implement the project successfully
I offer my sincere gratitude to The Department of Computing, Birmingham City University for providing me this wonderful learning experience and have also provided support to help complete my project.
Finally I thank my family and friends for their continuous support, inspiration and encouragement
1. Project Title
This project aims to design, implement and document a Website and serve the customers online, to retail a variety of products online making the website a one shop stop and to provide all latest offers on the home page and process customers payment securely
Today all over the world we see that the companies are growing and looking forward to serve the customers as fast as possible. In a wholesale company products are sent to their customers based on the requests. Customers purchase some of the products while they may also return the products sometimes if not satisfied. So the company needs to maintain an accurate record of the inventory, products sent to the customer, payments received against the invoices and also purchase of the inventory.
Using the traditional paper work with huge dependency on manual intervention or using storage requirements like excel sheets, the various operational units are not able to get up to date information in a timely manner. There are software solutions available in the market that can be used but they are packaged with many other features that are not required by regular consumer sales and order management system, and are very expensive
In a whole sale company as described above all the units need to have information on all the orders which are placed by the customer and also the accounts and inventory should be kept up to date. The project is meant for all the users in different operational units, purchase, sales, accounts receivable, inventory management, accounts payable and customer maintenance. The software is capable of connecting all these departments or units and provides basic functionalities using one common application with similar look and feel.
4. Scope of the Project
The system is highly flexible and is well efficient to make easy interactions with the client. The key focus is given on data security, as the project is online and will be transferred in network. The speed and accuracy will be maintained in a proper way.
This will be a user-friendly and can successfully overcome strict and severe validation checks. The system will be a flexible and changes whenever can be made easy. Using the facility and flexibility in .NET and SQL, the software can be developed in a neat and simple manner there by reducing the operator's work.
Since the project is developed in ASP.NET as a front-end and SQL as a back-end it can be modified easily and used for a long period.
Through this project I have tried to automate the task of:
- Category of Products
- Showing subcategory with Image
- Product Detail with available colors
- Price Details
- Add to Card
- Payment Mode
- Special Offer List for Registered Users
- Shopping detail by Messaging
- Available Product Information
- Member Management
- Member Id is generated automatically from the table by auto generation
- Entering the details like Primary Information, Religious Background Educational & Professional Information, Contact Information, and Other Information.
- Checking Password and Confirm Password
- Add Banners and Photos
- Save time of Search
- Give a modification power to site's owner at any label. So, Administrator of site can make any changes such like can add a new category, sub-category and Product Details on the working windows.
- Administrator can also change the Banner and also can change the list of special offer products.
5. Project Objectives:
For us, customer service is not just a credo, but a success strategy, since we have found our satisfied customers bringing us new customers, helping us grow without conventional promotional and advertising activity. It is this strategy and credo that we offer to you.
Besides customer service, what drives us is our conviction, that the internet can transform the way we shop - save us time and money, and most importantly, help us get exactly what we want. Only you, our customer know what you want. Our business is to help you share that with us, so that we can increasingly find a closer match to it. Eventually, we would like to proactively notify you of what you may be interested in. In any event, our stores should be increasingly able to reflect the ability to fulfill your needs, uniquely and completely. We could call that our mission.
Our vision is an Internet shopping experience that is highly intuitive and interactive and enables all customers to customize the merchandize or service that they want.
Time Effective and Cost
Shopping site is available to anybody and anywhere. This saves a lot of time of the customer and in a very little time span the registered user may look the “what's an offer on the special products purchasing”. This plan cost offered is economic too.
A database of the registered users will be created and this will help the users to fetch the details of recent shopping as per requirements. There is a separate database for administrator for updating the site.
Internet is available to everybody anywhere anytime here, this makes the site highly mobile.
The site has all the necessary details about the concerned products and materials hence, provide all the relevant information therefore. For example, shopping of appropriate product has done, and then the information of purchasing is provided to registered users by mailing.
Any person can visit it. User can register with or without photographs. Therefore it has a wide range of users.
Proper authorization and authentication provisions have been made for the security of the site so that only the registered users can look the special offer details. Without proper login no one is allowed to access the special offer list of this site.
The site is flexible to any expansion or contraction in the future. For example: Magazines section can be added, sending, telegrams can be included etc.
6. Literature Review
6.1 Analysis of Proposed System
JustFor99 web site is a distributed project. Projects can be categorized in two ways:-
- Local area network Projects
- Distributed projects
Local area Network projects are those projects where application has to be in cooperated in the Local area network of the client i.e. with in its premises only. In LAN cases, server is not remotely located and client access this application through this network. Here the question of platform independence does not arise and we use technologies like: Visual Basic, Fox pro, D2K or C, C++.
But Distributed projects are those projects where application is remotely situated. In these kind of projects application is remotely situated on to the remote server from where client machine connects to the remote server and application is downloaded on to client machine. Here the question of platform independence arises and we use technologies like ASP.NET.
6.2 Data Gathering
This project is a Business to Consumer and is a well-commercial site of shopping which serves Indians and others, with a variety of products that represents the Indian life-style - these include music, films, food, clothing, phone cards, festival products and gifts to India. Started two years ago, its success in a demanding market can be attributed mainly to its benchmarking itself with mainstream sites in the India, in user interface and customer service.
6.3 Business System Elements
- Objective: The system analyst must be aware of exactly what the user requires room a specific system. That is management goals or objectives must be fully understood.
- Constraints: The analyst and the user must both recognize any limitations or constraints that may be imposed when the analyst is designing a computerized system. Some types are:
- Legal constraints
- Budgetary Constraints
- Equipment Constraints
- Controls: The user must familiarize the analyst with the ways in which errors are minimized under the current system.
- Input: All input data that server as their basis for, desired output must be studied where all data used for processing originates. How often is each type of input generate? If there are code or abbreviations used for input does the analyst have complete list of these. What happens to input documents after has been processed?
Ø Processing: The analyst must then analyze the processing or type of operations that are currently performed in order to achieve the desired results.
Output: The analyst must ascertain from the user just exactly what proceeds as output is currently under the present system.
6.4 Issues involved
Till date shopping were done by the persons own self from the shops or through Internet sites there was a limitation of matching choice and colors but these sites takes much time in searching and purchasing a product. In both the cases the time was very essential. So to solving this problem a stock of problems can be listed in the existing system. After gaining an in-depth knowledge to the various processes and the manner in which they are carried out, it was realized that these were not only tedious and cumbersome but also error prone. These bottlenecks are featured in consideration with the overall aspects of the present functioning system.
Following are the problems in the existing system:
Increased time taken by personnel. It is very tedious job to find a proper material as per your choice and for the other.
At the time of shopping all the records have to be scanned and even after the people can't be sure that they will be able to find a proper material or dresses.
In addition, owner wants to update their records each time a deletion or addition at the basis of current fashions styles.
And the transactions of payments with the client also take a lot of time.
A large number of peoples are involved to maintain the whole shop system that is very expensive.
The cost also increases to the buyer with the increasing of shop maintenance.
Other diverse problems
A large number of manpower is involved to maintain the whole system, which is very expensive and cumbersome.
Unreliable and inefficient data entry.
Lesser user friendly.
Redundant data storage.
Use of a lot registers for maintain records.
6.6 Feasibility Study
A feasibility study is conducted top select the best system that meets performance requirement. The key consideration in feasibility analysis is:
- Economic Feasibility
- Technical Feasibility
- Operational Feasibility
The proposed system is economically feasible because the cost involved in purchasing that hardware and the software are within approachable. The personal cost like salaries of employees hired are also nominal, because working in this system need not required a highly qualified professional .The operating –environment costs are marginal .The less time involved also helped in its economical feasibility.
Meaning:Are there sufficient benefits in creating the system to make the costs acceptable? Or Are the costs of not creating the system so great that it is advisable to undertake the project.
This will include three major costs as described below:-
Cost of Hardware and Software
Cost of software to be acquired to build and run the product is a one time cost.
Buying a back end database is the major part of hardware and software cost. Comparison between the Oracle database high cost and better features with the SQL server low cost and better support for the same vendor operating system make this decision need oriented.
Benefits in reduced cost, error and Savings will be made by reduction of present system expenses, time saving and increased accuracy.
Future cost reduction in from of reduction in the number of administrative staff needed and manual records maintains in organization.
Rise in cost will be avoided.
Hardware's used in this project are –Pentium® Dual-Core CPU 2.30GHz, 3 GB RAMS, 64-bit Operating System, 500 GB hard disk. This hardware was already available on the existing computer system. The software like MS-ACCESS, VB, MS-WORD and operating system used were already installed on the existing. So no additional hardware and software were required to purchase and it is technically feasible.
Meaning: Can the work for the project be done with current equipment existing software technology and available personnel? If new technology is needed, what is the likelihood that it can be developed?
Reply:In this project the work cannot be done by the current system because currently all the records, filling, transactions, entries, are done by manuals. It is really time consuming and margin of error is more.
Yes, the current available personnel can develop this system but special training should be given to those personnel to improve their skills. Yes new technology or software, which is currently working in the market, is to be needed to develop this system.
It can be developed easily with this software and for a long term it is working effectively and margin of error is less.
To run this product the following technological consideration has to be kept in mind by the Company.
SQL server as back-end is a good DBMS software with long-standing track record in industry for the good technical aspect, extensibility, concurrency and support needed for this purpose.
SQL server2005 and Windows 7 operating system are used while making this product. Language such as .NET is also used while making this project.
Meaning:The system will be used if it is developed well then be resistance from users that undermine the possible application benefits.
Dealer Support:Dealer and user support for present system is there, as the current procedure used takes more time and effort than proposed system.
No major training and new skills are required as it is based on DBMS model.
It will help in the time saving and fast processing and dispersal of user request and applications.
New product will provide all the benefits of present system with better performance suchlike Improved information, better management and collection of the reports.
User Support:User involvement in the building of present system is sought to keep in mind the user specific requirement and needs.
User will have control over there own information. Important information such as pay-slip can be generated at the click of a button.
Faster and systematic processing of user applications will save user from cumbersome process of filling forms and submitting them at different places and then waiting for applications to be processed.
Old method used for application approval, allocation of IDs, payments, etc. used had greater chances of error due to wrong information entered by mistake.
Design:This Section describes the design of various process that are used in this project
Dealers and customers will be able to check their queries with ease.
Users can able to perform Transactions like
- Adding Category
- Adding Products
- Adding Sub Category
- Modifying Products
- Modifying Sub Category and Category
- Add Cart
- Payment Gateway
- Adding Banners
- HTML, DHTML
- Java Script
- SQL SERVER-2000
6.8 Promotion of the site
Site will be promoted through various means:
- through personal approach by marketing division.
- through telemarketing.
- Through advertisement such like various newspapers etc.
- Through web Marketing.
A system is the combination of people, devices, and methods interrelated in working towards a common goal.
An information system is a computer based business, system that provides the data processing capabilities information that an organization needs to be informed about various aspects of its operation, are-
- Value useful system & Provide accurate information
- Provide timely information & be capable of communicating that information to the people in the company who need it.
6.9 Project Plan
Configuration Control Plan
In this project, we will only have configuration control for the code. The design will not be under configuration management. The requirements are assumed to be frozen; any change will be negotiated with the management.
The configuration control board (CCB) will consist only of the group leader. A module will be taken for configuration management, only after it has been successfully unit tested and its unit test results have been approved by the group leader. Change requests will be made to the CCB through electronic mail, and the requester will have to justify the request. Request changes will generally be allowed if the change does not change the interface of the module, and the project is not behind the schedule. Changes that will modify the module interface or affect other programmers will, in general, not be approved unless there are good reasons for doing so. In this case, all the concerned parties will informed of the change through electronic mail.
Quality Assurance Plan
To ensure quality, the following documents (besides this plan and the requirements document) will be produced during the development:
- System design document
- Unit test plan
- System test reports
- The following methods will be used for quality control:
- Preliminary design review
- Unit testing
- System test plan review
- System testing
It is felt that because the system is small, a detailed incremental testing is not needed. A two-level testing is used: unit testing followed by system testing. The system test plan, however, will be reviewed before the testing is performed. No code review will be done.
Three basic methods will be used for project monitoring - project logs, biweekly meetings and reviews. Because we do not have a time sheet processing system, each project member will keep a multipurpose log in which he will record the different activities he performs and the date and duration of the activity. The failure and error data obtained during testing will also be recorded in the log.
Cross checking of the log data can be done by those events in which more than one person of the team participated. The format of the log entries is:
Activity type is one of the following: requirement understanding, design (system or detailed), coding, testing, report writing, meeting, debugging (including correcting errors), and others. In the comment field, the errors encountered during testing have to be recorded.
Reviews to be held are defined earlier. In addition to reviews, a biweekly meeting will be held to discuss the progress of the project.
The project has no major hazards associated with it. The only risks it has are the cost and schedule risks. Although analysis can easily be done regarding the schedule risks involved, it is felt that because the team has one part-time member (who is largely under-used) schedule slippage can be easily handled. Similarly, because the costs are low in this small project, it is felt that an analysis of the cost risk is unnecessary.
7. Project's Defined Life Cycle for Justfor99
7.1 Project's Defined Life Cycle (PDSP)
Our team will develop the software in accordance with PDSP iterative lifecycle. Artifacts and evidence of results of software development activities will be managed and controlled as per Software Configuration Management Plan and made available to support management reviews, metrics calculations, quality audits, product evaluations, and preparation of product deliverables.
Phases of Life cycle
Four distinct phases are followed in the project, which are Inception, Elaboration, and Construction & Transition. Which are indicators of the progress of the project.
Inception—this phase brings to light an original vision of a potential product, and transform it into an actual project. The following important activities will be done in this phase-
Feasibility Study of existing process.
Collection of core project's requirement
One or more prototype development
Initial Risk assessment and Initial project management plan showing phase and iterations
Phase end reviews
The main goal of this phase is to more thoroughly analyze the problem domain, to define and stabilize the architecture, and address the highest risk element of the project. The following important activities will be done in this phase-
- Detailed Project Management plan is prepared.
- Most of the Critical project risks are mitigated.
- Review of prototype by customer and rework.
- Review of requirements and approval
- High Level Design
- Low Level Design
- Review of test plan
- System Test cases identification.
- Phase end review
In this phase the construction of product is made. The following important activities will be done in this phase-
- Coding of Modules
- Unit testing & Code review.
- The software product integration on the required platform.
- Close of open defects
- Peer Reviews of code
- Self testing by developers
- Phase end review
In this phase the product is put in the hands of its end user. The important activities will be done in this phase are:
System testing to validate the new system against user expectations
Training of users and maintainers.
Project windup activities.
Each phase emphasizes on some key aspects of the development essential for the purpose of demonstrating progress on the project. Each phase end is a key milestone with defined goals, which is described in the “Project plan” section of this PMP.
Each phase is broken into one or more iterations. From a technical perspective the software development is seen as a succession of iterations, through which the software under development evolves incrementally.
Iteration is a complete development loop resulting in a release (internal or external) of an executable product, a subset of the final product under development, which grows incrementally from iteration to iteration to become the final system.
The project has multiple iterations as defined in the SDP and at the end of the each iterations, a build will be made and will be delivered to the customer. The core procedure followed and the major activities performed here–in are described in subsequent sections.
8.1 Requirements Management
Following activities will be performed for Requirements Management:
- Study the requirements and seek clarifications
- The requirement received from the client will be documented in SR.
- Prepare Screen designs.
- Review of SR with users requirements.
Following activities will be performed for Design:
- Develop Reports design.
- Develop Database Design.
- Prepare Design Document. There will be only one document for both the above.
- Review and inspect the Design
- Design document
Following activities will be performed for implementation:
- Study Requirements and Design document
- Decide methodology of development
- Select and customize coding standards
- Develop units
- Self test will be done before submitting it to Code
- Code review will be done by peers, by the method of walkthrough
- Unit test by test engineers.
- Integration of components
- Integration testing
- Preparation of Installable
- Release to testing team
- Integrated and tested units
- Peer Review
- Code Review Log
Following activities will be performed for Testing:
- Develop Test Plan
- Review test plan
- Develop test cases
- Review test cases
- Execute integration test
- Execute System test
Testing records and defect List
Following activities will be performed for Deployment:
- Secure the deliverable
- Prepare appropriate media, ensure correctness of version and check product integrity
- Check for virus, worms or any other element that could cause a damage
- Prepare Delivery Note, in case of final delivery
- Close Field Defects
- Get Acceptance Certificate from customer
- Get the Project Evaluation Form filled by the Customer
8.7 User Acceptance Plan
No separate acceptance plan would be made. It would be found accepted, if developed module is delivered as per requirements mentioned in SR.
8.8 Project Estimates
Phase Plan and Milestones
Major Milestones & Releases
System Test plan
9 Software Development Environment
This section briefly explains about the programming language(s) evaluated to construct /develop the application
There are three types of programming languages which are classified in to three categories: Machine level language, Assembly level language and High level language. Each and every control processing unit has its own machine language which is written in the form of binary codes which is low level language. Assembly language is a bit high level language when compared to machine language. Assembly language is written in the form of high level symbolic programming which allows programmer to write the assembly language in the form of symbolic codes rather than writing a program in the form of bits.
High level languages are developed for fast enabling to write program code which is faster than assembly language.
Java is a one of the latest and widely used object-oriented programming language developed by James Gosling at Sun Microsystems. C is procedural and C++ is object-oriented programming language, and Java was based on C and C++ programming languages. Java is described as web programming language because of the applets which is used in writing programs that runs within web browser i.e. web browser requires java applets to run java web application . Java can also be used to develop standalone applications that don't require to run in a web browser
- Compared to other software language programs java programs run slowly because java programs runs on virtual machine.
- Extended coding is the main disadvantage of java programs using java script for web designing which results expansion of web pages. The code can also be extended to several lines. In java script source file java script codes are stored separately which are readable and these codes are stored separately.
- Using java script coding results to reduction of search engine friendliness.
C which is a computer programming language developed by Dennis Ritchie in the year 1972. C which is a middle level programming language consists of objectives like keywords, character set and programs in C use header files that contain standard library functions.
C provides special variable types such as registers, volatile, static and constant which allows the control of code generation at higher order languages. Any C program generally contains at least one function which is used to write program that comprises many functions. It also allows separate compilation for any program because the complete C program parts are kept in source files that compile independently to each other. Pointers which store the address of the variables and arrays which it describes collection of variables with identical properties are used in C language.
- In C language pointers are used which in certain domains they are not secure and also its memory clearance which does not have sufficient garbage collection.
- Developing applications by writing with code is step by step process which is more time consuming and also it is difficult to understand.
- C being a procedural language, inheritance is not supported and which results in a complex and repetitive coding
ASP.NET is an object oriented language defined as Active Server Page .NET was designed by Microsoft in the year 2005 to develop web applications. ASP.NET is latest version of ASP. It is a tool in Microsoft .NET framework which is used for creating active and interactive dynamic WebPages and used for developing or creating Enterprise Web applications.
ASP which is a scripting language allows .NET to use languages like VB, C# and J#. ASP.NET which is server side scripting uses Common Language Runtime (CLR). It is a server side technology built on common language runtime (CLR). This technology can be run on any windows server which hosts powerful ASP.NET websites. ASP.NET generally uses three types of controls: HTML controls, Web Server controls and Validation Server controls. In ASP.NET file HTML elements are treated as text by default. With the runat=“server” attribute all the html server controls are written with in a form tag. The runat=“server” specifies that the form is processing on the server and also specifies that the controls access server scripts. Secondly Web Server controls in ASP.NET needs runat=“server” attribute to work on the server. Finally, Validation Controls is used to validate the inputs of user and if this is not done then it shows an error message to the user.
ASP.NET enterprise class web applications are built with a lowest amount of coding. A part from this, it also includes Page and Control framework, ASP.NET Compiler and Debugging support.
Page and control Framework is a framework for programming compiles on web server which generates WebPages. The common UI functionality and reusable controls are encapsulated from ASP.NET page and control framework which these controls are used in pages that are integrated to .NET page and are placed during rendering.
ASP.NET Compiler compiles all the application components containing pages and controls into assembly where ASP.NET environment uses to service user request.
Debugging support provides cross computer debugging support. ASP.NET provides runtime debugging infrastructure. So that it allows us to debug both managed and unmanaged objects and all languages supports common language runtime and script languages.
Below are the advantages of using ASP.NET:
- In ASP.NET the quantity of code is condensed drastically for building large applications.
- Code development in ASP.NET is simple and easy to maintain server side programming model.
- Source code, HTML (Hyper Text Markup Language) and design are in same page which is easier and much simpler to write maintaining code.
- Source code in ASP executes/compiles fast on server which pages have power.
- Applications in ASPP.NET are safe and secure which is in built in windows authentication.
- Debugging an application is very easy which is effortless so that bugs can be identified easily.
- In .NET programmers drag the objects and drops it on web form so that events are generated/created automatically which is user-friendly to all.
- For building larger applications ASP.NET reduces coding.
- Source code is compiled on web page where it has more power.
- By removing the seventy percent of code productivity is increased which simplifies both compilation and installation.
- ASP.NET provides fast and best web server platform (Koyzk, 2009).
(Startvb DotNet) (Koyzk, 2009) (W3Schools ASP)
Oracle8 is a relational database product which has features like partitioned tables and indexes. Oracle8 is enhanced version of previous oracle that contains features like additional backup and recovery.
Microsoft SQL Server 2005
Microsoft SQL Server 2005(MS SQL Server) is the Relational Database System (RDBMS) that is most compatible to be used with ASP.NET. Both have been developed by Microsoft, and are more dependable, compatible and reliable. SQL Server is robust, less prone to data corruption and is failsafe.
An alternative is MySQL, but for better performance and considering the database hits include reads and write transactions, MS SQL Server serves as a better choice for this project. Moreover MySQL supports basic security at the table level, via the SQL command. By contrast, SQL server fully supports security at the column level.
SQL Server 2005 reduces the application downtime, increases performance and scalability. SQL Server 2005 is much simple and easy to optimize and manage applications and data. Database in SQL Server 2005 is managed and monitored in effective way (SQL Server, 2009).
Microsoft SQL Server 2005 advantages are followed as:
Database mirroring is a newly available feature in Microsoft SQL Server 2005. A log of records is transferred from one server to the other server. In SQL server 2005 an instance of one server database transaction log is easily copied to the other database which is on standby instance of SQL server.
They are dependent on the source database. Database snapshot must be on the same databse server instance.
With the help of database engine SQL Server 2005 creates custom .NET objects. For, example using well-known .NET languages VB and VC# triggers stored procedures can be created easily. Object oriented capabilities like polymorphism, inheritance and encapsulation are offered by Microsoft VC#. Instead of using Transact SQL for calculating and execution logic that features for complex tasks including string handling functions and regular expressions Managed code is better to use.
Service Broker allows SQL Server developers to build applications like asynchronous, scalable and queued database. Using TSQL Service Broker allows ability in creating message based and asynchronous applications. I t also allows us to send messages between different instances. Service Broker features include queues of database objects, transactional message delivery between all the SQL instances. Message delivery, handling message grouping are guaranteed by database engine.
DDL triggers are fire stored procedures which begin with Create, Alter and Drop. System stored procedures which perform operations like DDL neither are nor supported. For auditing and regulating database operations DDL triggers uses Administrative tasks. The following operations are performed by DDL triggers:
- A change to the database schema is prevented.
- Record changes in database schema.
- Fire event in response to change in database schema.
On the T_SQL syntax statement DDL triggers has the capability of creating and using more than one trigger. Designing a DDL Trigger : An administrator defines scope of the trigger before designing a DDL trigger. Administrator has to check whether the trigger act in response to single DDL statement or group of DDL statements. For coding response DBA can use the EVENTDATA()TSQL function (SQL Server 2005 - Using DDL Triggers, 2009).
SQL SERVER 2005 provides a special feature named Ranking functions which has ability to rank result set. This lets us to adapt the way in which the results are returned (Top 10 advanced features of SQL Server 2005, 2009).
A new data-type has been introduced in SQL Server 2005 to hold XML. It can also perform checks for well-formed and validations of the XML. It has also provides the ability to query the database and create indexes on this data-type
Database Mail enhances a great e-mail solution available in database engine which is a great successor to SQL Mail. These messages contain cluster ware. With the help of Database Mail, database applications send electronic messages to the users. These e-mails contain results of the queries which include the files from any resource of our network.
9.3 Integrated Development Environment
MS Visual Studio 2008 will be used as the integrated development environment (IDE) by developers for project implementation. It is also a product by Microsoft supporting ASP.NET code development with easy to use editor and debugger for code development
Microsoft Visual Studio development system is a collection of development designed to aid software developers. The main role of Visual Studio 2008 is to improve development process and construct the work by achieving breakthroughs easier. Microsoft Visual Studio 2008 includes some advanced development tools like debugging features, database functionality, and innovative features for quickly creating tomorrow's cutting edge applications across any various platforms.
Visual Studio 2008 is a product developed by Microsoft that delivers vision of smart client applications. Developers here rapidly create connected applications that deliver with high quality. The advantage of using windows vista for Visual Studio 2008 is that it is more secure, reliable and management.
Visual Studio 2008 includes .NET Framework 3.5 for fast development of applications and the improvement of web development tool increases the speed of all types of data.
It also has some extra features like
Rapid Application Development
For better help of software creation by developers Visual Studio 2008 delivers advanced language with excellent data features like “Language Integrated Query (LINQ)” which is simple for programmers to develop solution so that they can examine and act on information.
Within the same development environment Visual Studio 2008 allows programmers to target on any version of .NET Framework 2.0, 3.0 and 3.5 which helps programmers to support any kind of project in same environment.
Break Through User Experience
There are so many new tools that increase the creation speed of any application in Visual Studio 2008 on any type of platform that includes Web, Windows Vista and SQL Server 2008. Technologies like ASP.NET, AJAX and Web enables programmers to create Web experiences in an interactive and efficient manner.
Effective Team Collaboration
Visual Studio 2008 distributes a better and expanded offer by improving collaboration in development team. It also includes various tools which help in generating database professionals to development process.
Use of Microsoft .NET Framework 3.5
In Visual Studio 2008 .NET Framework 3.5 is the latest feature added to it and allows construction of all the applications which are connected together and provides building blocks for resolving common programming tasks.
Both .NET Framework and Visual Studio decreases the need of common plumbing code which reduces development time so that developers can concentrate on solving business problems. The .NET Framework 3.5 is a step increment on .NET Framework 3.0 which enhances some extra features including the base “class library, Windows Presentation Foundation, Windows Communication Foundation, Windows Workflow Foundation and Windows Card Space” (Visual Studio 2008 Overview, 2009).
9.4 .NET Framework 3.5
The .NET Framework allows the creation of connected applications that affords excellent end-user experiences by providing building blocks for resolving common programming tasks. For connected applications which are built on .net framework 3.5 model processes successfully and makes possible system integration in heterogeneous environments.
Construction of common plumbing code is reduced with both Visual Studio and .Net framework and also it reduces the development time for solving business problems which is done by developers.
.NET Framework 3.5 is built based on .NET Framework 3.0. Enhancements like Windows Communication Foundation (WCF), Windows Presentation Foundation (WPF) and Windows Workflow Foundation (WWF) are the extra features in .NET Framework 3.5, Windows Card space and Base Class Library when compared with.NET Framework 3.0. .NET Framework 3.5 is a bit high version containing advanced features when compared with .NET Framework 3.0 and .NET Framework 2.0.
Feature of .NET Framework 3.5 are:
Faster .NET Framework Execution
- Client improvement is done on 64 bit
- Garbage collection is faster
- Improvement in the performance of Thread Pool
Language Integrated Query
In-depth integration of Language Integrated Query in framework and programming languages.
Work Flow Enabled Services
- Work Flow Services is used to provide long running services.
- For simplifying construction of Work Flow enabled services using Work Flow and Work Communication Foundation Work Flow activities and program model classes are added (.NET Framework and Features, 2007).
9.5 UML Tools
The Unified Modeling Language (UML) is used for graphically representing the software. The specifications are defined and are also maintained by Object Management Group.
The most common use of UML is to show only relevant information by hiding the details and emphasizing on a visual big picture
Some of the most common kinds of modeling diagrams are
- Use case diagrams: These diagrams are used to model what the application does by showing who interacts with the system and what are the actions. A set of such diagrams are used to describe the application
- Class diagrams : These diagram graphically represent the classes and how they are related with different types of relationship notations
- Package and Object diagrams: In complex situations, Class diagrams can logically be grouped as packages as package diagrams. Object diagrams are used to explain complicated relationships by taking help of class instances instead of classes
- Sequence diagrams: Sequence diagrams are ordered by time, showing all the details of actions performed
- Collaboration diagrams : They are more like Sequence diagrams focusing on the individual roles of the object rather the sequence in which they have occurred
- Activity diagrams: These diagrams focus on the set of activities involved with a process and how they are related
There are many tools available readily to generate the above set of UML diagrams. StarUML will be used for this project as it is easy to use and free of cost.
10 System Requirements (Hardware)
Processor : Pentium® Dual-Core, 2.30 GHz (or above).
RAM : 128 MB (or above).
HDD : 20 GB (or Above).
Processor : Pentium® Dual-Core, 2.30 GHz (or above).
RAM : 64 MB (or Above).
HDD : 10 GB (or Above).
Windows 7,98, 2000, ME, XP, NT
Google Chrome, IE4 or Netscape 4x or upwards.
Microsoft SQL Server 2005
11 Design Considerations
Justfor99 project aims to design implement and document a website that can be commercially adopted by whole sale companies to improve efficiency and profits. The main aims for this project while developing is to develop this project with all the applications that are compact and do not lack the functionalities what the user desires.
This project considers two important users for the application: Administrator and Customer. Because each and every part is designed in such a way that it maintains complete details about sales, purchases, statements and reports with a good keep of record in database. The following are the points which are taken for considerations while designing all applications that are exist in the project.
- Administrator in this project plays a key role by accessing each and every application in project. Administrator is provided a separate login details so that he can access by adding, updating and deleting the necessary information which is related to the staff, vendor and customers.
- Customers also lead great role in this project. Each and every customer is eligible to purchase jewelry items that are in the main application with their login id credentials and also customers are offered for some discounts which make them to buy regularly.
- Data entry in the required fields is designed in such a way that they are mandatory and some of them are optional.
- Text in some fields is brief or succinct to avoid wastage of screen space or memory.
- Database is designed for entire project which stores necessary information relationally
- Design of Sale reports and Statements are provided in the project so that based on the monthly statements and yearly statements, history of items purchased from best selling to least selling can be easily gathered and used for forecasts.
11.1 Use Case Diagrams
It is important to know that while designing an application it should be understandable that for what purpose we are designing the complete application and who are the potential users. Users of this application will be on personal computers so that it is responsible to design and give all the information details in a disciplined manner which makes easy to use the application.
After analyzing the entire project with requirements three types of use cases are identified.
11.2 Data Flow Diagrams
Context Level DFD
Level One DFD
Homepage, Modifying Subcategory, Category, Products, Adding Products, Category
Level Two DFD
Level Three DFD
DFD in Structural Designing
This is the first step in structure design method. In our project, there are two input files: file1 and file2 and two outputs are required: the merit list and the waiting list. A high level DFD for this is given. The diagram is fairly clear. File2 we check for the validation of forms, if correct then store them in temporary database else they are rejected and send the rejection letter. The record from First level factoring: The first-level structure chart can easily be obtained and is shown in figure. In the structure chart, instead of having one output module for each of the three outputs, as shown in the data flow diagram, we have only one module, which invokes three output modules for the different outputs.
Factoring I/O modules
The output module does not need any factoring. According to the design methodology, the input module which validates the input will have on input module to get the array of validated forms by referring to the other input files. This input module can then be factored into other modules to get the validation done. The input module will get data from input files2 and validate the given forms the structure chart is shown in the figure.
Here we list each major requirements and then list the modules in the structure chart that implements that requirement.
Analysis using information flow metrics
Based on the structure chart the design of the system was first specified completely. This required formally specifying the data structure and all the modules. For each module we specified the purpose of the module, its interface, the modules it invokes and the estimated size of the module ( in LOC). This formed the first version of the design document. The first thing that could be noted was that when specifying a complete from the structure chart the design usually expands.
We can develop the code for the given project using the sketched design in any of the languages which fit into the software requirements.
11.3 Database Design
Based on the requirements, the following relational database tables are designed to support the system
High Level System Designing
The purpose of this phase will be to design the overall functioning of the proposed system and finalize the input and output formats. The administrator and the projects teams should present the document of functional specifications in a language that can be understood. The client must approve the design, and the project team should then be able to move on to the subsequent phases
12.1 Objective of System Testing
Testing is vital to the success of any system, Testing is done at different stages within the development phase. System testing makes a logical assumption that if all parts of the system are correct, the goals will be achieved successfully, inadequate tests or no testing leads to errors that may come up after when correction would be extremely difficult. Another objective of testing is its utility as a user-oriented vehicle before implementation.
Each module will be tested individually so as to make the individual component error free. Also other attached modules will also be error free.
Each module will be tested of its effect on other modules by integrating the modules. This will remove further errors from the system and may also result in some changes in the individual; modules.
Now testing is done to ensure that if users enter any superfluous data, it does not reach to the database but are asked to record the data in the acceptable format.
Here, the whole system is tested fully. The errors now should be meager. This will ensure flawless working of the system at the user's site rather than giving troubles after installation.
White box testing
This testing is predicated on close examinations of procedural details. Providing test cases that exercise specific sets of condition or loops tests logical paths through the software.
Black Box Testing
This Testing method focuses on the functional requirements of the proposed software.
It is a test case design method that exercise the logical conditions contained in a program module.
Data flow Testing
This method selects paths of a program according to the locations of definitions and uses of variables in the program.
The testing of the system was done on both artificial and live data. The following types of tests are performed.
12.2 Unit Testing
This testing focuses verification on the module. Using procedural design description as a Guide; important control paths are tested to uncover errors with in the boundaries of the module. The relative complexity of tests and uncovered errors is limited by the constraints scope established for unit testing. The unit testing can be conducted in parallel for several modules.
12.3 Integration Testing
Generally a combined approach known as sandwich testing using features of top down testing strategy for upper levels of the program structure, coupled with the bottom up strategy for subordinate modules.
12.4 Functional Testing
This is done for each module/sub module of the system. Functional testing serves as a means of validating weather the functionality of the system confirms the original user requirement i.e. done the module do what is supposed to do. The separate schedules were made for functional testing .it involves preparation of bugs listing for non-conformities.
12.5 System Testing
System testing is done when the entire system has been fully integrated. The purpose of the system testing is to test how the different modules interact with each other and whether the system provides the functionality that was expected.
It consists of the following steps.
- Program Testing
- String Testing
- System Testing
- System Documentation
- User Acceptance Testing
13 Validations and verifications
13.1 Validation Checks
The major decisions of a validation stage are concerned with handling errors and distribution of data. The data relevant to the system enters it through a set of validation procedures. Often they are caused by a generalized input validation package tailored for the needs of a particular system.
There are various ways of handling errors open to the designer that includes rejection of the item of input or processing the next item, writing error record and signaling the appropriate message to the user. Error procedures must be specified in detail showing decisions, actions and exceptions.
In most of the cases where error occurs an error message is popped to the user who is supposed to realize the fact and do the necessary steps. The program developed is checked thoroughly for errors by testing it with data and the errors that are raised during this can be clarified. The program may halt during an unpredictable error.
Test Case 1: Admin page:
Description:Enter the invalid username and password. Label will appear that indicates invalid user or password.
An error message should be indicated showing the Invalid Username and Password is entered.
Test Case 2: Admin page:
Go to the main application login page and enter a valid username and password in the admin login page.
The admin username and password should be taken correct and must redirect to the page where all system modules are displayed.
Test Case 3: Add New Home Page Product Details
Description:Leaving all the text boxes empty
Home Page Product Details in the page should be displayed.
Test Case 4: Modify Home Page Products
Click on Modify Home Page Products.