Project Planning Defining the project Software specification Development stages Software testing.

Slides:



Advertisements
Similar presentations
Chapter 11 Designing the User Interface
Advertisements

Decision Analysis Tools in Excel
Welcome to E-Prime E-Prime refers to the Experimenter’s Prime (best) development studio for the creation of computerized behavioral research. E-Prime is.
Guide to Oracle10G1 Introduction To Forms Builder Chapter 5.
Creating Custom Forms. 2 Design and create a custom form You can create a custom form by modifying an existing form or creating a new form. Either way,
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
Chapter 7 Data Management. Agenda Database concept Import data Input and edit data Sort data Function Filter data Create range name Calculate subtotal.
Macros Tutorial Week 20. Objectives By the end of this tutorial you should understand how to: Create macros Assign macros to events Associate macros with.
Microsoft Excel 2003 Illustrated Complete Excel and Advanced Worksheet Management Customizing.
Computers Are Your Future © 2008Prentice-Hall, Inc.
A02 Creating my website NAME ______________. UNIT 2 – A02 – Creating my Website The purpose of this assessment objective is to create 5 web pages containing.
Database Design IST 7-10 Presented by Miss Egan and Miss Richards.
XP New Perspectives on Microsoft Access 2002 Tutorial 71 Microsoft Access 2002 Tutorial 7 – Integrating Access With the Web and With Other Programs.
Pasewark & Pasewark 1 Access Lesson 6 Integrating Access Microsoft Office 2007: Introductory.
Microsoft Office Word 2013 Expert Microsoft Office Word 2013 Expert Courseware # 3251 Lesson 4: Working with Forms.
DEMONSTRATION FOR SIGMA DATA ACQUISITION MODULES Tempatron Ltd Data Measurements Division Darwin Close Reading RG2 0TB UK T : +44 (0) F :
COMPREHENSIVE Excel Tutorial 8 Developing an Excel Application.
The Project AH Computing. Functional Requirements  What the product must do!  Examples attractive welcome screen all options available as clickable.
Chapter 9 Macros, Navigation Forms, PivotTables, and PivotCharts
Chapter 9 Introduction to ActionScript 3.0. Chapter 9 Lessons 1.Understand ActionScript Work with instances of movie clip symbols 3.Use code snippets.
Lesson 6: Working with Layout and Graphics
Digital Image Processing Lecture3: Introduction to MATLAB.
Chapter 5 Java Script And Forms JavaScript, Third Edition.
CPSC 203 Introduction to Computers T59 & T64 By Jie (Jeff) Gao.
XP New Perspectives on Microsoft Access 2002 Tutorial 51 Microsoft Access 2002 Tutorial 5 – Enhancing a Table’s Design, and Creating Advanced Queries and.
HS 115 Unit Four Seminar Amber Krasny, MBA, CPC, CMRS.
Department of Mechanical Engineering, LSUSession VII MATLAB Tutorials Session VIII Graphical User Interface using MATLAB Rajeev Madazhy
Creating a Web Site to Gather Data and Conduct Research.
Introduction to Matlab & Data Analysis
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
Automating Database Processing Chapter 6. Chapter Introduction Design and implement user-friendly menu – Called navigation form Macros – Automate repetitive.
Designing Interface Components. Components Navigation components - the user uses these components to give instructions. Input – Components that are used.
McGraw-Hill/Irwin ©2009 The McGraw-Hill Companies, All Rights Reserved Business Driven Information Systems 2e Plug-In T6: Basic Skills and Tools Using.
UNIT 7: Using Excel in the Law Office. This Week’s Assignment You should be working on your three-part assignment Part 1 deals with the things you learned.
Access 2013 Microsoft Access 2013 is a database application that is ideal for gathering and understanding data that’s been collected on just about anything.
Software Project Planning Defining the Project Writing the Software Specification Planning the Development Stages Testing the Software.
Key Applications Module Lesson 21 — Access Essentials
Creating Graphical User Interfaces (GUI’s) with MATLAB By Jeffrey A. Webb OSU Gateway Coalition Member.
Genesys Shell development Input-side development progress.
Excel 2007 ® Business and Personal Finances How can Microsoft Excel 2007 help you to be more productive?
CPSC 203 Introduction to Computers T97 By Jie (Jeff) Gao.
Excel part 5 Working with Excel Tables, PivotTables, and PivotCharts.
Positioning Objects with CSS and Tables
XP New Perspectives on Microsoft Office Access 2003, Second Edition- Tutorial 6 1 Microsoft Office Access 2003 Tutorial 6 – Creating Custom Forms.
Using Workflow With Dataforms Tim Borntreger, Director of Client Services.
MATLAB and SimulinkLecture 61 To days Outline Graphical User Interface (GUI) Exercise on this days topics.
 2002 Prentice Hall. All rights reserved. 1 Introduction to the Visual Studio.NET IDE Outline Introduction Visual Studio.NET Integrated Development Environment.
