【正文】
, dynamic reanization, etc. Introducting software product lines 22 Views on Software Architecture Research ? architecture explicitly defined ? architecture consists of ponents and connectors ? ADLs used to describe architectures and generate applications Industry ? mostly conceptual understanding of architecture, little explicit description ? no explicit firstclass connectors (adhoc solutions for runtime binding and glue code) ? programming (C++) and script languages (Make) used to describe configuration of applications Introducting software product lines 23 Software Architecture Use Three types of SA use: ?single system ?software product line ?standardized domain architecture ponent framework [szyperski 98] our focus Introducting software product lines 24 Software Product Lines ?A software product line consists of: ? product line architecture ? set of reusable ponents ? set of products, where each product has ? product architecture derived from PLA ? instantiated and configured ponents ? productspecific code Introducting software product lines 25 Software Product Lines productline architecture ponent set product 1 product 2 product n external internal ... Introducting software product lines 26 3D?s to Deposing SPLs ? Assets [Jacobsen]: ? architecture ? ponents ? systems ? Views [SEI]: ? business ? anization ? process ? technology ? Lifecycle [Bosch]: ? development ? usage ? evolution Introducting software product lines 27 Initiating a Product Line E v o lu tio n a ry Re v o lu tio n a ryE x istin gp rod u c t lineDev el o p v i s i on f orP LADev el o p o ne c om p.at a t i m e b y e v o l v i n gex i s ti n g c om pon entsDev el o p P LA ,c o m pon ents a nd produc tsbas ed on req ui r em ents upe r s etNe wp rod u c t lineP LA an d c om pon entsev o l v e b as ed o nr equ i r em ents pos edb y n e w P L m e m bersP LA an d c om pon entsdev el ope d to m atc hr equ i r em ents of al l P Lm e m bersIntroducting software product lines 28 Evolving Existing Products ?advantages ? reduced risk due to ? small up front investment ? early return on first shared ponents ? relatively small effect on production schedule ?disadvantages ? larger total investment Introducting software product lines 29 Replace Existing Products ?advantages ? shorter conversion time ? smaller total investment ?disadvantages ? higher risk ? negative effect