5 research outputs found

    Otimizando recursos no processo de inspeção de software: uma abordagem utilizando simulação com dinâmica de sistemas

    Get PDF
    Reparar um defeito de software pode custar até 100 vezes mais caro, caso ele não seja encontrado o mais próximo possível de onde foi cometido. A inspeção de software é uma técnica que pode ser usada para ajudar a detectar defeitos nas fases iniciais do processo de desenvolvimento, evitando que esses defeitos sejam propagados para as fases seguintes. O custo/benefício de inspeções pode se tornar bastante significativo, caso as inspeções sejam realizadas de forma eficiente. Por ser influenciada por muitos fatores de qualidade, a análise do contexto da inspeção como um todo pode se tornar complexa. Gerentes de projeto deixam de utilizar a inspeção por falta de dados e estudos sobre os reais benefícios que ela pode gerar. Este artigo apresenta um modelo de dinâmica de sistemas, para apoiar decisões sobre esse ponto de vista. As variáveis que fazem parte do modelo são quantificadas com base em experimentos reais ou empíricos disponibilizados na literatura, tornando os resultados do modelo próximos do que seria obtido no mundo real. O modelo permite reproduzir cenários nos quais seria caro ou perigoso experimentar no mundo real, sendo possível antever os impactos que a inspeção pode trazer no processo de desenvolvimento.Sociedad Argentina de Informática e Investigación Operativa (SADIO

    Otimizando recursos no processo de inspeção de software: uma abordagem utilizando simulação com dinâmica de sistemas

    Get PDF
    Reparar um defeito de software pode custar até 100 vezes mais caro, caso ele não seja encontrado o mais próximo possível de onde foi cometido. A inspeção de software é uma técnica que pode ser usada para ajudar a detectar defeitos nas fases iniciais do processo de desenvolvimento, evitando que esses defeitos sejam propagados para as fases seguintes. O custo/benefício de inspeções pode se tornar bastante significativo, caso as inspeções sejam realizadas de forma eficiente. Por ser influenciada por muitos fatores de qualidade, a análise do contexto da inspeção como um todo pode se tornar complexa. Gerentes de projeto deixam de utilizar a inspeção por falta de dados e estudos sobre os reais benefícios que ela pode gerar. Este artigo apresenta um modelo de dinâmica de sistemas, para apoiar decisões sobre esse ponto de vista. As variáveis que fazem parte do modelo são quantificadas com base em experimentos reais ou empíricos disponibilizados na literatura, tornando os resultados do modelo próximos do que seria obtido no mundo real. O modelo permite reproduzir cenários nos quais seria caro ou perigoso experimentar no mundo real, sendo possível antever os impactos que a inspeção pode trazer no processo de desenvolvimento.Sociedad Argentina de Informática e Investigación Operativa (SADIO

    Temporal behavior of defect detection performance in design documents

    Get PDF
    Die Qualität der Software ist natürlich ein erfolgskritischer Faktor im Software Engineering (SE), genauso wie die Design Dokumente in den frühen Softwareentwicklungsphasen. Organisatorische Faktoren, wie etwa der verwendete Software-Entwicklungsprozess, helfen den Prozeß an sich besser zu Strukturieren und zu Optimieren. Entwicklungsansätze unterstützen diesen Prozeß, während analytische Ansätze darauf abzielen Fehler und Produktabweichungen zu vermeiden. Software Inspektionen (SI) und Tests sind bereits bekannte und anerkannte Techniken im SE um Fehler im Software Code, in Spezifikationen oder Design Dokumenten, während verschiedenster Phasen des Produktlebenszykluses, zu identifizieren. Ein Hauptaugenmerk von analytischen Qualitätssicherungen wie SI und Tests liegt auf der frühen Entdeckung von Fehlern. Denn je später ein Fehler im Produktentwicklungsprozess gefunden wird, desto aufwendiger und teurer ist dessen Entfernung. SI fokussieren auf eine Fehlerfindung in einer sehr frühen Phase des gesamten Prozesses ohne die Notwendigkeit eines Ausführbaren Software Codes. Deshalb ist SI anwendbar auf geschriebene Text Doku-ment wie Design Dokumente. Traditionelle Testansätze fokussieren auf die Erstellung von Testfällen und deren Exekution in späteren Phasen des Prozesses, weil sie im Gegensatz zu SI auf ausführbaren Code angewiesen sind. Folgernd ist es notwendig Testfallerstellung und SI zu kombinieren, um in noch frühen Phasen die Qualität weiter verbessern zu können. Die Vorteile beider Ansätze zu vereinen wird helfen um (a) Fehler sehr früh zu finden und (b) Testfälle zu definieren, welche ein systematisches Testen erlauben, daß wiederum auf Anfor-derungen und Use-Cases basiert. Der Ansatz in dieser These - auf Inspektionen basiertes Tes-ten – wird zu einer „Zuerst Testen“ Strategie auf Anforderungsbasis führen Diese These konzentriert sich auf einen auf Inspektionen basierten Test Ansatz, sowie auf SI generell mit einer genaueren Untersuchung des zeitlichen Verhaltens dieser Techniken in Design Dokumenten mit Hauptaugenmerk auf sehr kritische und kritische Fehler. Die Ergebnisse der Untersuchungen des zeitlichen Verhaltens ergaben, daß UBR in dem Zeit-intervall der ersten 120 Minuten äußerst effektiv und effizient agiert. UBT-i hingegen benötigt mehr Zeit, ca. 44 % um ein gleichwertiges Ergebnis erzielen zu können. Der Vergleich der bei-den Software Fehlerfindungstechniken zeigte weiters, daß UBR ganzheitlich gesehen nicht die überlegene Technik ist. Wegen der inkonsistenten Resultate der Experiment Sessions kann jedoch auch keine überlegene Technik definitiv genannt werden. Betreffend den Ergebnissen der False Positives, konnte das erwartete zeitliche Verhalten, daß die wenigsten False Positi-ves in den ersten 120 Minuten gefunden werden, nicht beobachtet werden. Deshalb mußte die betreffende Hypothese verworfen werden. Die These basiert auf einem Experiment, welches in einer kontrollierten akademischen Umge-bung durchgeführt wurde um die Fehlerfindungseffizienz Einzelner zu untersuchen. Die Ergebnisse werden Projekt- und Qualitätsmanagern helfen, um deren Qualitätsmaßnahmen besser planen zu können und es weiters ermöglichen deren zeitliche Dauer und daraus folgende Effizienz und Effektivität besser abschätzen zu können.The quality of software requirements and design documents are success critical issues in soft-ware engineering (SE) practice. Organizational measures, e.g., software processes, help struc-turing the development process along the project life-cycle, constructive approaches support building software products, and analytical approaches aim at investigating deliverables with respect to defects and product deviations. Software inspection and testing are well-known and common techniques in Software Engineering to identify defects in code documents, specifica-tions, and requirements documents in various phases of the project life-cycle. A major goal of analytical quality assurance activities, e.g., inspection and testing, is the detection of defects as early as possible because rework effort and cost increase, if defects are identified late in the project. Software inspection (SI) focuses on defect detection in early phases of software development without the need for executable software code. Thus, SI is applicable to written text documents, e.g., specification and requirements documents. Traditional testing approaches focus on test case definition and execution in later phases of development because testing requires executable code. Thus, we see the need to combine test case generation and software inspection early in the software project to increase software product quality and test cases. Bundling benefits from early defect detection (SI application) and early test case definition based on SI results can help identifying (a) defects early and (b) derive test cases definitions for systematic testing based on requirements and use cases. Our approach – inspection-based testing – leads to a test-first strategy on requirements level. This thesis focuses on the investigation of an inspection-based testing approach and software inspection with respect to the temporal behavior of defect detection with emphasis on critical defects in requirements and specification documents. The outcomes concerning the temporal behavior showed up some interesting results. UBR performs in the time interval of the first 120 minutes very effective and efficient. UBT-i in con-trary needs more time, about 44 % for its testing duration to achieve as good defect detection results as UBR. The comparison of these two software fault detection techniques showed that UBR is on the whole not the superior technique. Because of the inconsistent findings in the experiment sessions a clear favorite cannot be named. Concerning the results for the fault positives the expected temporal behavior, which was that the fewest false positives were found in the first 120 minutes, could not be investigated and the hypothesis on this had to be rejected. A controlled experiment in an academic environment was made to investigate defect detection performance and the temporal behavior of defect detection for individuals in a business IT software solution. The results can help project and quality managers to better plan analytical quality assurance activities, i.e., inspection and test case generation, with respect to the temporal behavior of both defect detection approaches
    corecore