16
LESSON 9 DESIGN TOOLS, INPUTS, OUTPUTS, STORYBOARDS Unit 6 - Software Design and Development

Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

LESSON 9– DESIGN TOOLS, INPUTS, OUTPUTS, STORYBOARDS

Unit 6 - Software Design and Development

Page 2: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

Previously

Key features of programming languages

Assignment 1

Software Development Lifecycle –

Design models

Software structures

Assignment 2

Page 3: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

Learning outcomes

1. Know the features of programming languages

2. Understand the principles of software design

3. Be able to use tools to demonstrate software designs.

Page 4: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

What is covered in this session Inputs and outputs

GUI design with storyboards

Design constraints.

Tools. Data flow diagrams.

Structure diagrams.

Entity relationship models

Flowcharts.

Pseudocode

Page 5: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

Inputs and outputs

Inputs can be:

Entered by a user.

Read from a file/database.

Received from sensory devices.

Other?

Page 6: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

User Interface

More to it than just putting controls on a screen.

E.g. what if the requirements include:

a bar code reading feature

need to work on a PC and a mobile phone.

What can be done in these situations?

Page 7: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

User Interface

Google Chrome – a very popular web browser that runs on many different platforms.

Used storyboards in the form of a comic.

The full comic is available on the WIKI.

Page 8: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

Storyboards (Tool)

A graphic representation of how your solution/video will unfold,

screen by screen/shot by shot.

made up of a number of squares with illustrations or pictures representing each aspect

of an interface,

notes (annotations) about what’s going on in the scene.

Think of it as sort of a comic book version of your script.

Page 9: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

Storyboards Task 25

Look at the requirements for assignment 3 (on the wiki).

Produce a simple storyboard that outlines the functionality required.

You can use PowerPoint, Publisher, Word or even hand-draw your storyboard.

20 minutes

This will be included your submission

for the assignment.

Page 10: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

Constraints

With any project there may be features requested which

technically cannot be achieved

will cost a lot of money and/or time to produce.

Often it is time or money that constrains a project.

Sometimes it can be resources (especially human).

Anything which prevents a feature being achieved or limits a project is known as a constraint.

Page 11: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

Structure

A large set of requirements will usually need to be broken down into smaller more manageable sections.

This makes it easier to develop especially when more than one developer is involved since each developer can work on different sections independently.

When separate sections are developed in this way then the need for the sections to communicate becomes more important and there are many ways this can be accomplished.

Page 12: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

More on the data

• When data needs to be persisted (stored) then in

modern systems this happens by using files or better

still databases.

• The data needs to be identified along with its type

and rules as to its use (e.g. data size).

• A data dictionary is used to list all the data identified

in a set of requirements along with its type, size and

any rules that need to be applied.

• Calculated fields are rarely stored in files or

databases. Why?

Page 13: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

Data dictionary

Data dictionary for data relating to dogs in a dog club

Table Name: tblDog

Attribute Data type Length Default Value Required Key Notes

DogID Autonumber Long Integer Yes Primary

OwnerID Number Long Integer Foreign From Owner table

DogName ShortText 50 Yes

DogDOB Date/time Medium date Yes

BreedCharacteristics LongText

BreedPhoto OLE 240x240 JPEG

Page 14: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

Entity Relationship Model (ERM) Tool

When data is to be stored into a database then an ERM (Entity relationship model) is used to further define data by adding how the data relates to other data and for the identification of primary keys and foreign keys.

Page 15: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

Entity Relationship Model Task 26

Look at the requirements for assignment 3 (on the wiki).

Produce an ERM that shows the relationships between the data required.

You can use PowerPoint, Publisher, Word or even hand-draw your ERM.

10 minutes

This will be included your submission

for the assignment.

Page 16: Unit 6 - Software Design and Development LESSON 9 DESIGN …wiki.computing.hct.ac.uk/.../btec/level3/l3u6l9_designtoolsedit17.pdf · Unit 6 - Software Design and Development. Previously

Summary

Input and output.

Storyboards.

Constraints.

Some tools

Storyboards

Data dictionaries

ERM