首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
BackgroundThe derivation of products from a software product line is a time consuming and expensive activity. Despite recognition that an effective process could alleviate many of the difficulties associated with product derivation, existing approaches have different scope, emphasise different aspects of the derivation process and are frequently too specialised to serve as a general solution.ObjectiveTo define a systematic process that will provide a structured approach to the derivation of products from a software product line, based on a set of tasks, roles and artefacts.MethodThrough a series of research stages using sources in industry and academia, this research has developed a Process Model for Product Derivation (Pro-PD). We document the evidence for the construction of Pro-PD and the design decisions taken. We evaluate Pro-PD through comparison with prominent existing approaches and standards.ResultsThis research presents a Process Model for Product Derivation (Pro-PD). Pro-PD describes the tasks, roles and work artefacts used to derive products from a software product line.ConclusionIn response to a need for methodological support, we developed Pro-PD (Process Model for Product Derivation). Pro-PD was iteratively developed and evaluated through four research stages. Our research is a first step toward an evidence-based methodology for product derivation and a starting point for the definition of a product derivation approach.  相似文献   

2.
A product family with a platform paradigm is expected to increase the flexibility of the manufacturing process to market changes, and to take away market share from competitors that develop one product at a time. The recently developed Comprehensive Product Platform Planning (CP3) method (i) presents a generalized model, (ii) allows the formation of product sub-families, and (iii) provides simultaneous identification and quantification of platform/scaling design variables. The CP3 model is founded on a generalized commonality matrix that represents the platform planning process as a mixed-binary nonlinear programming (MBNLP) problem. This MBNLP problem is high-dimensional and multimodal, owing to the commonality constraint. In this paper, the complex MBNLP model is reduced to a tractable MINLP problem without resorting to limiting approximations; along the reduction process, redundancies in the original commonality matrix are also favorably addressed. To promote a better understanding of the importance of a reduced MINLP, this paper also provides a uniquely comprehensive formulation of the number of possible platform combinations (or commonality combinations). In addition, a new commonality index (CI) is developed to simultaneously account for the inter-product commonalities (based on design variable sharing) and the overlap between groups of products sharing different platform variables. To maximize the performance of the product family and the commonality index yielded by the new CP3 model, we apply an advanced mixed-discrete Particle Swarm Optimization algorithm. The potential of the new CP3 framework is illustrated through its application to design scalable families of electric motors. Maximizing the new CI produced families with more commonality among similar sets of motor variants (compared to maximizing the conventional CI), which can be a beneficial platform attribute for a wide range of product families.  相似文献   

3.
ContextThe paper addresses the use of a Software Product Line approach in the context of developing software for a high-integrity, regulated domain such as civil aerospace. The success of a Software Product Line approach must be judged on whether useful products can be developed more effectively (lower cost, reduced schedule) than with traditional single-system approaches. When developing products for regulated domains, the usefulness of the product is critically dependent on the ability of the development process to provide approval evidence for scrutiny by the regulating authority.ObjectiveThe objective of the work described is to propose a framework for arguing that a product instantiated using a Software Product Line approach can be approved and used within a regulated domain, such that the development cost of that product would be less than if it had been developed in isolation.MethodThe paper identifies and surveys the issues relating the adoption of Software Product Lines as currently understood (including related technologies such as feature modelling, component-based development and model transformation) when applied to high-integrity software development. We develop an argument framework using Goal Structuring Notation to structure the claims made and the evidence required to support the approval of an instantiated product in such domains. Any unsubstantiated claims or missing/sub-standard evidence is identified, and we propose potential approaches or pose research questions to help address this.ResultsThe paper provides an argument framework supporting the use of a Software Product Line approach within a high-integrity regulated domain. It shows how lifecycle evidence can be collected, managed and used to credibly support a regulatory approval process, and provides a detailed example showing how claims regarding model transformation may be supported. Any attempt to use a Software Product Line approach in a regulated domain will need to provide evidence to support their approach in accordance with the argument outlined in the paper.ConclusionProduct Line practices may complicate the generation of convincing evidence for approval of instantiated products, but it is possible to define a credible Trusted Product Line approach.  相似文献   

