Andrew A. AllenGeorgia Southern University | GSU · Department of Computer Science
Andrew A. Allen
Ph.D Computer Science
About
32
Publications
3,807
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
234
Citations
Introduction
Additional affiliations
August 2006 - June 2011
Education
August 2006 - June 2011
Publications
Publications (32)
As the demand for secure coding education grows, there is a need for improvements in how secure coding is taught and in preparing students to develop more secure software. As time in a Computer Science classroom is finite, educational efforts should be placed on targeting the most common types of vulnerabilities to better prepare students to avoid...
We adapted an application called Non-Intrusive Classroom Attention Tracking System (NiCATS) that quantifies and generates statistical data based on a student’s attention level while performing various tasks like coding, browsing through websites, or reading lecture notes on computers. This research is focused on understanding how student attentiven...
Teachers use observational cues in the classroom to identify attentiveness of students and guide the pace of their lecture. However, effectiveness of this technique decreases with increasing class size. This paper presented an approach for automating these observational cues from the students' facial expressions and identifying their attentiveness...
The process of learning is not merely determined by what the instructor teaches, but also by how the student receives that information. An attentive student will naturally be more open to obtaining knowledge than a bored or frustrated student. In recent years, tools such as skin temperature measurements and body posture calculations have been devel...
Programming is a skill, often acquired through repeated practice and feedback. During traditional lectures, students not actively engaged in their own learning. It is imperative to pique students motivation and direct their focus on gaining the requisite knowledge. As the class size grows, instructors feedback is delayed that impacts student engage...
The pervasiveness of electronic devices coupled with increasing resources within these devices has aided the explosion of available software services. While reusable software services have become more accessible and the cost of using these services has become cheaper, the increased number of services and access methods also increases the complexity...
One challenge to the cloud computing paradigm
is the task complexity associated with designing and managing
multi-cloud solutions based on operational objectives. Heterogeneous
vendor interfaces and a lack of standardization compounds
this complexity and may eventually lead to vendor lock-in.
In this article we present a model driven approach to al...
The growth and popularization of wireless connectivity and mobile devices have allowed the development of smart spaces that were previously only envisaged in the approach proposed by Mark Weiser. These environments are composed of many computational resources, such as devices and applications, along with user, who must be able to associate with and...
Domain-specific languages (DSLs) provide developers with the ability to describe applications using language elements that directly represent concepts in the application problem domains. Unlike general-purpose languages, domain concepts are embedded in the semantics of a DSL. In this chapter, the authors present an interpreted domain-specific model...
Domain-specific languages (DSLs) provide developers with the ability to describe applications using language elements that directly represent concepts in the application problem domains. Unlike general-purpose languages, domain concepts are embedded in the semantics of a DSL. In this chapter, the authors present an interpreted domain-specific model...
The combination of domain-specific modeling languages and model-driven engineering techniques hold the promise of a breakthrough in the way applications are developed. By raising the level of abstraction and specializing in building blocks that are familiar in a particular domain, it has the potential to turn domain experts into application develop...
Advances in communication devices and technologies are dramatically expanding our communication capabilities and enabling a wide range of multimedia communication applications. The current approach to develop communication-intensive applications results in products that are fragmented, inflexible, and incapable of responding to changing end-users'...
Although runtime validation and verification are critical for ensuring reliability in autonomic software, research in these areas continues to lag behind other aspects of system development. Few researchers have tackled the problem of testing autonomic software at runtime, and the current state-of-the-art only addresses localized validation of self...
A survey on the landscape of self-adaptive systems identified testing and assurance as one of the most neglected areas in the engineering of autonomic software. However, since the structure and behavior of autonomic software can vary during its execution, runtime testing is critical to ensure that faults are not introduced into the system as a resu...
The smart grid has been proposed as the panacea to address systemic challenges of the over fifty year old legacy electrical grid, the single largest machine on the planet. A core component central to realizing the smart grid concept is the microgrid. The microgrid is a self-sustaining entity, capable of data interchange and real-time monitoring and...
Improving the quality of software developed in the 21st century is one of the major challenges in the software industry. Addressing this problem will require that academic institutions play a key role in training developers to produce high quality software. Unfortunately, students and instructors continue to be frustrated by the lack of support pro...
The convergence of various multimedia communications that includes voice, video and data presents many opportunities for enabling unied communication but paradoxically leads to ineciencies for the user as the communication may be- come complex. Model driven technologies such as the Com- munication Virtual Machine (CVM) propose to reduce such comple...
The pervasiveness of complex communication services and the need for end-users to play a greater role in developing communication services have resulted in the creation of the Communication Virtual Machine (CVM) technology. The CVM technology consists of a Communication Modeling Language (CML) and the CVM. CML is a declarative modeling language tha...
The diversity of communication media now available on IP networks presents opportunities to create elaborate collaborative communication applications. However, developing collaborative communication applications can be challenging when using the traditional stovepiped development approach with lengthy development cycle as well as limited utility. O...
Educators continue to face major challenges in getting their students to use models eectively when developing software artifacts. As software systems become more complex it is es- sential that students not only learn how to create good mod- els during software design activities but also use the mod- els created as the blueprint for implementation....
The functionality of communication applications, such as instant messaging, has dramatically improved due to market competition. The quest for the competitive edge has resulted in the development of open platform APIs that allow communication applications to become building blocks, or communication frameworks for more elaborate communication applic...
The advances in communication frameworks, such as Skype and Google Talk facilitate the increasing needs of communication-intensive and collaborative applications. These communication frameworks also make it possible for end-users to be more involved in the development of such applications if the appropriate level of abstraction can be provided. In...
The pervasiveness of complex communication services and the need for end-users to play a greater role in modeling communication services have resulted in the development of the Communication Model-ing Language (CML). CML is a domain-specific modeling language that can be used to declaratively specify user-centric communication services. CML models...
The advances in technology to support complex commu-nication services, such as the pervasiveness of mobile de-vices and the convergence of multimedia communication over digital networks, has resulted in a need for a new ap-proach to model and realize communication services. The stovepipe approach used to develop today's communica-tion applications...
The convergence of data, audio and video on IP networks is changing the way individuals, groups and organizations communicate. This diversity of communication media presents opportunities for creating synergistic collaborative communications. This form of collaborative communication is however not without its challenges. The increasing number of co...