9 research outputs found

    Investigación en Progreso: Estudio del Comportamiento Dinámico del Diseño de Sistemas de Información basado en Redes Complejas

    Get PDF
    La medición de sistemas de información es una de las tareas más importantes dentro de la Ingeniería del Software ya que permite caracterizarlos y estudiarlos eficientemente. Se han desarrollado decenas de métricas aunque principalmente orientadas a aspectos estáticos. Este proyecto tiene como objetivo desarrollar un proceso de análisis que permita estudiar y evaluar el comportamiento dinámico de un sistema software desde el punto de vista del diseño de sistemas

    Check Similarity "Measurement Metric Proposed For Big Data Analytics System"

    Get PDF

    CORFOOS: Cost Reduction Framework for Object Oriented System

    Get PDF
    There are many constraints in developing software for an organization, such as time and budget. Due to these constraints and intricacies of advanced software development technology, it has become very challenging to complete such projects. To make these projects cost-effective, this paper presents a cost reduction framework (CORFOOS) which works at three levels. At the first level, Intermediate Requirement Dependency Value (IRDV) of each requirement is determined by creating the intermediate requirements dependency graph (IRDG). At the second level, the requirements are categorised and finally at the third level,the testing parameters are determined by analyzing the requirements. To analyze therequirements, the dependency model, interaction model, language specification model and fault model are used

    DCI-arkkitehtuuri - askel kohti ylläpidettävää olio-ohjelmointia

    Get PDF
    Ohjelmistokehityksessä järjestelmien ylläpidettävyys on sen yksi tärkeimmistä ominaisuuksista. Tutkielmassa perehdytään DCI-arkkitehtuuriin, joka on uudenlainen olio-ohjelmointitapa. Arkkitehtuurin on tarkoitus parantaa olioperustaisten järjestelmien ylläpidettävyyttä perinteiseen olio-ohjelmointiin verrattuna. DCI-arkkitehtuuri painottaa ohjelmoinnissa lean-ajatteluun ja ketterään kehitykseen kooditasolla. Tutkielmassa tarkastellaan DCI-arkkitehtuuria ja arvioidaan sitä arkkitehtuurin mukaisesti luodun laajan peliesimerkin avulla. Pelin arkkitehtuuria arvioidaan ketterän kehityksen ja lean-ajattelun näkökulmista. Ketterä kehitys painottaa nopeuteen ohjelmistokehityksessä ja sen suhteen peliä arvioidaan erilaisilla kompleksisuusmittareilla sekä konkreettisen muutoksen toteuttamisella. Lean-ajattelun näkökulmasta arkkitehtuurin arviointi perustuu siitä johtuvaan ylimääräisen koodiin, toteutetun koodin arvoon ja arkkitehtuurin jäykkyyteen. Tutkielman tulosten perusteella DCI-arkkitehtuuri tuki lean-ajattelua ja ketterää kehitystä. Tutkielmassa käytettyjen olio-ohjelmoinnin kompleksisuusmittareiden tulokset osoittautuivat kuitenkin kyseenalaisiksi, sillä mittareita ei ole suunniteltu DCI-arkkitehtuuria silmällä pitäen ja arkkitehtuuri ei täytä niiden määritelmiä kokonaan. DCI-arkkitehtuurin käyttö ei aiheuttanut ongelmia pelin toteutuksessa, joten sen tutkimista tulisi jatkaa tarkemmin reaalimaailman pienten ja keskisuurten ohjelmistoprojektien tapaustutkimuksilla

    A Study on Software Testability and the Quality of Testing in Object-Oriented Systems

    Get PDF
    Software testing is known to be important to the delivery of high-quality systems, but it is also challenging, expensive and time-consuming. This has motivated academic and industrial researchers to seek ways to improve the testability of software. Software testability is the ease with which a software artefact can be effectively tested. The first step towards building testable software components is to understand the factors – of software processes, products and people – that are related to and can influence software testability. In particular, the goal of this thesis is to provide researchers and practitioners with a comprehensive understanding of design and source code factors that can affect the testability of a class in object oriented systems. This thesis considers three different views on software testability that address three related aspects: 1) the distribution of unit tests in relation to the dynamic coupling and centrality of software production classes, 2) the relationship between dynamic (i.e., runtime) software properties and class testability, and 3) the relationship between code smells, test smells and the factors related to smells distribution. The thesis utilises a combination of source code analysis techniques (both static and dynamic), software metrics, software visualisation techniques and graph-based metrics (from complex networks theory) to address its goals and objectives. A systematic mapping study was first conducted to thoroughly investigate the body of research on dynamic software metrics and to identify issues associated with their selection, design and implementation. This mapping study identified, evaluated and classified 62 research works based on a pre-tested protocol and a set of classification criteria. Based on the findings of this study, a number of dynamic metrics were selected and used in the experiments that were then conducted. The thesis demonstrates that by using a combination of visualisation, dynamic analysis, static analysis and graph-based metrics it is feasible to identify central classes and to diagrammatically depict testing coverage information. Experimental results show that, even in projects with high test coverage, some classes appear to be left without any direct unit testing, even though they play a central role during a typical execution profile. It is contended that the proposed visualisation techniques could be particularly helpful when developers need to maintain and reengineer existing test suites. Another important finding of this thesis is that frequently executed and tightly coupled classes are correlated with the testability of the class – such classes require larger unit tests and more test cases. This information could inform estimates of the effort required to test classes when developing new unit tests or when maintaining and refactoring existing tests. An additional key finding of this thesis is that test and code smells, in general, can have a negative impact on class testability. Increasing levels of size and complexity in code are associated with the increased presence of test smells. In addition, production classes that contain smells generally require larger unit tests, and are also likely to be associated with test smells in their associated unit tests. There are some particular smells that are more significantly associated with class testability than other smells. Furthermore, some particular code smells can be seen as a sign for the presence of test smells, as some test and code smells are found to co-occur in the test and production code. These results suggest that code smells, and specifically certain types of smells, as well as measures of size and complexity, can be used to provide a more comprehensive indication of smells likely to emerge in test code produced subsequently (or vice versa in a test-first context). Such findings should contribute positively to the work of testers and maintainers when writing unit tests and when refactoring and maintaining existing tests
    corecore