Assignment 1, 2, and 3 - Leila Samimi

In the name of God
Assignment 1, 2, 3
Advanced topics in Software Engineering
Leila Samimi-Dehkordi
PhD. Student
Department of Software Engineering
Faculty of Computer Engineering
University of Isfahan
Email: [email protected]
These slides are prepared for Master student of Islamic Azad University of Shahrekord
Individual assignments
2
Compare your design pattern with at least two
other patterns:
1.
1.
2.
Write similarities.
Write differences.
Submit the answers on 6 Azar.




Your answer must be typed in a word document.
Send it to my email. (I don’t accept hard copy)
Do not copy from other document.
Fall 2014
Advanced topics in Software Engineering
by Samimi
Individual assignments (2)
3
 What is shiny toy anti-pattern?
 Write one page about it in persian.
Submit the answers on 13 Azar.



Your answer must be typed in a word document.
Send it to my email. (I don’t accept hard copy)
Fall 2014
Advanced topics in Software Engineering
by Samimi
Team Assignment
4
 Design a soccer (football) engine game.
 The end user play the in the following sequence:
 Select two teams
 Add or remove player to/from the team
 Select a play ground
 Start the game
 Design a class diagram includes:
 Player
 Team
 Ball
 Playground
 Referee
 Game Engine
 Game
 Team strategy
Fall 2014
Advanced topics in Software Engineering
by Samimi
1. Game Engine
5
 We want to have only one Game Engine at the time.
 Which pattern has to be used and how?
Fall 2014
Advanced topics in Software Engineering
by Samimi
2. Ball
6
 When the position of a ball changes, all the players
and the referee should be notified straight away.
 How to use observer design pattern to solve this
problem?
Fall 2014
Advanced topics in Software Engineering
by Samimi
3. Team Strategy
7
 The end user can Team Strategy from attack to
Defend or inverse.
 How to use Strategy Design Pattern to solve this
problem?
Fall 2014
Advanced topics in Software Engineering
by Samimi
4.Player
8
 A player in a team should have additional
responsibilities, like Forward, Defender etc, that can
be assigned during the runtime.
 How to use Decorator Design Pattern to solve this
problem?
 Hint: we have to kind of players: field-player and
goal-keeper.
 Each player may have three roles: Forward,
MidFielder, Defender.
Fall 2014
Advanced topics in Software Engineering
by Samimi
Design and Code
9
 After designing each section, code the design in java.
 You need to present your work on 20 Azar.
Fall 2014
Advanced topics in Software Engineering
by Samimi