Problem
ATHE Diploma in Computing
Scenario
You have been appointed by CDE Bank who have launched a banking website to allow customers to carry out transactions online. You will join a team of existing staff, but your computing knowledge and expertise are greater than other staff. Customers of the bank can also purchase goods and services online by using their bank details. However, the CEO of CDE Bank has asked you to investigate how secure the online banking and e-commerce solutions are. In particular, the CEO would like you to investigate security around when customers are making transactions online. He has recruited you to plan and make a software solution that can be used to detect phishing websites. You will need to analyse the tasks and project manage the software development to come up with a solution to solve this problem, using software engineering tools and techniques.
Activity I
Produce a booklet for other members of the team which explains:
1. software engineering principles and practices
2. software engineering methods and techniques
3. modelling tools that can be used for software development and engineering
4. the structure of software engineering teams including the programming teams and software engineering roles and tasks.
You should explain how the roles are interlinked. In addition, in the booklet, you must evaluate the multidisciplinary nature of software development.
Activity II
Based on the organisation's requirement for a software solution that can be used to identify phishing websites, produce a project plan for the software development ensuring you apply software engineering approaches.
Activity III
Your project plan has been approved by the CEO of CDE bank and therefore you have been given permission to model the software solution using a range of software engineering methods. Produce a log of progress including screen recordings to show the software development process. Add a voice-over recording which explains the different methods of data verification and validation that you have used. Explain why these are important in systems development
Indicative Content
1. Software engineering principles, Software development process, Software development management
2. Traditional software development approaches, Software process modelling, Agile software development
3. Software modelling, system interaction, system structure, system behaviour
4. Analysis tasks, Design tasks, Implementation tasks
5. Software development and business information, Organisational aspects of system development
6. Programming teams, Software engineering roles, Software engineering tasks
7. Project management for software development, project planning, business process reengineering
8. Data modelling, Object oriented analysis and design, Behavioural models
9. Data verification, Data validation