Get SWE4201 Introduction to Software Development Assignment
SWE4201 Introduction to Software Development in BSc (Hon) Computing and BEng Software Engineering Foundation Year
|PROGRAMME||BSc (Hon) Computing and BEng Software Engineering Foundation Year|
|MODULE TITLE||Introduction to Software Development|
|Assessed Learning Outcomes: LO2: Construct logically and syntactically correct programs using appropriate programming constructs. LO3: Demonstrate systematic testing of programmed solutions to identify and correct syntax, semantic and logical errors. LO4: Present effective use of modelling standards to represent system structure, behaviour and interaction.|
Assessment Type: Portfolio
This is your assignment for this module. It is worth 60% of your overall grade for this module.
This is an INDIVIDUAL piece of work contributing towards the module assessment. Evidence of plagiarism or collusion will be taken seriously, and University regulations followed. You are advised to be familiar with the University definitions of plagiarism and collusion.
Please ensure to use TurnItIn to check your work and that your similarity score is not more than 20%.
Portfolio Item 1 (25 marks)
Write a program in Python that asks the user for a series of numbers. The program starts by asking the user for the size of this series then prompts the user to enter the numbers. When all numbers have been taken, the program displays:
- The numbers sorted.
- The average
- The median
- The smallest number.
- The largest number.
Portfolio Item 2 (25 marks)
Write a program in Python that generates a random number between 1-100. The user is then asked to guess the number. If the guessed number is less than 10 numbers higher or lower, the program will display “Close”. Otherwise, it will display “Keep trying”. When the user guesses the number, the program will say “Correct” and displays the number of attempts. Lastly, the program will give the user the choice to either start again or quit.
Portfolio Item 3 (50 marks)
Design and produce a Java program that simulates an ATM machine. You are required to implement and demonstrate an understanding of the following Java constructs within your program:
- Decision making
- Error handling
The following assumptions are to be taken into consideration when developing the program:
- Username and password (or PIN) are used instead of a bank card.
- Your program will contain a few users for testing.
- Users will have different account types (saving, current, business).
- Your program will run as a console application.
- Your program should consist of a number of classes.
- The Main class should remain free from unnecessary code.
Your program will illustrate the following specifications:
- The user will be asked for username
- If username is valid, the user will be asked to enter password (or PIN)
- The main menu is then displayed (check balance, withdraw, deposit, change password (or PIN), Quit). Each option will display a sub-menu (except quit).
- After each function, the main menu is displayed again.
- If Quit, the program will go back to step 1
- A Word document explaining your solution for each task and containing evidence of the steps you followed to design your programme. Your document must include a
- A description of the task and its objectivehow you tend to solve the problem.a discussion of the programming constructs you will be implementing.what measures you will be following to detect errors.
- Evidence of appropriate testing
Your document should also include evidence of the design and implementation process. This may include any of the following:
- Flow Chart
- Pseudo Code
- Class diagram
- Use cases diagram.
You need to attach a zip file of your solution in the appendix section of your document.
Your document should be in a report format containing a table of content, headings and sub-headings as necessary. You are also required to acknowledge any source of information you have used in your document in the form of in-text citations; and a reference list at the end of your document.