Feb. 8, 2008 UHCO Graduate Course in MATLAB Software Project Planning Defining the Project Writing the Software Specification Selecting a Development Plan.
Lesson 17 Mail Merge. Overview Create a main document. Create a data source. Insert merge fields into a main document. Perform a mail merge. Use data.
Section 3 Computing with confidence. The purpose of this section The purpose of this section is to develop your skills to achieve two goals: 1-Becoming.
Creating and Processing Web Forms
Excel Tutorial 8 Developing an Excel Application
How can Microsoft Excel 2007 help you to be more productive?
Graphical User Interface in MATLAB
Tutorial 5: Working with Excel Tables, PivotTables, and PivotCharts
Objectives Design a form Create a form Create text fields
Performing Mail Merges
European Computer Driving Licence
Chap 7. Building Java Graphical User Interfaces
Graphical User Interfaces -- Introduction
Welcome to E-Prime E-Prime refers to the Experimenter’s Prime (best) development studio for the creation of computerized behavioral research. E-Prime is.
CIS16 Application Development Programming with Visual Basic
Microsoft Excel 101.
Access Tutorial 8 Sharing, Integrating, and Analyzing Data
Lesson 6: Working with Layout and Graphics
Lesson 6: Working with Layout and Graphics
Digital Image Processing
BTEC Level 3 Subsidiary Diploma
ICT Spreadsheets Lesson 1: Introduction to Spreadsheets
A02 Creating my website NAME ______________.
Presentation transcript:

Project Planning Defining the project Software specification Development stages Software testing

Defining the Project Input-Process-Output model Define the input Define the process Define the output Define the hardware Define the development tools

Defining the Project Input-Process-Output model Process File

Defining the Project Define the Input What information is needed to perform the software task? What information is fixed or assumed? What information does the user provide? What information is read from files?

Defining the Project Input Examples Subject information Stimulus parameters Spreadsheet data Image data Data acquired from recording hardware User’s choice of processing options User’s choice of output options

Defining the Project Input Methods Dialog boxes –radio buttons, checkboxes, pushbuttons, edit boxes, sliders, pull-down lists, menus Command line questions and answers Files Data acquisition cards Frame grabber cards

Defining the Project Input Worksheet ?

Defining the Project Define the Process What is the sequence of events? What are the computations? How must the data be rearranged? How must the units be scaled?

Defining the Project Process Examples Produce a stimulus and/or gather results Compute statistics on subject performance Filter or enhance an image Evaluate eye movement signals Evaluate neurological signals Simulate a model Fit data to a model

Defining the Project Process Methods Sequence of events –Menu driven –Dialog box selections –Data dependent Scripts or functions Matlab toolboxes MATVIS Psychophysics Toolbox

Defining the Project Process Worksheet ?

Defining the Project Define the Output Record of input information Record of data processing or collection Temporary feedback during data processing or collection

Defining the Project Output Examples Stimulus control Experiment results Simulation results Computational results

Defining the Project Output Methods Text files Binary files Image files Graphical plots Stimulus control signals Changes to the user interface

Defining the Project Output Worksheet ?

Software Specification Purpose Organization

Software Specification Purpose Documents your design decisions Organizes all input information Describes format of files Describes sequence of events

Software Specification Organization Introduction User interface Parameters Sequence of events Computations Graphic results File formats Reference information

Software Specification Organization: Introduction Describes purpose of software Gives overview of software Describes overview of hardware Describes development tools –MATLAB –Simulink –Psychophysics Toolbox –MATVIS

Software Specification Organization: User interface Organization of menus Organization of dialog boxes Arrangement of items on dialog boxes Options or preferences May be appropriate to incorporate these details in the other sections

Software Specification Organization: Parameters Describe parameters –purpose –units –default values –acceptable ranges Summarize parameters in a table for quick reference

Software Specification Organization: Sequence Describe the sequence of events as a numbered list Describe what happens when the user makes different selections Describe error handling

Software Specification Organization: Computations Describe computations as you would in the methods section of a paper Supply all necessary information to perform the computations For complex computations –reference descriptive documents –reference existing software

Software Specification Organization: Graphic Results Plots –Axes and scaling –Axes titles –Markers and lines Images –Data format (uint8, double, indexed) –Colormap –Meaning of intensity scale

Software Specification Organization: File Formats Describe the rows and columns of tab- delimited text files Select graphic file format for output Include both input and output file formats Describe any naming conventions Indicate if files are to be overwritten or appended

Software Specification Organization: Reference Info. Contact information for software tools Contact information for special hardware References to related manuals –hardware –software References to related publications –computations –experiment methods

Development Stages The Chronological Approach The Availability Approach The Feasibility Approach The Generic Approach The ‘They Did It This Way’ Approach

Development Stages The Chronological Approach Add each block of code in sequential order –First write code that receives all the inputs –Next write code that does first stage processing –Next add code that depends on first stage –Continue until all results are available –Produce results and record them to files

Development Stages The Availability Approach Some code depends on hardware. Write that code when new hardware arrives or when existing hardware is not otherwise scheduled for subjects. Some code depends on software. Order software tools early. Write user interface code or file formatting code at any time.

Development Stages The Feasibility Approach Sometimes it is not clear that a new experiment system or simulation will work. If it does not, then there is no purpose to adding a fancy user interface or producing output files. Start with the part that you are least confident will work. Once you prove that part works, the rest of the program development is worth the effort.

Development Stages The Generic Approach If you must wait on some aspect of software design, it can be beneficial to write routines that you expect to use over and over: –Writing or reading standard file types –Unit or file conversions (pc2mac.m) –Subject response or feedback methods –Standard stimuli (like gabor.m)

Development Stages “They Did It This Way” Research software can often be changed in minor ways to perform similar yet distinct experiments. Re-using code can save time. Be sure to UNDERSTAND the content and format of the parameters and results for existing code that you re-use.

Software Testing Verify units of measure Verify format of files Ask naïve users to try your user interface Measure brightness/size/timing of stimuli Perform calculations on known data sets