4.
A successful product family design method should achieve an optimal tradeoff among a set of conflicting objectives, which involves maximizing commonality across the family of products with the prerequisite of satisfying customers’ performance requirements. Optimization based methods are experiencing new found use in product family design to resolve the inherent tradeoff between commonality and distinctiveness that exists within a product family. This paper presents and develops a 2-level chromosome structured genetic algorithm (2LCGA) to simultaneously determine the optimal settings for the product platform and corresponding family of products, by automatically varying the amount of platform commonality within the product family during a single optimization process. The single-stage approach can yield improvements in the overall performance of the product family compared with two-stage approaches, in which the first stage involves determining the best settings for the platform variables and values of unique variables are found for each product in the second stage. The augmented scope of 2LCGA allows multiple platforms to be considered during product family optimization, offering opportunities for superior overall design by more efficacious tradeoffs between commonality and performance. The effectiveness of the proposed approach is demonstrated through the design of a family of universal electric motors and comparison against previous work.  相似文献   

5.
ABSTRACT

Knowledge and experience are important requirements for product development. The aim of this paper is to propose a systematic approach for industrial product development. This approach uses smart knowledge management system comprising of set of experience knowledge structure and decisional DNA (DDNA) along with virtual engineering tools (virtual engineering object, virtual engineering process, and virtual engineering factory). This system provides a new direction to researchers working on product development, especially designers and manufacturers. It will reduce their communication gap by allowing them to work on the same platform. The proposed system adopts an early consideration of manufacturing issues. Therefore, it can shorten product development cycle time, minimize overall development cost, and ensure a smooth transition into production. The proposed system is dynamic in nature because it updates itself after every time a new decision related to product development activity is made. Product development process can be performed systematically and efficiently using this system as it stores knowledge of experiences of different activities.  相似文献   

6.
Product platform design through sensitivity analysis and cluster analysis   总被引:5,自引:0,他引:5  
Scale-based product platform design consists of platform configuration to decide which variables are shared among which product variants, and selection of the optimal values for platform (shared) and non-platform variables for all product variants. The configuration step plays a vital role in determining two important aspects of a product family: efficiency (cost savings due to commonality) and effectiveness (capability to satisfy performance requirements). Many existing product platform design methods ignore it, assuming a given platform configuration. Most approaches, whether or not they consider the configuration step, are single-platform methods, in which design variables are either shared across all product variants or not shared at all. In multiple-platform design, design variables may be shared among variants in any possible combination of subsets, offering opportunities for superior overall design but presenting a more difficult computational problem. In this work, sensitivity analysis and cluster analysis are used to improve both efficiency and effectiveness of a scale-based product family through multiple-platform product family design. Sensitivity analysis is performed on each design variable to help select candidate platform design variables and to provide guidance for cluster analysis. Cluster analysis, using performance loss due to commonization as the clustering criterion, is employed to determine platform configuration. An illustrative example is used to demonstrate the merits of the proposed method, and the results are compared with existing results from the literature.  相似文献   

7.
Product platform design (PFD) has been recognized as an effective means to satisfy diverse market niches while maintaining the economies of scale and scope. Numerous optimization-based approaches have been proposed to help resolve the tradeoff between platform commonality and the ability to achieve distinct performance targets for each variant. In this study, we propose a two-stage multiobjective optimization-based platform design methodology (TMOPDM) for solving the product family problem using a multiobjective genetic algorithm. In the first stage, the common product platform is identified using a nondominated sorting genetic algorithm II (NSGA-II); In the second stage, each individual product is designed around the common platform such that the functional requirements of the product are best satisfied. The design of a family of traction machine is used as an example to benchmark the effectiveness of the proposed approach against previous approachs.  相似文献   

