共查询到20条相似文献,搜索用时 0 毫秒
1.
Ambra Molesini Author Vitae Alessandro Garcia Author Vitae 《Journal of Systems and Software》2010,83(5):711-722
Design of stable software architectures has increasingly been a deep challenge to software developers due to the high volatility of their concerns and respective design decisions. Architecture stability is the ability of the high-level design units to sustain their modularity properties and not succumb to modifications. Architectural aspects are new modularity units aimed at improving design stability through the modularization of otherwise crosscutting concerns. However, there is no empirical knowledge about the positive and negative influences of aspectual decompositions on architecture stability. This paper presents an exploratory analysis of the influence exerted by aspect-oriented composition mechanisms in the stability of architectural modules addressing typical crosscutting concerns, such as error handling and security. Our investigation encompassed a comparative analysis of aspectual and non-aspectual decompositions based on different architectural styles applied to an evolving multi-agent software architecture. In particular, we assessed various facets of components’ and compositions’ stability through such alternative designs of the same multi-agent system using conventional quantitative indicators. We have also investigated the key characteristics of aspectual decompositions that led to (in)stabilities being observed in the target architectural options. The evaluation focused upon a number of architecturally-relevant changes that are typically performed through real-life maintenance tasks. 相似文献
2.
张鹏飞 《计算机工程与设计》2004,25(11):1905-1907
软件构架是软件工程中的重要研究领域,对软件大型复杂系统具有重要意义。采用恰当的构架是项目成功的第1步,所以好的软件构架及其评估是系统开发的关键所在。对软件构架的基本原理和结构进行了探讨,并对评估及评估方法做出了详细评析。在软件开发过程中采用软件构架,会为提高软件质量以及降低软件成本提供有力保障。 相似文献
3.
In this paper, we present new pointcuts and primitives to Aspect-Oriented Programming (AOP) languages that are needed for systematic hardening of security concerns. The two proposed pointcuts allow to identify particular join points in a program's control-flow graph (CFG). The first one is the GAFlow, Closest Guaranteed Ancestor, which returns the closest ancestor join point to the pointcuts of interest that is on all their runtime paths. The second one is the GDFlow, Closest Guaranteed Descendant, which returns the closest child join point that can be reached by all paths starting from the pointcut of interest. The two proposed primitives are called ExportParameter and ImportParameter and are used to pass parameters between two pointcuts. They allow to analyze a program's call graph in order to determine how to change function signatures for passing the parameters associated with a given security hardening. We find these pointcuts and primitives to be necessary because they are needed to perform many security hardening practices and, to the best of our knowledge, none of the existing ones can provide their functionalities. Moreover, we show the viability and correctness of the proposed pointcuts and primitives by elaborating and implementing their algorithms and presenting the result of explanatory case studies. 相似文献
4.
软件体系结构的使用是提高软件质量、减少软件开销和促进软件生产率提高的最有效方法之一,面向Agent技术的提出为复杂分布式问题的求解找到了办法.分析了软件体系结构和软件Agent技术的主要内容,提出基于Agent的软件体系结构,阐明了基于Agent的软件体系结构的总体结构及其在大型软件开发中的应用. 相似文献
5.
Software architecture design is an interactive, complex, decision‐making process. Such a design process involves the exploration, evaluation, and composition of design alternatives. Increasingly, new computer‐aided tools are available to help designers in these complex activities. However, these tools do not know how design is actually done, in other words, by means of which design activities the final artefact was obtained. In fact, the architectural design knowledge exclusively rests in the mind of designers, and there is an urgent need to move it, as much as possible, to a computer‐supported environment that enables the capture of this type of knowledge. This contribution addresses this need by introducing a model for capturing how products under development are generated and transformed along the software architecture design process. The proposed model follows an operational perspective, where architectural design decisions are modelled by means of sequences of operations that are applied on the design products. Situation calculus is used to formally express the existence of an object in a given state of a design process. In addition, this formalism allows us expressing without ambiguities when an operation can be performed in a specific state of the design process. 相似文献
6.
7.
8.
Design and maintenance of enterprize applications is complicated due to dependencies on technical requirements of the middleware framework. Especially, porting enterprise applications to another middleware layer or even new versions thereof requires a lot of handiwork and coding, since abstraction-, transformation-, and refinement steps have to be performed. Transformations should be assisted by a tool set which facilitates the migration process from one to another middleware platform. This paper presents GREAT, a rule-based transformation framework which facilitates transformations among models on the same or different abstraction levels. The feasibility of GREAT is shown by the transformation of a real world application conforming to EJB standard 1.1 into a version which complies to EJB standard 2.0. 相似文献
9.
This paper reports on our experience with a relational approach to support the analysis of existing software architectures. The analysis options provide for visualization and view calculation. The approach has been applied for reverse engineering. It is also possible to check concrete designs against architecture-related rules. The paper surveys the theory, the tools and some of the applications developed so far. © 1998 John Wiley & Sons, Ltd. 相似文献
10.
针对目前软件工程教学中重理论轻实践的现状,结合教学实践和软件研发的实际经验,提出项目驱动的启发式教学模式。实践表明,该教学模式的应用增强了课堂的互动性,激发了学员的积极性和主动性,提高了学员的软件研发能力,教学效果取得显著提高。 相似文献
11.
为了高效管理愈来愈复杂的车辆电子、软件系统,并且在确保产品及服务质量的同时,提高成本效率,以统一建模语言(UML)和系统建模语言(SysML)为基础,参照汽车开放系统架构(AUTOSAR),提出一种基于模型驱动架构的汽车嵌入式软件开发方法,并以汽车引擎点火和敲打控制系统为例进行描述.性能分析表明,该方法缩短了汽车嵌入式软件开发周期,降低了开发成本. 相似文献
12.
《Computer Languages, Systems and Structures》2014,40(2):53-72
Smart cards are portable integrated devices that store and process data. Speed, security and portability properties enable smart cards to have a widespread usage in various fields including telecommunication, transportation and the credit card industry. However, the development of smart card applications is a difficult task due to hardware and software constraints. The necessity of the knowledge of both a very low-level communication protocol and a specific hardware causes smart card software development to be a big challenge for the developers. Written codes tend to be error-prone and hard to debug because of the limited memory resources. Hence, in this study, we introduce a model driven architecture which aims to facilitate smart card software development by both providing an easy design of smart card systems and automatic generation of the required smart card software from the system models. Differentiating from the previous work, the study in here contributes to the field by both providing various smart card metamodels in different abstraction layers and defines model-to-model transformations between the instances of these metamodels in order to support the realization of the same system on different smart card platforms. Applicability of the proposed methodology is shown for rapid and efficient application development in two major smart card frameworks: Java Card and ZeitControl Basic Card. Lessons learned during the industrial usage of the architecture are also reported in the paper. Finally, we discuss how the components of the architecture can be integrated in order to provide a domain-specific language for smart card software. 相似文献
13.
依据goalscenario coupling方法提出了一种基于概念属性的结构化目标描述与识别方法。根据上述方法获得的目标模型,在Le Metayer提出的基于图形语法的体系结构建模理论和原则基础之上,提出了一种新的、目标驱动的软件体系结构建模方法。 相似文献
14.
董剑利 《计算机工程与设计》2008,29(12)
在借鉴现代工业的组织体系、管理规范、生产流程的基础上,针对基于软件产品线体系结构的软件工程方法和开发过程进行了系统研究,提出了基于产品线体系结构而实现软件工程化生产的N-生命周期模型.该模型的建立,对研究基于软件产品线体系结构的集成化软件工程环境,进而实现软件产品的工业化生产是非常有益且重要的. 相似文献
15.
动态软件体系结构语言已成为描述复杂软件体系结构的重要工具,然而许多描述语言都是静态的,并不能对动态软件体系进行描述。为此,对经典Z描述语言进行扩展,主要通过对构件、连接件和它们的添加以及删除来达到动态演化的目的。实例分析表明了这种扩展的可行性。 相似文献
16.
Ibrahim ALSEADOON Aakash AHMAD Adel ALKHALIL Khalid SULTAN 《Frontiers of Computer Science》2021,15(2):152204
Mobile computing has fast emerged as a pervasive technology to replace the old computing paradigms with portable computation and context-aware communication. Existing software systems can be migrated (while preserving their data and logic) to mobile computing platforms that support portability, context-sensitivity, and enhanced usability. In recent years, some research and development efforts have focused on a systematic migration of existing software systems to mobile computing platforms.To investigate the research state-of-the-art on the migration of existing software systems to mobile computing platforms. We aim to analyze the progression and impacts of existing research, highlight challenges and solutions that reflect dimensions of emerging and futuristic research.We followed evidence-based software engineering (EBSE) method to conduct a systematic mapping study (SMS) of the existing research that has progressed over more than a decade (25 studies published from 1996–2017).We have derived a taxonomical classification and a holistic mapping of the existing research to investigate its progress, impacts, and potential areas of futuristic research and development.The SMS has identified three types of migration namely Static, Dynamic, and State-based Migration of existing software systems to mobile computing platforms.Migration to mobile computing platforms enables existing software systems to achieve portability, context-sensitivity, and high connectivity. However, mobile systems may face some challenges such as resource poverty, data security, and privacy. The emerging and futuristic research aims to support patterns and tool support to automate the migration process. The results of this SMS can benefit researchers and practitioners–by highlighting challenges, solutions, and tools, etc., –to conceptualize the state-ofthe- art and futuristic trends that support migration of existing software to mobile computing. 相似文献
17.
Semantic web technologies have shown their effectiveness, especially when it comes to knowledge representation, reasoning, and data integration. However, the original semantic web vision, whereby machine readable web data could be automatically actioned upon by intelligent software web agents, has yet to be realised. In order to better understand the existing technological opportunities and challenges, in this paper we examine the status quo in terms of intelligent software web agents, guided by research with respect to requirements and architectural components, coming from the agents community. We use the identified requirements to both further elaborate on the semantic web agent motivating use case scenario, and to summarise different perspectives on the requirements from the semantic web agent literature. We subsequently propose a hybrid semantic web agent architecture, and use the various components and subcomponents in order to provide a focused discussion in relation to existing semantic web standards and community activities. Finally, we highlight open research opportunities and challenges and take a broader perspective of the research by discussing the potential for intelligent software web agents as an enabling technology for emerging domains, such as digital assistants, cloud computing, and the internet of things. 相似文献
18.
As the structural and behavioral complexity of systems has increased, so has interest in reusing modules in early development
phases. Developing reusable modules and then weaving them into specific systems has been addressed by many approaches, including
plug-and-play software component technologies, aspect-oriented techniques, design patterns, superimposition, and product line
techniques. Most of these ideas are expressed in an object-oriented framework, so they reuse behaviors after dividing them
into methods that are owned by classes. In this paper, we present a crosscutting reuse approach that applies object-process
methodology (OPM). OPM, which unifies system structure and behavior in a single view, supports the notion of a process class
that does not belong to and is not encapsulated in an object class, but rather stands alone, capable of getting input objects
and producing output objects. The approach features the ability to specify modules generically and concretize them in the
target application. This is done in a three-step process: designing generic and target modules, weaving them into the system
under development, and refining the combined specification in a way that enables the individual modules to be modified after
their reuse. Rules for specifying and combining modules are defined and exemplified, showing the flexibility and benefits
of this approach.
相似文献
Shmuel KatzEmail: |
19.
Roberto Ancona 《Advanced Robotics》2017,31(13):706-715
In this work the topic of kinematic redundancy modelling and resolution for robotic mobile manipulators is considered. A set of redundancy parameters is introduced to define a general inverse kinematic procedure for mobile manipulators. Then, redundancy is treated as a non-linear optimization problem with the purpose of finding robot configurations that maximize the designed metric measures. Some strategies to design the optimization objective function are introduced in order to achieve desirable redundant behaviours, such as obstacles avoidance, mobile base motions reductions and dexterity optimization. Moreover, the robot controller has been developed following an object-oriented software architecture principle that allows to keep it general and robot independent. As a prove of reliability and generality of our approach, the same controller has been used to control several different mobile manipulators in a simulation environment, as well as a real KUKA youBot robot. 相似文献
20.
总结了近年来挖掘软件开发信息库的研究工作,主要包括研究内容和采用的数据挖掘方法,最后讨论了软件开发信息库研究的未来发展前景. 相似文献