Edison Lascano | Utah State University (original) (raw)
Papers by Edison Lascano
—Distributed applications depend on application-layer communication protocols to exchange data am... more —Distributed applications depend on application-layer communication protocols to exchange data among processes and coordinate distributed operations, independent of underlying communication subsystems and lower level protocols. Since such protocols are application-specific, developers often must invent or re-invent solutions to reoccurring problems involving sending and receiving messages to meet specific functionality, efficiency, distribution, reliability, and security requirements. This paper introduces a pattern language, called CommDP, consisting of nine design patterns that can help developers understand existing reusable solutions and how those solutions might apply to their situations. Consistent with other pattern languages, the CommDP patterns are described in terms of the problems they address, their contexts, and solutions. The problems and consequences of the solutions are evaluated against four desirable qualities: reliability, synchronicity, longevity, and adaptability for scalable distribution.
ICSEA 2014 : The Ninth International Conference on Software Engineering Advances, Oct 12, 2014
A 2013 ICSEA paper introduced CommJ as an extension to AspectJ for encapsulating communication-r... more A 2013 ICSEA paper introduced CommJ as an
extension to AspectJ for encapsulating communication-related
crosscutting concerns in modular, conversation-aware aspects.
This paper now presents preliminary, but encouraging results
from a subsequent study that shows six different ways in which
CommJ can improve the reusability and maintainability of
applications requiring network communications. We begin by
defining a reuse and maintenance quality model as an
extension to an existing quality model. We then identify six
hypotheses that can be measured using metrics from the
quality model. Finally, to test the hypotheses, we compare
implementations of different sample applications across two
study groups: one for CommJ and another for AspectJ. Results
from the study show improvement.
Sprint - IEEE Software Technology Conference, Apr 23, 2009
This presentation describes the use of Scrum alongside eXtreme Programming
In the present paper, I introduce two different approaches adopted for data persistence on Java ... more In the present paper, I introduce two different approaches
adopted for data persistence on Java platforms over the
course of time: JDBC (Java Data Base Connectivity) and
JPA (Java Persistence API). Generally speaking; for any
n-tier application, data persistence is the most critical part
and can be achieved through different ways, like: file
systems, RDBMS (Relational Database Management
System), object oriented DBMS, XML files, etc. From
POJO (Plain Old Java Objects) to recent EJB3.0
(Enterprise JavaBeans) specifications and from JDBC to
JPA implementations, there have been lots of changes in
the context of persistence on Java platforms. In either
case, the method chosen by the developer for data
persistence depends mainly on the architecture of the
application to be built. Furthermore, each method has its
own pros and cons associated with it; and even though,
not everything is black or white in database access
implementations, the new tools let developers use an
improved persistence routine based mainly in Object –
Relational Mapping techniques; as a consequence,
persistence providers as Hibernate or Toplynk have
appeared to facilitate these improved persistence routines
in a transparent way for Java developers.
In the last decade, we have seen many new technologies
in data persistence coming up; nonetheless, the usage of
old methods of data persistence is not completely
demolished. Primarily, my argument is focused on the
comparison between Java Persistence API and JDBC
(Java Database Connectivity), mainly from the
programming and mapping complexity points of view;
this way, along the document, I will be giving an
approach of how the new persistence technologies are
more helpful and powerful in persisting data and mapping
objects to entities effectively than earlier technologies.
—Distributed applications depend on application-layer communication protocols to exchange data am... more —Distributed applications depend on application-layer communication protocols to exchange data among processes and coordinate distributed operations, independent of underlying communication subsystems and lower level protocols. Since such protocols are application-specific, developers often must invent or re-invent solutions to reoccurring problems involving sending and receiving messages to meet specific functionality, efficiency, distribution, reliability, and security requirements. This paper introduces a pattern language, called CommDP, consisting of nine design patterns that can help developers understand existing reusable solutions and how those solutions might apply to their situations. Consistent with other pattern languages, the CommDP patterns are described in terms of the problems they address, their contexts, and solutions. The problems and consequences of the solutions are evaluated against four desirable qualities: reliability, synchronicity, longevity, and adaptability for scalable distribution.
ICSEA 2014 : The Ninth International Conference on Software Engineering Advances, Oct 12, 2014
A 2013 ICSEA paper introduced CommJ as an extension to AspectJ for encapsulating communication-r... more A 2013 ICSEA paper introduced CommJ as an
extension to AspectJ for encapsulating communication-related
crosscutting concerns in modular, conversation-aware aspects.
This paper now presents preliminary, but encouraging results
from a subsequent study that shows six different ways in which
CommJ can improve the reusability and maintainability of
applications requiring network communications. We begin by
defining a reuse and maintenance quality model as an
extension to an existing quality model. We then identify six
hypotheses that can be measured using metrics from the
quality model. Finally, to test the hypotheses, we compare
implementations of different sample applications across two
study groups: one for CommJ and another for AspectJ. Results
from the study show improvement.
Sprint - IEEE Software Technology Conference, Apr 23, 2009
This presentation describes the use of Scrum alongside eXtreme Programming
In the present paper, I introduce two different approaches adopted for data persistence on Java ... more In the present paper, I introduce two different approaches
adopted for data persistence on Java platforms over the
course of time: JDBC (Java Data Base Connectivity) and
JPA (Java Persistence API). Generally speaking; for any
n-tier application, data persistence is the most critical part
and can be achieved through different ways, like: file
systems, RDBMS (Relational Database Management
System), object oriented DBMS, XML files, etc. From
POJO (Plain Old Java Objects) to recent EJB3.0
(Enterprise JavaBeans) specifications and from JDBC to
JPA implementations, there have been lots of changes in
the context of persistence on Java platforms. In either
case, the method chosen by the developer for data
persistence depends mainly on the architecture of the
application to be built. Furthermore, each method has its
own pros and cons associated with it; and even though,
not everything is black or white in database access
implementations, the new tools let developers use an
improved persistence routine based mainly in Object –
Relational Mapping techniques; as a consequence,
persistence providers as Hibernate or Toplynk have
appeared to facilitate these improved persistence routines
in a transparent way for Java developers.
In the last decade, we have seen many new technologies
in data persistence coming up; nonetheless, the usage of
old methods of data persistence is not completely
demolished. Primarily, my argument is focused on the
comparison between Java Persistence API and JDBC
(Java Database Connectivity), mainly from the
programming and mapping complexity points of view;
this way, along the document, I will be giving an
approach of how the new persistence technologies are
more helpful and powerful in persisting data and mapping
objects to entities effectively than earlier technologies.