945 resultados para small software project


Relevância:

80.00% 80.00%

Publicador:

Resumo:

Ohjelmistojen tietoturva on noussut viime aikoina entistä tärkeämpään rooliin. Ohjelmistojen suunnittelu pitää alusta alkaen hoitaa siten, että tietoturva tulee huomioitua. Ohjelman helppokäyttöisyys ei saisi ajaa tietoturvan edelle, eikä myöskään ohjeiden lukematta jättäminen saa tarkoittaa tietoturvan menetystä. Tärkeä osa ohjelmistojen tietoturvaa on myös ohjelmiston laillinen käyttö. Se miten laiton käyttö estetään sen sijaan on erittäin vaikeaa toteuttaa nykyjärjestelmissä. Työn tarkoituksena oli tutkia Intellitel Communications Oy:n sanomayhdyskäytävää, Intellitel Messaging Gateway, tuotetietoturvan näkökulmasta, löytää sieltä mahdolliset virheet ja myös korjata ne.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Tämän diplomityön tarkoituksena oli esittää menetelmä erääseen ohjelmistoon toteutettavista muutoksista aiheutuvien riskien hallintaan. Ohjelmistoa käyttää päivittäin useita satoja henkilöitä ja sen ongelmaton toiminta on ohjelmiston omistavalle asiakkaalle erittäin tärkeää. Ohjelmiston ja sen kehitystyön kannalta riski on asianomistajan tavoitteita uhkaava menetyksen mahdollisuus tai menetykseen liittyvä ominaisuus, tekijä tai toiminta. Tämän työn yhteydessä asianomistaja on yritys, joka on toteuttanut nykyisen ohjelmiston ja on vastuussa ohjelmiston jatkokehityksestä. Yrityksen riskienhallintatarpeita vastaava ratkaisu pyritään löytämään perehtymällä riskienhallinnan perusteisiin sekä kahteen erityisesti ohjelmistotuotantoon tarkoitettuun riskienhallintamenetelmään. Riskienhallinnan kehittämisen kannalta on tärkeää, että ohjelmistotuotannon tyypilliset virheet onnistutaan pääsääntöisesti välttämään. Riskienhallinnan yleisempien virheiden tiedostamisesta on suurta hyötyä omaa riskienhallintaa kehitettäessä. Ohjelmiston kehitysorganisaation systemaattinen tapa toteuttaa ohjelmistomuutoksia perustuu ohjelmistotuotantoon tarkoitetun tuotteenhallintaohjelman käyttöön. Tuotteenhallintaohjelmassa muutospyyntö on ohjelmiston kehitystyön perusyksikkö, johon riskienhallintatoimet on pyrittävä kohdistamaan. Yrityksen tarpeita vastaava riskienhallintamalli rakennetaan lisäämällä Riskit-menetelmän mukainen riskienhallintaprosessi osaksi muutospyynnön systemaattista käsittelyprosessia. Työn tuloksena aikaansaadun mallin mukaista riskienhallintaa voidaan käytännössä harjoittaa usealla eri tavalla. Arvioiden perusteella kaavionluonti- ja tekstinkäsittelyohjelma ovat riittävät työkalut riskienhallinnan käytännön toteutusta varten. Kokemukset uudesta riskienhallintamenetelmästä osoittivat sen käyttökelpoiseksi. Menetelmän käyttöönoton sujuvuuden varmistamiseksi, riskienhallintatoimet kannattaa kuitenkin aluksi kohdistaa yksittäistä muutospyyntöä suurempaan kokonaisuuteen.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Tämän pro gradu tutkielman tarkoituksena oli selvittää, kuinka pieni ohjelmistoalan yritys voi menestyksekkäästi kansainvälistyä markkinoinnin partnership suhteiden tukemana. Tutkimuksen lähtokohtana oli hankkia case yritys Viope Solutions Oy:n käytettäväksi konkreettisia työkaluja ensimmäisten maltillisesti etenevien kansainvälistymisoperaatioiden tueksi. Tutkielma jakautuu teoreettiseen ja empiiriseen osaan. Näistä jälkimmäisessä kerättiin kvalitatiivisen henkilökohtaisen haastattelututkimuksen avulla kuudelta ohjelmistoalan esimerkkiyritykseltä tietoa ja kokemuksia kansainvälistymisen sekä kansainvälisten partnership suhteiden menestyksekkääseen kehittämiseen. Esimerkkiyritysten kansainvälistymisessä havaittiin monenlaisia eri strategioita ja käytännön keinoja lähestyä kohdemarkkinoita. Kansainvälisten markkinoinnin partnership suhteiden menestystekijöitä havaittiin olevan osapuolten keskinäinen luottamus, yhteensopivat tuotevalikoimat, tehokas kommunikaatio sekä rahallinen ja täsmällinen sitoutuminen yhteistyöhön. Vastaavasti tärkeimmiksi mahdollisiksi ongelmiksi yhteistyölle todettiin kohdemarkkinoiden muuttuminen tai pettäminen, osapuolten suhteeseen sitoutumisen puute ja liialliset lupaukset seka ongelmat henkilökohtaisessa kanssakäymisessä. Saatua aineistoa ja aikaisempaa teoriakatsausta pyrittiin soveltamaan Viopen Ruotsin operaatioiden avuksi. Samoin Ruotsin markkinoita pyrittiin analysoimaan Internet pohjaisen aineiston avulla. Havaittiin, etta Viopella on melko hyvät mahdollisuudet onnistua Ruotsissa omien ja kumppanien komplementaarisia panostuksia hyödyntäen.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Tämän tutkimuksen tavoitteena oli tutkia pienen ohjelmistoyrityksen kansainvälistymistä kumppanien avulla. Tutkimuksessa selvitettiin ohjelmistoyritysten kansainvälistymistä, kumppanien roolia osana kansainvälistymistä, sekä kuinka tarvittavia kumppaneita tulisi etsiä ja arvioida. Tutkielma jakaantuu teoreettiseen ja empiiriseen osaan. Teoreettinen osa keskittyy tarkastelemaan pienen ohjelmistoyrityksen kansainvälistymistä kumppanien avulla sekä kumppanien etsintää ja arviointia. Informaatiota kerättiin kirjallisuuteen ja aikaisempiin tutkimuksiin perehtymällä, sekä teemahaastattelujen avulla. Tutkimuksessa käytettiin apuna laadullisia tutkimusmenetelmiä. Haastatteluista saatu materiaali analysoitiin teoriassa nousseiden teemojen avulla. Tutkimustulokset osoittavat, että pienen ohjelmistoyrityksen kansainvälistyminen on vahvasti riippuvainen resursseja tarjoavasta kumppanista. Pienen yrityksen resurssit eivät riitä kansainvälistymään yksin ja resurssit rajoittavat myös kumppanin etsintää ja arviointia.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Tässä työssä kuvataan erästä kaupallista ohjelmistoprojektia, jossa ohjelmistojen uudelleenkäyttöä tavoiteltiin komponenttipohjaisen uudelleenkäytön ja ohjelmistojen sovittamisen kautta. Projektissa toteutettiin matkapuhelinsovellus, jonka ydin eristettiin uudelleenkäytettäväksi ja sovitettavaksi komponentiksi. Ytimen sovitettavuus verifioitiin sovittamalla ydin toiselle ympäristölle ja edelleen toteuttamalla toimiva prototyyppisovellus sovitetun ytimen varaan. Ytimen sovittamisen sekä prototyyppisovelluksen toteuttamisen vaatima työmäärä oli huomattavasti pienempi kuin ytimen tekemiseen alkuperin käytetty työmäärä. Työssä on osoitettu ohjelmistometriikoiden avulla, että merkittävä osa ohjelmiston toiminnallisuudesta saatiin uudelleenkäytettäväksi sovitettavan ytimen avulla. Lisäksi työssä on kuvattu millaisia kehitysprosessikäytäntöjä projektissa oli käytössä tukemassa uudelleenkäytettävyystavoitetta.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Tässä kandidaatintyössä tarkastellaan tietojärjestelmähankkeen toteutuksen yhteydessä ilmeneviä riskitekijöitä ja niiden vaikutuksia projektin onnistumisen todennäköisyyteen. Työn tavoitteena on löytää vastaukset kysymyksiin; Mitkä ovat merkittävimmät riskitekijät tietojärjestelmähankkeiden toteuttamisessa? Voidaanko projektin onnistumista tehokkaasti parantaa? Työssä tarkastellaan tietojärjestelmähankkeelle tyypillisiä riskitekijöitä, ohjelmistokehityksen vaiheita, projektin hallintamenetelmiä ja työkaluja sekä tutkitaan, onko täysin onnistunut tietojärjestelmähanke käytännössä mahdollista toteuttaa. Kirjallisuustyön johtopäätöksinä kootaan keskeisimmät osatekijät ja toimintaperiaatteet, joiden avulla onnistumisen todennäköisyyttä tietojärjestelmähankkeissa on mahdollista parantaa.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Teekkareiden musiikkikerho halusi päivittää valo-ohjauskalustoaan sekä selvittää, olisiko järkevää tehdä ohjauksessa käytettävä konsoli itse. Tässä työssä käsitellään valo-ohjauskonsolin suunnitteluprojektin projektinhallintaa suunnittelun, määrittelyn, tavoitteiden ja työryhmän toiminnan osalta. Työssä tehdään myös valo-ohjauskonsolille suuntaa-antava määrittely, joka tarkoituksena on ottaa huomioon tärkeimpiä sähkölaitteen suunnittelussa huomioon otettavia kriteereitä. Työssä selvitetään, mikä on toimiva työmalli pienelle tutkimusprojektille ja kannattaako pienen organisaation valmistaa valo-ohjauskonsoli itse.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

