The purpose of this Software Requirements Specification is to outline in detail the requirements of the auction system proposal set forth by Newcastle2050 Co. Ltd. The initial system specifications document does not supply sufficient information for constructing this detailed system. This document aims to clarify these requirements and provide a good reference for the software developers constructing the system to help ensure that the design and implementation stages are successful. The intended audience for this requirements specification is the software developers of the auction system and the company Newcastle2050 Co.
Ltd. 2. Scope The “HammerTime” online auction system is being designed to facilitate online transactions between buyers and sellers from anywhere in Australia. The basic premise of this system is that anyone in Australia with an internet connection and a basic knowledge of computing will be able to not only shop for items on this auction website but also set up their own online auctions with ease. The system must therefore have an intuitive, user-friendly interface. The system will be developed using server-side pages in order to increase compatibility with various systems.
The only operating system that the system will be tested under is Microsoft Windows, however it is expected that any system with a standard web browser will be compatible with the system. Newcastle2050 Co. Ltd aims to set itself apart from the other available auction sites by being the trusted third party for all transactions through the service. This essentially means that buyers and sellers can utilise the system with confidence and not have to be concerned about issues such as non-paying bidders and faulty products. System administrators at Newcastle2050 Co. Ltd. ill closely monitor the system and ensure that all auctions are run legally and within the conditions set down by the company, amongst other things.
1. 3 Definitions The following acronyms are used throughout this document: |Acronym |Definition | |HT |“HammerTime” – the name of the auction system | |TCP/IP |Transfer Control Protocol / Internet Protocol | |JDK |Java Development Kit | |N2050 |Newcastle2050 Co. Ltd. | |FTP |File Transfer Protocol | |JSP |Java Server Page | |XML |Extensible Markup Language | |SQL |Standard Query Language | The following definitions are used throughout this document: Term |Definition | |Tomcat |Apache Jakarta-Tomcat web server | |flame |The server flame. newcastle. edu. au, tomcat can be run on here. | |lily |The server lily. newcastle. edu. au, where an oracle database resides that the system | | |uses. | |User |An end user of the system, can be a registered user, unregistered user or | | |administrator. | 4. References JavaTM 2 Platform, Standard Edition, v 1. 4. 2 API Specification http://java. sun. com/j2se/1. 4. 2/docs/api/index. html 5. Overview This SRS provides a substantial amount of information that can be utilised during the design and implementation stages of the software development.
The document is organised into many sections and sub-sections that describe requirements for each respective element in the system. The document has been constructed after carefully analysing the initial system specifications as set down by N2050, and then gaining more detailed information from them through interview questions. 2. Overall Description This section describes various parts of the system and aims to convey a general understanding of the system and its requirements. 1. Product Perspective The system to be developed is a web based application, and so is interfaced with other software systems that enable it to function.
These include applications such as the user’s web browser, and an SQL database. The following block diagram shows the links between the HT system and related systems. [pic] 2. System Interfaces 1. User Interfaces The interface provided for the user will be a series of web pages that they can easily access through a standard web browser such as Microsoft Internet Explorer. A web page template will be used to ensure that all pages have common features, e. g. navigation links in the same place on each page. This will greatly improve the interface design, as the user will be able to find what they are looking for quickly and easily.
Using an intuitive design also helps in this respect, as users will find items where they are commonly found on other web pages. The majority of pages within the user interface are generated on the server side, ensuring the greatest possible compatibility with web browsers and easing strain on the end user’s system. 2. Hardware interfaces The hardware interfaces used to host the web page and database content for the HT system are as follows: • Web Server – flame. newcastle. edu. au • Database Server – lily. newcastle. edu. au Note: The web server must be running tomcat on the appropriate port in order for the JSP pages to function. 3.
Software Interfaces The Apache Jakarta-Tomcat package is required to be installed and running on the web server in order for the site to function. The site will be designed for and tested on a tomcat version 3. 2. 1 server. The Java Development Kit is also required to be on the web server. The version used in the implementation will be 1. 4. 2 The oracle database software is required to be running on the database server (lily. newcastle. edu. au). Users of the system are required to have a supported web browser. The web browsers that this system will be tested on are: Microsoft Internet explorer 6, Netscape Navigator 6 and Opera 7. . Communications Interfaces The most obvious communications interface that this system relies on is the internet, the World Wide Web is what the user interface is based around, which relies on the TCP/IP protocol. Other types of servers also support the system. An FTP server for example is used to upload content to the website, and a database server used to store user information. Web pages hosted on the flame web server are capable of communicating with these other servers, this is extremely important in the case of the database server, because the system will be saving to and retrieving from the database frequently.
2. 5 Memory Constraints Secondary storage constraints – The storage constraints imposed by the web servers being used will not affect the operation of the system as there is ample storage for the system’s needs. The secondary storage available in the oracle database may be a constraint if the system is used frequently and the database becomes large, this factor is beyond the control of the software developers. Secondary storage uses for the system on the end users machine will be very minimal, only a small amount of data will be stored on the local machine, so this is not a concern for the system.
Primary storage constraints – All servers being used should have more than enough primary memory to cope with the resources that the system will require. The users machine will need to have sufficient primary memory to load the pages, any relatively modern system should be adequate. 2. 2. 6 Operations Normal operations of the system include various users accessing the system at any one time, and thousands of queries being conducted by users on the database every day. Maintenance procedures will take place each day, such as database and website backups and tests.
These procedures will be run during a non-peak usage time in order to reduce the possibility of using excess resources and slowing the system down. Only in extreme cases will the web server need to be taken offline in order to perform these operations. 2. 2. 7 Site Adaptation Requirements The site that N2050 has designated for running the system will need a significant amount of infrastructure in place. For example areas for receiving, dispatching and inspecting goods will need to be established.
As far as the electronic portion of the system goes, the site does not have many special requirements, besides some computer terminals where administrators 3. Product Functions • Browse Auctions This function allows both registered and unregistered users to browse all the auctions currently running on the site. The title of each auction will be presented on the browse page with a link to the full description and optional image of the item. Note that a user must register for the site in order to place a bid or have any input to the auction. • Start new auction This link will allow a registered user to post a new auction on the site.
The user will be required to choose a category for the auction to be placed in so that anyone browsing the site can locate the item. The seller will also be required to provide information such as an auction title, product description and reserve price. This data can all be submitted via an easy to use form that is able to be submitted once the minimum amount of information required is entered. • Edit auction details Once a registered user has logged in, they can chose to edit the details of any auction they are currently running. Only select details can be edited, such as the description. The auction can also be cancelled from this page. Register new user This allows someone that is not a currently registered user to enter their details and create a unique user name. A form is presented to the user that they must complete before it can be submitted. The information required from all users includes: first name, last name, user name (must be unique), password, street address, city, state/territory, postcode, contact number(s), email address (must be unique), date of birth.
• View user details This function allows a currently logged in user to view the personal details that they entered when they registered for the site. A link to the edit user details page is provided here. Edit user details The edit user details page allows a currently logged in user to edit any of their details besides user name and date of birth • Place bid Allows a currently logged in user to place a bid on an auction they are viewing. The user must enter a bid that is at least $0. 50 higher than the last bid placed on that auction for the bid to be processed. • Check transaction status This option is only available to registered users that have either just won an auction (buyer) or have just finished an auction as a seller. This page allows the buyer and seller to view the status of the transaction. i. . whether or not the money and/or items have been received by Newcastle2050 Co. Ltd. Or are currently being shipped.
2. 4 User Characteristics The users of the site will need to be current residents of Australia as the auctions and sales are only held within the country. As English will be the only language that this site will be available in, this may make it difficult to be used by citizens of Australia who do not speak or are not fluent in English. A pre-requisite of users will be of course that they have basic internet and online skills in order to register, place bids and begin their own auctions.
The user interface will make this simple with its straight forward and user-friendly style and layout that will be designed to suit newer users as well as those who are familiar and more advanced. The site will be intended to be used by a wide range of people from all age groups from inexperienced to experienced internet users. Therefore it will be compatible with most common web browsers and the windows operating systems as this will most likely be the software and programs used by the majority of users. 2. 5 Constraints . 5. 1 Policies and regulations The privacy of users will be respected in that the address and other such personal information will not be displayed or be accessible by another user. This will be kept confidential at all times as the payment and delivery processes are done through the site so that no users details are exposed to another. The site will also try to ensure that no illegal or inappropriate materials are traded/sold. The site has the right to take legal action if this is done. 2. 5. 2 Hardware limitations
Certain hardware limitations will be faced when producing this website, such as: The server which the website will be placed on, which in this case is the flame server at the University of Newcastle. The tomcat server used to handle jsp functions will also be a limitation if it happens to crash or such. If large amounts of traffic are trying to access the site simultaneously, say for a popular auction at closing time, the hardware may not be able to handle such large amounts of traffic which may be the cause of crucial errors.
This would not be helpful in a site as such where users are constantly accessing and refreshing pages for updates. 2. 5. 3 Other applications A website such as this must make sure that it is compatible with a number of different browsers (IE, Netscape, Mozilla, Opera etc) as every user is not expected to have identical software programs and applications running on their system. Testing will be only undertaken with windows operating system, therefore the results and performance in other operating systems may be varied and cannot be guaranteed. . 5. 4 Higher Order Languages The system will be written in jsp using technologies such as SQL and XML, so the only limitations encountered will be the limitations inside those languages used. 2. 5. 5 Safety and security consideration A concern of safety and security would be that a users details will not be exposed to a 3rd party (see policies and regulations). Another concern would be unauthorized persons gaining access to the system and security measures must be taken so this does not occur. 2. 5. 6 Other constraints
As this is only a relatively small project, time is a big constraint as a site such as this would require some extensive programming, testing and maintenance if it were to be correctly implemented and used for secure online transactions and business purposes. 2. 6 Assumptions and Dependencies This system is heavily dependent upon the status of the servers on which its files are hosted. It is assumed that the servers flame and lily have very little, if any, down time. It is also assumed that neither of the servers will generate internal errors that could lead to system failure.