5 research outputs found

    The benefits of virtualization across the software development pipeline

    Get PDF
    Abstract. The emergence of cloud computing and the evolution into service-based solutions across the software industry have influenced many changes in software development paradigms and methods. As a result, various forms of virtualization and container-based solutions have become more and more commonplace throughout the field, with technologies and frameworks such as Docker and Kubernetes becoming industry standard solutions to virtualization. This thesis is a literature review into existing research on virtualization and containers, and their use in various categories of the software industry. The aim of the thesis is to look at the reasons for the proliferation of virtual machines and containers, along with their benefits for the software development process, the continuous integration and delivery pipeline, and the different cloud platforms and providers. The benefits of virtualization are clearest in the cloud infrastructure, as cloud services are inherently built to utilize virtual machines. Containers and container orchestration systems allow container management and dynamic resource allocation, improving efficiency and reducing costs. In software development and testing, the modular and self-contained nature of containers allows for faster iteration and more problem-averse development. And finally, in the continuous integration and delivery pipelines, containers and container management tools allows automation, and lower overhead and complexity, enabling lower-threshold software deployment. Along with enabling cloud infrastructure as it exists today, the evolution of virtualization and containers in the software industry provide benefits across the board

    Roles of bHLH Transcription Factors Neurod1, Neurod2 and Neurod6 in Cerebral Cortex Development and Commissure Formation.

    Get PDF
    Basische Helix-Loop-Helix (bHLH)-Proteine bilden eine diverse Gruppe evolutionĂ€r gut konservierter Transkriptionsfaktoren. Viele transaktivierende bHLH-Proteine werden zelltyp- oder gewebespezifisch exprimiert und fungieren als wichtige SchlĂŒsselregulatoren zellulĂ€rer Determinations- und Differenzierungsprozesse. Die eng verwandten neuronalen bHLH-Gene Neurod1, Neurod2 und Neurod6 werden in differenzierenden Pyramidenneuronen des sich entwickelnden zerebralen Kortex exprimiert und stehen schon lange im Verdacht, deren Reifung zu steuern. In der Vergangenheit wurde jedes der drei Gene in MĂ€usen inaktiviert. Untersuchungen an den einfach-defizienten Tieren konnten jedoch keine wichtigen Funktionen in embryonalen Pyramidenneuronen identifizieren. Da die AminosĂ€uresequenzen und die Expressionsmuster der Faktoren sehr Ă€hnlich sind, wurde angenommen, dass sie sich redundante FunktionalitĂ€t teilen. Um dies zu ĂŒberprĂŒfen, habe ich Neurod2/6-doppel-defiziente Tiere gezĂŒchtet und unter besonderer BerĂŒcksichtigung der Differenzierung von Pyramidenneuronen und der KonnektivitĂ€t des zerebralen Kortex analysiert: Die Experimente zeigen, dass Neurod2 und Neurod6 tatsĂ€chlich mehrere bisher unbekannte gemeinsame Funktionen haben, wobei jeder Faktor fĂŒr den Verlust des jeweils anderen kompensieren kann. Zumindest eines der beiden Gene ist notwendig fĂŒr (1) die Kontrolle der radialen Migration eines Teils der Pyramidenneurone, (2) die frĂŒhe Regionalisierung des zerebralen Kortex und (3) die Bildung kortikaler Projektionen vom Neokortex zum Striatum, zum Thalamus und zur kontralateralen HemisphĂ€re. Callosale Axone bilden in Neurod2/6-doppel-defizienten MĂ€usen FaserbĂŒndel die tangential in den medialen Kortex einwachsen, aber noch vor Erreichen des ipsilateralen Cingulums und vor dem Kontakt mit der Mittellinie stoppen und defaszikulieren. Es resultiert eine neue Variante der callosalen Agenesie, die nahelegt, dass es bisher nicht identifizierte Wachstumssignale im medialen Kortex gibt. Die Expression von Neurod1, welche sich normalerweise auf die Subventrikularzone beschrĂ€nkt, persistiert in radial migrierenden Pyramidenneuronen der IntermediĂ€rzone und der Kortikalplatte von Neurod2/6-doppel-defizienten MĂ€usen. Diese ektopische Neurod1-Expression kann dort den Verlust von Neurod2 und Neurod6 kompensieren. In einem weiteren Schritt habe ich konditionale Neurod1/2/6-tripel-defiziente MĂ€use gezĂŒchtet. In diesen Tieren wird das Neurod1-Gen durch selektive genetische Rekombination in all jenen Zellen, die ĂŒber Neurod6-PromoteraktivitĂ€t verfĂŒgen, irreversibel entfernt: Wie erwartet, teilt sich Neurod1 weitere gemeinsame Funktionen mit Neurod2 und Neurod6. Zumindest eines der drei Gene ist notwendig fĂŒr die Differenzierung hippokampaler Pyramidenzellen und die Hemmung des programmierten Zelltods der unreifen Neuronen des Cornu Ammonis. WĂ€hrend die gemeinsame Inaktivierung von Neurod1/2/6 zur Aplasie des Hippocampus fĂŒhrt, ĂŒberlebt ein Großteil der neokortikalen Pyramidenzellen. Die terminale neuronale Differenzierung ist jedoch auch im Neokortex gestört und die neokortikale KonnektivitĂ€t sehr stark reduziert. Diese Arbeit zeigt, dass die Transkriptionsfaktoren der NeuroD-Familie gemeinsam die Differenzierung, das Überleben, die Migration und das axonale Wachstum von pyramidalen Neuronen des sich entwickelnden zerebralen Kortex steuern. WĂ€hrend der Embryonalentwicklung ergeben sich folgende, teils ĂŒberschneidende Funktionen der NeuroD-Gene: Die Differenzierung und das Überleben von hippocampalen Körnerzellen ist abhĂ€ngig von Neurod1. Die frĂŒhen Schritte der Differenzierung von hippocampalen Pyramidenneuronen und deren Überleben sind eine Funktion von wahlweise Neurod1, Neurod2 oder Neurod6. SpĂ€tere neuronale Differenzierungsschritte, die Regionalisierung des Neokortex und das gezielte Wachstum wichtiger neokortikaler FaserzĂŒge basieren auf Funktionen von Neurod2 oder Neurod6, aber nicht von Neurod1. Der postnatale Umbau des somatosensorischen Kortex und die funktionale Integration thalamischer Afferenzen wurden bereits als strikt Neurod2-abhĂ€ngig beschrieben

    Co-Evolution of Source Code and the Build System: Impact on the Introduction of AOSD in Legacy Systems

    Get PDF
    Software is omnipresent in our daily lives. As users demand ever more advanced features, software systems have to keep on evolving. In practice, this means that software developers need to adapt the description of a software application. Such a description not only consists of source code written down in a programming language, as a lot of knowledge is hidden in lesser known software development artifacts, like the build system. As its name suggests, the build system is responsible for building an executable program, ready for use, from the source code. There are various indications that the evolution of source code is strongly related to that of the build system. When the source code changes, the build system has to co-evolve to safeguard the ability to build an executable program. A rigid build system on the other hand limits software developers. This phenomenon especially surfaces when drastic changes in the source code are coupled with an inflexible build system, as is the case for the introduction of AOSD technology in legacy systems. AOSD is a young software development approach which enables developers to structure and compose source code in a better way. Legacy systems are old software systems which are still mission-critical, but of which the source code and the build system are no longer fully understood, and which typically make use of old(-fashioned) technology. This PhD dissertation focuses on finding an explanation for this co-evolution of source code and the build system, and on finding developer support to grasp and manage this phenomenon. We postulate four "roots of co-evolution" which represent four different ways in which source code and the build system interact with each other. Based on these roots, we have developed tool and aspect language support to understand and manage co-evolution. The roots and the tool support have been validated in case studies, both in the context of co-evolution in general and of the introduction of AOSD technology in legacy systems. The dissertation experimentally shows that co-evolution indeed is a real problem, but that specific software development and aspect language support enables developers to deal with it

    Integrating software construction and software deployment

    No full text
    Abstract. Classically, software deployment is a process consisting of building the software, packaging it for distribution, and installing it at the target site. This approach has two problems. First, a package must be annotated with dependency information and other meta-data. This to some extent overlaps with component dependencies used in the build process. Second, the same source system can often be built into an often very large number of variants. The distributor must decide which element(s) of the variant space will be packaged, reducing the flexibility for the receiver of the package. In this paper we show how building and deployment can be integrated into a single formalism. We describe a build manager called Maak that can handle deployment through a sufficiently general module system. Through the sharing of generated files, a source distribution transparently turns into a binary distribution, removing the dichotomy between these two modes of deployment. In addition, the creation and deployment of variants becomes easy through the use of a simple functional language as the build formalism.
    corecore