This lecture outlines the decisions which need to be made early in a software project regrading the management of a professional sustainable software product or website. This lecture looks at the many different platforms and languages that can be used on these and outlines the differences between interpreted and "native" languages. We also outline the importance of using revision control systems properly and how these are essential for both distribution and supporting of software. Finally this lecture describes how to build a package for the Debian Linux platform.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

El proyecto que se quiere plantear es la creación de una Plataforma electrónica a través de la cual se pretende agrupar a los diferentes proveedores que intervienen en la cadena de abastecimiento de la comunidad logística de San Antonio, abriendo la posibilidad de participación de empresas grandes y pequeñas y más aun promoviendo la creación de las mismas por parte de los ciudadanos de la región, de esta manera, se eliminan las brechas asimétricas existentes entre la oferta y la demanda permitiendo que las empresas medianas y grandes accedan a ofertas y transacciones con empresas proveedoras medianas y pequeñas. Dicho proyecto, tiene como objetivo general el consolidar los procesos de abastecimiento implementados por las empresas a través de la organización y estandarización de los mismos mediante el uso del portal, planteado en el presente proyecto, como apoyo tecnológico. Existen dos conceptos básicos a analizar de manera teórica dentro del proyecto, el primero de ellos es el de clúster logístico-portuario, lo cuales son reconocidos como instrumentos importantes para el progreso del desarrollo industrial, innovación, competitividad y crecimiento, tomando como ejemplos a los puertos de Valencia y Long Beach en la ciudad de Los Ángeles. El segundo concepto es el de E-Procurement, el cual se desarrolla siguiendo los pasos básicos de una cadena de abastecimiento tradicional, sin embargo, lo que genera un cambio real dentro de los procesos es el hecho que los procesos de cotización y seguimiento de proveedores se van a llevar a cabo a través de una plataforma electrónica con base a las evaluaciones que se llevan a cabo por parte de las empresas demandantes de los productos o servicios ofrecidos por las compañías proveedoras. (Renko, 2011) De la misma manera, se tomaran varios proyectos de e-procurement desarrollados a nivel mundial como base comparativa y de apoyo para el presente proyecto tales como: HYDRA: Es un sistema que tiene su soporte en la web, el cual es orientado “en el medio” lo cual lo hace un sistema con una arquitectura híbrida, que posee tanto un diseño en capas como una estructura comprensiva para desarrollar integración de negocios, colaboración y monitoreo en la gestión de la cadena de suministro (Renko, 2011) IPT: BidNet ha proporcionado servicios de oferta de información a miles de proveedores y compradores de bienes en el ámbito gubernamental por más de 25 años. (Bidnet, 2013) E-BUYPLACE: E-buyplace.com es el 1° especialista en SupplierRelationship Management que ha desarrollado un original y singular SRM 100% a través de Internet. (e-buyplace, 2013) RosettaNet: La iniciativa RosettaNet anima a optimizar los procesos de la cadena de suministro mediante el establecimiento, implementación y promoción de estándares abiertos en el mercado e-Business (AQS, Advance Quality Solutions, 2002)

