Analysis And Design

Software Design Patterns Training


Software design patterns represent proven solutions to recurring software design problems. They capture the knowledge of software experts in an easy to learn fashion. Upon learning, they help freshers and the experts to produce high quality software designs with desired properties. Ability to use design patterns is an essentially required skill of any software engineer and represents maturity.

Effective Object Oriented Programming


Mainstream software development nowadays uses object oriented programming (or OOP for short) languages and techniques. OOP is a programming paradigm and is supported by many modern programming languages.

While understanding the fundamental concepts behind OOP is a key requirement to be effective in OOP, one also needs to understand how these concepts are applied in real software projects. Expert object oriented designs also adhere to best practices and principles to improve the qualities of object oriented systems like component reusability, extensibility, maintainability and robustness.

Fundamental Patterns for Object Oriented Systems Designing


How to create a good object oriented design for a software system? Is it possible to follow a systematic approach where requirements are translated though analysis to a good design? What are the best practices that can be applied in doing so? This training program teaches you how to write use case as a means to capture requirements, object oriented analysis and applying fundamental patterns to create good object oriented designs. Content of the training primarily revolves around Generalized Responsibility Assignment Software Patterns (GRASP Patterns) that are primitive, but powerful concepts that can be applied in creating good object oriented designs.