8.
ContextService-Orientation (SO) is a rapidly emerging paradigm for the design and development of adaptive and dynamic software systems. Software Product Line Engineering (SPLE) has also gained attention as a promising and successful software reuse development paradigm over the last decade and proven to provide effective solutions to deal with managing the growing complexity of software systems.ObjectiveThis study aims at characterizing and identifying the existing research on employing and leveraging SO and SPLE.MethodWe conducted a systematic mapping study to identify and analyze related literature. We identified 81 primary studies, dated from 2000–2011 and classified them with respect to research focus, types of research and contribution.ResultThe mapping synthesizes the available evidence about combining the synergy points and integration of SO and SPLE. The analysis shows that the majority of studies focus on service variability modeling and adaptive systems by employing SPLE principles and approaches.In particular, SPLE approaches, especially feature-oriented approaches for variability modeling, have been applied to the design and development of service-oriented systems. While SO is employed in software product line contexts for the realization of product lines to reconcile the flexibility, scalability and dynamism in product derivations thereby creating dynamic software product lines.ConclusionOur study summarizes and characterizes the SO and SPLE topics researchers have investigated over the past decade and identifies promising research directions as due to the synergy generated by integrating methods and techniques from these two areas.  相似文献   

9.
ContextThe reuse of software has been a research topic for more than 50 years. Throughout that time, many approaches, tools and proposed techniques have reached maturity. However, it is not yet a widespread practice and some issues need to be further investigated. The latest study on software reuse trends dates back to 2005 and we think that it should be updated.ObjectiveTo identify the current trends in software reuse research.MethodA tertiary study based on systematic secondary studies published up to July 2018.ResultsWe identified 4,423 works related to software reuse, from which 3,102 were filtered by selection criteria and quality assessment to produce a final set of 56 relevant studies. We identified 30 current research topics and 127 proposals for future work, grouped into three broad categories: Software Product Lines, Other reuse approaches and General reuse topics.ConclusionsFrequently reported topics include: Requirements and Testing in the category of Lifecycle phases for Software Product Lines, and Systematic reuse for decision making in the category of General Reuse. The most mentioned future work proposals were Requirements, and Evolution and Variability management for Software Product Lines, and Systematic reuse for decision making. The identified trends, based on future work proposals, demonstrate that software reuse is still an interesting area for research. Researchers can use these trends as a guide to lead their future projects.  相似文献   

10.
Product family optimization involves not only specifying the platform from which the individual product variants will be derived, but also optimizing the platform design and the individual variants. Typically these steps are performed separately, but we propose an efficient decomposed multiobjective genetic algorithm to jointly determine optimal (1) platform selection, (2) platform design, and (3) variant design in product family optimization. The approach addresses limitations of prior restrictive component sharing definitions by introducing a generalized two-dimensional commonality chromosome to enable sharing components among subsets of variants. To solve the resulting high dimensional problem in a single stage efficiently, we exploit the problem structure by decomposing it into a two-level genetic algorithm, where the upper level determines the optimal platform configuration while each lower level optimizes one of the individual variants. The decomposed approach improves scalability of the all-in-one problem dramatically, providing a practical tool for optimizing families with more variants. The proposed approach is demonstrated by optimizing a family of electric motors. Results indicate that (1) decomposition results in improved solutions under comparable computational cost and (2) generalized commonality produces families with increased component sharing under the same level of performance. A preliminary version of this paper was presented at the 2007 AIAA Multidisciplinary Design Optimization Specialists Conference.  相似文献   