Relevância:

80.00% 80.00%

Publicador:

Resumo:

La teoría de redes de Johanson y Mattson (1988) explica como las pequeñas empresas, también conocidas como PyMes, utilizan las redes de negocio para desarrollar sus procesos de internacionalización. Es así que a través de las redes pueden superar sus limitaciones de tamaño para encontrar cierto tipo de fluidez y dinamismo en su gestión, con el fin de aprovechar los beneficios de la internacionalización. A partir del desarrollo y fortalecimiento de las relaciones dentro de la red la organización puede posicionarse en una instancia competitiva cada vez más fuerte (Jarillo, 1988). Según Forsgren y Johanson (1992), para los gerentes es importante coordinar la interacción entre los diferentes actores de la red, ya que a través de estas su posición dentro de la red mejora y así mismo el flujo de recursos será mayor. El propósito de este trabajo es analizar el modelo de internacionalización según la teoría de redes, desde una perspectiva cultural, de e-Tech Simulation una PyME “Born to be global” norteamericana. Esta empresa ha minimizado su riesgo de internacionalización, a través del desarrollo de acuerdos entre los diferentes actores. Al mejorar su posición dentro de la red, es decir al fortalecer aún más los lazos existentes y crear nuevas relaciones, la empresa ha obtenido mayores beneficios de la misma y ha logrado ser aún más flexible con sus clientes. Es por esto que a partir de este análisis se planteó una serie de recomendaciones para mejorar los procesos de negociación dentro de la red, bajo un contexto cultural. De igual forma se evidencio la importancia del papel del emprendimiento del gerente en los procesos de internacionalización, así como su habilidad para mezclar los recursos obtenidos de diferentes mercados internacionales para satisfacer las necesidades de los clientes.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

