Abstract - One increasing trend in software development is the need to develop similar software products in bulk instead of just a single individual product. Software Product Line offers a solution to this challenging problem. Software product lines enable reusability driven by common requirements of the family of similar software systems. In this paper, we discuss the software product line (SPL) by providing a three dimensional evolution of a SPL, describe two approaches for SPL evolution: Kaizen and Feature Separation approach. Then we provide a comparative analysis between these two different approaches and also review the advantages and disadvantages of SPL from various perspectives.
Index Terms - Software Product Line, Core Asset, Software Evolution, Kaizen approach, Feature Separation approach
1. Introduction
A traditional software development process consists of two activities: development and maintenance. Any changes to the software after the product is released constitute maintenance. This may include removing the defects, adding new features or updating the existing features based on the customer feedback. But in the world of evolving technologies, this model doesn’t seem to fit for two main reasons: a) The Developers have to perform maintenance activities before the product is released in order to cope with the new technologies and changing customer requirements. b) Software reuse is not possible with the traditional development approach. In most of cases the
Thank you Roger for the introduction and for giving me the opportunity of becoming the VP of Operations for Health and Financial Services. I look forward to working with all of you in the
The preferred methodologies for managing a software’s lifecycle are a major factor in deciding how a firm reacts to market demands. The major SDLC frameworks followed are the waterfall model, Agile methodology (scrum) and Kanban. We will discuss this answer
As the world became more and more dependent on technology with each passing day, software automatically became an important organ for development. Since software is needed almost everywhere today, its development is a highly intelligent and precise process, involving various steps. Known as software development life cycle, these steps include planning, analysis, design, development & implementation, testing and maintenance. These steps go on to create the perfect software for clients. ”
The Software Management Plan addresses all three design efforts. The following software life-cycle products will be produced during the design
The generative software development process might be applied to an organizations development process to quickly automate the system and create a streamline of applications that work and can be integrated without several phases to follow before implementation can occur. This can be used for
In this case, the final product which is a ……. software must be available on 15/1/2016, at least, it has been mentioned that the final product will have been made by integrated three types of software products which are Alpha, Beta, Gamma, and Delta. Therefore, Time is a key element in this project.
So far, no relevant or comparable data on time and cost savings due to the use of the sliced V-model compared to the traditional way of creating documentation has been produced. Further research work is
The concept of having re-usable software and hardware components which can be used for product developments have been in vogue for quite some time but in form of frameworks conforming to different standards which need good learning time from their users perspective.
The most important strength is their strong market position in the database domain. They have a strong research and development department capable of developing world class software. The acquisition of various companies in the areas of database, middleware and application helped them to have the best of the breed software product suite. Their management team is very effective and strong. Their products are well accepted by the market due to their robustness and quality. They have the best enterprise database software in the market with a strong market share. This helped them to be a monopolist in the enterprise database market. They have strong pricing power for initial license and maintenance tasks. They invest heavily for innovation and working hard to improve their cloud presence. Their worldwide presence and their geographical diversification offers them competitive advantage by covering international market. Oracle technology is used by large enterprise firms to small firms as system integrators, which makes Oracle software a critical component for enterprise deployments. Their balance sheet is strong and acquired companies as part of expansion strategy. Their software product line support horizontal and vertical scaling requirements. Their comprehensive software solutions portfolio makes them a good supplier of software programs for major firms. They have strong services group. (Wikinvest.com, 2015)
Software reusability is not just about variation management of software features, it delivers framework governing the development and distribution lifecycle of all the variation of product portfolio and amalgamation of system components that makes up each product. It eventually
We can divert feature effort by delaying select features and moving development and testing efforts into other features to an extent. To do this we will list each major feature in each function area by its defect rate. We will then consider the importance of each feature to the customer. Any obviously less-desired, high-defect features should be delayed. We will have to consider the impact of any higher desired, high-defect features.
The Problem: Chocoberry (CB) a major importer and processor of cacao beans have retained the services of standard cocoa industries. Raw material and ingredient supplier CB, meanwhile, has been watching this gradual transformation from fun to health food; pondering the issue of how to take advantage of this
There are different unmistakable zones are engaged by the framework designing and programming advancement. To start with, in the viability, the product must have the capacity to develop to address changing issues of the clients, some of the variables influences how simple or troublesome it gets to be to alter programming.
Authors have even noted trends toward increasing modularity (particularly in the United States) in educational curricula, architecture, literature, and music (Blair, 1988). Modularity exponentially increases the number of possible configurations achievable from a given set of inputs, greatly increasing the flexibility of a system. However, research also indicates that not all systems migrate toward increasing modularity; some appear to follow a path toward increasing integration. In product systems, for example, sets of components that once were easily mixed and matched may sometimes be bundled into a single integrated package that does not allow (or that discourages) substitution of other components. Many commonly used software applications are now bundled into "software suites" that promote seam-
Adaptive maintenance is the process of creating flexible enhancements for a given piece of software. The addition of such features can be alluring to potential customers in that it could potentially offer something unique, or it could simplify a computerized process by executing new ideas or making use of new technologies. The process of enhancing current software however, can be a bit difficult as changes would have to be able to integrate almost seamlessly to the overall structure of the existing program. In some cases the process is further complicated by the fact that existing code may need to be carefully modified in order to be able to make the intended modifications.