11.
ContextIn recent years, architectural design decisions are becoming more and more common for documenting software architectures. Rather than describing the structure of software systems, architectural decisions capture the design rationale and – often reusable – architectural knowledge. Many approaches and tools have been proposed in the literature to support architectural decision making and documentation (for instance, based on models, ontologies, or templates). In this context, the capturing, organization, and effective reuse of architectural knowledge has gained a lot of attention.ObjectiveHowever, there is little empirical evidence about the supportive effect of reusable architectural knowledge on the effectiveness and efficiency of architectural decision making.MethodTo investigate these aspects, we conducted two separate controlled experiments with software architecture students in which we tested the supportive effect of reusable decision models in decision making and documentation.ResultsOur results show that the use of reusable decision models can significantly increase both the efficiency and the effectiveness of novice architects.ConclusionWe can report, that our findings are in line with similar studies and support the claims regarding reusable architectural design decisions in principle.  相似文献   

12.
ContextThe main part of software engineering methods, tools and technologies has developed around projects as the central organisational form of software development. A project organisation depends on clear bounds regarding scope, participants, development effort and lead-time. What happens when these conditions are not given? The article claims that this is the case for software product specific ecosystems. As software is increasingly developed, adopted and deployed in the form of customisable and configurable products, software engineering as a discipline needs to take on the challenge to support software ecosystems.ObjectiveThe article provides a holistic understanding of the observed and reported practices as a starting point to device specific support for the development in software ecosystems.MethodA qualitative interview study was designed based on previous long-term ethnographical inspired research.ResultsThe analysis results in a set of common features of product development and evolution despite differences in size, kind of software and business models. Design is distributed and needs to be coordinated across heterogeneous design constituencies that, together with the software, build a product specific socio-technical ecosystem. The technical design has to support the deference of part of the development not only to 3rd-party developers but also to local designers tailoring the software in the use organisation. The technical interfaces that separate the work of different design constituencies are contested and need to be maintained permanently. Development takes place as cycles within cycles – overlaying development cycles with different rhythms to accommodate different evolution drivers.ConclusionThe reported practices challenge some of the very core assumptions of traditional software engineering, but makes perfect sense, considering that the frame of reference for product development is not a project but continuous innovation across the respective ecosystem. The article provides a number of concrete points for further research.  相似文献   

13.
Total cost is one of the most important factors for a heavy equipment product purchase decision. However, the different cost views and perspectives of performance expectations between the different involved stakeholders may cause customer relation problems between the manufacturers and customers. Beginning with the conventional manufacturers’ cost view, this paper presents the necessity and importance of expanding the heavy equipment manufacturers’ cost scope to include the post-manufacturing customer stage of their products. Then, this paper narrates a general mathematics Post-Manufacturing Product Cost (PMPC) model to analyze the total costs of heavy equipment in its utilization stage. A major emphasis of the PMPC model is placed on the strategy of improving the manufacturers product cost management and the strategy of customers purchasing decisions cost management and their interdependencies as related to their specific different perspectives on the product utilization patterns.  相似文献   

14.
ContextToday, many software development organizations struggle to establish measurement programs to monitor their projects, products and units. After overcoming the initial threshold of establishing the measurement program organizations stand before the questions of which measures should be collected in order to lead to actions or at least effectively trigger decision processes.ObjectiveThe objective of this paper is to investigate how to use measures in an effective way in decision processes. This dependency is examined through a case study – Ericsson in Sweden. Two models of these dependencies are recognized a priori – metrics-push and metric-pull – and in the study the models are used to describe how measures affect decisions and vice versa.MethodThe research method is a case study of the measurement program of one of the product development units of Ericsson in Sweden. The participants are carefully selected from the management teams at different levels of organizations. The objects are measures and decisions at these management levels. The instruments are interviews and observations. The results obtained at Ericsson are validated through interviews at another company – RUAG Space.ResultsThe results show that effective use of measures as evidence for decision processes does not require a large number of measures (ca. 20 at the top management level). It was found that there are four types of measures which are used in different ways in the context of decision formulation and implementation (which we call decision-measures dependency model). The critical aspects of effective measures in decision-making context are completeness, reliability and providing early warnings. It was also found that the time between the decision and when its results can be observed via measures (length of the feedback loop) is a crucial aspect determining at which organizational level a measure should be placed.ConclusionsAfter overcoming the initial threshold of establishing measurement programs the organizations demand non-functional properties from the measures. These non-functional properties like completeness, providing early-warning or trust determine whether decision processes are triggered by measures or not.  相似文献   

