Creative Writing


In diverse industrial and academic environments, the quality of the software has been evaluated using different analytic studies. The contribution of the present work is focused on the development of a methodology in order to improve the evaluation
of 17
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Related Documents
  Computer Science & Engineering: An International Journal (CSEIJ), Vol.2, No.4, August 2012DOI : 10.5121/cseij.2012.24029 RELIABILITY IMPROVEMENT WITH PSP OFWEB-BASED SOFTWARE APPLICATIONS Leticia Dávila-Nicanor, Pedro Mejía-Alvarez CINVESTAV-IPN. Sección de Computación,  ABSTRACT  In diverse industrial and academic environments, thequality of the softwarehas been evaluatedusingdifferent analytic studies. The contribution of the present work is focused on thedevelopment of amethodology in order to improvethe evaluation and analysisof the reliability of web-based softwareapplications.The Personal Software Process (PSP) was introduced in our methodology for improving thequality of the process and the product. The Evaluation + Improvement (Ei) process is performed in ourmethodology to evaluate and improve the quality of the software system.We tested our methodology in aweb-based software systemand used statistical modeling theory for the analysis andevaluation of thereliability. The behavior of the system underideal conditions was evaluated and compared againsttheoperation of the system executing under real conditions.The results obtained demonstratedtheeffectiveness and applicability of our methodology.  KEYWORDS  ReliabilityModels,Web Applications, Improvement, PSP . 1.INTRODUCTION Web applications possess different unique characteristicsthat make web testing and qualityassurance different fromits corresponding traditional techniques. Web applicationscan becharacterized by the following aspects [5].Massive Access of users, the simultaneous access of theusers in these applications is part of the essence of this typeof systems. Web applicationsprovide cross-platform universalaccess to web resources for the massive user population.For theusers it should be transparent that these webapplications provide this service to other millions of users.The difficulty of establishingthe causes of the errors, sinceweb applications may beaccess by millions of users, errorshave a big impact. Finding the srcin of errors in webapplicationsmay be difficult and its recovery time may notbe immediate, given the great numberof software elementsthat intervene.The integration of diverse software elements for anapplicationin Internet. Web users employ different hardwareequipments, network connections,operating systems, middlewareand web server support. In a web application, twomaincomponents are always required: the backend and thefront-end. The backend is the softwarerequired for an applicationin Internet to operate. Among the most importantsoftware found inthe backend are: the database servers(MySQL, Oracle, Informix, DB2, among those butimportant),Web Servers (Apache, Netscape Enterprise Server,Netra of Sun, etc.), and the  Computer Science & Engineering: An International Journal (CSEIJ), Vol.2, No.4, August 201210 interface programming languages(HTML, XML, PHP, Servlets-Java, Live-Wire,etc.). Thefront-end is the software required on the part ofthe client to allow the systems to access theWebApplications. Among themost important software found in the frontend are: Navigators(Explorer, Netscape), which contain plug-in softwaresuch as presentations of Macromedia, andlanguages likeJavaScript.Diversity of frameworks to develop,to operate and to maintaina Website, the developmentof a Web site requiresof a great team of people with different profiles andbackgrounds.These teams include programmers, graphic designers,usability engineers,specialists in information integration,network experts and database administrators. Thisdiversityof personnel profiles makes reliable web applicationsdevelopment difficult and sometimesunpredictable.Because of the above characteristics web-based systemstend to evolve rapidlyand undergo frequent modifications,due to new technological and commercial opportunities, aswell as feedback from the users. In consequence web-basedsystems are very sensitive to errors.Most work on web applicationshas been on making them more powerful, but relativelylittle hasbeen done to ensure its quality. The mostimportant quality attributes demanded by web-basedsystems are reliability, usability and security. Additional importantquality attributes areavailability, scalability, maintainabilityand time-to-market [12]. As with traditional software,verification and validation (V&V) processes havethe purpose of checking the quality of theweb-based systemand revealing non-compliances with the user requirements.However, it isclear that quality assurance should notonly include verification and validation but also processimprovement.We consider statistical modeling and related reliability analysisin our previouswork [18] as one good candidate for effective web quality assurance. This techniquehelp ondetecting software errors based on user requirements.In this paper we proposethe combinationthe idea of verification & validation process withPersonal Software Process(PSP) asimprovement processas part of the quality assurance process of a web-based system. Themethodologyprovidesnot only a convenientdefinition on detection software errors, but also todirect the verification and validation process.Structural and thread testing are used to obtaininformation about the defect density and the mean software fault occurrencein the methodology.This paper is organized as follows. In Section2, WebTesting and Quality Assurance is discussed.In Sections3a methodology for improving the reliability of web-basedsoftware systems isintroduced. In Section 4, a case study isintroduced to illustrate the use of our methodology.Section5,we introduce the tool used for the evaluation process.In Section 6,describes theapplication of the methodology to the casestudy. Finally in Section 7, we give some concludingremarks. 2.WEB TESTING AND QUALITY ASSURANCE Quality assurance and testing for web applications focuson the prevention and detection of webfailures. Webfailure is defined as the inability to correctly deliver informationor documentsrequired by web users. The followingweb failure sourcesare associated with different web layers[11]:  Host or network failures: Hardware or system failuresat the destination host or home host, aswell asnetwork failures, may lead to web failures. These failuresare mostly related tomiddleware or web serverlayers.  Browser failures: These failures are linked to problemsin the web browser at the client side.These failurescan be treated the same way as software productfailures. Existing techniques for  Computer Science & Engineering: An International Journal (CSEIJ), Vol.2, No.4, August 201211 software testingand reliability [1, 10] can be used to assess, predictand improve browserreliability. For web applicationsthere is a strong emphasis in the compatibility amongbrowsers.  Source or content failures: Web failures can also becaused by the information source itself atthe serverside.In most cases these kinds of failures reveal non-complianceswith userrequirements.In our methodology we focus in source failures, insteadof browser compatibility orhost, network or otherbrowser failures.According to [8], information source relatedweb components include (a).HTML documents, (b).Java, Javascript, and ActiveX, (c).Cgi-bin Scripts, (d).Database, and (e).Multimediacomponents. Our goal is toensure functionality and reliability of this web componentsand theirapplications. To dothis, we use some forms offunctionality testing and thread testing. 2.1.Web Modeling and Testing Techniques Different types of web modeling and testing techniquesare being used in the development of webapplications. Thistechniques include,petri nets[9] ,model checking[2] andstatistical webmodeling and testing[5]. Software reliabilitymodels the behavior ofsoftwaresystems based onits failures. Predictions such as time to next failure, meantime to failure, or total number of faultsdetected, are examplesof measurements derived from the reliability models.Thesemeasurements provide an indicator of reliabilitygrowth. The equations for the models haveparametersestimated from techniques like least squares or maximumlikelihood estimation. Thentheequations of the models, oftencontaining exponents or logarithms must be executed.Mathematical and statistical functions provide the predictionsand degrees of confidence for thepredictions. Verifyingthat the selected model is valid for the particular data setmay requireseveral iterations and an analysis of the modelassumptions [17].According to [5] there are twoapproaches to statisticalweb-based software reliability analysis:  Time domain approach. The failure arrival processis analyzed as a stochastic process usingsoftware reliabilitygrowth models, which can be used to assessand predict reliability andestimate time or resourcesneeded to reach a reliability target. Markov chains aretypically used inthis approach. Most web-based applicationsconsists of various components, or stages visibletothe users and typically initiated by them.Markovmodels based on state transitions can generallycapturesuch navigations patterns.  Input domain approach. This approach is based onrepeated error sampling to model softwarereliability.Input from navigation patterns of web applications isused to test its reliability.Wewill evaluate the reliability of the system using theinput domain approach and study itsstatisticaldistribution.The evaluation of the quality attributes selected will be performedusing histograms.The main problem is to replacethe histograms by theoretical curves or models that representaprobability law. This probability law will allow us tomodel the behavior ofour quality attribute.  Computer Science & Engineering: An International Journal (CSEIJ), Vol.2, No.4, August 201212 3. A METHODOLOGY FOR SOFTWARE RELIABILITYIMPROVEMENT. The main goal in this paper is to introduce a methodologyto improve the reliability of web basedsoftware systems.This methodology intends to be used to evaluate thequalityof web-basedsoftware systems using statistical webtesting techniques[18]. We will perform an analysis, usingstatisticalmodeling techniques, to study the behavior of thesystem and to detect software defects.Results from ouranalysis will be evaluatedusing a case study. We will considerthe detection of software defects (errors) resultingfrom incorrect functionality of the system (i.e., functionalitynot corresponding to the systems specifications).We intend to use our methodology to evaluateweb-basedsoftware products already being used on a software industry.The behavior of thesystem under ideal conditions willbe evaluated and compared against the operation of the systemexecuting under real conditions. With the informationobtained from thiscomparison we will beable to acknowledgehow far theoperation of the system is from the idealcase. After evaluatingand predicting the quality of the webbasedsoftware system, the aim is to introduce the PersonalSoftware Process (PSP) to the softwareproduct to improvethe quality of the process and theproduct. After introducingPSP the quality of the product will be again evaluatedto measure thereliability and to compare again the operationof the system against the ideal case.The Evaluation+ Improvement process will be performedto evaluate and to improve the quality of the softwaresystem.The specific phases of the methodology are the following:1)Evaluation of the quality attribute under ideal conditions.The goal in this phase is tomodel thesystem followingideal conditions. In our ideal system the arrivals oftheclients into the server are simulated, so that no overloador concurrent problems occur.This evaluation will allowus to obtain reliability measurements for the system executingunder ideal conditions.2)Evaluation of the quality attribute under real conditions.This phase intends to providequantitative informationabout the reliability of the real web-based software system.Ourcase study will be a web-based software for applicationto graduate courses in aUniversity.3)Personal Software Process Execution. This phase isintroduced as a way to improve thequality of the web-basedsoftware system. Since we are applying PSP to welldevelopedweb-based software systems, with the applicationof PSP in our methodology we intendto execute a reengineeringprocess to improve the quality of the softwaresystem.4)Evaluation of the Quality Attribute after PSP. AfterPSP is implemented, theimprovements are measured andcompared against the results of the system before PSP.Improvementson the reliability of the system are expected afterthe introduction of PSP.5)Analysis of results and conclusions. After applying theEi process a number of times, weexpect to obtain the levelof reliability desired. After this process, we propose to evaluatethe results and to reach conclusions. Here, we mustidentify common sources of errorsand ways to avoid them.The information obtained from the Eiprocess will allowalso toquantify the effort involved in obtaining desired reliabilityattributes. This analysis isexpected to be useful forfuture web-based software developments.  Computer Science & Engineering: An International Journal (CSEIJ), Vol.2, No.4, August 201213 3.2.Modeling and Evaluation Process In our methodology, the process required to evaluate theweb software product is described inthefollowing steps.1)Analysis of the initial conditions. The initial conditionsof the system are (a). theinputs of the system, (b). its restrictionsand non-functional requirements, (c). the servicesprovidedby the system and (d). the development conditions.The development conditionsallow us to obtain the developmentprocess used (i.e cascade, iterative, prototyping, orreuse), the personnel involved in the development, the budgetassigned to softwaredevelopment, and the quality standardsimposedby the organization.2)Quality attributesselection and its corresponding metrics.The metrics selected mustrepresent the population understudy. In the selection of these metrics is important tochoose the appropriate time measurement units. These unitsdescribe the time necessaryto produce a reliable evaluationprocess.3)Measurement Process. A numerical value is the result ofthis process. This process isresponsible forobtaining reliableand easy-to-evaluate results. The steps used in thisprocessare the following.a. Select the components to be evaluated.b. Measure the characteristics for the components usingthe metrics selected.c. Identify anomalous measurements.d. Analyze anomalous components.4)Evaluation and model selection. The procedure requiredto obtain the statistical modelis defined in the followingsteps.a.Choose the probability law associated with the population.This law could have anempirical origin. Forinstance, the histogram that represents the errors occurredin atimeinterval during the execution of theweb system. Examples of these laws are the Gammadistribution, the Poison distribution, the Normal distributionor the Weibull distribution.b.Evaluate the parameters from the probability law. Aprobability law containsparameters that depend on thepopulation under study. Modeling is used as a way toprovide the mathematical equations necessary to obtainthe values of these parameters.Different techniquesfrom numerical analysis can be used to estimatethe parameters of the model. For instance, maximumlikelihood estimates (MLE’s), least squares method, orpolynomial regression [7]. It may be necessary to considerthe use of severaltechniques to obtain the parametersof the model. Once the parameters are obtained,thedistribution function graph from the model mustbe drawn to observe its behavior and itstendency. Thisgraph will denote the behavior of the quality attribute.c.Compare the probability law. Once chosen the probabilitylaw, and its correspondingparameters we mustverify that the law chosen is in accordance with thepopulation understudy. If the result from this comparisonis favorable, then we can be certain that the law
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks