上降充通大 SHANGHAI JIAO TONG UNIVERSITY 1.3 Object Design Activities © Group of activities: ·Reuse Interface specification 。Restructuring 。Optimization Software Engineering
Software Engineering 1.3 Object Design Activities Group of activities: • Reuse • Interface specification • Restructuring • Optimization
上游文通大学 SHANGHAI JIAO TONG UNIVERSITY Select Subsystem Specification Reuse Identifying missing attributes operations Identifying components Specifying visibility Adjusting components Specifying types signatures Identifying patterns Specifying constraints Specifying exceptions Adjusting patterns Software Engineering
Software Engineering Specifying constraints Specifying types & signatures Identifying patterns Adjusting patterns Identifying missing attributes & operations Specifying visibility Specification Specifying exceptions Reuse Identifying components Adjusting components Select Subsystem
上海文通大学 SHANGHAI JIAO TONG UNIVERSITY O← Check Use Cases Restructuring Optimization Revisiting Optimizing access inheritance paths Collapsing classes Caching complex computations Realizing associations Delaying complex computations Software Engineering
Software Engineering Collapsing classes Restructuring Optimization Revisiting inheritance Optimizing access paths Caching complex computations Delaying complex computations Check Use Cases Realizing associations
上大Examples of Object Design Activities SHANGHAI JIAO TONG UNIVERSITY Identification of existing components Full definition of associations Full definition of classes: System Design =Service, ·Object Design=>API Specifying the contract for each component Choosing algorithms and data structures Identifying possibilities of reuse Detection of solution-domain classes Optimization Increase of inheritance Decision on control (Re-)Packaging Software Engineering
Software Engineering Examples of Object Design Activities Identification of existing components Full definition of associations Full definition of classes: • System Design => Service, • Object Design => API Specifying the contract for each component Choosing algorithms and data structures Identifying possibilities of reuse Detection of solution-domain classes Optimization Increase of inheritance Decision on control (Re-)Packaging
上游充通大兽 SHANGHAI JIAO TONG UNIVERSITY 1.Reuse:Identification of existing solutions ·Use of inheritance Off-the-shelf components and additional solution Object objects Design lectures Design patterns 2.Interface specification Describes precisely each class interface 3.Object model restructuring Transforms the object design model to improve its understandability and extensibility Mapping 4.Object model optimization Models to Code lecture Transforms the object design model to address performance criteria such as response time or memory utilization. Software Engineering
Software Engineering 1. Reuse: Identification of existing solutions • Use of inheritance • Off-the-shelf components and additional solution objects • Design patterns 2. Interface specification • Describes precisely each class interface 3. Object model restructuring • Transforms the object design model to improve its understandability and extensibility 4. Object model optimization • Transforms the object design model to address performance criteria such as response time or memory utilization. Object Design lectures Mapping Models to Code lecture