40360434
Measurement of the cognitive functional complexity of software
One of the central problems in software engineering is its inherited complexity. It is recognized that cognitive informatics plays an important role in understanding the fundamental characteristics of software. This paper models the cognitive weights of basic control structures of software, and develops a new concept of cognitive functional size for measuring software complexity. Comparative case studies between the cognitive functional size and physical sizes of 20 programs are conducted. It is found that for a given design, although the physical sizes of software may vary in a wide range, the cognitive functional sizes are much stable and independent from implementation technologies and programming languages. Therefore, the cognitive functional size provides a novel, stable and practical software complexity measurement and is helpful to explain the fundamental nature of software complexity in the phase of design, implementation, or maintenance in software engineering.
7087864
Formal description of the cognitive process of decision making
Decision making is one of the basic cognitive processes of human behaviors by which a preferred option or a course of actions is chosen from among a set of alternatives based on certain criteria. Decision theories are widely applied in a number of disciplines encompassing cognitive science, computer science, management science, economics, sociology, psychology, political science, and statistics. The studies on decision making can be categorized into two classes: descriptive and normative theories. A number of decision strategies have been proposed from different angles and application domains such as the maximum expected utility and Bayesian method. However, there is still a lack of a fundamental and mathematical decision model and a rigorous cognitive process for decision making. This paper presents a decision making process on the basis of the layered reference model of the brain (LRMB). The cognitive process of decision making is modeled as a sequence of Cartesian-product based selections. A rigorous description of the decision process in real-time process algebra (RTPA) is presented. Different decision making strategies are comparatively analyzed. The result shows these strategies can be well fit in the formally described decision process. The cognitive process of decision making may be applied in a wide range of decision-based systems, such as cognitive informatics, software agent systems, expert systems, and decision support systems.
18101194
The Real-Time Process Algebra (RTPA)
The real-time process algebra (RTPA) is a set of new mathematical notations for formally describing system architectures, and static and dynamic behaviors. It is recognized that the specification of software behaviors is a three-dimensional problem known as: (i) mathematical operations, (ii) event/process timing, and (iii) memory manipulations. Conventional formal methods in software engineering were designed to describe the 1-D (type (i)) or 2-D (types (i) and (iii)) static behaviors of software systems via logic, set and type theories. However, they are inadequate to address the 3-D problems in real-time systems. A new notation system that is capable to describe and specify the 3-D real-time behaviors, the real-time process algebra (RTPA), is developed in this paper to meet the fundamental requirements in software engineering.RTPA is designed as a coherent software engineering notation system and a formal engineering method for addressing the 3-D problems in software system specification, refinement, and implementation, particularly for real-time and embedded systems. In this paper, the RTPA meta-processes, algebraic relations, system architectural notations, and a set of fundamental primary and abstract data types are described. On the basis of the RTPA notations, a system specification method and a refinement scheme of RTPA are developed. Then, a case study on a telephone switching system is provided, which demonstrates the expressive power of RTPA on formal specification of both software system architectures and behaviors. RTPA elicits and models 32 algebraic notations, which are the common core of existing formal methods and modern programming languages. The extremely small set of formal notations has been proven sufficient for modeling and specifying real-time systems, their architecture, and static/dynamic behaviors in real-world software engineering environment.
44372041
Software Engineering Process Benchmarking
This paper proposes a Software Engineering Process (SEP) benchmarking methodology and a benchmark-gap analysis technique to assist industrial practitioners in quantitative software engineering. This work adopts the comprehensive SEP Assessment model (SEPRM), as a foundation to SEP benchmarking. In this approach, a number of conventional benchmarking challenges may be overcome. Case studies are presented to demonstrate the usage of the benchmarking technologies and supporting tools.
29450095
Cognitive models of the brain
The human brain is the most complicated organ in the universe and a new frontier yet to be explored in an interdisciplinary approach. Investigation of the brain is a unique problem that requires recursive mental power to explore the brain using the brain. This paper attempts to develop functional and cognitive models of the brain by using cognitive informatics and formal methodologies. This paper adopts a memory-based approach to explore the brain, and to demonstrate that memory is the foundation for any natural intelligence. Structures of memories are explored and cognitive models of the natural intelligence are proposed. Cognitive mechanisms of the brain, including hypotheses and theories on the thinking engine of the brain, long-term memory establishment, and roles of sleep in long-term memory development, are investigated. The models and theories are applied to explain a number of fundamental physiological and psychological phenomena.
21184887
The cognitive processes of abstraction and formal inferences
Theoretical research is predominately an inductive process; while applied research is mainly a deductive process. Both inference processes are based on the cognitive process and means of abstraction. This paper describes the cognitive processes of abstraction and formal inferences such as deduction, induction, abduction, and analogy. The hierarchy of abstraction and the descriptivity of abstract means at different levels are analyzed. A set of mathematical models of formal inference methodologies are developed. Formal descriptions of the five cognitive processes of abstraction and inferences are presented using real-time process algebra (RTPA). Applications of abstraction and formal inferences in dealing with complicated problems in large-scale software system development in software engineering are discussed.
1917143
Wireless Sensing, Actuation and Control - With Applications to Civil Structures
Structural monitoring and control have been subjects of interests in structural engineering for quite some time. Structural sensing and control technologies can benefit in terms of installation cost and time from wireless communication and embedded computing. The hardware and software requirements pose an interesting, interdisciplinary research challenge. This paper describes a low-cost wireless sensing system that is judiciously designed for large-scale applications in civil structures. Laboratory and field tests have been conducted to validate the performance of the prototype system for measuring vibration responses. By incorporating an actuation signal generation interface, the wireless sensing system has the capabilities to perform structural actuation and support structural control applications. Structural control tests have been performed to validate the wireless sensing and actuation system.
14888347
Error Resilient Mode Decision in Scalable Video Coding
Error resilient macroblock mode decision has been extensively investigated in the literature for single-layer video coding, for which error resilient mode decision is also called as intra refresh. In this paper, we present a loss-aware rate-distortion optimized macroblock mode decision algorithm for scalable video coding, wherein more macroblock coding modes than intra and inter are involved. Thanks to the good performance, the proposed method has been adopted into the joint scalable video model by the joint video team.
447865
Middleware support for embedded software with multiple QoS properties for ubiquitous computing environments
Ubiquitous application software usually has multiple QoS requirements, such as situation-awareness, real-time, and security, which make the application software development complicated. In this paper, an approach to supporting multiple QoS properties in application software using middleware is presented. Our reconfigurable context-sensitive middleware (RCSM), which provides situation-awareness support to the application software, is expanded to support more QoS by using aspect-oriented software development techniques. In the expanded RCSM, each QoS is processed through a set of aspect components. The application developers specify the QoS requirements in a specification file, which is in turn compiled to configure the corresponding aspect components. Being associated with certain application objects, the QoS aspect components enforce the QoS requirements according to the specification during run-time. In this paper, security, in addition to situation-awareness, is used as an example to illustrate our approach.
6236190
Estimation of multiple directional light sources for synthesis of mixed reality images
We present a new method for the detection and estimation of multiple directional illuminants, using a single image of any object with known geometry and Lambertian reflectance. We use the resulting highly accurate estimates to modify virtually the illumination and geometry of a real scene and produce correctly illuminated mixed reality images. Our method obviates the need to modify the imaged scene by inserting calibration objects of any particular geometry, relying instead on partial knowledge of the geometry of the scene. Thus, the recovered multiple illuminants can be used both for image-based rendering and for shape reconstruction. Our method combines information both from the shading of the object and from shadows cast on the scene by the object. Initially we use a method based on shadows and a method based on shading independently. The shadow based method utilizes brightness variation inside the shadows cast by the object, whereas the shading based method utilizes brightness variation on the directly illuminated portions of the object. We demonstrate how the two sources of information complement each other in a number of occasions. We then describe an approach that integrates the two methods, with results superior to those obtained if the two methods are used separately. The resulting illumination information can be used (i) to render synthetic objects in a real photograph with correct illumination effects, and (ii) to virtually re-light the scene.
14022565
Semantic Structure Matching for Assessing Web-Service Similarity
The web-services stack of standards is designed to support the reuse and interoperation of software components on the web. A critical step in the process of developing applications based on web services is service discovery, i.e., the identification of existing web services that can potentially be used in the context of a new web application. UDDI, the standard API for publishing web-services specifications, provides a simple browsing-by-business-category mechanism for developers to review and select published services. To support programmatic service discovery, we have developed a suite of methods that utilizes both the semantics of the identifiers of WSDL descriptions and the structure of their operations, messages and data types to assess the similarity of two WSDL files. Given only a textual description of the desired service, a semantic information-retrieval method can be used to identify and order the most similar service-description files. This step assesses the similarity of the provided description of the desired service with the available services. If a (potentially partial) specification of the desired service behavior is also available, this set of likely candidates can be further refined by a semantic structure-matching step assessing the structural similarity of the desired vs. the retrieved services and the semantic similarity of their identifier. In this paper, we describe and experimentally evaluate our suite of service-similarity assessment methods.