Robo Software Engineering - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

Robo Software Engineering

Description:

d holder( 100, a, a) d topright( a, b) slicetop ( a, b) d lefttop( a, b) d diamond( c) ... holder ( a, b, c) d side( b) x a slice( b, 12, 10) d side( b) bc ( a, ... – PowerPoint PPT presentation

Number of Views:42
Avg rating:3.0/5.0
Slides: 18
Provided by: davidda3
Category:

less

Transcript and Presenter's Notes

Title: Robo Software Engineering


1
Robo Software Engineering
...
software engineering example exercise
  • David Davenport
  • Computer Eng. Dept.,
  • Bilkent UniversityAnkara - Turkey.
  • email david_at_bilkent.edu.tr

2
House Problem Who has attempted it?
3
Robo House Problem (1)
  • Specify pieces order

4
Robo House Problem (2)
  • Then solve pieces

5
Software Engineering Exercise Form teams,
implement, then reflect!
6
Basic Pieces
(b)
(a)
lefttop
7
Composite Pieces
8
Software Engineering Exercise The overall
design!
9
Birthday Cake Design
a times
b
3
2
1
10
  • SUMMARY
  • Advantages of TDSD
  • The TDSD methodology

11
Relating Design Code
  • Big problems -gt lots of pieces!
  • Difficult to understand track
  • relation of pieces to each other
  • between pieces of design code
  • Pieces of design numbered 1, 2, 3
  • Number sub-pieces 1.1, 1.2 2.1, 2.2
  • Methods require naming pieces in design
  • Include piece numbers in code too.

12
The TDSD Methodology
  • Understand the problem requirements
  • Break into natural pieces, making sure to fully
    specify them and the order in which they are to
    be done
  • Check whether these pieces done in this sequence
    solve the problem
  • If no, revise recheck until you have a set
    order that do correctly solve it!
  • If/when yes repeat process with any non-trivial
    sub-pieces and so on until you only have trivial
    pieces!
  • Finally, implement test each of them
    separately, then integrate test whole!

13
Tips
  • Have you FULLY specified ALL the sub-pieces? and
    exactly how they fit together?
  • Sub-contracting
  • Have you described the sub-problem in sufficient
    detail that someone would be able to solve it
    without any additional knowledge of the original
    problem?
  • Dont be afraid to revise solutions or even scrap
    them entirely. It is not always possible to find
    best solution first time!
  • Dont start to solve sub-problems until you are
    absolutely sure that the your proposed solution
    is correct. Doing so may waste time effort.
  • Must go from BIG to small -not small to big!!
  • Your solutions must demonstrate you understand
    top-down design require at least 2 or 3 levels
  • Robo limited to 20 line methods
  • This must include comments!
  • So 10 comments 10 commands (max, remember 7 -
    2)

14
Advantages of TDSD
  • Small pieces easier to solve correctly!
  • Projects easier to manage
  • divides work naturally
  • Projects can be completed quicker
  • easier to reuse pieces
  • pieces can be done simultaneously
  • Projects done in secrecy
  • workers dont see big picture
  • Testing integration is simplified

15
Summary
  • You should have learnt about understand the
    rationale for
  • Comments
  • White space
  • Meaningfully named methods
  • Method parameters
  • Pre post conditions
  • Repetition
  • Top down structured design!

Happy programming ...BYE
16
(No Transcript)
17
(a)
100x100
base
3
Library pieces!
2
1
Write a Comment
User Comments (0)
About PowerShow.com