SDLC – The Agile Model – What is it?

Agile development approaches were founded on real-world experiences of software developers who called for reform due to the problems and shortfalls that can be encountered when following more conventional development models. The basis of the agile model is to tackle these challenges that are related to the origin of and the processes involved in theContinue reading “SDLC – The Agile Model – What is it?”

Procedural Programming – What is it?

Procedural Programming – Introduction In essence, Procedural Programming is a programming paradigm. A paradigm is a distinct set of concepts and methods that form a model or pattern. Furthermore, in computer science, a programming paradigm is a way of categorising programming languages based on their attributes. Traditionally a computer program is a set of logicalContinue reading “Procedural Programming – What is it?”

Event Driven Programming – What is it?

In essence, Event Driven Programming (EDP) is a programming paradigm. A paradigm is a distinct set of concepts and methods that form a model or pattern. Furthermore, in computer science, a programming paradigm is a way of categorising programming languages based on their attributes.

The Software Development Life Cycle (SDLC)

The Software Development Life Cycle, or SDLC, can be defined as a process that aims to create quality software applications while incurring the lowest costs and in the shortest possible amount of time. The SDLC includes principles and a detailed plan to be followed for developing software systems

SDLC – The Waterfall Model

The Waterfall Software / System Development Life Cycle model is a cascading, consecutive approach to systems development. The model follows the principle SDLC phases step by step in a logical manner as they are detailed, beginning with planning and/or a requirements analysis and working sequentially all the way to the deployment and maintenance stages. The waterfall model allows for the absolute completion of each stage in a gradual and consistent manner. In almost all cases when the waterfall model is correctly employed, the deliverables of each stage should act as the basis for the following stage and each phase must be completed before the next phase can begin.

Systems Analysis and Design

The initial analysis of a system is carried out to identify what a system should do. This can be achieved by breaking a system down in its individual, minimal components. A system dissolved into manageable pieces is easier to analyse when compared to the system as a whole. Furthermore, gaining an understanding of the independent segments of a system will allow an analyst to better grasp the entire system and its’ intent, and to ensure that components work / will work effectively together.

The design of a system focuses on the how. Specifically, how to fulfill the system’s aims. The process could be one of replacing an old system, or planning for an entirely new system, for a business. The design phase should always follow an initial phase of analysis. It is important to thoroughly understand either the old system and/or the requirements of the business prior to designing a system.

Software Testing – Grey Box Testing

Simply put, grey box testing is a combination of black box and white box testing. Grey box testing will cover both front end and back-end testing of a software application. For the front end testing, no programming knowledge is required whereas with the back-end it is required.

Grey box testing is a technique for testing a software application for those who have some understanding of the internal workings of the application.

Software Testing – Black Box Testing

Simply put, black box testing is a software application testing method where the functionality of the system is tested without any interaction with the internal structure of the application’s code base. This method of testing is a rather dynamic and can be applied to each of the types of software testing.

Software Testing Methodologies – Black Box, White Box and Grey Box

To test something is to evaluate the functionality of it against some criteria. The process of software application testing is an exercise with the purpose of checking whether or not a system meets both the user and system requirements that were set out in the earlier stages of the system development life-cycle. The process of software application testing involves running and analyzing a system in various ways in a bid to identifying bugs and errors and to check for requirements that might have been missed in the development stage.

Software Testing – White Box Testing

White box testing is testing that is based on the internal structure of a systems code and can also be known as glass box testing, clear box testing or structural testing. White box testing typically takes place at unit level and focuses on internal system testing.