Launching into Computer Science

Software as a Tool - Its Functionality and Development Methodologies

Unit 5

Software Classification
A computer is not able to perform a task without any instruction. In addition to this, external devices need to communicate. The software solves this problem and provides the computer with the proper instruction to perform any task. The diagram shows an excellent overview of the software classification. Furthermore, a software can be a system software or an application software, which the diagram display.
Nowadays, the system software is recognised as Operating System (OS), and it is responsible for manipulating data and the communication between the human and the computer. In order for the computer to understand a user's instruction, the language translation such as the Interpreter "Python" translates the instruction into machine-understandable code.
Without any strategies or methodologies, creating software can become too complex. However, on the other hand, a "Waterfall" method or an agile method like "Scrum" can organise the whole software development until publication.
Figure: Software Classification (own representation based on Rama, 2013)

Outcomes

  • Summary of the learning outcomes

This unit aims to:

  • Classify software and review the selection of software as a creative tool in order to solve a problem in your workplace
  • Apply different software development methodology to collaborate, design, develop and test software
  • Identify correct methodology for software validation and correctness
  • Reflection

What exactly have I learnt and how?

Unit 5 taught me the importance of good software development to succeed with the software. Whether for solving problems or entertaining, every software development needs a method for planning, controlling, and monitoring software development. Through my investigation of the PlayStation 4 operation system with the ISO 9126 quality model, I realised how important it is, besides functionality, to include usability, efficiency, flexibility, reliability, portability and integrity to develop good software. Moreover, the draft assignment helped me pick a topic for my end of the module assignment: "The application of AI in automative manufacturing". Having a topic in which you are very interested is significant for a good learning outcome. Furthermore, the "Flode" course was challenging and afforded me long nights. Nevertheless, the course helped me to make the first step into programming, and now I am better prepared to learn the programming language "Python".
  • Notes

Notes from the elaboration of the unit, various meetings, and feedback from team members and tutors

Here are few insights from the "Flode" course:

Contact Me