SlideShare a Scribd company logo
Software Development
Mr Arthur
Aims of the Lesson
 To introduce the 7 steps of the Software
Development Process
 To exam in detail the Analysis Stage
The Software Development
Process
 When developing new software the developer would
follow these steps
 A Analysis
 Dance Design
 In Implementation
 The Testing
 Dark Documentation
 Every Evaluation
 Monday Maintenance
Analysis Stage
 Analysis = Deciding what type of software
you want to create, and what features you
want it to have.
 At the Analysis stage the Customer, Systems
Analyst and Programmer agree on the
software required and create a Software
Specification
 Software Specification = a legally binding
document that outlines what the developer is
going to create
Programming Task
 I want a program that asks for 5 pupils
names. The program then asks for their NAB
scores out of 20. The program then displays
the name of each pupil, their score and
whether they have passed or failed. Pass is
>=12. Use TABS to display
Aims of the Lesson 2
 To exam in detail the Design, Implementation
and Testing Stage of the SDP
Design Stage
 At the Design Stage the
problem is broken down and a
method of solving the problem
is identified
 Design Notations
 Algorithms – pseudocode
 Where you break the program up into
steps in English
 Structure Diagrams
 Where you create a graphical
representation of the steps
Implementation and Testing
Stages
 Implementation
 The programmer coding the
algorithm into the chosen
language
 Testing
 May involve an Independent
Test Group to make sure
the program meets the
Program Specification
 Normal = data within the
normal range
 Extreme = data at the
boundaries of the normal
range
 Exceptional = data outside
the normal range
Program Task
 I want a program that asks for the names of 5
contestants and their votes. The program
should validate the votes between 0 and
1000. The program should display the name
of each contestant, their votes using tabs and
display the person with the least votes.
Aims of the Lesson 3
 To exam in detail the Documentation,
Evaluation and Maintenance Stages of the
SDP
Documentation and Evaluation
Stages
Documentation
 User Guide = A set of
instructions on how to install
and use the software. May
include tutorials and FAQs
 Technical Guide = This
document details the
technical requirements i.e
RAM, disk space. It may
also info on previous
versions and upgrades
Evaluation
 The software would be
evaluated on the following:
 Fitness for purpose
 Does the program do what it is
meant to do?
 User interface
 How user friendly is the
interface
 Readability
 Does the program has suitable
commentary
 Have tabs been used on If
statements, for loops to make it
easier to read
Software Revision Quiz
1. List the 7 stages of the Software Development
Cycle
2. What document is created at the Analysis
Stage
3. Give 2 Design notations that are used at the
Design stage
4. A program asks for a number between 1 and
100. Name 3 tests that would be carried out to
fully test the program. Give examples of the
test data
5. Give 2 documents that are created at the
Documentation stage of the SDP process
Aims of the Lesson 4
 To exam in detail the Maintenance Stages of
the SDP
 To complete the baby programming task in
pairs
Maintenance Stage
Maintenance
 Corrective
 Fixing errors in the program
 Corrective Maintenance is not paid for by the customer as the
software does not do what it is meant to and does not match
the Software Specification
 Adaptive
 Changing the software to run on a different Operating System
or environment
 Perfective
 Adding new features and improving the program in some way
 The customer would pay for this as not in Software Spec
Program Task
 I want a program that asks for the name, date of birth, birth
weight in pounds and hospital born of 5 babies. The
program should validate their weight between 1 pound and
13 pounds. The program should classify the babies as
 Underweight < 3 pounds
 Normal >=3 and < 9
 Overweight >=9.
 The program should then generate a baby id that will be put
on their baby bracelet. The id should be the first 3 letters of
their name, date of birth and first 5 letters of the hospital
 The program should use Tabs and display name, dob, birth
weight, classification, hospital and baby id.
Aims of the Lesson 5
 Machine Code
 High Level Languages
Machine Code
 Machine Code is the only language a
computer can process
 101010101
 It is an impossible language to program in
and errors would be inevitable
High Level Languages
 A High Level Languages is a programming
language that uses everyday words
 IF, Then, For
 Features
 English like words
 Build in functions like left, right, mid, ucase
 Must be translated to machine code
 Can be run on different environments
 Arithmetic functions can be performed */+-
Aims of the Lesson 6
 Translators
 Interpreter
 Compiler
Translators
 All programs written in a
High Level Language
must be translated to
Machine Code
 Interpreters
 Translates the program
one line at a time
 Easier for user to identify
errors
 Interpreter takes up RAM
as it is present during
translation
 Compilers
 Translates the High
Level Language into
Machine Code in one
operation
 Uses less RAM as
after translation
Compiler does not
need to be present
 Hard to find errors
