Luís Filipe Campos De Figueiredo Faceira

Total Page:16

File Type:pdf, Size:1020Kb

Luís Filipe Campos De Figueiredo Faceira Universidade de Aveiro Departamento de Electrónica, Telecomunicações e 2007 Informática LUÍS FILIPE CAMPOS PLATAFORMA PARA MEDIÇÃO DA QUALIDADE DE DE FIGUEIREDO SERVIÇO DA OFERTA DE BANDA LARGA EM FACEIRA PORTUGAL Universidade de Aveiro Departamento de Electrónica, Telecomunicações e 2007 Informática LUÍS FILIPE CAMPOS PLATAFORMA PARA MEDIÇÃO DA QUALIDADE DE DE FIGUEIREDO SERVIÇO DA OFERTA DE BANDA LARGA EM FACEIRA PORTUGAL dissertação apresentada à Universidade de Aveiro para cumprimento dos requisitos necessários à obtenção do grau de Mestre em Engenharia de Computadores e Telemática, realizada sob a orientação científica do Doutor Paulo Salvador, Professor Auxiliar Convidado do Departamento de Electrónica, Telecomunicações e Informática da Universidade de Aveiro e do Doutor Rui Valadas, Professor Associado com Agregação do Departamento de Electrónica, Telecomunicações e Informática da Universidade de Aveiro o júri presidente Prof. Dr. José Luís Oliveira professor associado da Universidade de Aveiro Prof. Dr. Paulo Salvador professor auxiliar da Universidade de Aveiro Prof. Dr. Rui Valadas professor associado da Universidade de Aveiro Prof. Dr. Susana Sargento professora auxiliar da Universidade de Aveiro palavras-chave Qualidade de serviço, plataforma, web, plataformas, plug-ins, extensibilidade, auto-updates , engenharia de software, distribuição aplicacional Resumo Existe, hoje em dia, uma oferta muito vasta e diversificada de serviços de acesso à Internet de banda larga. Uma questão que se coloca aos Internautas é a da comparação do serviço prestado pelos diferentes operadores. Este trabalho descreve o desenvolvimento e teste de uma plataforma que permite, por um lado, avaliar em tempo real a qualidade de serviço do acesso à Internet dos seus utilizadores e, por outro, fornecer estatísticas globais da qualidade de serviço oferecida por diferentes operadores, possibilitando a escolha informada do serviço de Internet a contratar. As estimativas de qualidade de serviço são obtidas a partir de medições efectuadas pelos utilizadores da plataforma nos seus pontos de acesso à Internet. A arquitectura desenvolvida tem como elementos principais um servidor de administração da plataforma e de repositório de dados e uma aplicação de medições periódicas. O servidor central implementa a base de dados de medições e a interface gráfica principal da plataforma. Nesta interface, é possível a visualização do histórico de medições e a administração dos mais variados parâmetros da plataforma, tais como a lista de tipos de serviço disponíveis, os pontos de medição existentes ou o conjunto de utilizadores registados. O outro elemento da arquitectura é a aplicação que, após instalação, realiza medições periódicas, sem que seja necessária a interacção dos utilizadores. Esta aplicação possui outras duas funcionalidades de especial destaque: a sua actualização automática e a sua extensibilidade através de plug-ins. A plataforma encontra-se operacional em ambiente de testes, estando preparada para ser instalada em ambiente de produção. keywords Quality of service, platform, programming architectures, web, plug-ins, extensibility, auto-updates, software engineering,application deployment Abstract Nowadays, there is a wide and varied offer in terms of Internet broadband access. Thus Internet users are required to compare the service provided by the different operators. This work describes the development and testing of a platform, which, on one hand allows the evaluation in real time of the quality of service of its users Internet access and, on the other hand, provides global statistics related to quality of service provided by the different operators, allowing users to be correctly informed about which Internet Service to choose. The estimations of quality of service are obtained through measurements performed by the platform’s users, at their Internet access points. The main elements of the developed architecture are the platform’s administration and data repository server, and an application that performs periodic measurements. The central server implements the measurements’ database and the platform’s main graphic interface. In this interface it is possible to visualise the historic of measurements and the administration of the platform’s different parameters, such as the list of available Internet services, the existing measurement points or the set of registered users. The other architecture’s element is the application, which, upon installation, performs periodic measurements, without being required the user’s interaction. This application has two other important functionalities: its automatic updatability and its extensibility through plug-ins. The platform is operational in a testing environment and it is ready to be deployed into a production environment. Plataforma on-line e extensível para medição da qualidade de serviço da oferta de banda larga em Portugal Índice: 1. INTRODUÇÃO .............................................................................................................................. 11 1.1. OBJECTIVOS ............................................................................................................................ 11 1.2. ESTRUTURA DA DISSERTAÇÃO ................................................................................................ 13 2. ESTADO DA ARTE....................................................................................................................... 15 2.1. MEDIÇÃO DE QUALIDADE DE SERVIÇO .................................................................................... 15 2.1.1. Plataformas Distribuídas de Medição ............................................................................... 16 2.1.2. Métodos de Medição.......................................................................................................... 16 2.1.3. Métodos de Validação........................................................................................................ 17 2.2. TECNOLOGIAS WEB ................................................................................................................. 19 2.2.1. Páginas Web ...................................................................................................................... 19 2.2.2. Servidores Aplicacionais.................................................................................................... 20 2.2.3. LAMP................................................................................................................................. 21 2.2.4. Tecnologias Client-Side..................................................................................................... 22 2.3. FRAMEWORKS DE PROGRAMAÇÃO .......................................................................................... 23 2.3.1. J2SE ................................................................................................................................... 24 2.3.2. .NET ................................................................................................................................... 24 2.3.3. Outros ................................................................................................................................ 25 2.4. DISTRIBUIÇÃO DE APLICAÇÕES ............................................................................................... 26 2.4.1. Gestores de Instalação, Arranque e Actualização ............................................................. 26 2.4.2. Java Web Start ................................................................................................................... 27 2.4.3. ClickOnce........................................................................................................................... 28 2.4.4. BITS ................................................................................................................................... 28 2.5. PLUG -INS ................................................................................................................................. 29 2.6. ASSINATURA DE APLICAÇÕES ................................................................................................. 30 2.7. CONCLUSÃO ............................................................................................................................ 31 3. MODELO DE REQUISITOS ....................................................................................................... 32 3.1. REQUISITOS DO SISTEMA ......................................................................................................... 32 3.2. FRONTEIRA DO SISTEMA .......................................................................................................... 34 4. MODELO DE CASOS DE UTILIZAÇÃO.................................................................................. 36 4.1. VISÃO GERAL .......................................................................................................................... 36 4.2. DESCRIÇÃO DE ACTORES ......................................................................................................... 38 6 Plataforma on-line e extensível para medição da qualidade de serviço da oferta de banda larga em Portugal 4.3. DESCRIÇÃO DOS CASOS DE UTILIZAÇÃO ................................................................................. 39 5. MODELO DO DOMÍNIO............................................................................................................. 44 6. PROTÓTIPO EXPLORATÓRIO ...............................................................................................
Recommended publications
  • IJIRT | Volume 2 Issue 6 | ISSN: 2349-6002
    © November 2015 | IJIRT | Volume 2 Issue 6 | ISSN: 2349-6002 .Net Surbhi Bhardwaj Dronacharya College of Engineering Khentawas, Haryana INTRODUCTION as smartphones. Additionally, .NET Micro .NET Framework (pronounced dot net) is Framework is targeted at severely resource- a software framework developed by Microsoft that constrained devices. runs primarily on Microsoft Windows. It includes a large class library known as Framework Class Library (FCL) and provides language WHAT IS THE .NET FRAMEWORK? interoperability(each language can use code written The .NET Framework is a new and revolutionary in other languages) across several programming platform created by Microsoft for languages. Programs written for .NET Framework developingapplications. execute in a software environment (as contrasted to hardware environment), known as Common It is a platform for application developers. Language Runtime (CLR), an application virtual It is a Framework that supports Multiple machine that provides services such as Language and Cross language integration. security, memory management, and exception handling. FCL and CLR together constitute .NET IT has IDE (Integrated Development Framework. Environment). FCL provides user interface, data access, database Framework is a set of utilities or can say connectivity, cryptography, web building blocks of your application system. application development, numeric algorithms, .NET Framework provides GUI in a GUI and network communications. Programmers manner. produce software by combining their own source code with .NET Framework and other libraries. .NET is a platform independent but with .NET Framework is intended to be used by most new help of Mono Compilation System (MCS). applications created for the Windows platform. MCS is a middle level interface. Microsoft also produces an integrated development .NET Framework provides interoperability environment largely for .NET software called Visual between languages i.e.
    [Show full text]
  • 1 Proyecto De Fin De Carrera Entorno De Monitorización De Sistemas
    Proyecto de fin de carrera Entorno de monitorización de sistemas informáticos embarcados mediante pantallas táctiles. Versión: 1.0 Creación: Diciembre 2010 Autor: Vicente García Adánez Tutor: Juan Llorens Morillo 1 Entorno de monitorización de sistemas informáticos embarcados mediante pantallas táctiles García Adánez, V. Esta página ha sido dejada en blanco intencionadamente. 2 Entorno de monitorización de sistemas informáticos embarcados mediante pantallas táctiles García Adánez, V. RESUMEN: Este proyecto ha sido realizado para ser presentado como proyecto de fin de carrera en colaboración con la empresa finlandesa Mobile Net Control (MNC de ahora en adelante) con sede en Mariehamn, capital de las islas Åland, provincia de Finlandia, gracias a la obtención de una beca Erasmus para el año 2010. MNC en una de sus áreas provee a sus clientes de ordenadores para sus barcos creando un sistema de comunicación en ellos. Además de mantenerlos funcionando correctamente se encarga de que la información y configuración en los equipos no se pierda y para ello realiza a través de internet copias de seguridad de sus archivos. Como utilidad para sus barcos ha creído conveniente desarrollar una aplicación software fácil e intuitiva desde la que se pueda monitorizar el estado de los ordenadores que pueda tener su barco. Ésta se encargará de comprobar que funcionan correctamente y en caso de que no lo hagan ayudará a solucionarlo. El objetivo de este proyecto es por tanto la realización de una aplicación para pantalla táctil que permita monitorizar el estado de diferentes componentes en un barco desde el lugar donde esté instalada. Su uso está destinado a la persona responsable de este cometido, que bien puede ser un capitán como cualquier otra persona del barco no relacionada con la informática.
    [Show full text]
  • Yohan J. Rodríguez Viveros
    Yohan J. Rodríguez Viveros Living in: Hermosillo, Sonora. México Email: [email protected] Blog: https://www.hasdid.com Skype: yohan.jasdid Profile 15 Years experience in software development. Use of multiple technologies and tools. Passionate about code and science. Book/Article writer and researcher. Always looking for interesting problems to solve. Full-Stack coder. Always learning technologies to contribute code in desktop/web applications, back-end, front-end, web/local/cloud services, Api’s and scientific computing Employment History Developer IV Tiempo Development Sep 2015 - Present | Hermosillo, Sonora Developer of a security company product. Development and maintenance of the system features, releases, policy deployment, support to customers, documentation and platform infrastructure. Main responsibil- ities include: Development and maintenance of the system features like Database support. Consists in the ability to scan database products of multiple types like Oracle, MS SQL Server, MySQL and DB2 to execute stan- dard security policies against those databases to discover and re-mediate security issues. Platforms support. Consists in the ability to scan multiple operating system like multiple versions of Windows, multiple types of Linux distributions, multiple types of Unix, OSx and embedded OS devices to execute standard policies and discover security issues. Standard security policies includes DISA, CIS and PCI security standards. Devices support. Consists in the ability to scan multiple types of industrial control systems
    [Show full text]
  • Programming with Windows Forms
    A P P E N D I X A ■ ■ ■ Programming with Windows Forms Since the release of the .NET platform (circa 2001), the base class libraries have included a particular API named Windows Forms, represented primarily by the System.Windows.Forms.dll assembly. The Windows Forms toolkit provides the types necessary to build desktop graphical user interfaces (GUIs), create custom controls, manage resources (e.g., string tables and icons), and perform other desktop- centric programming tasks. In addition, a separate API named GDI+ (represented by the System.Drawing.dll assembly) provides additional types that allow programmers to generate 2D graphics, interact with networked printers, and manipulate image data. The Windows Forms (and GDI+) APIs remain alive and well within the .NET 4.0 platform, and they will exist within the base class library for quite some time (arguably forever). However, Microsoft has shipped a brand new GUI toolkit called Windows Presentation Foundation (WPF) since the release of .NET 3.0. As you saw in Chapters 27-31, WPF provides a massive amount of horsepower that you can use to build bleeding-edge user interfaces, and it has become the preferred desktop API for today’s .NET graphical user interfaces. The point of this appendix, however, is to provide a tour of the traditional Windows Forms API. One reason it is helpful to understand the original programming model: you can find many existing Windows Forms applications out there that will need to be maintained for some time to come. Also, many desktop GUIs simply might not require the horsepower offered by WPF.
    [Show full text]
  • Special Characters Numbers
    Index ■Special Characters AddServiceEndpoint( ) member, ServiceHost type, #define, preprocessor directive, 317–319 1032 #elif, preprocessor directive, 317–318 ADO.NET #else, preprocessor directive, 317–318 additional namespaces, 763–764 #endif, preprocessor directive, 317–318 vs. ADO classic, 759–760 #endregion, preprocessor directive, 317 application configuration files, 769–770 #if, preprocessor directive, 317–318 asynchronous data access, 792–793 #region, preprocessor directive, 317 autogenerated data components, 824–825 #undef, preprocessor directive, 317–319 autogenerating SQL commands, 816–817 % modulo operator, C#, 1097 autoincrementing, 797 & operator, pointer types, 312–313 binding DataTables to user interfaces, 804, 806 * operator, pointer types, 312–313 Command object, 781–782 ?? operator, 133 connected layer, 778 += operator, 610 connected vs. disconnected layer, 760 <%@Page%> directive attribute, ASP.NET, 846 connecting to database, Visual Studio 2005, 776 <%Import%> directive, ASP.NET, 846–847 connection objects, 779–780 => token, 1098 ConnectionStringBuilder object, 780–781 ? suffix, nullable types, 131 connectionStrings element, application configuration, 774–775 ■Numbers data access libraries, 1130 data adapter objects, 811–812 3D graphics graphical service, WPF, 1012 data providers, 760, 762 3D rendered animation, 970 data wizards, 822–825 100% code approach, 1048 DataColumn objects, 796, 798 ■ DataRelation objects, 817–820 A DataRow objects, 798–799, 801 A# programming language, 8 DataRow.RowState property, 799–800 Abort(
    [Show full text]
  • Comparative Studies of Six Programming Languages
    Comparative Studies of Six Programming Languages Zakaria Alomari Oualid El Halimi Kaushik Sivaprasad Chitrang Pandit Concordia University Concordia University Concordia University Concordia University Montreal, Canada Montreal, Canada Montreal, Canada Montreal, Canada [email protected] [email protected] [email protected] [email protected] Abstract Comparison of programming languages is a common topic of discussion among software engineers. Multiple programming languages are designed, specified, and implemented every year in order to keep up with the changing programming paradigms, hardware evolution, etc. In this paper we present a comparative study between six programming languages: C++, PHP, C#, Java, Python, VB ; These languages are compared under the characteristics of reusability, reliability, portability, availability of compilers and tools, readability, efficiency, familiarity and expressiveness. 1. Introduction: Programming languages are fascinating and interesting field of study. Computer scientists tend to create new programming language. Thousand different languages have been created in the last few years. Some languages enjoy wide popularity and others introduce new features. Each language has its advantages and drawbacks. The present work provides a comparison of various properties, paradigms, and features used by a couple of popular programming languages: C++, PHP, C#, Java, Python, VB. With these variety of languages and their widespread use, software designer and programmers should to be aware
    [Show full text]
  • Departamento De Biblioteca, El Material Autor: Duirán Ribera, Jesés
    DEPARTAMENTO Estimado lector tomar en cuenta los siguientes re- DE quisitos: BIBLIOTECA Para poder solicitar cualquier material de la Biblio- teca, se deberá llenar la boleta respectiva en for- ma completa, adjuntado los siguientes documen- tos, indispensables. Matricula universitaria vigente (Del semestre ac- tual y con fotografìa), y carnet de identidad. Horarios de atención de Lunes a Viernes De 8:00 a 12:15 (Mañana) y 13:00 a 19:45 (Tarde) BOLETIN INFORMATIVO Año 6 Nro. 12 / Enero a Diciembre 2013 GESTION 2013 Universidad Salesiana de Bolivia Saludos de nuestra Directora Nro. 10601 Título: LIBROS Lic. Maria Cristina Lanza Derecho Procesal Penal y Práctica Forense : Juicio Oral. Dpto. Biblioteca Resumen: Distinguidos Usuarios de la Biblioteca, me es Carrera: El presente libro desarrolla el tema de derecho procesal penal y grato en esta oportunidad hacerles llegar un práctica forense de manera detallada siendo el mismo un libro de enseñanza universitaria. cordial saludo, con el objetivo de hacerles co- USB/EDUCACIÓN nocer el BOLETÍN INFORMATIVO U.S.B. del Departamento de Biblioteca, el material Autor: Duirán Ribera, Jesés. bibliográfi co (últimas adquisiciones 2013). Nro. 10606 Título: DECIDME CUÁNTAS BIBLIOTECAS POSEE UNA NACIÓN, QUÈ USO HACEN DE Historias locales/diseños globales : Colonialidad, conocimientos ELLAS LOS CIUDADANOS, Y YO OS DIRÉ CUÁL ES SU NIVEL DE VIDA PRE- LIBROS subalternos y pensamiento fronterizo. SENTE, Y QUE CLASE DE PORVENIR LE AGUARDA. (HEADLEY). Resumen: LOS LIBROS SON COMO AMIGOS COMPAÑEROS DE AVENTURAS NOS AYU- DAN A CRECER Y NOS REGALAN CULTURA. (GRACIELA OROÑO). En este libro, Walter D. Mignolo introduce la noción de “diferencia Carrera: PERSONAL DE APOYO colonial” y traza la emergencia de nuevas formas de conocimiento que denomina “pensamiento fronterizo” para criticar la conforma- ción epistémica predominante tanto en las ciencias sociales como USB/CIENCIAS vigente en los estudios culturales.
    [Show full text]
  • Learning Php 5.Rar.Html
    http://rapidshare.de/files/9988595/web_programming__-_oreilly_- _learning_php_5.rar.html http://rapidshare.de/files/9987691/_ebook__java_- _mastering_enterprise_javabeans_and_java_2_platform_-_wiley_-_ed_roman.rar.html http://rapidshare.de/files/9987231/_ebook__addisonwesley_- _design_patterns_java.rar.html http://rapidshare.de/files/9982533/lightwave_3d_-wordware_cgi_filmmaking_- _the_creatio_.of.ghost.warrior.ebook-lib.pdf.html http://rapidshare.de/files/9980927/Meat.Refrigeration.by.S.J.James.and.C.James.rar .html http://rapidshare.de/files/9975442/gates__bill_- _business_at_the_speed_of_thought.rar.html http://rapidshare.de/files/9973843/premier_press_- _php.mysql_programming_for_the_absolute_beginner.rar.html http://rapidshare.de/files/9973843/premier_press_- _php.mysql_programming_for_the_absolute_beginner.rar.html http://rapidshare.de/files/9967527/oreilly.python.cookbook.2nd.ed.rar.html http://rapidshare.de/files/9965937/advanced.topics.in.information.technology.stand ards.and.standardization.research.rar.html http://rapidshare.de/files/9965885/jbrampal.rar.html http://rapidshare.de/files/996507/www.avaxhome.ru_-_susebible.rar.html http://rapidshare.de/files/9964404/sybex__cabling_the_complete_guide_to_network_wi ring__2004__3ed_bookwarez.org.rar.html http://rapidshare.de/files/9963174/java2.complete.reference.5e.zip.html http://rapidshare.de/files/9962261/manning_- _publications.understanding.enterprise.soa.nov.2005.part11.rar.html http://rapidshare.de/files/9962194/manning_- _publications.understanding.enterprise.soa.nov.2005.part10.rar.html
    [Show full text]
  • NET Book Zero
    .NET Book Zero What the C or C++ Programmer Needs to Know about C# and the .NET Framework by Charles Petzold www.charlespetzold.com Version 1.1, January 1, 2007 © Charles Petzold, 2006-2007 .NET Book Zero Charles Petzold Table of Contents Chapter 1. Why This Book? ................................................................ 2 Chapter 2. Why .NET? ........................................................................ 5 Chapter 3. Runtimes and SDKs .......................................................... 7 Chapter 4. Edit, Compile, Run, Disassemble .................................... 11 Chapter 5. Strings and the Console .................................................. 22 Chapter 6. Primitive Data Types ....................................................... 51 Chapter 7. Operators and Expressions ............................................. 68 Chapter 8. Selection and Iteration .................................................... 75 Chapter 9. The Stack and the Heap .................................................. 83 Chapter 10. Arrays ........................................................................... 88 Chapter 11. Methods and Fields ....................................................... 95 Chapter 12. Exception Handling ......................................................108 Chapter 13. Classes, Structures, and Objects ..................................117 Chapter 14. Instance Methods .........................................................126 Chapter 15. Constructors ................................................................135
    [Show full text]
  • All in One Runtimes 74037296 Crack Is Here File Download 2019
    All In One Runtimes 74.0.3729.6 Crack Is Here File Download 2019 1 / 4 All In One Runtimes 74.0.3729.6 Crack Is Here File Download 2019 2 / 4 3 / 4 All in One Runtimes 2017 32bit&64bit is a program package that includes all ... NET Framework, Visual C ++ Runtimes, Adobe Shockwave Player, and Microsoft Silverlight. ... They can be downloaded here. ... File size: 352.56-MB, 563-kb. ... Video Downloader Ultimate Crack Patch Key Free Full Download - Filehippo.com .... All in One Runtimes adalah program yang memberi Anda runtime paling penting ... Java SE dan DirectX 9.0c dengan file tambahan dan Adobe Flash Player, ... You can also download: Windows KMS Activator Ultimate 2019 4.7 | 8 MB ... Click here to visit our frequently asked questions about HTML5 video.. Download All in One Runtimes 74.0.3729.6 Download 2019 Offline Installer Setup today! ... Get the Crack program from the link here below.. Download a single batch file installer that includes all Visual C++ ... installer for all Visual C++ Redist editions from 2005 to 2019. A free package containing all the Visual C++ Runtimes, so no need to install any other distributions. ... any cracks, keygens, serials or patches for any software listed here.. All in One Runtimes 2.4.8 Free Download All in One Runtimes is free to ... 9.0c Extra files – General runtime files – Microsoft Visual C Runtimes (v2005. ... Here is a special version that can be downloaded, which is suitable for Windows XP. ... Install Visual C++ Runtime AIO (All in One) latest (2019) full setup on your PC and ...
    [Show full text]
  • WPF in Action with Visual Studio 2008
    www.it-ebooks.info WPF in Action with Visual Studio 2008 www.it-ebooks.info www.it-ebooks.info WPF in Action with Visual Studio 2008 COVERS VISUAL STUDIO 2008 SP1 AND .NET 3.5 SP1 ARLEN FELDMAN MAXX DAYMON MANNING Greenwich (74° w. long.) www.it-ebooks.info For online information and ordering of this and other Manning books, please visit www.manning.com. The publisher offers discounts on this book when ordered in quantity. For more information, please contact: Special Sales Department Manning Publications Co. Sound View Court 3B Fax: (609) 877-8256 Greenwich, CT 06830 Email: [email protected] ©2009 by Manning Publications Co. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by means electronic, mechanical, photocopying, or otherwise, without prior written permission of the publisher. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in the book, and Manning Publications was aware of a trademark claim, the designations have been printed in initial caps or all caps. Recognizing the importance of preserving what has been written, it is Manning’s policy to have the books we publish printed on acid-free paper, and we exert our best efforts to that end. Recognizing also our responsibility to conserve the resources of our planet, Manning books are printed on paper that is at least 15% recycled and processed elemental chlorine-free Development Editor: Jeff Bleiel Manning
    [Show full text]
  • Performing Transformations on .NET Intermediate Language Code
    Twente Research and Education on Software Engineering, Department of Computer Science, Faculty of Electrical Engineering, Mathematics and Computer Science, University of Twente Performing transformations on .NET Intermediate Language code S.R. Boschman Enschede, August 23, 2006 Prof. dr. ir. M. Aksit Dr. ir. L.M.J. Bergmans Ir. P.E.A. Durr¨ Abstract To express crosscutting concerns in a clear manner, the aspect-oriented programming (AOP) paradigm was introduced. In AOP languages, crosscutting concerns are defined in aspects. These aspects are composed, or woven, with components. These components encapsulate func- tionality expressed in traditional object-oriented languages. As the aspect language and component language can be separated, an AOP solution can be implemented independent of the component language. A suitable platform for such an AOP solution is the .NET Framework, since, in principle, this platform can support a wide range of different component languages (i.e. programming languages). This thesis will describe the development of a tool that can weave the aspects with the com- ponents in the .NET Framework environment. The first step is to discuss the Common Inter- mediate Language (CIL) in more detail, as all programming languages in the .NET Framework map to this CIL. The second step is to create a mapping from AOP constructs to CIL code struc- tures. The third step provides an overview of possible approaches to perform the weaving of aspects and base components. One of the weaving approaches is based on modifying the CIL code stored in binary files, called assemblies. The fourth, and last, step is the discussion of the creation of the weaver tool.
    [Show full text]