Software Requirement Specification of Alahamora p2p Network and Tool
Software Requirement Specification
Version 1.0.0 Project Title Alahamora p2p Network and Tool Team Title Alahamora Team !uide "#reS$T% and &olle'e (ai)an Ahmed* $nte'ral +ni,ersit-* .ucknow !roup /em0ers 1ashir Tufail /ohammed (aisal Sachin #umar Verma Shariq A)i) 12 $NTR34+&T$3N The purpose of this section is to provide the Reader with a general, background information about the software the Alahamora p2p Tool. 5+R53S6 This document is the oftware Re!uirement pecification for the Alahamora p2p Tool version ".#.#. This R describes the functions and performance re!uirements of the Alahamora p2p Tool. Alahamora is a peer to peer network like $apster and %itTorrent, albeit developed on and for the &inu' environment. (t is a $etwork related software tool, and allows the users to share their resources in a Peer to Peer network. 43&+/6NT &3NV6NT$3NS Throughout this document, the following conventions have been used) * +ont) * Times $ew Roman i,e "- for .ain /eadings i,e "0 for ub /eadings i,e "2 for the rest of the document. Alahamora Team " Software Requirement Specification of Alahamora p2p Network and Tool 1ords in %old are important terms, and have been formatted to grab the attention of the reader. $NT6N464 A+4$6N&6 AN4 R6A4$N! S+!!6ST$3NS This document is meant for users, developers, pro2ect managers, testers, and documentation writers. The R document aims to e'plain in an eas3 manner, the basic idea behind the Alahamora p2p Tool and how the developers aim to achieve their goals. (t also aims to introduce to the users the main features of the Alahamora p2p Tool and what makes it different from other p2p tools like 4a,aa, &ime1ire and $apster etc. S&356 3( T16 46V6.35/6NT 5R376&T The Alahamora p2p Tool is peer to peer network developed on and for the &inu' environment. A peer to peer network is a powerful tool which allows like minded individuals to interact with each other and share their resources. The3 thus help in bridging the geographical boundaries separating these users and create a trul3 global village. The developers of the Alahamora p2p tool feel that it is high time that a peer to peer network is developed which is dedicated to the &inu' environment, instead of giving half hearted support. 1e hope that this tool will provide to its users the benefits of peer to peer networks and facilitate in bringing together the global 5pen ource communit3 in general and the (ndian 5pen ource 6ommunit3 in particular. The Alahamora p2p Tool is different from other e'isting p2p tools as it implements a h3brid network architecture based on overla3 network. The architecture of the proposed tool is given below. Alahamora Team 2 Software Requirement Specification of Alahamora p2p Network and Tool As can be seen from the diagram above, the tool has a two level erver hierarch3 followed b3 a two level client hierarch3. Another ke3 feature of the software is that it provides efficient searching of files based upon the file name and the file t3pe. This feature helps the user in finding the re!uired file, without having to go through enormous amount of unwanted results given b3 other p2p tools. As is the case with most peer to peer networks, we have no wa3 of monitoring what the users share over the internet. 1e hope that the users act in a responsible manner and share software and files while in the legal framework. 46($N$T$3NS* A&R3N8/S* AN4 A99R6V$AT$3NS Alahamora ) Refers to the Alahamora p2p Tool, the software being developed p2p ) Peer to Peer R6(6R6N&6S 65.P&7T7 R7+7R7$67 ) 8A9A 8A9A ) :ietel and :ietel PR5+7(5$A& 8A9A 7R97R PR5;RA..($; ) ubrahman3am et al. Alahamora Team < Software Requirement Specification of Alahamora p2p Network and Tool 65.P&7T7 R7+7R7$67 ) &($=> 65.P&7T7 R7+7R7$67 ) 6?6 @ @ 65R7 8A9A2 9olume " and 2 ) un .icros3stems Press PRA6T(6A& &($=> PR5;RA..($; ) Ashfa! A 4han www.sourceforge.net www.sarovar.org www.codeguru.com www.in.redhat.com www.bittorrent.com www.wikipedia.com 3V6RV$6: 3( 43&+/6NT +or the rest of the document, we first of all have defined the overall product. Then, we have given the e'ternal interface re!uirements, followed b3 a brief description of the product components and features. (n the last section, we have provided the non functional re!uirements of the product. 3V6RA.. 46S&R$5T$3N
5R34+&T 56RS56&T$V6 Alahamora is a standalone s3stem. (t aims to replace the e'isting peer to peer networks b3 providing an enhancement over their e'isting features. Thus, Alahamora is a self contained peer to peer tool for the &inu' environment.
5R34+&T (+N&T$3NS The main function of Alahamora is to allow its users to share their resources over the internet. (t also allows the users to interact with each other via a chat client that will be integrated in the tool. The users can also post blogs on a website, where the3 can post code snippets etc and others can comment on their posts. Alahamora Team 0 Software Requirement Specification of Alahamora p2p Network and Tool +S6R &.ASS6S AN4 &1ARA&T6RST$&S The ma2or user classes that are e'pected to use this product are as follows 3pen Source &ommunit- The 5pen ource 6ommunit3 is e'pected to be the main user class of this product. These users are e'pected to share their codes and ideas b3 uploading and downloading source codes over the p2p network. (n addition, the3 will be using the chat client to interact with each other and share ideas. Also, these users will be among the main bloggers on our website where the3 will share code snippets and ideas and also comment on other e'isting blogs. 5ro'rammers Programmers are the ne't main user class that is e'pected to use this product. These users are e'pected to use the document and software for downloading and also use the code snippets posted on the blog web site. Alahamora Team A Software Requirement Specification of Alahamora p2p Network and Tool !eeks The geeks will use our product to increase their understanding of the p2p networks and also to interact with other like minded people over the chat client. !eneral +sers The general users are e'pected to use our tool for general downloading and uploading of files, speciall3 videos, audios and documents. 356RAT$N! 6NV$3RN/6NT &lient Side Requirement 5 ) &inu' oftware Packages ) 89. and Alahamora 6lient tool Ser,er Side Requirements 5 ) Red /at &inu' 7nterprise 7dition 9ersion 0 oftware Packages ) Alahamora erver Tool 46S$!N AN4 $/5.6/6NTAT$3N &3NSTRA$NTS :ue to the lack of time, we are unable to full3 implement securit3 features in this product. Alahamora Team - Software Requirement Specification of Alahamora p2p Network and Tool Also, since there e'ists no protocol that directl3 supports peer to peer networks, we will have to work using the e'isting protocols. +S6R 43&+/6NTAT$3N To assist the user in understanding the product better and to assist them in better utili,ation of the product and its features, we will be providing a user manual Bin /T.& formatC. 1e also will be giving a link to the users where the3 can pose !ueries and !uestions regarding the product and its functionalit3. A user tutorial will also be provided to assist the user in getting started with the product. The tutorial will be in flash. ASS+/5T$3NS AN4 4656N46N&$6S 1e are assuming that the users will not use Alahamora to download cop3right and pornographic material. Also, we e'pect that the users not onl3 use the software to download resources, the3 will also be uploading files and resources for being downloaded b3 other users. 1e also assume that Alahamora users will not upload files containing malicious software like viruses, worms and sp3bots etc. 3V6RV$6: 3( 4ATA R6;+$R6/6NTS 1hen a new user registers with us, he will be asked to enter some personal information like his name, email id etc. also, he will be asked to enter a uni!ue login name and password. +or subse!uent logins, he will onl3 have to enter this login id and password to access all features of the software. Also, at the time of installation, a .3 hared +older will be created. All contents of this folder will be available for downloading b3 other users. The user can add or remove files from this folder. 1hile searching, the user !ueries will be sent to the concerned child server Bbased on file t3pe of the file being searchedC for searching. !6N6RA. &3NSTRA$NTS* ASS+/5T$3NS* 4656N46N&$6S* !+$46.$N6S This product is a web based application meant for the &inu' environment onl3. ince it is web based, a ma2or constraint on the performance will be due to the bandwidth of the clientDs web connection. A faster bandwidth will result in faster downloads. Another ma2or re!uirement is that the users also upload data and files, and not 2ust download files from the network. The product is .other erver dependant, and so if due to some reason the .other erver crashes, the whole network will crash. Alahamora Team E Software Requirement Specification of Alahamora p2p Network and Tool +S6R V$6: 3( 5R34+&T +S6 1hen the user logs in to the product and searches for a file, the .other erver transfers the !uer3 to the concerned +ile erver which sends back the results. As soon as the user clicks on the result, the download process starts without the user intervention. (f, in case, the remote user is bus3, the download process is put in a !ueue and it resumes as soon as the remote client becomes free. The overall progress of the download process will be shown b3 means of a progress bar. +or chatting, the users will be transferred to the chat room where he can chat with other online members in the chat room. To post and view blogs, the users will be sent to the blog site where the3 can post blogs and comments and also view e'isting blogs. 6<T6RNA. $NT6R(A&6 R6;+$R6/6NTS +S6R $NT6R(A&6 %asicall3 there will be two user interfaces provided b3 the software. $amel3 first one will be the screen containing a search pane providing area for the user to input his search !uer3 as well as various customi,ations to make his search more specific. econdl3 there will a window containing blog t3pe entr3 acting as the discussion forum as well as a simple chatting client will be provided. Third pane will contain the present status of s3stem usage, providing details about the files being downloaded and uploaded. S3(T:AR6 $NT6R(A&6 oftware will depend on the securit3 features provided b3 the operating s3stem and the language 2ava. &3//+N$&AT$3N $NT6R(A&6S +eatures will be provided for user to user communication through chatting and blogging facilities. The basic communication protocols will be =:P for searching !ueries and T6P for file transfer. Alahamora Team F Software Requirement Specification of Alahamora p2p Network and Tool S8ST6/ (6AT+R6S .o''in' There will three form of logging provided b3 the s3stem. +irst logging will be a new user to register, from which user will provide certain details about himself to facilitate efficient configuration of the s3stem. econd form of logging will be for e'isting user to log on to the s3stem. Third form of logging will be for anon3mous user to enter the s3stem but with certain restricted functions. Searchin' The user will be able to find the file he re!uires through the various files made available to the network b3 other users. The s3stem will show all the results available after search operation in a tabular form. After this user ma3 use his discretion to download the file suits him best. 4ownloadin' The user after deciding which file to download directs s3stem to download it. 3stem takes over and the downloading operation is performed independent of user intervention. &hattin' = 9lo''in' The user ca n also avail the communication facilities provided b3 the s3stem. =ser to user communication is supported in the form of chatting. =sers can also showcase their ideas through blogging facilit3. 3T16R N3N>(+N&T$3NA. R6;+$R6/6NTS 56R(3R/6N&6 R6;+$R6/6NTS (n order to maintain a acceptable transactional speed at ma'imum number of uploads allowed from a particular user will be three at an3 time. An3 more re!uests for download will be sent to the waiting !ueue. (n the same manner to e!uall3 share resources among all the users onl3 three downloads will be allowed at an3 time. Also connections to the servers will be based on the criteria of attributes of the user like his location and downloading habits. SA(6T8 R6;+$R6/6NTS Alahamora Team G Software Requirement Specification of Alahamora p2p Network and Tool As with various other P2P networks the elementar3 !uestion here is about the contents which users will be sharing. The responsibilit3 of the material to be shared lies with users and he will be responsible for the material which he uploads or downloads. A little caution on the userDs part to sh3 awa3 from illegal, malicious and suspicious material will be beneficial. S6&+R$T8 R6;+$R6/6NTS The safet3 part of the s3stem will be based on the facilities provided b3 the 5 and the inherent securit3 features provided b3 the 8ava language. ervers are customi,ed to run on &inu' Bespeciall3 R/7&0C. S3(T:AR6 ;+A.$T8 ATTR$9+T6S The =P of the s3stem is that all the client application is based on 8ava, which makes the s3stem platform independent and robust. econdl3 the s3stem will provide the user with eas3 to use and understand ;=( interface. =ser can easil3 interact with the s3stem with menus and te't areas. 9+SS$N6SS R+.6S The basic fact here is the material for upload and download is totall3 dependent on the userDs discretion and network has no responsibilit3 for that matter. (t onl3 provides a medium of transport. (tDs up userDs sense of moralit3 in which manner he e'ploits the s3stem. Alahamora Team "#