{'fraction_non_alphanumeric': 0.011082693947144074, 'fraction_numerical': 0.0, 'mean_word_length': 5.278074866310161, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Software asset management and domain engineering

Promoting reusability by managing software assets can greatly benefit companies that develop a family of similar products, where products are evolving from one another. One of the main goals of domain engineering is to identify and document the commonalities across the various products in a particular domain. Managing these common products or assets will keep the development cycle short for future products and help tame the large divergence seen in the development of different products. Guidant Corporation has been involved in the development of medical devices, such as cardiac rhythm management systems at CPI, which are complex real-time safety-critical systems. Cardiac rhythm management systems include implantable medical devices used to monitor human hearts and to provide appropriate therapy when needed. These devices and related products are constantly evolving as technology and market needs change. The systems being developed at CPI are thus a family of products and share many functionalities among them. There are several issues that need to be addressed in the domain analysis of a family of products.