Conference Paper

The power of modularity: the financial consequences of computer and code architecture

Authors:
To read the full-text of this research, you can request a copy directly from the author.

Abstract

OOP style requires programmers to organize their code according to objects (or nouns, using natural language as a metaphor), causing a program's actions (verbs) to become scattered during implementation. We define an Action-Oriented Identifier Graph ...

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the author.

... By default, its value is ''#'', which represents conventionally the full signature of the protected object (though without return type). 5 The deciderClass() element is used to explicitly specify the class responsible for deciding whether the access should be granted. By default, it is the class Decider. ...
... As stated by Baldwin in [5], an AO approach is of great use because of its advantages in terms of maintenance of code. To measure its benefit, e.g., we may use the Net Option Value (NOV) formula. ...
... While in OO approaches, one needs N changes in order to implement or change a crosscutting concern, NOV = Change benefit − N × Change costs, where N is the number of locations in the code where that concern is reflected. In AOP, generally, it is necessary only one change, NOV = Change benefit − 1 × Change costs, Also according to Baldwin [5], another huge benefit of AOP is reusability since the improved modularity aspects provide, make it possible for the aspect code to be reused in several different applications. ...
... Value is money and we work to create or keep that value using strategy [1]. Designs create value [1] by providing options. ...
... Value is money and we work to create or keep that value using strategy [1]. Designs create value [1] by providing options. The potential impact of a design decision is magnified in a software product line since it impacts more products than most design decisions and affects the organization over a longer time period than most design decisions. ...
Conference Paper
Full-text available
A software product line is a strategic investment for an organization. Besides the initial decision to use a product line approach other strategic decisions are made, including which variations to accommodate. In this paper we present an adaptation of an equation for computing option values. The equation can be used to understand the economic impact of adding a variation point to the product line architecture. The equation was exercised on multiple sets of hypothetical data and and produced the expected changes from one data set to another. In the future the equation will be validated with data from real projects. We describe some practical sources of values for the parameters of the equation.
Article
This article reflects on personal observations during twenty years of professional career about the ideas developed within New Institutional Economics (NIE). The general theory is analysed by studying the views of Coase, North, Williamson and Ostrom and subsequently the characteristics and specific requirements of network industries are confronted with each of the authors. Is it relevant to study network industries using the tools and ideas developed by NIE scholars? If so, what views are more relevant in the current multi-channel and multi-level reality? Do “institutions matter” for the case, and if so, in what way?
Conference Paper
Software designers frequentlynd the need to refactor existing code to improve the structure of their design. Typical examples include the application of design patterns or splitting large modules into smaller ones. The problem lies in the difficulty in evaluating the effect of such restructuring before developers implement their newly proposed design ideas. Such experimental implementation can be expensive because it may include potential con icts or cause unnecessary source code branching to occur. It can be even more expensive if the designer needs to compare multiple design alternatives. In this paper, we propose to demonstrate the possibility of simulating structural design changes based on Baldwin and Clark's modular operators. This simulation permits designers to explore the design space and validate ideas for software changes without having to implement them concretely.
Conference Paper
We propose a novel market-based approach for dynamic composite service selection based on combinatorial auctions. The combinatorial auction model that we developed allows us to incorporate service providers' and requesters' preferences in the service selection process. From the providers' perspective, the combinatorial formulation allows them to express their preferences for offering combinations of services, or bundles. Moreover, the combinatorial model has the potential to lower the overall cost to the service requester as a result of providers offering discounts for service bundles. The proposed model also enables the service requester to express their preferences for the types of bundles by defining constraints over the configuration of the composite service provisioning, and data-cohesion of the bundles. We have mapped the problem to an Integer Linear Programming formulation and performed a number of experiments to evaluate the proposed model. In addition to demonstrating the relevance and applicability of combinatorial auction models for service selection, our experiments show that the cost of the composite service provisioning decreases with having more bidders in the auction, offering more crowded bundles is more profitable for service providers, and achieving high cohesion is more expensive than low cohesion for service requesters.
Conference Paper
Full-text available
The role of design and creativity is well established in many disciplines in science, engineering and art. However, in computing science disciplines, specifically in the development of software systems and information technology, the computing educational community is struggling to include creativity and design in their teaching and research. Existing curriculum in computing science lacks the foundation necessary to systematically include these concepts in the learning experience. At Humboldt State University (HSU), as part of the National Science Foundation Science of Design (SoD) initiative, the authors have initiated a NSF funded educational and research project CNS-0614003, to build an interdisciplinary community with interest, experience and knowledge in teaching and learning creativity and design. During the fall of 2006, fifteen faculty from thirteen disciplines explored a variety of activities to facilitate the teaching and learning of creativity and design from an interdisciplinary perspective. In this paper we share the interdisciplinary curriculum developed and the results of the independent evaluation of students self assessment of teaching the course for two consecutive years.
Article
Full-text available
In this discussion paper we demonstrate the catastrophic failure property of complex system of systems by simulation and an uncertainty propagation technique. Complex uncertainty cannot manifest in complicated systems that structurally lack significant circular causal dependencies. The applicability of flexibility engineering as a technique of not only harnessing but also exploiting uncertainty in system of systems is questioned and discussed for systems under complex uncertainties. Given the rapid and unintuitive uncertainty propagation in complex systems, and the impossibility of backward propagation to determine the sources of complex uncertainty, we note that flexibility engineering must be rethought and reframed for system of systems; simply because exercising new options can 1) unintentionally and dramatically increase the structural complexity, exposing the system more dangerously to possibility of a sudden global failure, and 2) be deployed in inappropriate situations and conditions that do not necessarily lead to added value promised by deployment of adaptive solutions.
Article
The important for Security system designs are required to be flexible enough to support multiple policies. While there are some approaches for implementing several different policies, how to support different models within the same policy family has not been answered with a satisfying solution. This is partly due to the limitation of traditional techniques for designing protection mechanisms, which decompose a system into units of functionality. Unlike the implementation of a new policy, extending a design to support a policy variant involves reusing some implemented functions. With traditional programming techniques it is inevitable to modify the existing functional units directly. In terms of object-orientation, such modifications include introducing new attributes, new member functions, and new definition of existing member functions. These are threats to the good modularity necessary to a flexible design. We propose an aspect-oriented approach to address the problem of supporting different models within the same policy family and to provide flexibility in security system design. As a case study, we present an aspect-oriented design framework for CORBA Access Control subsystem that supports different role-based access control models.
ResearchGate has not been able to resolve any references for this publication.