- Browse by Author
Browsing by Author "Vidal-Silva, Cristian"
Now showing 1 - 20 of 21
Results Per Page
Sort Options
Item A Modular Aspect-Oriented Programming Approach of Join Point Interfaces(2019) Vidal-Silva, Cristian; Madariaga, Erika; Jiménez, Claudia; Carter, LuisThis paper describes and analyzes the main differences and advantages of the Join Point Interfaces (JPI) as an Aspect-Oriented Programming (AOP) approach for the modular software production concerning the standard aspect-oriented programming methodology for Java (AspectJ) to propose a structural modeling approach looking for modular software solutions. Using a Software Engineering point-of-view, we highlight the relevance of structural and conceptual design for JPI software applications. We model and implement a classic example of AOP using AspectJ and JPI as an application example to review their main difference and highlight the JPI consistency between products (models and code). Our proposal of UML JPI class diagrams allows the definition of oblivious classes which know about their JPI connections, an essential element to adapt and transform tradition like-AspectJ AOP solutions to their JPI version. Thus, for the modular software production and education, JPI seems an ideal software development approach.Item A Spin / Promela Application for Model checking UML Sequence Diagrams(2018) Vidal-Silva, Cristian; Villarroel, Rodolfo; Rubio, José Miguel; Johnson, Franklin; Madariaga, Erika; Campos, Camilo; Carter, LuisUML sequence diagrams usually represent the behavior of systems execution. Automated verification of UML sequence diagrams’ correctness is necessary because they can model critical algorithmic behaviors of information systems. UML sequence diagrams applications are often on the requirement and design phases of the software development process, and their correctness guarantees the accurate and transparent implementation of software products. The primary goal of this article is to review and improve the translation of basic and complex UML sequence diagrams into Spin / Promela code taking into account behavioral properties and elements of combined fragments of UML sequence diagrams for synchronous and asynchronous messages. This article also redefines a previous proposal for a transition system for UML sequence diagrams by specifying Linear Temporal Logic (LTL) formulas to verify the model correctness. We present an application example of our modeling proposal on a modified version of a traditional case study by using UML sequence diagrams to translate it into Promela code to verify their properties and correctness.Item Applying FireFly Algorithm to Solve the Problem of Balancing Curricula(2019) Rubio, José Miguel; Vidal-Silva, Cristian; Soto, Ricardo; Madariaga, Erika; Johnson, Franklin; Carter, LuisThe problem of assigning a balanced academic curriculum to academic periods of a curriculum, that is, the balancing curricula, represents a traditional challenge for every educational institution which look for a match among students and professors. This article proposes a solution for the balancing curricula problem using an optimization technique based on the attraction of fireflies (FA) meta-heuristic. We perform a set of test and real instances to measure the performance of our solutionproposal just looking to deliver a system that will simplify the process of designing a curricular network in higher education institutions. The obtained results show that our solution achieves a fairly fast convergence and finds the optimum known in most of the tests carried out.Item Applying PHP Codeigniter For Easy Web Development(2020-03) Vidal-Silva, Cristian; Jiménez, Claudia; Madariaga, Erika; Urzúa, LuisWithin the framework of the current advances in web technology, the main objective of the work is to describe the practical advantages of the PHP CodeIgniter 3.0 web development tool to provide a particular solution: MSRS v1.0 Manager Selection and Recruitment System, based on the requirements and structural design of MSRS and then present details of its implementation and operation. Thus, MSRS v1.0 is a web system that supports personnel selection processes in competitions under a specific professional profile, according to the definition of skills necessary for the position. Once the competencies and the level of the required domain have been defined, the items of questions to be evaluated are prepared under various reagent formats, whose responses reach a score that discriminates between the levels of the domain of the applicants, obtaining the most suitable candidate for the charge. The use of PHP CodeIgniter 3.0 stands out since, given a correct analysis of requirements and its logical database model, it allows the rapid development of web applications.Item Aspect-Combining Functions for Modular MapReduce Solutions(2018) Vidal-Silva, Cristian; Villarroel, Rodolfo; Rubio, José Miguel; Johnson, Franklin; Madariaga, Érika; Urzúa, Alberto; Carter, Luis; Campos-Valdés, Camilo; López-Cortés, Xaviera A.MapReduce represents a programming framework for modular Big Data computation that uses a function map to identify and target intermediate data in the mapping phase, and a function reduce to summarize the output of the map function and give a final result. Because inputs for the reduce function depend on the map function’s output to decrease the communication traffic of the output of map functions to the input of reduce functions, MapReduce permits defining combining function for local aggregation in the mapping phase. MapReduce Hadoop solutions do not warrant the combining functioning application. Even though there exist proposals for warranting the combining function execution, they break the modular nature of MapReduce solutions. Because Aspect-Oriented Programming (AOP) is a programming paradigm that looks for the modular software production, this article proposes and apply Aspect-Combining function, an AOP combining function, to look for a modular MapReduce solution. The Aspect-Combining application results on MapReduce Hadoop experiments highlight computing performance and modularity improvements and a warranted execution of the combining function using an AOP framework like AspectJ as a mandatory requisite.Item Big Data Education At The Chilean Academy: Is This Possible?(2019-12) Vidal-Silva, Cristian; Madariaga, Erika; Jiménez, Claudia; Urzúa, LuisTechnology evolves, and the human being presents a growing need for the use and generation of large volumes of information and data (Big Data). Working with Big Data with traditional computer systems is not feasible: Including new knowledge and technology of Big Data for inclusion in professional computer and computer education is necessary. The main objective of this work is to answer whether or not the Chilean academy is prepared to train specialists in Big Data. In addition to describing theoretical and practical components of Big Data along with introducing an essential tool of the subject, this work defines and presents the results of a survey to explore and analyze the reality of the academy in Chile regarding the degree of viability to train and train professionals competent in Big Data. Necessary conditions for developing Big Data competences in the Chilean academy require more adjustments. Specifically, the Chilean academy needs to adopt Big Data topics and solutions for developing those competencies in future professionals.Item Developing Computing Competencies Without Restrictions(2022-10-04) Vidal-Silva, Cristian; Barriga, Nicolás A.; Ortega-Cordero, Franco; González-López, Javiera; Jiménez-Quintana, Claudia; Pezoa-Fuentes, Claudia; Veas-González, IvánThe information society represents a great revolution. Computing programming is a relevant competence nowadays for everybody, regardless of educational background. However, traditional programming languages consider syntax barriers that complicate their adoption and usefulness for beginners. Python is an exception for its open-source, cross-platform nature and syntax simplicity, which facilitate the development of algorithmic thinking and dissemination of programming solutions. Several Python extensions support modern functionalities such as web development, videogame, and machine learning, making it one of the most used programming languages. Google Colab or Colaboratory facilitates the online learning and development of Python solutions. This article presents positive academic experiences of Chilean students of majors from two Chilean universities, a traditional university in the north and a private university in the middle of Chile, using Google Colab to develop programming competencies remotely for the Covid pandemic. We highlight the promising results obtained for basic programming and operating system programming subjects, which motivate us to use Python and Google Colab widely, not only in university contexts. We expect to continue developing programming competencies using Google Colab and Python. The main limitation encountered in this experience is the internet connection requirements for online education. However, it does not represent an issue for education in developing and developed countries. Google Colab permits the development of highly demanded competencies worldwide at home, only with internet access and a web browse, an excellent motivation for learning for all students regardless of age and academic level.Item Development Of Algorithmic And Mathematical-Logic Competences Of Children In Chile With Scratch(2020-04) Vidal-Silva, Cristian; Jiménez, Claudia; Madariaga, Erika; Tupac Yupanqui, Miguel; Sepúlveda, SussanAlgorithmic competences for the development of organized operations play an important role in the progress of education and learning of the logical and mathematical reasoning for children. In this context, the visual programming language Scratch is a viable tool for that purpose. Precisely, the main objective of this work is to present experiences and results of the use of that programming language with students of the primary school second year in various Chilean educational institutions, that is, in a public school, in a private school and in a private-subsidized school. These schools are in different geographical areas of the Maule region. Thanks to their social and cultural diversity along with their location, the obtained results are of a great relevance to demonstrate empirically that a significant gap does not exist for the development of algorithmic and logical-mathematical competences in children.Item Electrónica para Todos con el Uso de Arduino: Experiencias Positivas en la Implementación de Soluciones Hardware-Software(2019-12) Vidal-Silva, Cristian; Lineros, Matías I.; Uribe, Guillermo E.; Olmos, César J.Este trabajo presenta experiencias para con el desarrollo de proyectos Arduino, de estudiantes de Ingeniería Civil Informática de la Universidad Viña del Mar (ICI-UVM) en Chile, en un módulo (curso) de su proceso formativo. Las áreas de informática y electrónica usualmente consideran rumbos formativos diferentes sin presentar una clara hegemonía en el proceso de enseñanza, con un bajo desarrollo de competencias integradoras para la producción de soluciones que combinen hardware y software para el procesamiento de señales, lo que Arduino permite disminuir en alto grado. Este trabajo destaca que, en tan sólo seis semanas, los estudiantes de Ingeniería Civil Informática de la Universidad Viña del Mar fueron capaces de desarrollar competencias para el uso de Arduino con el fin de implementar sistemas prototipo para la adquisición y visualización de variables ambientales. Esto es sólo una prueba de que la electrónica y la computación están más accesible para todos hoy en día, con bajas barreras de costo y aprendizaje.Item En Búsqueda de un Procedimiento de Desarrollo de Software Modular. Simbiosis entre Programación Orientada a la Característica y Programación Orientada a Aspectos JPI(2019) Vidal-Silva, Cristian; Pham, Trung T.; Sepúlveda, Sussan M.; Carter, LuisEn la búsqueda de un método de desarrollo de software modular, este trabajo propone Interfaces de Punto de Unión JPI para el modelamiento colaborativo de soluciones modulares en una simbiosis JPI y Programación Orientada a la Característica, POC. Una simbiosis de POC y POA permite alcanzar las ventajas y alcances de ambos enfoques. Esto es, una alta modularidad para la colaboración heterogénea entre clases y alta repetición de comportamiento con POC. Se obtiene también, una alta modularidad para la colaboración homogénea entre clases y las dependencias implícitas entre componentes con POA tradicional. Se ejemplifica las ventajas de esta fusión en la representación modular y estructural de LPS, para destacar los beneficios de esta simbiosis. Los resultados obtenidos sólo avalan lo anterior, y constituyen la base para una metodología de desarrollo de software JPI- POC.Item Estudio de la Realidad y Viabilidad de la Formación en BigData en la Academia Chilena(2019) Vidal-Silva, Cristian; Madariaga, Erika; Rubio, José Miguel; Urzúa, LuisEl principal objetivo de este trabajo es responder si la academia chilena está o no preparada para formar especialistas en Big Data. Además de describir componentes teóricos y prácticos de Big Data junto con introducir una herramienta básica del tema, este trabajo define y presenta los resultados de una encuesta para explorar y analizar la realidad de la academia en Chile respecto al grado de viabilidad para capacitar y formar profesionales competentes en Big Data. Con respecto a estos resultados, este trabajo argumenta que las condiciones necesarias para el desarrollo de competencias de Big Data en la academia chilena aún no están del todo presentes, y así, la academia chilena necesita la adopción de tópicos y soluciones de Big Data para la formación futura de profesionales competentes de ese tan actual tema.Item Estudio Exploratorio de Factores que Influyen en la Decisión de la Mujer para Estudiar Ingeniería en Chile(2019) Jiménez, Claudia A.; Jones, Eduardo A.; Vidal-Silva, CristianLos principales objetivos de este trabajo son entregar detalles de un estudio exploratorio sobre las mujeres ingenieras en Chile y presentar resultados de la positiva realidad laboral en Chile de mujeres ingenieras. Las entidades chilenas de educación superior, ofrecen una amplia y variada propuesta de estudios superiores de ingeniería con diversas especialidades. A pesar del amplio rango de posibilidades de estudios en ingeniería, el número de mujeres estudiantes es mucho menor que los hombres, situación que no es común en otras carreras universitarias. Los resultados muestran la relevancia de la formación matemática y de ciencias tanto en la enseñanza básica y educación media para las mujeres que terminan exitosamente una carrera de ingeniería.Item Formal Specification Language Jpiaspectz: Looking For A Complete JPI Software Development Process(2019-11) Vidal-Silva, Cristian; Jiménez, Claudia; Madariaga, Erika; Urzúa, LuisAspect-Oriented Software Development AOSD solves modularity issues in the Object-Oriented Software Development OOSD approach. AOSD adds a few more details concerning the dependency between related modules. Join Point Interface JPI represents an AOSD methodology to solve those AOSD issues by the definition of interfaces in the middle of advisable artifacts and aspects. JPI permits developing software modules without crosscutting concerns. Looking for a JPI software development approach, this article proposes and exemplifies the use of JPIAspectZ, an extension of the formal aspect-oriented language AspectZ for the requirement specification of JPI solutions. Mainly, JPIAspectZ looks for a consistent JPI software development process. Defining join point interfaces represents a primary JPI component for explicitly associating aspects and advised modules. Classes are no longer oblivious of possible interaction with aspects, and effectiveness of aspects no more depend on signatures of advisable modules components for the use of JPI instances. JPIAspectZ fully supports these JPI principles. As JPI application examples, this article shows the formal requirements specification, structural model, and JPI code for a typical aspect-oriented application.Item Innovación en Minería de Datos para el Tratamiento de Imágenes: Agrupamiento K-media para Conjuntos de Datos de Forma Alargada y su Aplicación en la Agroindustria(2019-04) Pham, Trung T.; Lobos, Gustavo A.; Vidal-Silva, CristianEste trabajo presenta un innovador método de agrupación K-media modificado basado en la teoría de conjunto junto con su aplicación en el ámbito de procesamiento de imágenes agroindustrial. K-media tradicional permite la agrupación de conjuntos en subconjuntos mediante la definición de centros según la fórmula de distancia. Cuando los datos se concentran en formas sin un sentido hiper-esférico, esta herramienta permite que el centro del conjunto, con un único punto, se convierta en un subconjunto de muchos puntos. En este artículo se presenta una modificación de la fórmula de distancia que permite dar mayor flexibilidad para el estudio de casos en agricultura. Mediante ejemplos numéricos, la funcionalidad y aplicabilidad del método modificado de agrupación K-media es evaluada en imágenes infrarrojas provenientes de ensayos de déficit hídrico en trigo.Item Modulating Crosscutting Concerns By The Decorator Design Pattern Vs. Aspect Oriented Programming In .NET(2020-01) Pereira-Vásquez, Cristian; Vidal-Silva, Cristian; Madariaga, Erika; Jiménez, Claudia; Urzúa, LuisThis article describes and illustrates how to produce modular .NET software solutions by the use of Decorator design pattern and AspectOriented Programming (AOP) tool PostSharp. We applied both techniques for modularizing crosscutting concerns of a traditional modularization example: logging function. This work presents logging solutions with the use of Decorator and PostSharp to modularize associated cross issues, along with detailing the advantages and disadvantages of both solutions. Likewise, this work points out details of in PostSharp along with proposing the use of PostSharp and Decorator to achieve solutions with a higher level of modularity.Item Una Propuesta de Algoritmo Spin / Promela para el Análisis y Diagnóstico de Errores en Diagramas de Secuencia UML(2019) Vidal-Silva, Cristian; Villarroel, Rodolfo H.; López-Cortés, Xaviera A.; Rubio, José MiguelEste trabajo describe las principales características de diagramas de secuencia UML, la noción de falla o error y tolerancia a fallas, y algunos tipos de fallas comunes y sus acciones de corrección en un diagrama de secuencias UML. Así, el principal objetivo de este trabajo es proponer un algoritmo para la transformación de diagramas de secuencia UML en código Spin / Promela, una herramienta de verificación formal y de detección de errores en el chequeo de modelos para un sistema de tolerancia a fallas, y así entregar explicaciones de los pasos necesarios para ajustar y corregir los diagramas afectados. El algoritmo para transformar diagramas de secuencia UML en código Spin / Promela es útil para la detección de fallas en secuencias de mensajes. Se aplica la solución propuesta sobre un diagrama simple y general de secuencias UML para analizar su código Promela y garantizar la efectividad del chequeo de modelos sobre diagramas de secuencia UML. Además, se presentan ideas de extensión de la propuesta para el análisis de diagramas de secuencias UML con la inclusión de fragmentos combinados de iteraciones.Item Propuesta de Modelo de Características con Interfaz de Punto de Unión para el Modelamiento de Líneas de Productos de Software(2018) Vidal-Silva, Cristian; Bustamante, Miguel A.; Rubio, José Miguel; Carter, LuisEn búsqueda de una nueva metodología de desarrollo de software modular, este trabajo propone MC JPI, esto es, Modelos de Características (MC) con Interfaz de Punto de Unión (JPI del inglés Join Point Interface) de Programación Orientada a Aspectos (POA) como base de la metodología Programación Orientada a la Característica (FOP) + JPI. Así, este trabajo describe ventajas y detalles de FOP y POA JPI como paradigmas individuales y de su simbiosis para la producción de software modular. Como aplicación ejemplo, se utiliza MC JPI sobre un ejemplo clásico de FOP para visualizar componentes propios de MC tradicionales, y asociaciones o restricciones cruzadas especiales entre características. Adicionalmente, este trabajo describe las ventajas de MC JPI y las diferencias respecto a algunos trabajos de investigación anteriores para apoyar principios de modelado orientados a aspectos propios de JPI. Se concluye que JPI permite una modularización sobre modelos de características, y así este enfoque de simbiosis JPI + FOP parece prometedor.Item Resolución del problema de balanceo de mallas curriculares mediante algoritmo de luciérnagas(2018) Rubio, José Miguel; Soto, Ricardo; Jorquera, Hernán; Aguilera, Jorge; Vidal-Silva, CristianEn este artículo se propone resolver el problema de balanceo de mallas curriculares (BACP), que consiste en la asignación de una carga académica balanceada a periodos académicos de un plan de estudios, mediante una técnica de optimización basada en la atracción de las luciérnagas (FA). Se resolverán tanto instancias de prueba como instancias reales con el fin de medir el rendimiento del algoritmo y entregar un sistema que permita simplificar el proceso de diseño de una malla curricular en las Instituciones de Educación Superior. Los resultados obtenidos muestran que el algoritmo FA tiene una convergencia bastante rápida y encuentra el óptimo conocido en la mayoría de las pruebas realizadas.Item Reviewing Diagnosis Solutions for Valid Product Configurations in the Automated Analysis of Feature Models(2019) Vidal-Silva, CristianA Feature Model (FM) is an information model to represent commonalities and variabilities for all the products of a Software Product Line (SPL). The complexity and large-scale of real feature models makes their manual analysis for determining the product configurations validity a tedious or even infeasible task. Efficient solutions for the diagnosis of errors in the Automated Analysis of Feature Models (AAFM) already exist such as FMDiag and FlexDiag. Thus, this work describes the fundamental basis for both diagnosis algorithms to apply the first of them on the validity of FM product configurations. The results highlight the applicability and efficiency of FMDiag and invite us to look for additional applications in the AAFM scenarios.Item Scratch and Arduino for Effectively Developing Programming and Computing-Electronic Competences in Primary School Children(2019-11) Vidal-Silva, Cristian; Serrano-Malebran, Jorge; Pereira, FelipeProgramming and designing computing-electronic solutions imply complex competences, which usually demand to restructure previous thinking and problem-solving knowledge. Both programming and computing-electronic design solutions ask for step-by-step thinking, and also being cautious regarding involved hardware items for the second one. Designing computing-electronic solutions is a non-trivial task since it unifies both worlds, even though platforms such as Arduino notably simplify that development. This article describes experiences of programming and computing-electronic teaching to a group of primary school children in Valparaiso-Chile by the use of Scratch and Tinkercad for the goal of developing programming and Arduino-based computing-electronic competences in school children. The obtained results demonstrate that children can effectively develop programming and computing-electronic theoretical and practical skills. These results also show that students can get abilities and enthusiasm to know more advanced skills and applications concerning sensing systems. Thus, programming and electronics can motivate the learning process in children.