Cantitate/Preț
Produs

Software Reuse

Traducere de I. Craig Autor Bernard Coulange
en Limba Engleză Paperback – 18 noi 1997
Software Reuse is a state of the art book concerning all aspects of software reuse. It does away with the hype and shows the reality. Different techniques are presented which enable software reuse and the author demonstrates why object-oriented methods are better for reuse than other approaches. The book details the different factors to take into account when managing reusable components: characterisation, identification, building, verification, storage, search, adaptation, maintenance and evolution. Comparisons and description of various types of companies that could benefit from applying reuse techniques are included outlining, amongst other things, increased profitability and likely problems that might arise from the purchase and selling of reuse tools and components. Based on a real experience of software reuse in a company with a bibliography of more than 200 references provided, this book is a 'must have' for all those working in the software reuse field.
Citește tot Restrânge

Preț: 65708 lei

Preț vechi: 82135 lei
-20% Nou

Puncte Express: 986

Preț estimativ în valută:
12576 13267$ 10480£

Carte tipărită la comandă

Livrare economică 30 decembrie 24 - 06 ianuarie 25

Preluare comenzi: 021 569.72.76

Specificații

ISBN-13: 9783540760849
ISBN-10: 3540760849
Pagini: 308
Ilustrații: 1
Dimensiuni: 155 x 235 x 16 mm
Greutate: 0.5 kg
Ediția:Softcover reprint of the original 1st ed. 1998
Editura: SPRINGER LONDON
Colecția Springer
Locul publicării:London, United Kingdom

Public țintă

Research

Descriere

Software Reuse is a state of the art book concerning all aspects of software reuse. It does away with the hype and shows the reality. Different techniques are presented which enable software reuse and the author demonstrates why object-oriented methods are better for reuse than other approaches. The book details the different factors to take into account when managing reusable components: characterisation, identification, building, verification, storage, search, adaptation, maintenance and evolution. Comparisons and description of various types of companies that could benefit from applying reuse techniques are included outlining, amongst other things, increased profitability and likely problems that might arise from the purchase and selling of reuse tools and components. Based on a real experience of software reuse in a company with a bibliography of more than 200 references provided, this book is a 'must have' for all those working in the software reuse field.

Cuprins

