Skip to content

✍ Meeting 2020.05.18

Hasan Gökçe edited this page May 18, 2020 · 13 revisions

Black box to white box in stages

  • Conventional procedural design vs. fully incremental approach

  • Rapid Application Development (RAD), alias Agile Methods, a favor:

  • working software over comprehensive documentation

  • customer is very active

  • Agile principles

    1. Customer satisfaction by early and continuous delivery of valuable software
    2. Welcome changing requirements, even in late development
    3. Working software is delivered frequently (weeks rather than months)
    4. Close, daily cooperation between business people and developers
    5. Projects are built around motivated individuals
    6. A face-to-face conversation is the best form of communication
    7. Working software is the principal measure
    8. Sustainable development, able to maintain a constant pace
    9. Continuous attention to technical excellence and good design
    10. Simplicity - the art of maximizing the amount of work not done - is essential
    11. Self-organizing teams
    12. Regular adaptation to changing circumstance
  • Why use incremental methods?

    • There may be a need to demonstrate that an idea is feasible
    • It may be necessary or even essential, for business purposes, to establish a market position as rapidly as possible
    • The 'customer' may wish to establish whether a market exists for a product before committing to a large-scale investment.
    • Incremental design is not closely tied to any design or architectural style.
    • Facilitate design for change
    • It provides more degrees of freedom than is usual
  • Prototyping

    • Evolutionary (no end product, the current state of the system)
    • Exploratory ()
  • Storyboard

    • Often used
    • bigger than a use case, more general
  • Sketching

    • Sketching is important to low-fidelity prototyping
    • Don't be inhibited about drawing ability. Practice simple symbols.
  • Card-based prototypes

    • Index cards (7.5 x 15.5 cm)
    • Each card represents one screen or part of the screen
    • Often used in website development
  • 'Wizard-of-Oz' prototyping

    • The user thinks they...
  • High-fidelity prototyping

  • Compromises in prototyping

    • All prototypes involve compromises
    • Two common types of compromise
      • 'horizontal': provide a wide range of functions, but with little detail
      • 'vertical': provide a lot of detail for only a few functions
  • Petri Nets

  • Statechart

  • Common factors in failures

    • poor communicatioın
    • ...
  • DSDM Philosophy

    • ///image
  • Agile Fundamentals

    • ///image
  • DSDM Approach

    • In fact, this graphic is not fair, to be able to sell they design some pictures, for example
    • ///image
  • Core DSDM Techniques

    • ///image
    • MoSCoW rules
      • Why prioritise?
        • Not enough time to do everything
        • Not enough resources to do everyting
      • Musts and Shoulds often deliver 80% of total business benefit
      • MoSCoW priorities drive sequence delivery
      • Target is effort split 60% Must Have, 40% Shoulds and Coulds
  • HOMEWORK: PROTOTYPE

    • no very smart colors, fancy icons
    • expected functionality
    • show some static pages
      • you can use tools even paper
    • 01:59
    • I expect you to show me menus, after clicking the menu this page opens
    • No all text, it can be black and white.
    • html is okay, but pictures are okay.
Clone this wiki locally