Spelling suggestions: "subject:"8oftware architectures"" "subject:"8oftware rchitectures""
1 |
JAVA: A PARADIGM SHIFT IN TELEMETRY SOFTWARE ARCHITECTURESYang, Kent 10 1900 (has links)
International Telemetering Conference Proceedings / October 25-28, 1999 / Riviera Hotel and Convention Center, Las Vegas, Nevada / In the commercial marketplace, Java has emerged as the preeminent standard for
platform-independent application development. Many reasons for this include platform
independence, robustness, effective distribution models, security effectiveness, and a rich
set of application programming interfaces (APIs). This paper will provide insight into the
design of the Java platform as it relates to the development of telemetry systems. Specific
elements of Java will be explored to better understand how to take advantage of a Java
platform. The paper will conclude with examples showing Java's effectiveness on overall
software development and deployment, the benefits of reduced new code
implementations, and how deploying this unique software platform will change the
software paradigm in the real-time environment.
|
2 |
Architectural software patterns and maintainability: A case studyHoffman, Fredrik January 2001 (has links)
The importance of building maintainable software is being recognized in the community of software development. By developing software that is easy to maintain, the time and resources needed to perform the modifications may be decreased. This will in turn mean economical savings and increased profits. Architectural software patterns are said to promote the development of maintainable software. The aim of this project was therefore to investigate whether architectural software patterns possess this property or not. A case study was performed where two candidate architectures were compared using a method called Architectural analysis of modifiability. This method uses change scenarios and modification ratios to identify differences between candidate architectures. A system developed at Ericsson Microwave Systems AB was used for the case study. One of the candidate architectures consisted of two architectural software patterns: the Layers pattern and the Model-View-Controller pattern. The architecture analysis showed that the Layers pattern did promote maintainability whereas the Model-View-Controller pattern did not, from the basis of judgement associated with the method.
|
3 |
Architectural software patterns and maintainability: A case studyHoffman, Fredrik January 2001 (has links)
<p>The importance of building maintainable software is being recognized in the community of software development. By developing software that is easy to maintain, the time and resources needed to perform the modifications may be decreased. This will in turn mean economical savings and increased profits.</p><p>Architectural software patterns are said to promote the development of maintainable software. The aim of this project was therefore to investigate whether architectural software patterns possess this property or not. A case study was performed where two candidate architectures were compared using a method called Architectural analysis of modifiability. This method uses change scenarios and modification ratios to identify differences between candidate architectures. A system developed at Ericsson Microwave Systems AB was used for the case study.</p><p>One of the candidate architectures consisted of two architectural software patterns: the Layers pattern and the Model-View-Controller pattern. The architecture analysis showed that the Layers pattern did promote maintainability whereas the Model-View-Controller pattern did not, from the basis of judgement associated with the method.</p>
|
4 |
Composition of Software ArchitecturesKloukinas, Christos 12 February 2002 (has links) (PDF)
Les systèmes informatiques deviennent de plus en plus complexes et doivent offrir un nombre croissant de propriétés non fonctionnelles, comme la fiabilité, la disponibilité, la sécurité, etc.. De telles propriétés sont habituellement fournies au moyen d'un intergiciel qui se situe entre le matériel (et le système d'exploitation) et le niveau applicatif, masquant ainsi les spécificités du système sous-jacent et permettant à des applications d'être utilisées avec différentes infrastructures. Cependant, à mesure que les exigences de propriétés non fonctionnelles augmentent, les architectes système se trouvent confrontés au cas où aucun intergiciel disponible ne fournit toutes les propriétés non fonctionnelles visées. Ils doivent alors développer l'infrastructure intergicielle nécessaire à partir de rien, voire essayer de réutiliser les multiples infrastructures intergicielles existantes, où chacune fournit certaines des propriétés exigées. Dans cette thèse, nous présentons une méthode pour composer automatiquement des architectures d'intergiciels, afin d'obtenir une architecture qui fournit les propriétés non fonctionnelles visées. Pour arriver à l'automatisation de la composition, nous montrons d'abord comment on peut reformuler ce problème sous la forme d'un problème de model-checking. Cette reformulation donne une définition formelle au problème de la composition et nous permet de réutiliser les méthodes et outils qui ont été développés pour le model-checking. Nous présentons ensuite des améliorations à notre méthode de base, utilisées pour éviter le problème d'explosion d'états dans le cas de la composition d'architectures de grande taille. Nous montrons comment il est possible d'exploiter l'information structurelle, présente dans les architectures d'intergiciels que nous souhaitons composer, afin de réduire l'espace de recherche analysé. Ceci nous permet d'obtenir une méthode pour composer les architectures d'intergiciels qui peut être automatisée et donc utilisée en pratique. Nous proposons ainsi une solution à l'analyse systématique de différentes compositions et offrons un outil pour aider la construction de systèmes de qualité.
|
5 |
Towards the Application of Software Architectures in Multi-Agent SystemsGarcia-Martinez, Salvador 07 1900 (has links)
<p> Software Architecture is a concept that arose during the last two decades as a consequence of the need for a structured design at an early stage. Software Architecture is defined as a pattern of interconnected components satisfying some structural rule. Software architectures are widely used in many types of systems; Multi-Agent Systems should not be an exception. Multi-Agent Systems have emerged as a design paradigm for large and distributed systems. They are composed of autonomous elements that work together in order to pursue a common goal. They are mostly used in Electronic Commerce, Human-Computer
Interfaces, and so on.</p> <p> In this research, we investigate the state of the art of Software Architectures in the Multi-Agent Systems field, showing that, generally Multi-Agent Systems do no use the software architecture concept properly and, when they do, they do not
show specific architectures for Multi-Agent Systems. The approach followed is based on the analysis of six case studies, which are implemented applications that have been published in some of the most important conferences in the area. Additionally we show that, based on the initial design of each case and existing architectural patterns, it is possible to impose a software architecture on each case.</p> <p> Furthermore, we analyze the way that the term "software architecture" is used in the Multi-Agent Systems literature, showing that, usually, it refers to abstract architectures proposed in standards and frameworks or to an initial design in a system. In addition we clarify related concepts, such as reference architecture, reference models, architectural patterns and design patterns. Finally, we do an exhaustive comparison of the case studies, which aims to highlight commonalities and differences. The objective of this comparison is to analyze if they share a similar architecture that can be reused in more cases and to show how specific properties of Multi-Agent Systems affect in the design of an architecture.</p> / Thesis / Master of Science (MSc)
|
6 |
A component framework for autonomous mobile robotsOrebäck, Anders January 2004 (has links)
The major problem of robotics research today is that there is a barrier to entry into robotics research. Robot system software is complex and a researcher that wishes to concentrate on one particular problem often needs to learn about details, dependencies and intricacies of the complete system. This is because a robot system needs several different modules that need to communicate and execute in parallel. Today there is not much controlled comparisons of algorithms and solutions for a given task, which is the standard scientific method of other sciences. There is also very little sharing between groups and projects, requiring code to be written from scratch over and over again. This thesis proposes a general framework for robotics. By examining successful systems and architectures of past and present, yields a number of key properties. Some of these are ease of use, modularity, portability and efficiency. Even though there is much consensus on that the hybrid deliberate/reactive is the best architectural model that the community has produced so far, a framework should not stipulate a specific architecture. Instead the framework should enable the building of different architectures. Such a scheme implies that the modules are seen as common peers and not divided into clients and servers or forced into a set layering. Using a standardized middleware such as CORBA, efficient communication can be carried out between different platforms and languages. Middleware also provides network transparency which is valuable in distributed systems. Component-based Software Engineering (CBSE) is an approach that could solve many of the aforementioned problems. It enforces modularity which helps to manage complexity. Components can be developed in isolation, since algorithms are encapsulated in components where only the interfaces need to be known by other users. A complete system can be created by assembling components from different sources. Comparisons and sharing can greatly benefit from CBSE. A component-based framework called ORCA has been implemented with the following characteristics. All communication is carried out be either of three communication patterns, query, send and push. Communication is done using CORBA, although most of the CORBA code is hidden for the developer and can in the future be replaced by other mechanisms. Objects are transported between components in the form of the CORBA valuetype. A component model is specified that among other things include support for a state-machine. This also handles initialization and sets up communication. Configuration is achieved by the presence of an XML-file per component. A hardware abstraction scheme is specified that basically route the communication patterns right down to the hardware level. The framework has been verified by the implementation of a number of working systems.
|
7 |
Android Architecture Comparison: MVP vs. VIPERHumeniuk, Vladyslav January 2019 (has links)
Android application development has been of interest since the first Android smartphone was released. Applications are constantly getting more complex as well as smartphone hardware is getting better. New ways of developing Android applications are developed with time. There is Model View Presenter architecture that is the most used for android applications now and new View InteractorPresenter Entity Router architecture that is becoming more popular. But there is no empirical data to compare these architectures to understand what architecture will fit better for developing new applications. This thesis aims to compare the MVP and the VIPER android architectures using a few important metrics like maintainability, modifiability, testability, and performance. Results will answer what architecture is better for developing different types of projects. VIPERarchitecture showed better performance results and maintenance metrics comparison shows that both architectures have advantages and disadvantages.
|
8 |
Eliciting correlations between components selection decision cases in software architectingAhmed, Mohamed Ali January 2019 (has links)
A key factor of software architecting is the decision-making process. All phases of software development contain some kind of decision-making activities. However, the software architecture decision process is the most challenging part. To support the decision-making process, a research project named ORION provided a knowledge repository that contains a collection of decision cases. To utilize the collected data in an efficient way, eliciting correlations between decision cases needs to be automated. The objective of this thesis is to select appropriate method(s) for automatically detecting correlations between decision cases. To do this, an experiment was conducted using a dataset of collected decision cases that are based on a taxonomy called GRADE. The dataset is stored in the Neo4j graph database. The Neo4j platform provides a library of graph algorithms which allow to analyse a number of relationships between connected data. In this experiment, five Similarity algorithms are used to find correlated decisions, then the algorithms are analysed to determine whether the they would help improve decision-making. From the results, it was concluded that three of the algorithms can be used as a source of support for decision-making processes, while the other two need further analyses to determine if they provide any support.
|
9 |
protoBOM : Framework that semi-automatically generates Decision Support Systems based on Software Product LinesGomez Lacruz, Maria January 2008 (has links)
<p>This thesis presents the development of a prototype of the Baseline Oriented Modeling</p><p>(BOM) approach, called protoBOM.</p><p>BOM is a framework that semi-automatically generates Decision Support Systems in a</p><p>specific domain, based on Software Product Lines.</p><p>protoBOM semi-automatically generates applications as PRISMA architectural models by using Model-Driven Architecture and Software Product Line techniques. These models are automatically compiled and the object code (C#, in .NET) is generated obtaining an executable application.</p><p>In protoBOM, the user constructs Decision Support Systems in a simpler way by using the</p><p>ontologies of the diagnosis and the application domains by means of Domain Specific Languages. The interfaces will be closer to the problem domain, which will facilitate user interaction in a manner simple and intuitive.</p>
|
10 |
A component framework for autonomous mobile robotsOrebäck, Anders January 2004 (has links)
<p>The major problem of robotics research today is that there is a barrier to entry into robotics research. Robot system software is complex and a researcher that wishes to concentrate on one particular problem often needs to learn about details, dependencies and intricacies of the complete system. This is because a robot system needs several different modules that need to communicate and execute in parallel.</p><p>Today there is not much controlled comparisons of algorithms and solutions for a given task, which is the standard scientific method of other sciences. There is also very little sharing between groups and projects, requiring code to be written from scratch over and over again.</p><p>This thesis proposes a general framework for robotics. By examining successful systems and architectures of past and present, yields a number of key properties. Some of these are ease of use, modularity, portability and efficiency. Even though there is much consensus on that the hybrid deliberate/reactive is the best architectural model that the community has produced so far, a framework should not stipulate a specific architecture. Instead the framework should enable the building of different architectures. Such a scheme implies that the modules are seen as common peers and not divided into clients and servers or forced into a set layering.</p><p>Using a standardized middleware such as CORBA, efficient communication can be carried out between different platforms and languages. Middleware also provides network transparency which is valuable in distributed systems. Component-based Software Engineering (CBSE) is an approach that could solve many of the aforementioned problems. It enforces modularity which helps to manage complexity. Components can be developed in isolation, since algorithms are encapsulated in components where only the interfaces need to be known by other users. A complete system can be created by assembling components from different sources.</p><p>Comparisons and sharing can greatly benefit from CBSE. A component-based framework called ORCA has been implemented with the following characteristics. All communication is carried out be either of three communication patterns, query, send and push. Communication is done using CORBA, although most of the CORBA code is hidden for the developer and can in the future be replaced by other mechanisms. Objects are transported between components in the form of the CORBA valuetype.</p><p>A component model is specified that among other things include support for a state-machine. This also handles initialization and sets up communication. Configuration is achieved by the presence of an XML-file per component. A hardware abstraction scheme is specified that basically route the communication patterns right down to the hardware level.</p><p>The framework has been verified by the implementation of a number of working systems. </p>
|
Page generated in 0.0742 seconds