1 Hopes and Myths.- 1.1 Reuse.- 1.2 Hopes for reuse.- 1.3 Reuse is object-oriented.- 1.4 Getting to the bottom of the myths.- 1.5 The dream collapses.- 1.6 What reality?.- 1.7 Objectives of this book.- 1.8 Organisation.- 2 Techniques for Reuse.- 2.1 Introduction.- 2.1.1 Productivity.- 2.1.2 Maintainability.- 2.1.3 Reliability.- 2.1.4 Extensibility.- 2.1.5 “Usability”.- 2.1.6 Adaptability.- 2.2 Copying.- 2.2.1 Description.- 2.2.2 Use.- 2.2.3 Evaluation according to the criteria.- 2.2.4 Evaluation.- 2.3 Pre-processing.- 2.3.1 Description.- 2.3.2 Use.- 2.3.3 Evaluation according to the criteria.- 2.3.4 Evaluation.- 2.4 Libraries.- 2.4.1 Description.- 2.4.2 Use.- 2.4.3 Evaluation according to the criteria.- 2.4.4 Evaluation.- 2.5 Packages.- 2.5.1 Description.- 2.5.2 Use.- 2.5.3 Evaluation according to the criteria.- 2.5.4 Evaluation.- 2.6 Objects (or modularity).- 2.6.1 Description.- 2.6.2 Use.- 2.6.3 Evaluation according to the criteria.- 2.6.4 Evaluation.- 2.7 Genericity of objects and packages.- 2.7.1 Description.- 2.7.2 Use.- 2.7.3 Evaluation according to the criteria.- 2.7.4 Evaluation.- 2.8 Object orientation.- 2.8.1 Description.- 2.8.2 Use.- 2.8.3 Evaluation according to the criteria.- 2.8.4 Evaluation.- 2.9 Conclusion.- 2.10 Back to the myths.- 2.11 Chapter summary.- 3 Development Cycles.- 3.1 The V Cycle.- 3.1.1 Specification phase (or analysis phase).- 3.1.2 General design phase.- 3.1.3 Detailed design phase.- 3.1.4 Coding phase.- 3.1.5 Unit test phase.- 3.1.6 Integration phase.- 3.1.7 Validation phase.- 3.1.8 And reuse in all of this?.- 3.2 Spiral cycle.- 3.3 The X cycle.- 3.3.1 Acquisition phase.- 3.3.2 Archiving phase.- 3.3.3 Adaptation of the specification, general and detailed design phases.- 3.3.4 Incremental development.- 3.4 Ingredients for reuse.- 3.5 Chapter summary.- 4 Characterising Reusable Components.- 4.1 The different types of reusable components.- 4.2 Characterisation of specification components.- 4.2.1 Methods emphasising data.- 4.2.2 Object diagrams.- 4.2.3 Methods emphasising functions.- 4.2.4 Methods emphasising dynamics.- 4.2.5 Object-oriented methods.- 4.2.6 Characterisation common to the analysis components.- 4.3 Characterisation of design components.- 4.4 Characterisation of code components.- 4.4.1 Languages that are not structured, languages that are.- 4.4.2 Modular languages.- 4.4.3 Object-oriented languages.- 4.5 Other types of components.- 4.6 Examples of reusable code.- 4.6.1 Code components.- 4.6.2 Analysis components.- 4.6.3 Design components.- 4.7 Chapter summary.- 5 How to Identify Reusable Components.- 5.1 Introduction.- 5.2 Identification before development.- 5.3 Identification during development.- 5.4 Identification after development.- 5.4.1 Identification of specification components.- 5.4.2 Identification of design components.- 5.4.3 Identification of code components.- 5.5 Identification without reference to development.- 5.6 Chapter summary.- 6 Building Reusable Components.- 6.1 Introduction.- 6.2 Construction of analysis components.- 6.2.1 Informal analysis.- 6.2.2 Entity-relation methods.- 6.2.3 Object diagrams.- 6.2.4 Data flow.- 6.2.5 Automata.- 6.2.6 Composite methods.- 6.3 Construction of design objects.- 6.4 Construction of code components.- 6.4.1 Languages without data structures.- 6.4.2 Languages with structured data.- 6.4.3 Modular languages.- 6.4.4 Object-oriented languages.- 6.5 Backing up and restoring information.- 6.6 Chapter summary.- 7 Component certification.- 7.1 Definition.- 7.2 Why certify?.- 7.2.1 Failure of a reuse policy.- 7.2.2 Waste of time during development.- 7.2.3 Risking several projects at the same time.- 7.3 How are components certified?.- 7.4 Certification of analysis components.- 7.4.1 Entity-relations.- 7.4.2 Data flows.- 7.4.3 Automata.- 7.4.4 Object diagrams.- 7.4.5 Object-oriented methods.- 7.5 Certification of design components.- 7.6 Certification of code components.- 7.6.1 Code does not correspond to its documentation.- 7.6.2 Code errors.- 7.6.3 Poorly functioning code in some contexts.- 7.6.4 Code that’s too complex.- 7.7 Chapter summary.- 8 Component Storage.- 8.1 Introduction.- 8.2 What must be stored?.- 8.3 Classification techniques.- 8.3.1 Keywords.- 8.3.2 Characteristic words.- 8.3.3 Hierarchical classification.- 8.3.4 Facets.- 8.3.5 The best classification technique.- 8.3.6 Some words on databases.- 8.4 Configuration management.- 8.5 Where to store?.- 8.6 Saving components.- 8.7 Tools.- 8.8 Chapter summary.- 9 Finding Components.- 9.1 Introduction.- 9.2 Expression of need: when?.- 9.3 Expression of need: how?.- 9.3.1 Reuse through habit.- 9.3.2 Reuse by navigation in a component base.- 9.3.3 Search by requests.- 9.3.4 Keyword search.- 9.3.5 Search by facets.- 9.3.6 Comparison.- 9.4 Automatic search for components.- 9.4.1 Reusing while analysing.- 9.4.2 Informal analysis components.- 9.4.3 Entity-relation components in an analysis.- 9.4.4 Object-oriented analysis components.- 9.4.5 Components in a functional analysis.- 9.4.6 Components in an automata-based analysis.- 9.4.7 Components of a composite analysis.- 9.4.8 Design components.- 9.4.9 Code components.- 9.5 Finding good components.- 9.6 Component retrieval.- 9.7 After sales service.- 9.8 Learning from search.- 9.8.1 Searches which fail.- 9.8.2 Unused components.- 9.8.3 Unsuitable components.- 9.8.4 Useof the base.- 9.9 Chapter summary.- 10 Adapting Components.- 10.1 Reuse or not?.- 10.2 General rules for the adaptation of components.- 10.2.1 Don’t say the component is bad.- 10.2.2 Don’t get a fixation about names.- 10.3 Adaptation of analysis components.- 10.3.1 Informal analysis components.- 10.3.2 Entity-relation analysis components.- 10.3.3 Object-based component analysis.- 10.3.4 Data flow analysis components.- 10.3.5 Automata analysis components.- 10.3.6 Composite analysis components.- 10.4 Adaptation of design components.- 10.5 Adaptation of code components.- 10.5.1 Code that is not object-oriented.- 10.5.2 Object-oriented code.- 10.6 Optimising reuse.- 10.7 Inheritance and reuse.- 10.7.1 Single inheritance.- 10.7.2 Multiple inheritance.- 10.7.3 Repeated inheritance.- 10.8 Chapter summary.- 11 Maintenance and Evolution of Components.- 11.1 Introduction.- 11.2 Identification of extensions.- 11.3 Versions and configurations.- 11.4 Processes.- 11.5 How do you make extensions?.- 11.5.1 Name change.- 11.5.2 Informal analysis components.- 11.5.3 Entity-relation analysis components.- 11.5.4 Analysis component by objects.- 11.5.5 Analysis components by data flow.- 11.5.6 Component design using automata.- 11.5.7 Design component.- 11.5.8 Code components.- 11.6 How to keep components reliable.- 11.7 Chapter summary.- 12 Organisation for Reuse.- 12.1 New state of mind.- 12.2 New organisation.- 12.2.1 “Isolated manufacture” organisation.- 12.2.2 “One constructor per team” organisation.- 12.2.3 “Common provider group” organisation.- 12.2.4 “Component fabrication centre” organisation.- 12.2.5 “Centre of excellence” organisation.- 12.2.6 “Advisory group” organisation.- 12.2.7 Conclusions about organisation.- 12.3 New methods.- 12.4 New tools.- 12.5 New skills.- 12.5.1 Librarian.- 12.5.2 Component maker.- 12.5.3 Component “certifier”.- 12.5.4 Component consultant.- 12.6 New motivations.- 12.7 Starting to reuse.- 12.8 How to launchreuse.- 12.9 Chapter summary.- 13 Possible Profit.- 13.1 Myth.- 13.2 In reality.- 13.3 The price of components.- 13.4 Cost of components to a project.- 13.5 Cost of a project with reuse.- 13.6 Hypotheses.- 13.7 First simulation.- 13.8 Improving the simulation.- 13.9 Impact of maintenance.- 13.10 Impact of reuse.- 13.11 Purchase of components.- 13.12 Resistance to evolution.- 13.13 Conclusion.- 13.14 Chapter summary.- 14 Buying and Selling Components.- 14.1 Buying components.- 14.1.1 Which components to choose?.- 14.1.2 When will components be standardised?.- 14.1.3 What to do while waiting for standardisation?.- 14.1.4 Standards and extensions.- 14.2 Sale of components.- 14.2.1 In what form to sell components.- 14.2.2 Must components be paid for?.- 14.2.3 To whom do modified components belong?.- 14.2.4 Component purchase and dependence.- 14.3 Chapter summary.- 15 Experience with Reuse.- 15.1 History.- 15.2 First experience with object orientation.- 15.3 First version of the Verilog environment.- 15.3.1 Language limits.- 15.3.2 Configuration management problems.- 15.3.3 Task sharing problems.- 15.4 Second version of the environment.- 15.4.1 Language.- 15.4.2 Configuration management.- 15.5 Organisation.- 15.6 Statistics.- 15.6.1 Class size.- 15.6.2 Number of attributes.- 15.6.3 Number of methods.- 15.6.4 Inheritance.- 15.6.5 Used classes.- 15.6.6 Class complexity.- 15.7 Examples of components.- 15.7.1 Base class: kernel_sys.- 15.7.2 structure_sys: data structures.- 15.7.3 tool_sys: utilities.- 15.7.4 file_sys: files.- 15.7.5 reference_sys: referencing objects.- 15.7.6 ero_sys: entity-relation systems.- 15.7.7 asnl_sys: backup and restore asn1.- 15.7.8 p_base_sys: graphic base.- 15.7.9 g_graphic_sys: encapsulation of MOTIF objects.- 15.7.10 editorsys: multiview kernel.- 15.7.11 Drawing.- 15.8 Re-sults obtained.- 15.8.1 Re-use global to the company.- 15.8.2 Re-use by domain.- 15.8.3 Productivity.- 15.8.4 Quality.- 15.8.5 Development.- 15.9 Conclusion.- 15.10 Chapter summary.- 16 Conclusions.- 16.1 To know more.- 16.2 Main ideas.- 16.3 Acknowledgements.- References.

Caracteristici

* A state of the art book concerning all aspects of software reuse, which is based on real experience of software reuse in a company * Shows companies how to increase profitability