In its recent report on the Graduate Teacher Programme (GTP), an employment-based route to Qualified Teacher Status (QTS) in England, the Government's Office for Standards in Education found that, although almost all trainees meet the standards required to qualify, too often they do so at an adequate level, rather than achieving the high levels of which they should be capable. The underlying reason for this is the quality of mentoring provided in the schools. The inspectors concluded that schoolbased trainers are often not adequately prepared for their role in implementing wide-ranging training programmes for trainee teachers. Despite this generally bleak picture, Ofsted concluded that 'the minority of cases of good practice in the training programmes and of high quality teaching by trainees indicate that the GTP can be an effective alternative route for training teachers'™. This article considers the strengths and weaknesses of the Graduate Teacher Programme, introduced in January 1998, and also reports on a small-scale project, funded by the Teacher Training Agency (TTA), the key objective of which was to strengthen the existing partnerships by improving the quality of school-based tutor training and continuous professional development of staff.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Humans can perceive three dimension, our world is three dimensional and it is becoming increasingly digital too. We have the need to capture and preserve our existence in digital means perhaps due to our own mortality. We have also the need to reproduce objects or create small identical objects to prototype, test or study them. Some objects have been lost through time and are only accessible through old photographs. With robust model generation from photographs we can use one of the biggest human data sets and reproduce real world objects digitally and physically with printers. What is the current state of development in three dimensional reconstruction through photographs both in the commercial world and in the open source world? And what tools are available for a developer to build his own reconstruction software? To answer these questions several pieces of software were tested, from full commercial software packages to open source small projects, including libraries aimed at computer vision. To bring to the real world the 3D models a 3D printer was built, tested and analyzed, its problems and weaknesses evaluated. Lastly using a computer vision library a small software with limited capabilities was developed.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