15.
With highly fragmented market and increased competition, platform-based product family design has been recognized as an effective method to construct a product line that satisfies diverse customer’s demands while aiming to keep design and production cost-effective. The success of the resulting product family often relies on properly resolving the inherent tradeoff between commonality across the family and performance loss. In this paper, a systematic multi-platforming product family approach is proposed to design a scale-based product family. In the light of the basic premise that increased commonality implies enhanced manufacturing efficiency, we present an effective platform decision strategy to quantify family design configuration using a commonality index that couples design varieties with production variation. Meanwhile, unlike many existing methods that assume a single given platform configuration, the proposed method addresses the multi-platforming configuration across the family, and can generate alternative product family solutions with different levels of commonality. A modified genetic algorithm is developed to solve the aggregated multiobjective optimization problem and an industrial example of a planetary gear train for drills is given to demonstrate the proposed method.  相似文献   

16.
ContextExperience curve is a well-known concept in management and education science, which explains the phenomenon of increased worker efficiency with repetitive production of a good or service.ObjectiveWe aim to analyze the impact of the experience curve effect on the Return on Investment (ROI) in the software product line engineering (SPLE) process.MethodWe first present the results of a systematic literature review (SLR) to explicitly depict the studies that have considered the impact of experience curve effect on software development in general. Subsequently, based on the results of the SLR, the experience curve effect models in the literature, and the SPLE cost models, we define an approach for extending the cost models with the experience curve effect. Finally, we discuss the application of the refined cost models in a real industrial context.ResultsThe SLR resulted in 15 primary studies which confirm the impact of experience curve effect on software development in general but the experience curve effect in the adoption of SPLE got less attention. The analytical discussion of the cost models and the application of the refined SPLE cost models in the industrial context showed a clear impact of the experience curve effect on the time-to-market, cost of development and ROI in the SPLE adoption process.ConclusionsThe proposed analysis with the newly defined cost models for SPLE adoption provides a more precise analysis tool for the management, and as such helps to support a better decision making.  相似文献   

17.
ContextA Software Product Line is a set of software systems that are built from a common set of features. These systems are developed in a prescribed way and they can be adapted to fit the needs of customers. Feature models specify the properties of the systems that are meaningful to customers. A semantics that models the feature level has the potential to support the automatic analysis of entire software product lines.ObjectiveThe objective of this paper is to define a formal framework for Software Product Lines. This framework needs to be general enough to provide a formal semantics for existing frameworks like FODA (Feature Oriented Domain Analysis), but also to be easily adaptable to new problems.MethodWe define an algebraic language, called SPLA, to describe Software Product Lines. We provide the semantics for the algebra in three different ways. The approach followed to give the semantics is inspired by the semantics of process algebras. First we define an operational semantics, next a denotational semantics, and finally an axiomatic semantics. We also have defined a representation of the algebra into propositional logic.ResultsWe prove that the three semantics are equivalent. We also show how FODA diagrams can be automatically translated into SPLA. Furthermore, we have developed our tool, called AT, that implements the formal framework presented in this paper. This tool uses a SAT-solver to check the satisfiability of an SPL.ConclusionThis paper defines a general formal framework for software product lines. We have defined three different semantics that are equivalent; this means that depending on the context we can choose the most convenient approach: operational, denotational or axiomatic. The framework is flexible enough because it is closely related to process algebras. Process algebras are a well-known paradigm for which many extensions have been defined.  相似文献   