Name, Section 1, Section 2, Section 3,
Programming Coursework, System
Coursework, Overall Score, Grade (A. B etc
 I want a program that asks for the marks of 3
pupils. It should ask for their name, section 1
marks (15), section 2 (30), section 3 (25),
Programming Coursework (15), Systems
Coursework (15). It should add up their score
and display their grade
 A = 70+/B = 60-69/C = 50-59/D = 40-49/NA = <40
1. Get user input
2. Calculate overall mark out of 100
3. Grade pupils
4. Display name, overall mark and grade
Lesson Starter
1. What is the difference between a High Level
language and machine code?
2. What is the difference between an
Interpreter and a Compiler
3. What document is created at the Analysis
stage of the SDC
4. Give 3 different factors we Evaluate
software on (FUR)
Aims of the Lesson 7
Today’s Lesson
 Macros
 Text Editors
Last Lessons
 Software Development Cycle
 Analysis – Software Specification
 Design – Algorithm/Structure
Diagram
 Testing –
Normal/Extreme/Exceptional
 Evaluation
 Maintenance
 Machine Code
 High Level Languages
 Translators
 Interpreter
 Compiler
Macros/Text Editor
 Macro
 A feature of Application
program where the
user can record mouse
clicks and assign them
to a shortcut
 Formatting text
 Adding page numbers
 Changing page layout
 Save/Print document
 Text Editor
 A window where the
programmer enters a
high level language
 Copy and paste code
 Edit code
 Indent loops/ifs
 Highlight commentary
Aims of the Lesson 7
Today’s Lesson
 Variables
 Arrays
Last Lessons
 Software Development Cycle
 Analysis – Software Specification
 Design – Algorithm/Structure
Diagram
 Testing –
Normal/Extreme/Exceptional
 Evaluation
 Maintenance
 Machine Code
 High Level Languages
 Translators
 Interpreter
 Compiler
 Macros
 Text Editors
Variable/Arrays
 Variable
 A variable is an item of data
that is given a name and
data type and is stored in
the computers memory for
later use in a program
 Data Types
 String = storing text
 Integer = whole number
 Single = non whole
numbers
 One dimensional
Array
 An array is used to store a
list of values that are the
same data type
 Each value is given an
index number
 Dim age(5) as integer
 Age(1), Age(2) etc
Lesson Starter
1. What is a Macro?
2. Give 2 features of a Text Editor
3. What is a Variable?
4. What is an Array?
5. Give 2 data types you would associate with
an Integer
Aims of the Lesson 7
Today’s Lesson
• Programming Theory
• Input/Process/Output
• Arithmetic Operations
• Predefined Functions
• Logical Operations
Last Lessons
 Software Development Cycle
 Analysis – Software Specification
 Design – Algorithm/Structure Diagram
 Testing – Normal/Extreme/Exceptional
 Evaluation
 Maintenance
 Machine Code
 High Level Languages
 Translators
 Interpreter
 Compiler
 Macros
 Text Editors
 Variables
 Arrays
Software Development
 All program can be split
up into 3 steps
 Input
length = InputBox(“……”)
 Process
Area = length * breadth
 Output
pctDisplay.print Area
Arithmetic Operations
Area = length * breadth
 Addition +
 Subtraction –
 Division /
 Multiplication *
Software Development
 Predefined Functions
 A predefined function
is a piece of code that
has already been
written for you
 UCASE(uname)
 LCASE(uname)
 LEFT(uname,3)
 RIGHT(uname,5)
 ROUND(Depth)
 Logical Operators
AND
If length = 5 AND breadth = 10 then
pctDisplay.print ……..
OR
If length = 5 OR breadth = 10 then
pctDisplay.print ……..
NOT
If NOT(length = 10) then
pctDisplay.print ……..
Aims of the Lesson 8
Today’s Lesson
• Programming Theory
• Loops
• Fixed
• Conditional
• Nested
• Standard Algorithms
• Input Validation
• Counting Occurrences
• Finding Max
• Finding Min
• Linear Search
Last Lessons
 Software Development Cycle
 Analysis – Software Specification
 Design – Algorithm/Structure Diagram
 Testing – Normal/Extreme/Exceptional
 Evaluation
 Maintenance
 Machine Code
 High Level Languages
 Translators
 Macros
 Text Editors
 Variables
 Arrays
 Input/Process/Output
 Arithmetic Operations
 Predefined Functions
 Logical Operations
Loops
 A Loop is used to repeat a group of instructions
 Fixed Loop
 A fixed loop repeats the code a set number of
times
For num = 1 to 10
Age(num) = inputbox(“Enter age”)
Next num
Loops
 Conditional Loop
 Where the loop ends when the condition is met
Do While
Do while age < 1 and age > 100
Age = inputbox(“Not valid”)
Loop
Loop Until
Do
Age = inputbox(“Enter age”)
Loop until age = 15
Standard Algorithms
Input Validation
1.1 Get name of golfer and score for the round
1.2 Do while score < 55 and score > 120
1.3 Display an error message, prompt user to re-enter
1.4 End loop
Finding Minimum
2.1 Set the lowest place in the array to minimum
2.2 For the size of the array
2.3 If the current score is lower than minimum then set to minimum
2.4 End if
2.5 Loop
Standard Algorithms
Finding Maximum
3.1 Set the lowest place in the array to maximum
3.2 For the size of the array
3.3 If the current score is higher than maximum then set to maximum
3.4 End if
3.5 Loop
Linear Search
4.1 Ask user for the target golfer
4.2 loop for each item in the list
4.3 If current item = target value then
4.4 Display message showing their score
4.5 Else display an error message
4.5 end if
4.6 end loop
Standard Algorithms
Counting Occurrences
5.1 Set the Counter to 0
5.2 Loop round for all the positions in the array
5.3 If the current position is “Chips”
5.4 Add 1 to Counter
5.5 End If
5.6 Close loop
Arrangements
Software Development Process
 Description of the stages (in order) of the software development process: analysis,
design, implementation, testing, documentation, evaluation, maintenance
 Description and exemplification of pseudocode and one graphical design notation
(structure diagram or other suitable)
 Description and exemplification of appropriate test data (normal, extreme and
exceptional)
 Description of the features of a user guide and a technical guide
 Evaluation of software in terms of fitness for purpose, user interface and readability
Software development languages and environments
 Description and comparison of machine code and high level languages
 Explanation of the need for translation; description of the functioning of interpreters
and compilers
 Description of the process of recording a macro and assigning it to a keystroke
 Description of a macro, and examples of the use of macros
 Description of the features and use of a text editor
Arrangements
High level programming language constructs
 Description and exemplification of the following constructs in an appropriate
high level language: input and output, assignment, arithmetical operations
(+,-,*,/,^) and logical operators (AND, OR, NOT), fixed loops, conditional
loops, simple and complex conditions, conditional statements (IF), nested
loops
 Description and exemplification of numeric and string variables and 1-D
arrays
 Description and exemplification of pre-defined functions
Standard algorithms
 Description and exemplification of the following standard algorithm in an
appropriate high level language: input validation
 Recognition of appropriate use of the following standard algorithms: input
validation, find min/max, count occurrences, linear search

More Related Content

What's hot

Chapter 5 software design
Chapter 5 software designChapter 5 software design
Chapter 5 software design
Piyush Gogia
 
Introduction to Computer Programming
Introduction to Computer ProgrammingIntroduction to Computer Programming
Introduction to Computer Programming
Prof. Erwin Globio
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
Swarnima Tiwari
 

What's hot (20)

Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Functional and non functional
Functional and non functionalFunctional and non functional
Functional and non functional
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020
 
Chapter 5 software design
Chapter 5 software designChapter 5 software design
Chapter 5 software design
 
Software quality management lecture notes
Software quality management lecture notesSoftware quality management lecture notes
Software quality management lecture notes
 
Waterfall model in SDLC
Waterfall model in SDLCWaterfall model in SDLC
Waterfall model in SDLC
 
Chapter 1 - An Introduction to Programming
Chapter 1 - An Introduction to ProgrammingChapter 1 - An Introduction to Programming
Chapter 1 - An Introduction to Programming
 
Introduction to Computer Programming
Introduction to Computer ProgrammingIntroduction to Computer Programming
Introduction to Computer Programming
 
Programming Fundamentals lecture 2
Programming Fundamentals lecture 2Programming Fundamentals lecture 2
Programming Fundamentals lecture 2
 
Software engineering project management
Software engineering project managementSoftware engineering project management
Software engineering project management
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
 
CIS110 Computer Programming Design Chapter (2)
CIS110 Computer Programming Design Chapter  (2)CIS110 Computer Programming Design Chapter  (2)
CIS110 Computer Programming Design Chapter (2)
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
software development and programming languages
software development and programming languages software development and programming languages
software development and programming languages
 
Introduction to c programming
Introduction to c programmingIntroduction to c programming
Introduction to c programming
 
Chapter 2 software development life cycle models
Chapter 2 software development life cycle modelsChapter 2 software development life cycle models
Chapter 2 software development life cycle models
 
Chapter 5 software design
Chapter 5 software designChapter 5 software design
Chapter 5 software design
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 

Viewers also liked

Operating system.ppt (1)
Operating system.ppt (1)Operating system.ppt (1)
Operating system.ppt (1)
Vaibhav Bajaj
 

Viewers also liked (9)

Block wise risk evalution
Block wise risk evalutionBlock wise risk evalution
Block wise risk evalution
 
Windows Mobile
Windows MobileWindows Mobile
Windows Mobile
 
Viral Loops: Making Self-Marketing Apps
Viral Loops: Making Self-Marketing AppsViral Loops: Making Self-Marketing Apps
Viral Loops: Making Self-Marketing Apps
 
Integrated Performance Evaluation System
Integrated Performance Evaluation SystemIntegrated Performance Evaluation System
Integrated Performance Evaluation System
 
Ethics for IT Professionals and IT Users
Ethics for IT Professionals and IT UsersEthics for IT Professionals and IT Users
Ethics for IT Professionals and IT Users
 
Historical evaluation of computer
Historical evaluation of computerHistorical evaluation of computer
Historical evaluation of computer
 
Ethics for IT Professionals
Ethics for IT ProfessionalsEthics for IT Professionals
Ethics for IT Professionals
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Operating system.ppt (1)
Operating system.ppt (1)Operating system.ppt (1)
Operating system.ppt (1)
 

Similar to Software development slides

Programming Theory
Programming TheoryProgramming Theory
Programming Theory
iarthur
 
Ch1 principles of software development
Ch1 principles of software developmentCh1 principles of software development
Ch1 principles of software development
Hattori Sidek
 
Program logic and design
Program logic and designProgram logic and design
Program logic and design
Chaffey College
 
Problem Solving Techniques
Problem Solving TechniquesProblem Solving Techniques
Problem Solving Techniques
Ashesh R
 
L1. Basic Programming Concepts.pdf
L1. Basic Programming Concepts.pdfL1. Basic Programming Concepts.pdf
L1. Basic Programming Concepts.pdf
MMRF2
 
Programming requirements for beginning in software engineering.pptx
Programming requirements for beginning in software engineering.pptxProgramming requirements for beginning in software engineering.pptx
Programming requirements for beginning in software engineering.pptx
TeddyDaka
 

Similar to Software development slides (20)

Beekman5 std ppt_13
Beekman5 std ppt_13Beekman5 std ppt_13
Beekman5 std ppt_13
 
Programming Theory
Programming TheoryProgramming Theory
Programming Theory
 
Computer
ComputerComputer
Computer
 
Ch1 principles of software development
Ch1 principles of software developmentCh1 principles of software development
Ch1 principles of software development
 
TAMUC LO 10
TAMUC LO 10TAMUC LO 10
TAMUC LO 10
 
Program logic and design
Program logic and designProgram logic and design
Program logic and design
 
MPP-UPNVJ
MPP-UPNVJMPP-UPNVJ
MPP-UPNVJ
 
C++ ppt
C++ pptC++ ppt
C++ ppt
 
01 Programming Fundamentals.pptx
01 Programming Fundamentals.pptx01 Programming Fundamentals.pptx
01 Programming Fundamentals.pptx
 
Problem Solving Techniques
Problem Solving TechniquesProblem Solving Techniques
Problem Solving Techniques
 
L1. Basic Programming Concepts.pdf
L1. Basic Programming Concepts.pdfL1. Basic Programming Concepts.pdf
L1. Basic Programming Concepts.pdf
 
What is algorithm
What is algorithmWhat is algorithm
What is algorithm
 
Programming Fundamentals
Programming FundamentalsProgramming Fundamentals
Programming Fundamentals
 
Aditdem
AditdemAditdem
Aditdem
 
Aditdem
AditdemAditdem
Aditdem
 
DISE - Programming Concepts
DISE - Programming ConceptsDISE - Programming Concepts
DISE - Programming Concepts
 
10 lesson8
10 lesson810 lesson8
10 lesson8
 
10th class computer science notes in english by cstechz
10th class computer science notes in english by cstechz10th class computer science notes in english by cstechz
10th class computer science notes in english by cstechz
 
Introduction.pptx
Introduction.pptxIntroduction.pptx
Introduction.pptx
 
Programming requirements for beginning in software engineering.pptx
Programming requirements for beginning in software engineering.pptxProgramming requirements for beginning in software engineering.pptx
Programming requirements for beginning in software engineering.pptx
 

More from iarthur

Info systems design and development
Info systems design and developmentInfo systems design and development
Info systems design and development
iarthur
 
Software development slides
Software development slidesSoftware development slides
Software development slides
iarthur
 
All about me by mike
All about me by mikeAll about me by mike
All about me by mike
iarthur
 
Artificial intelligence
Artificial intelligenceArtificial intelligence
Artificial intelligence
iarthur
 
Graphics slides
Graphics slidesGraphics slides
Graphics slides
iarthur
 
Internet slides
Internet slidesInternet slides
Internet slides
iarthur
 
Int 2 software slides 2010
Int 2 software slides 2010Int 2 software slides 2010
Int 2 software slides 2010
iarthur
 
Int 2 networks 2010
Int 2 networks 2010Int 2 networks 2010
Int 2 networks 2010
iarthur
 
Int 2 peripherals 2010
Int 2 peripherals 2010Int 2 peripherals 2010
Int 2 peripherals 2010
iarthur
 
Int 2 computer structure 2010
Int 2 computer structure 2010Int 2 computer structure 2010
Int 2 computer structure 2010
iarthur
 
Int 2 data representation 2010
Int 2 data representation 2010Int 2 data representation 2010
Int 2 data representation 2010
iarthur
 
Networking slides
Networking slidesNetworking slides
Networking slides
iarthur
 
Networking slides
Networking slidesNetworking slides
Networking slides
iarthur
 
Non Profit Making
Non Profit MakingNon Profit Making
Non Profit Making
iarthur
 
Word Processing Slides
Word Processing SlidesWord Processing Slides
Word Processing Slides
iarthur
 
Intro To Computer Hardware
Intro To Computer HardwareIntro To Computer Hardware
Intro To Computer Hardware
iarthur
 
Spreadsheets
SpreadsheetsSpreadsheets
Spreadsheets
iarthur
 
Int 2 Accounting
Int 2 AccountingInt 2 Accounting
Int 2 Accounting
iarthur
 
Admission Of A New Partner Accounts
Admission Of A New Partner AccountsAdmission Of A New Partner Accounts
Admission Of A New Partner Accounts
iarthur
 
Unit 4 Reprographics
Unit 4 ReprographicsUnit 4 Reprographics
Unit 4 Reprographics
iarthur
 

More from iarthur (20)

Info systems design and development
Info systems design and developmentInfo systems design and development
Info systems design and development
 
Software development slides
Software development slidesSoftware development slides
Software development slides
 
All about me by mike
All about me by mikeAll about me by mike
All about me by mike
 
Artificial intelligence
Artificial intelligenceArtificial intelligence
Artificial intelligence
 
Graphics slides
Graphics slidesGraphics slides
Graphics slides
 
Internet slides
Internet slidesInternet slides
Internet slides
 
Int 2 software slides 2010
Int 2 software slides 2010Int 2 software slides 2010
Int 2 software slides 2010
 
Int 2 networks 2010
Int 2 networks 2010Int 2 networks 2010
Int 2 networks 2010
 
Int 2 peripherals 2010
Int 2 peripherals 2010Int 2 peripherals 2010
Int 2 peripherals 2010
 
Int 2 computer structure 2010
Int 2 computer structure 2010Int 2 computer structure 2010
Int 2 computer structure 2010
 
Int 2 data representation 2010
Int 2 data representation 2010Int 2 data representation 2010
Int 2 data representation 2010
 
Networking slides
Networking slidesNetworking slides
Networking slides
 
Networking slides
Networking slidesNetworking slides
Networking slides
 
Non Profit Making
Non Profit MakingNon Profit Making
Non Profit Making
 
Word Processing Slides
Word Processing SlidesWord Processing Slides
Word Processing Slides
 
Intro To Computer Hardware
Intro To Computer HardwareIntro To Computer Hardware
Intro To Computer Hardware
 
Spreadsheets
SpreadsheetsSpreadsheets
Spreadsheets
 
Int 2 Accounting
Int 2 AccountingInt 2 Accounting
Int 2 Accounting
 
Admission Of A New Partner Accounts
Admission Of A New Partner AccountsAdmission Of A New Partner Accounts
Admission Of A New Partner Accounts
 
Unit 4 Reprographics
Unit 4 ReprographicsUnit 4 Reprographics
Unit 4 Reprographics
 

Recently uploaded

Additional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdfAdditional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdf
joachimlavalley1
 

Recently uploaded (20)

Keeping Your Information Safe with Centralized Security Services
Keeping Your Information Safe with Centralized Security ServicesKeeping Your Information Safe with Centralized Security Services
Keeping Your Information Safe with Centralized Security Services
 
Basic Civil Engineering Notes of Chapter-6, Topic- Ecosystem, Biodiversity G...
Basic Civil Engineering Notes of Chapter-6,  Topic- Ecosystem, Biodiversity G...Basic Civil Engineering Notes of Chapter-6,  Topic- Ecosystem, Biodiversity G...
Basic Civil Engineering Notes of Chapter-6, Topic- Ecosystem, Biodiversity G...
 
INU_CAPSTONEDESIGN_비밀번호486_업로드용 발표자료.pdf
INU_CAPSTONEDESIGN_비밀번호486_업로드용 발표자료.pdfINU_CAPSTONEDESIGN_비밀번호486_업로드용 발표자료.pdf
INU_CAPSTONEDESIGN_비밀번호486_업로드용 발표자료.pdf
 
The Benefits and Challenges of Open Educational Resources
The Benefits and Challenges of Open Educational ResourcesThe Benefits and Challenges of Open Educational Resources
The Benefits and Challenges of Open Educational Resources
 
slides CapTechTalks Webinar May 2024 Alexander Perry.pptx
slides CapTechTalks Webinar May 2024 Alexander Perry.pptxslides CapTechTalks Webinar May 2024 Alexander Perry.pptx
slides CapTechTalks Webinar May 2024 Alexander Perry.pptx
 
Basic_QTL_Marker-assisted_Selection_Sourabh.ppt
Basic_QTL_Marker-assisted_Selection_Sourabh.pptBasic_QTL_Marker-assisted_Selection_Sourabh.ppt
Basic_QTL_Marker-assisted_Selection_Sourabh.ppt
 
Danh sách HSG Bộ môn cấp trường - Cấp THPT.pdf
Danh sách HSG Bộ môn cấp trường - Cấp THPT.pdfDanh sách HSG Bộ môn cấp trường - Cấp THPT.pdf
Danh sách HSG Bộ môn cấp trường - Cấp THPT.pdf
 
The impact of social media on mental health and well-being has been a topic o...
The impact of social media on mental health and well-being has been a topic o...The impact of social media on mental health and well-being has been a topic o...
The impact of social media on mental health and well-being has been a topic o...
 
How to Manage Notification Preferences in the Odoo 17
How to Manage Notification Preferences in the Odoo 17How to Manage Notification Preferences in the Odoo 17
How to Manage Notification Preferences in the Odoo 17
 
Additional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdfAdditional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdf
 
Mattingly "AI & Prompt Design: Limitations and Solutions with LLMs"
Mattingly "AI & Prompt Design: Limitations and Solutions with LLMs"Mattingly "AI & Prompt Design: Limitations and Solutions with LLMs"
Mattingly "AI & Prompt Design: Limitations and Solutions with LLMs"
 
size separation d pharm 1st year pharmaceutics
size separation d pharm 1st year pharmaceuticssize separation d pharm 1st year pharmaceutics
size separation d pharm 1st year pharmaceutics
 
Operations Management - Book1.p - Dr. Abdulfatah A. Salem
Operations Management - Book1.p  - Dr. Abdulfatah A. SalemOperations Management - Book1.p  - Dr. Abdulfatah A. Salem
Operations Management - Book1.p - Dr. Abdulfatah A. Salem
 
PART A. Introduction to Costumer Service
PART A. Introduction to Costumer ServicePART A. Introduction to Costumer Service
PART A. Introduction to Costumer Service
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative Thoughts
 
B.ed spl. HI pdusu exam paper-2023-24.pdf
B.ed spl. HI pdusu exam paper-2023-24.pdfB.ed spl. HI pdusu exam paper-2023-24.pdf
B.ed spl. HI pdusu exam paper-2023-24.pdf
 
Basic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumersBasic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumers
 
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptxStudents, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
 
Salient features of Environment protection Act 1986.pptx
Salient features of Environment protection Act 1986.pptxSalient features of Environment protection Act 1986.pptx
Salient features of Environment protection Act 1986.pptx
 
Sha'Carri Richardson Presentation 202345
Sha'Carri Richardson Presentation 202345Sha'Carri Richardson Presentation 202345
Sha'Carri Richardson Presentation 202345
 

Software development slides

  • 2. Aims of the Lesson  To introduce the 7 steps of the Software Development Process  To exam in detail the Analysis Stage
  • 3. The Software Development Process  When developing new software the developer would follow these steps  A Analysis  Dance Design  In Implementation  The Testing  Dark Documentation  Every Evaluation  Monday Maintenance
  • 4. Analysis Stage  Analysis = Deciding what type of software you want to create, and what features you want it to have.  At the Analysis stage the Customer, Systems Analyst and Programmer agree on the software required and create a Software Specification  Software Specification = a legally binding document that outlines what the developer is going to create
  • 5. Programming Task  I want a program that asks for 5 pupils names. The program then asks for their NAB scores out of 20. The program then displays the name of each pupil, their score and whether they have passed or failed. Pass is >=12. Use TABS to display
  • 6. Aims of the Lesson 2  To exam in detail the Design, Implementation and Testing Stage of the SDP
  • 7. Design Stage  At the Design Stage the problem is broken down and a method of solving the problem is identified  Design Notations  Algorithms – pseudocode  Where you break the program up into steps in English  Structure Diagrams  Where you create a graphical representation of the steps
  • 8. Implementation and Testing Stages  Implementation  The programmer coding the algorithm into the chosen language  Testing  May involve an Independent Test Group to make sure the program meets the Program Specification  Normal = data within the normal range  Extreme = data at the boundaries of the normal range  Exceptional = data outside the normal range
  • 9. Program Task  I want a program that asks for the names of 5 contestants and their votes. The program should validate the votes between 0 and 1000. The program should display the name of each contestant, their votes using tabs and display the person with the least votes.
  • 10. Aims of the Lesson 3  To exam in detail the Documentation, Evaluation and Maintenance Stages of the SDP
  • 11. Documentation and Evaluation Stages Documentation  User Guide = A set of instructions on how to install and use the software. May include tutorials and FAQs  Technical Guide = This document details the technical requirements i.e RAM, disk space. It may also info on previous versions and upgrades Evaluation  The software would be evaluated on the following:  Fitness for purpose  Does the program do what it is meant to do?  User interface  How user friendly is the interface  Readability  Does the program has suitable commentary  Have tabs been used on If statements, for loops to make it easier to read
  • 12. Software Revision Quiz 1. List the 7 stages of the Software Development Cycle 2. What document is created at the Analysis Stage 3. Give 2 Design notations that are used at the Design stage 4. A program asks for a number between 1 and 100. Name 3 tests that would be carried out to fully test the program. Give examples of the test data 5. Give 2 documents that are created at the Documentation stage of the SDP process
  • 13. Aims of the Lesson 4  To exam in detail the Maintenance Stages of the SDP  To complete the baby programming task in pairs
  • 14. Maintenance Stage Maintenance  Corrective  Fixing errors in the program  Corrective Maintenance is not paid for by the customer as the software does not do what it is meant to and does not match the Software Specification  Adaptive  Changing the software to run on a different Operating System or environment  Perfective  Adding new features and improving the program in some way  The customer would pay for this as not in Software Spec
  • 15. Program Task  I want a program that asks for the name, date of birth, birth weight in pounds and hospital born of 5 babies. The program should validate their weight between 1 pound and 13 pounds. The program should classify the babies as  Underweight < 3 pounds  Normal >=3 and < 9  Overweight >=9.  The program should then generate a baby id that will be put on their baby bracelet. The id should be the first 3 letters of their name, date of birth and first 5 letters of the hospital  The program should use Tabs and display name, dob, birth weight, classification, hospital and baby id.
  • 16. Aims of the Lesson 5  Machine Code  High Level Languages
  • 17. Machine Code  Machine Code is the only language a computer can process  101010101  It is an impossible language to program in and errors would be inevitable
  • 18. High Level Languages  A High Level Languages is a programming language that uses everyday words  IF, Then, For  Features  English like words  Build in functions like left, right, mid, ucase  Must be translated to machine code  Can be run on different environments  Arithmetic functions can be performed */+-
  • 19. Aims of the Lesson 6  Translators  Interpreter  Compiler
  • 20. Translators  All programs written in a High Level Language must be translated to Machine Code  Interpreters  Translates the program one line at a time  Easier for user to identify errors  Interpreter takes up RAM as it is present during translation  Compilers  Translates the High Level Language into Machine Code in one operation  Uses less RAM as after translation Compiler does not need to be present  Hard to find errors
  • 21. Name, Section 1, Section 2, Section 3, Programming Coursework, System Coursework, Overall Score, Grade (A. B etc  I want a program that asks for the marks of 3 pupils. It should ask for their name, section 1 marks (15), section 2 (30), section 3 (25), Programming Coursework (15), Systems Coursework (15). It should add up their score and display their grade  A = 70+/B = 60-69/C = 50-59/D = 40-49/NA = <40 1. Get user input 2. Calculate overall mark out of 100 3. Grade pupils 4. Display name, overall mark and grade
  • 22. Lesson Starter 1. What is the difference between a High Level language and machine code? 2. What is the difference between an Interpreter and a Compiler 3. What document is created at the Analysis stage of the SDC 4. Give 3 different factors we Evaluate software on (FUR)
  • 23. Aims of the Lesson 7 Today’s Lesson  Macros  Text Editors Last Lessons  Software Development Cycle  Analysis – Software Specification  Design – Algorithm/Structure Diagram  Testing – Normal/Extreme/Exceptional  Evaluation  Maintenance  Machine Code  High Level Languages  Translators  Interpreter  Compiler
  • 24. Macros/Text Editor  Macro  A feature of Application program where the user can record mouse clicks and assign them to a shortcut  Formatting text  Adding page numbers  Changing page layout  Save/Print document  Text Editor  A window where the programmer enters a high level language  Copy and paste code  Edit code  Indent loops/ifs  Highlight commentary
  • 25. Aims of the Lesson 7 Today’s Lesson  Variables  Arrays Last Lessons  Software Development Cycle  Analysis – Software Specification  Design – Algorithm/Structure Diagram  Testing – Normal/Extreme/Exceptional  Evaluation  Maintenance  Machine Code  High Level Languages  Translators  Interpreter  Compiler  Macros  Text Editors
  • 26. Variable/Arrays  Variable  A variable is an item of data that is given a name and data type and is stored in the computers memory for later use in a program  Data Types  String = storing text  Integer = whole number  Single = non whole numbers  One dimensional Array  An array is used to store a list of values that are the same data type  Each value is given an index number  Dim age(5) as integer  Age(1), Age(2) etc
  • 27. Lesson Starter 1. What is a Macro? 2. Give 2 features of a Text Editor 3. What is a Variable? 4. What is an Array? 5. Give 2 data types you would associate with an Integer
  • 28. Aims of the Lesson 7 Today’s Lesson • Programming Theory • Input/Process/Output • Arithmetic Operations • Predefined Functions • Logical Operations Last Lessons  Software Development Cycle  Analysis – Software Specification  Design – Algorithm/Structure Diagram  Testing – Normal/Extreme/Exceptional  Evaluation  Maintenance  Machine Code  High Level Languages  Translators  Interpreter  Compiler  Macros  Text Editors  Variables  Arrays
  • 29. Software Development  All program can be split up into 3 steps  Input length = InputBox(“……”)  Process Area = length * breadth  Output pctDisplay.print Area Arithmetic Operations Area = length * breadth  Addition +  Subtraction –  Division /  Multiplication *
  • 30. Software Development  Predefined Functions  A predefined function is a piece of code that has already been written for you  UCASE(uname)  LCASE(uname)  LEFT(uname,3)  RIGHT(uname,5)  ROUND(Depth)  Logical Operators AND If length = 5 AND breadth = 10 then pctDisplay.print …….. OR If length = 5 OR breadth = 10 then pctDisplay.print …….. NOT If NOT(length = 10) then pctDisplay.print ……..
  • 31. Aims of the Lesson 8 Today’s Lesson • Programming Theory • Loops • Fixed • Conditional • Nested • Standard Algorithms • Input Validation • Counting Occurrences • Finding Max • Finding Min • Linear Search Last Lessons  Software Development Cycle  Analysis – Software Specification  Design – Algorithm/Structure Diagram  Testing – Normal/Extreme/Exceptional  Evaluation  Maintenance  Machine Code  High Level Languages  Translators  Macros  Text Editors  Variables  Arrays  Input/Process/Output  Arithmetic Operations  Predefined Functions  Logical Operations
  • 32. Loops  A Loop is used to repeat a group of instructions  Fixed Loop  A fixed loop repeats the code a set number of times For num = 1 to 10 Age(num) = inputbox(“Enter age”) Next num
  • 33. Loops  Conditional Loop  Where the loop ends when the condition is met Do While Do while age < 1 and age > 100 Age = inputbox(“Not valid”) Loop Loop Until Do Age = inputbox(“Enter age”) Loop until age = 15
  • 34. Standard Algorithms Input Validation 1.1 Get name of golfer and score for the round 1.2 Do while score < 55 and score > 120 1.3 Display an error message, prompt user to re-enter 1.4 End loop Finding Minimum 2.1 Set the lowest place in the array to minimum 2.2 For the size of the array 2.3 If the current score is lower than minimum then set to minimum 2.4 End if 2.5 Loop
  • 35. Standard Algorithms Finding Maximum 3.1 Set the lowest place in the array to maximum 3.2 For the size of the array 3.3 If the current score is higher than maximum then set to maximum 3.4 End if 3.5 Loop Linear Search 4.1 Ask user for the target golfer 4.2 loop for each item in the list 4.3 If current item = target value then 4.4 Display message showing their score 4.5 Else display an error message 4.5 end if 4.6 end loop
  • 36. Standard Algorithms Counting Occurrences 5.1 Set the Counter to 0 5.2 Loop round for all the positions in the array 5.3 If the current position is “Chips” 5.4 Add 1 to Counter 5.5 End If 5.6 Close loop
  • 37. Arrangements Software Development Process  Description of the stages (in order) of the software development process: analysis, design, implementation, testing, documentation, evaluation, maintenance  Description and exemplification of pseudocode and one graphical design notation (structure diagram or other suitable)  Description and exemplification of appropriate test data (normal, extreme and exceptional)  Description of the features of a user guide and a technical guide  Evaluation of software in terms of fitness for purpose, user interface and readability Software development languages and environments  Description and comparison of machine code and high level languages  Explanation of the need for translation; description of the functioning of interpreters and compilers  Description of the process of recording a macro and assigning it to a keystroke  Description of a macro, and examples of the use of macros  Description of the features and use of a text editor
  • 38. Arrangements High level programming language constructs  Description and exemplification of the following constructs in an appropriate high level language: input and output, assignment, arithmetical operations (+,-,*,/,^) and logical operators (AND, OR, NOT), fixed loops, conditional loops, simple and complex conditions, conditional statements (IF), nested loops  Description and exemplification of numeric and string variables and 1-D arrays  Description and exemplification of pre-defined functions Standard algorithms  Description and exemplification of the following standard algorithm in an appropriate high level language: input validation  Recognition of appropriate use of the following standard algorithms: input validation, find min/max, count occurrences, linear search