The present thesis work proposes a new physical equivalent circuit model for a recently proposed semiconductor transistor, a 2-drain MSET (Multiple State Electrostatically Formed Nanowire Transistor). It presents a new software-based experimental setup that has been developed for carrying out numerical simulations on the device and on equivalent circuits. As of 2015, we have already approached the scaling limits of the ubiquitous CMOS technology that has been in the forefront of mainstream technological advancement, so many researchers are exploring different ideas in the realm of electrical devices for logical applications, among them MSET transistors. The idea that underlies MSETs is that a single multiple-terminal device could replace many traditional transistors. In particular a 2-drain MSET is akin to a silicon multiplexer, consisting in a Junction FET with independent gates, but with a split drain, so that a voltage-controlled conductive path can connect either of the drains to the source. The first chapter of this work presents the theory of classical JFETs and its common equivalent circuit models. The physical model and its derivation are presented, the current state of equivalent circuits for the JFET is discussed. A physical model of a JFET with two independent gates has been developed, deriving it from previous results, and is presented at the end of the chapter. A review of the characteristics of MSET device is shown in chapter 2. In this chapter, the proposed physical model and its formulation are presented. A listing for the SPICE model was attached as an appendix at the end of this document. Chapter 3 concerns the results of the numerical simulations on the device. At first the research for a suitable geometry is discussed and then comparisons between results from finite-elements simulations and equivalent circuit runs are made. Where points of challenging divergence were found between the two numerical results, the relevant physical processes are discussed. In the fourth chapter the experimental setup is discussed. The GUI-based environments that allow to explore the four-dimensional solution space and to analyze the physical variables inside the device are described. It is shown how this software project has been structured to overcome technical challenges in structuring multiple simulations in sequence, and to provide for a flexible platform for future research in the field.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Mainstream IDEs generally rely on the static structure of a software project to support browsing and navigation. We propose HeatMaps, a simple but highly configurable technique to enrich the way an IDE displays the static structure of a software system with additional kinds of information. A heatmap highlights software artifacts according to various metric values, such as bright red or pale blue, to indicate their potential degree of interest. We present a prototype system that implements heatmaps, and we describe an initial study that assesses the degree to which different heatmaps effectively guide developers in navigating software.

Relevância:

80.00% 80.00%

Publicador:

Resumo:

