0% found this document useful (0 votes)
18 views33 pages

Chapter 5

Uploaded by

amgadalinasser00
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views33 pages

Chapter 5

Uploaded by

amgadalinasser00
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 33

Chapter 5

Design and Implementation

Chapter5 Dr. Ali Al-Hamdi 1


5.1 Introduction
 Objectives
 Understand the most important activities in a general, object-
oriented design process;
 Understand some of the different models that may be used to
document an object-oriented design;
 Know about the idea of design patterns and how these are a
way of reusing design knowledge and experience;
 Have been introduced to key issues that have to be considered
when implementing software, including software reuse and
open-source development.

Chapter5 Dr. Ali Al-Hamdi 2


5.1 Introduction

 Definition
 Small systems
 Large systems

 Design-implementation relationship

 Decisions making regarding to design and


implementation
Chapter5 Dr. Ali Al-Hamdi 3
5.1 Introduction
 Design and implementation requirements
 Modeling and Programming experience & skills

 Chapter scope
 How system modelling and AD are put in practice
using UML diagrams?
 Design pattern
 Implementation issues?
 Open-sources development
Chapter5 Dr. Ali Al-Hamdi 4
5.2 OO Design using UML

 Definitions
 OO system
 OO design process

 Advantages of OO evolution for design and


implementation?
Chapter5 Dr. Ali Al-Hamdi 5
5.2 OO Design using UML

 OO design process steps


 Define system context and interactions.
 Design the system architecture.
 Identify the principal objects in the system.
 Develop design models.
 Specify interfaces.

Design process nature?


Chapter5 Dr. Ali Al-Hamdi 6
5.2.1 System context and interactions

 First step in design process?


 Models used?
 System context model task?
 System interactions model task?

 Context model representation?


 Interaction model representation?

Chapter5 Dr. Ali Al-Hamdi 7


5.2.1 System context and interactions

 Examples

Chapter5 Dr. Ali Al-Hamdi 8


5.2.1 System context and interactions

 Examples: interaction details

Chapter5 Dr. Ali Al-Hamdi 9


5.2.1 System context and interactions

 Example: interaction more details

Chapter5 Dr. Ali Al-Hamdi 10


5.2.2 Architectural design

 AD requirements?
 AD process?
 AD result?
 System structure?
 System operation?
 Benefit?

Chapter5 Dr. Ali Al-Hamdi 11


5.2.2 Architectural design

 More details of AD
 Structure ?
 Operation?

Chapter5 Dr. Ali Al-Hamdi 12


5.2.3 Object class identification

 Deals with?
 How can be achieved?
 Ways of identifying object class?
 Grammatical analysis?
 Tangible entities of the application domain?
 Scenario-based analysis?
 In practice, sources of knowledge?

Chapter5 Dr. Ali Al-Hamdi 13


5.2.3 Object class identification

 OCI result?
 Structure and associated sources?
 Operation?

 Last step?

Chapter5 Dr. Ali Al-Hamdi 14


5.2.4 Design models

 Design models definition, function, and


characteristics?
 Design detail level decisions?
 UML Model types
 Structural?

 Dynamic?
Chapter5 Dr. Ali Al-Hamdi 15
5.2.4 Design models

 UML Detailed models can be used (Sommerville’s


view)
 Subsystem models?
 Sequences models?
 State machine models?

Chapter5 Dr. Ali Al-Hamdi 16


5.2.4 Design models

 UML Detailed models can be used


 Sequences models
 Structure?
 Operation?

Chapter5 Dr. Ali Al-Hamdi 17


5.2.4 Design models

 UML Detailed models can be used


 State machine models?
 Structure?
 Operation?

Chapter5 Dr. Ali Al-Hamdi 18


5.2.5 Interface specifications

 Interface roles?
 Interface specifications important?
 Interface design process deals with?
 Interface model using UML notations?
 Interface design characteristics?
 Interface-objects relationship?
 Weather station interfaces
 Description?

Chapter5 Dr. Ali Al-Hamdi 19


5.3 Design Patterns

 Definitions?

 Pattern and OO design?


 Elements of design pattern (Gang of Four)
 Name of the pattern?
 Description of the problem?
 Solution description?
 Statement of the consequences?
Gamma and co-authors element of design
pattern break down?
Chapter5 Dr. Ali Al-Hamdi 20
5.3 Design Patterns

 Pattern description (Gang of Four)

Chapter5 Dr. Ali Al-Hamdi 21


5.3 Design Patterns

 Pattern and graphical presentations?


 Graphical presentation role?
 Multiple displays

Chapter5 Dr. Ali Al-Hamdi 22


5.3 Design Patterns

 UML model of the Observer pattern

Chapter5 Dr. Ali Al-Hamdi 23


5.3 Design Patterns

 Design problems and associated pattern


 Observer pattern
 Façade pattern
 Iterator pattern
 Decorator pattern
 Pattern and reuse concept?
 Pattern in the beginning of design process?
 Pattern requirement for S/W design?
Chapter5 Dr. Ali Al-Hamdi 24
5.4 Implementation issues

 Implementation definition?
 Implementation importance?
 Aspects of implementation
 Reuse?
 Configuration management?
 Host-target development?

Chapter5 Dr. Ali Al-Hamdi 25


5.4.1 Ruse

 Historical background
 Motivations and goals
 Possible levels

 Advantages
 Disadvantages

Chapter5 Dr. Ali Al-Hamdi 26


5.4.2 Configuration management

 Motivations?
 Requirements?
 Definition and goal?
 Configuration management activities

Chapter5 Dr. Ali Al-Hamdi 27


5.4.2 Configuration management

 Configuration management activities


 Version management?
 System integration?
 Problem tracking?
 Release management?

Configuration management tools?

Chapter5 Dr. Ali Al-Hamdi 28


5.4.3 Host-target
 Description, definition, and Possibilities?
 Embedded system development?
 Target system & middleware?
 Host-target tools
 Compilers
 Debuggers
 Graphical editors
 Testing tools
 Supporting tools
 Configuration management tools
Chapter5 Dr. Ali Al-Hamdi 29
5.4.3 Host-target

 Additional tools
 IDE environment
 Definition
 General-purpose IDE

Chapter5 Dr. Ali Al-Hamdi 30


5.4.3 Host-target

 S/W deployment decision


 DS decision issues
 H/W & S/W component requirements
 Availability requirements of the system
 Component communications

 Decisions documenting
 DS
 Embedded systems
Chapter5 Dr. Ali Al-Hamdi 31
5.5 Open source development

 Definition and roots


 OS in principle-practice duality
 OS examples
 Benefits
 Issues of OS for companies
 Answers to the issues
Chapter5 Dr. Ali Al-Hamdi 32
5.5.1 Open source licensing

 General concept
 General models
 GNU General Public License (GPL)
 GNU Lesser General Public License (LGPL
 Berkley Standard Distribution (BSD)
 OS Issues
 Suggestions for companies managing projects that
use OS
Chapter5 Dr. Ali Al-Hamdi 33

You might also like