- Browse by Subject
Artículos científicos
Permanent URI for this collection
Browse
Browsing Artículos científicos by Subject "Aspects"
Now showing 1 - 3 of 3
Results Per Page
Sort Options
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 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 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.