Alecsandar STOIANOV. Legacy software Introduction.

Slides:



Advertisements
Similar presentations
Design Patterns.
Advertisements

Programming Example: tax computation. Introduction In this webpage, we will study a programming example using the conditional statements (if and if-else)
Design Patterns in Java Kinematic Simulator. Hello, I’m Steve Here’s our project.
Winter 2007ACS-3913 Ron McFadyen1 Also known as publish/subscribe The essence of this pattern is that one or more objects (called observers or listeners)
Observer Method 1. References Gamma Erich, Helm Richard, “Design Patterns: Elements of Reusable Object- Oriented Software” 2.
Figures – Chapter 7.
Chapter 7 – Object-Oriented Design
Spring 2010ACS-3913 Ron McFadyen1 Weather Station Page 39+ In this application, weather station devices supply data to a weather data object. As the data.
Observer Pattern Fall 2005 OOPD John Anthony. What is a Pattern? “Each pattern describes a problem which occurs over and over again in our environment,
Observer Pattern Tu Nguyen. General Purpose When one object changes state, all the dependent objects are notified and updated. Allows for consistency.
True/False. False True Subject May Go Here True / False ? Type correct answer here. Type incorrect answer here.
Winter 2007ACS-3913 Ron McFadyen1 Observer Pattern Problem: There are many objects (observers / subscribers) needing to know of the state changes, or events,
The Observer Design Pattern By Bradley Woods. Pattern Overview Consists mainly of subjects and observers. – Subjects update all observers on state changes.
Observer Design Pattern Source: Design Patterns – Elements of Reusable Object- Oriented Software; Gamma, et. al.
Implementing Design Patterns Using Java St. Louis Java Special Interest Group Eric M. Burke Object Computing, Inc. Presented on July 9, 1998 (updated July.
CS 210 Introduction to Design Patterns September 7 th, 2006.
Programming in C# Observer Design Pattern
Behavioral Pattern: Observer C h a p t e r 5 – P a g e 186 A large monolithic design does not scale well as additional graphical and monitoring requirements.
School of Computer Science & Information Technology G6DICP - Lecture 17 GUI (Graphical User Interface) Programming.
Detecting Patterns and Antipatterns in Software using Prolog Rules Alecsandar Stoianov, Ioana Sora Department of Computers Politehnica University of Timisoara,
Automating the Development of Pattern-Oriented Designs Copyright, 1996 © Dale Carnegie & Associates, Inc. Sherif Yacoub, Hengyi Xue, and Hany Ammar {yacoub,
Type your question here. Type Answer Type your question here. Type Answer.
GUIs Graphical User Interfaces. Everything coming together Known: – Inheritance – Interfaces – Abstract classes – Polymorphism – Exceptions New: – Events.
OBSERVER DESIGN PATTERN. Behavioral Patterns  Behavioral patterns are those patterns that are most specifically concerned with communication between.
Welcome ~ KriCloud. What is KriCloud ? ~ KriCloud.
AOP and observer pattern. Design pattern General reusable solution to a commonly occurring problem in software design Not a finished design that can be.
PRESENTATION TITLE GOES HERE SNIA Emerald™ COM benefits – some initial data.
Assignment 1, 2, 3 In the name of God Leila Samimi-Dehkordi PhD. Student Department of Software Engineering Faculty of Computer Engineering University.
Chapter 5 – Software Tools. 5.1 Introduction Tools valuable for –Specification –Interface Building –Evaluation.
Design 1: Conceptual Design. Objectives By the end of this class, you will be able to… Given a scenario, allocate tasks among the system and the user(s).
Observer Pattern Keeping An Eye on Things Need to introduce observer pattern formally first, include book definition & design principle Keeping An Eye.
Week 6, Class 3: Composite Swing composites File composites Computer composites SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:
February 23, 2009Observer Pattern, OOA&D, Rubal Gupta, CSPP, Winter ‘09 Observer Pattern Defines a “one-to-many” dependency between objects so that when.
November 3, 2015  Embry Riddle Prescott Team #TBD Member1, Member2, Member3, Member4 [Alphabetical] Real-Time Systems Software Proof-of- Concept [12+
Type Subject Here (1). Type Subject Here (1) Type Subject Here (2)
Observer Design Pattern
Observer Design Pattern
Click here for the answer. Click here for the answer.
Click here for the answer. Click here for the answer.
Click here for the answer. Click here for the answer.
Twenty Questions Subject:.
Observe your surroundings. Where are you now? What do you see? What do you hear?
Composite Pattern Oct 7, 2003 A composite is a group of objects in which some objects contain others; one object may represent groups, and another.
Type Topic in here! Created by Educational Technology Network
مدیریت استراتژيک منابع انسانی
Building Graphical User Interface with Swing a short introduction
Composite Pattern Context:
סדר דין פלילי – חקיקה ומהות ההליך הפלילי
Observer Pattern 1.

Design pattern Lecture 9.
An Introduction to Java Language
Twenty Questions Subject:.
Ռազմավարական կառավարում
Twenty Questions Subject:.
You must show all steps of your working out.
Question 1.
JEOPARDY.
Twenty Questions Subject:.
Twenty Questions Subject:.
Twenty Questions Subject:.
Twenty Questions Subject:.
Twenty Questions Subject:.
4 Step Simple Diagram Sample text Sample text Sample text Sample text
Template for Presentation (feel free to customize look)
Welcome to Who Wants to be a Winner?.
Twenty Questions Subject:.
Twenty Questions Subject:.
(Type Answer Here) (Type Answer Here) (Type Answer Here)
Presentation transcript:

Alecsandar STOIANOV

Legacy software Introduction

Patterns & Antipatterns

Observer  observerPattern(Project, SubjectN, ObserverN, ConcrSubjsN,ConcrObserversN, UpdateMsN,AttDetMeths,NotifyMeth):- observer(Observer,ObserverN,Project), subject(Subject,SubjectN,Observer,AttDetMeths,Notif yMeth,UpdateMsN), findall(X,concreteSubject(_,X,Subject),ConcrSubjsN), findall(Y,concreteObserver(_,Y,Observer),ConcrObser versN).

God Class  This AntiPattern is characterized by a class diagram composed of a single complex controller class surrounded by simple data classes. The key problem here is that the majority of the responsibilities are allocated to a single class.

Results 1 SingletonDecoratorObserverStrategyAdapter MePinotMePinotMePinotMePinotMePinot jHotDraw 6.0b Java AWT Java Swing Java.io Java.net Apache Ant

Results 2 Data ClassCall Super Constant Interface God Class Interface Bloat Yoyo Problem (factor = 6) Poltergeist jHotDraw 6.0b Java AWT Java Swing Java.io Java.net Apache Ant

& Answers? Questions