18.
Software Product Lines is a contemporary approach to software development that exploits the similarities and differences within a family of systems in a particular domain of interest in order to provide a common infrastructure for deriving members of this family in a timely fashion, with high-quality standards, and at lower costs.In Software Product Lines, feature-based product configuration is the process of selecting the desired features for a given software product from a repository of features called a feature model. This process is usually carried out collaboratively by people with distinct skills and interests called stakeholders. Collaboration benefits stakeholders by allowing them to directly intervene in the configuration process. However, collaboration also raises an important side effect, i.e., the need of stakeholders to cope with decision conflicts. Conflicts arise when decisions that are locally consistent cannot be applied globally because they violate one or more constraints in the feature model.Unfortunately, current product configuration systems are typically single-user-based in the sense that they do not provide means to coordinate concurrent decision-making on the feature model. As a consequence, configuration is carried out by a single person that is in charge of representing the interests of all stakeholders and managing decision conflicts on their own. This results in an error-prone and time-consuming process that requires past decisions to be revisited continuously either to correct misinterpreted stakeholder requirements or to handle decision conflicts. Yet another challenging issue related to configuration problems is the typically high computational cost of configuration algorithms. In fact, these algorithms frequently fall into the category of NP-hard and thus can become intractable in practice.In this paper, our goal is two-fold. First, we revisit our work on Collaborative Product Configuration (CPC) in which we proposed an approach to describe and validate collaborative configuration scenarios. We discuss how collaborative configuration can be described in terms of a workflow-like plan that safely guides stakeholders during the configuration process. Second, we propose a preliminary set of reasoning algorithms tailored to the feature modelling domain that can be used to provide automated support for product configuration. In addition, we compare empirically the performance of the proposed algorithms to that of a general-purpose solution. We hope that the insights provided in this paper will encourage other researchers to develop new algorithms in the near future.  相似文献   

19.
ContextEmerging multicores and clusters of multicores that may operate in parallel have set a new challenge – development of massively parallel software composed of thousands of loosely coupled or even completely independent threads/processes, such as MapReduce and Java 3.0 workers, or Erlang processes, respectively. Testing and verification is a critical phase in the development of such software products.ObjectiveGenerating test cases based on operational profiles and certifying declared operational reliability figure of the given software product is a well-established process for the sequential type of software. This paper proposes an adaptation of that process for a class of massively parallel software – large-scale task trees.MethodThe proposed method uses statistical usage testing and operational reliability estimation based on operational profiles and novel test suite quality indicators, namely the percentage of different task trees and the percentage of different paths.ResultsAs an example, the proposed method is applied to operational reliability certification of a parallel software infrastructure named the TaskTreeExecutor. The paper proposes an algorithm for generating random task trees to enable that application. Test runs in the experiments involved hundreds and thousands of Win32/Linux threads thus demonstrating scalability of the proposed approach. For practitioners, the most useful result presented is the method for determining the number of task trees and the number of paths, which are needed to certify the given operational reliability of a software product. The practitioners may also use the proposed coverage metrics to measure the quality of automatically generated test suite.ConclusionThis paper provides a useful solution for the test case generation that enables the operational reliability certification process for a class of massively parallel software called the large-scale task trees. The usefulness of this solution was demonstrated by a case study – operational reliability certification of the real parallel software product.  相似文献   

20.
Faster product development is a major goal for companies in competitive markets. Product platform architectures support planning for addressing diverse markets and fulfilling future market desires. Applying standardization or modularization on product platform components leverages current product design effort across future products. This work introduces a method—SMDP (standardization and modularization driven by process effort)—for focusing engineering effort when applying standardization or modularization on product platform components. SMDP calculates the total design effort from current to future generations of the platform following standardization or modularization of components. By comparing the total design cost of different simulations, we can direct the design team to standardization or modularization opportunities. The contribution of this work is in using an estimation of design effort as the basis for decision in contrast to commonly used static measures of components' interactions. Such a computational approach allows conducting sensitivity studies that address the subjective nature of various estimations needed for exercising SMDP. SMDP is illustrated in a product platform design of an external-drum plate-setter for the digital prepress printing market.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号