Design Patterns-The core of Software architecture (Creational Patterns)

January 24, 2010

Presentation by: Shahzad Sarwar
To: Development Team
Topic: Design Patterns-The core of Software architecture (Creational Patterns)

Design Patterns:

In software engineering, a design pattern is a general reusable solution to a commonly occurring problem in software design. A design pattern is not a finished design that can be transformed directly into code. It is a description or template for how to solve a problem that can be used in many different situations. Object-oriented design patterns typically show relationships and interactions between classes or objects, without specifying the final application classes or objects that are involved.

Design patterns reside in the domain of modules and interconnections. At a higher level there are Architectural patterns that are larger in scope, usually describing an overall pattern followed by an entire system.

This is series of presentations covering Design patterns

Creational Patterns Part -1 Abstract Factory , Builder  , Factory Method  , Prototype  , Singleton
Structural Patterns Part-2 ( Later ) Adapter ,  Bridge , Composite , Decorator , Facade , Flyweight  , Proxy
Behavioral Patterns Part-3 ( Later )
Chain of Resp  , Command  , Interpreter , Iterator 
  ,Mediator , Memento , Observer , State , Strategy , 
Template Method , Visitor

AJAX Design Patterns Part-4 (Later)
AJAX Level I , AJAX Level II
AJAX Message Patterns
(Text Message ,  HTML Message , XML Message ,  XSL Message  , JavaScript Msg ,  JSON Message , Custom Message  )

Software AntiPatterns Part-5 (Later)

Software Refactoring Part-6 (Later)

Creational Patterns Part -1
Abstract Factory , Builder , Factory Method , Prototype , Singleton

UML – The Art of Software Modeling

January 21, 2010

Presentation by: Shahzad Sarwar
To: Development Team
Topic: UML – The Art of Software Modeling
Date Time: 25th Jan 2010

What is UML?
Unified Modeling Language (UML) is a standardized general-purpose modeling language in the field of software engineering. The standard is managed, and was created by, the Object Management Group.

UML includes a set of graphical notation techniques to create visual models of software-intensive systems.
UML – language and notation for specification, construction,
visualisation and documentation of models of software systems.
UML is not:
programming language
a CASE tool
UML modelling language.
Methods: modelling language + process
Modelling language : Notation that methods use to express design
Process: Steps in doing a design
Associate with UML is Unified Software Development Process.
Object Management Group an industry standards body requested
standard object modelling language (1996).
UML: Developed by Grady Booch, Ivar Jacobson, James Rumbaugh