Las pruebas de software (Testing) son en la actualidad la técnica más utilizada para la validación y la evaluación de la calidad de un programa. El testing está integrado en todas las metodologías prácticas de desarrollo de software y juega un papel crucial en el éxito de cualquier proyecto de software. Desde las unidades de código más pequeñas a los componentes más complejos, su integración en un sistema de software y su despliegue a producción, todas las piezas de un producto de software deben ser probadas a fondo antes de que el producto de software pueda ser liberado a un entorno de producción. La mayor limitación del testing de software es que continúa siendo un conjunto de tareas manuales, representando una buena parte del coste total de desarrollo. En este escenario, la automatización resulta fundamental para aliviar estos altos costes. La generación automática de casos de pruebas (TCG, del inglés test case generation) es el proceso de generar automáticamente casos de prueba que logren un alto recubrimiento del programa. Entre la gran variedad de enfoques hacia la TCG, esta tesis se centra en un enfoque estructural de caja blanca, y más concretamente en una de las técnicas más utilizadas actualmente, la ejecución simbólica. En ejecución simbólica, el programa bajo pruebas es ejecutado con expresiones simbólicas como argumentos de entrada en lugar de valores concretos. Esta tesis se basa en un marco general para la generación automática de casos de prueba dirigido a programas imperativos orientados a objetos (Java, por ejemplo) y basado en programación lógica con restricciones (CLP, del inglés constraint logic programming). En este marco general, el programa imperativo bajo pruebas es primeramente traducido a un programa CLP equivalente, y luego dicho programa CLP es ejecutado simbólicamente utilizando los mecanismos de evaluación estándar de CLP, extendidos con operaciones especiales para el tratamiento de estructuras de datos dinámicas. Mejorar la escalabilidad y la eficiencia de la ejecución simbólica constituye un reto muy importante. Es bien sabido que la ejecución simbólica resulta impracticable debido al gran número de caminos de ejecución que deben ser explorados y a tamaño de las restricciones que se deben manipular. Además, la generación de casos de prueba mediante ejecución simbólica tiende a producir un número innecesariamente grande de casos de prueba cuando es aplicada a programas de tamaño medio o grande. Las contribuciones de esta tesis pueden ser resumidas como sigue. (1) Se desarrolla un enfoque composicional basado en CLP para la generación de casos de prueba, el cual busca aliviar el problema de la explosión de caminos interprocedimiento analizando de forma separada cada componente (p.ej. método) del programa bajo pruebas, almacenando los resultados y reutilizándolos incrementalmente hasta obtener resultados para el programa completo. También se ha desarrollado un enfoque composicional basado en especialización de programas (evaluación parcial) para la herramienta de ejecución simbólica Symbolic PathFinder (SPF). (2) Se propone una metodología para usar información del consumo de recursos del programa bajo pruebas para guiar la ejecución simbólica hacia aquellas partes del programa que satisfacen una determinada política de recursos, evitando la exploración de aquellas partes del programa que violan dicha política. (3) Se propone una metodología genérica para guiar la ejecución simbólica hacia las partes más interesantes del programa, la cual utiliza abstracciones como generadores de trazas para guiar la ejecución de acuerdo a criterios de selección estructurales. (4) Se propone un nuevo resolutor de restricciones, el cual maneja eficientemente restricciones sobre el uso de la memoria dinámica global (heap) durante ejecución simbólica, el cual mejora considerablemente el rendimiento de la técnica estándar utilizada para este propósito, la \lazy initialization". (5) Todas las técnicas propuestas han sido implementadas en el sistema PET (el enfoque composicional ha sido también implementado en la herramienta SPF). Mediante evaluación experimental se ha confirmado que todas ellas mejoran considerablemente la escalabilidad y eficiencia de la ejecución simbólica y la generación de casos de prueba. ABSTRACT Testing is nowadays the most used technique to validate software and assess its quality. It is integrated into all practical software development methodologies and plays a crucial role towards the success of any software project. From the smallest units of code to the most complex components and their integration into a software system and later deployment; all pieces of a software product must be tested thoroughly before a software product can be released. The main limitation of software testing is that it remains a mostly manual task, representing a large fraction of the total development cost. In this scenario, test automation is paramount to alleviate such high costs. Test case generation (TCG) is the process of automatically generating test inputs that achieve high coverage of the system under test. Among a wide variety of approaches to TCG, this thesis focuses on structural (white-box) TCG, where one of the most successful enabling techniques is symbolic execution. In symbolic execution, the program under test is executed with its input arguments being symbolic expressions rather than concrete values. This thesis relies on a previously developed constraint-based TCG framework for imperative object-oriented programs (e.g., Java), in which the imperative program under test is first translated into an equivalent constraint logic program, and then such translated program is symbolically executed by relying on standard evaluation mechanisms of Constraint Logic Programming (CLP), extended with special treatment for dynamically allocated data structures. Improving the scalability and efficiency of symbolic execution constitutes a major challenge. It is well known that symbolic execution quickly becomes impractical due to the large number of paths that must be explored and the size of the constraints that must be handled. Moreover, symbolic execution-based TCG tends to produce an unnecessarily large number of test cases when applied to medium or large programs. The contributions of this dissertation can be summarized as follows. (1) A compositional approach to CLP-based TCG is developed which overcomes the inter-procedural path explosion by separately analyzing each component (method) in a program under test, stowing the results as method summaries and incrementally reusing them to obtain whole-program results. A similar compositional strategy that relies on program specialization is also developed for the state-of-the-art symbolic execution tool Symbolic PathFinder (SPF). (2) Resource-driven TCG is proposed as a methodology to use resource consumption information to drive symbolic execution towards those parts of the program under test that comply with a user-provided resource policy, avoiding the exploration of those parts of the program that violate such policy. (3) A generic methodology to guide symbolic execution towards the most interesting parts of a program is proposed, which uses abstractions as oracles to steer symbolic execution through those parts of the program under test that interest the programmer/tester most. (4) A new heap-constraint solver is proposed, which efficiently handles heap-related constraints and aliasing of references during symbolic execution and greatly outperforms the state-of-the-art standard technique known as lazy initialization. (5) All techniques above have been implemented in the PET system (and some of them in the SPF tool). Experimental evaluation has confirmed that they considerably help towards a more scalable and efficient symbolic execution and TCG.