Unit 12 Software Development
– Design a Program
           Chris Daniels
 2B.P2) Describe the purpose and user
requirements for the software program
Purpose of the program
The purpose of a currency converter program is to know how much a
certain amount of money in different areas of the world are valued to
be made into that currency
User requirements of the program
The user needs it to work so they can see the program and that it work
correctly by actually converting the currencies. And for the currencies
will need to be equal.
   2B.P3) Produce a design for a program,
                including:
- A problem definition statement
- A proposed solution
- A test plan
Problem Statement
There is a problem with the converter as it does not convert to the
correct currency and there is somebody trying to convert to euros but it
is converting to rubles the person is trying to get money to go to France
but is getting money for Russia.
Proposed solution
 With the converter not converting to European currency and to Russian
 currency so there may be something wrong with the code so someone will have
 to check the code and change the code where it is needed after all the code is
 now correct the system should now work and convert to the correct currency.
Screen layout
        ………………………………………………………………
        ………………………………………………………………
        ……
Data Inputs and Outputs
The amount of money and what currency do you want it in.
The new amount of money and in the currency that you wanted it in.
Data Dictionary
Written Algorithm
1.   Start
2.   Read input amount
3.   Read input currency
4.   Read currency change
5.   Change the currency
6.   Equal amount of money to original
7.   End
Test Plan
2B.M2) Produce a detailed design for a program,
                  including:
- Alternative solutions
- A detailed proposed solution using a range of design tools
- Test data
Alternative Solutions
• In this section you should explain two alternative solutions to create
  the program. Explain why you would create each solution.
Flow Chart   Start
                                Read input
                                amount
                                Read
             Read input
                                currency
             currency
                                change
             Change the         Equal
             currency           amount of
                                money to
                                original
                          End
2B.D2) Justify the design decisions, including:
  - how they will fulfil the stated purpose and user
    requirements
  - any design constraints
Justification - Purpose
• Remember to refer back to 2B.P2 where you described two purposes.
  Justify how your design decisions will fulfil the purpose.
Justification – User Requirements
• Remember to refer back to 2B.P2 where you described user
  requirements. Justify how your design decisions will fulfil them.
Design Constraints
• Look at your proposed solution and examine any design constraints.
  What is limiting you or stopping you from designing the application
  the way you really want to?
Rejection of alternative solutions
• Explain why the alternative solutions mentioned in 2B.M2 have been
  rejected.