Object-oriented programming started in the 1960’s with Simula, it was followed by Smalltalk and later by C++ and Java. Object-oriented programming promotes coding in ways that were not possible with procedural programming, allowing for more maintainable projects. Agile programming is also really old. Scrum started in the 1980s and extreme programming and other variants started …
Category Archives: Uncategorized
Test-driven development, you need to pass multiple tests.
Test-driven development (TDD) is a development process that occurs in very short cycles. All the requirements are expressed as test cases and the software is changed until those test cases are passed. The goal of TDD is to write clean code that works. TDD follows a cycle. Tests are added. You see how the tests …
Continue reading “Test-driven development, you need to pass multiple tests.”
Object-oriented testing, obtaining better quality code.
When working with an object-oriented system, object-oriented testing is preferred, conventional testing strategies may yield less desired results. Object-oriented testing revolves around the concept of classes. There are three main types of object-oriented testing: class testing, inter-class testing and system testing. Image source Class testing: this type of tests include unit testing, which was already …
Continue reading “Object-oriented testing, obtaining better quality code.”
Verification and validation, is the code doing its purpose?
When developing software, verification and validation serve the purpose of verifying if the software meets the specified requirements and if the software is fulfilling its purpose. Doing verification and validation can help us answer some key questions: “Was this software what we should have built? Assuming we build this software, will we be able to …
Continue reading “Verification and validation, is the code doing its purpose?”
Code revision, necessary for better code quality.
For code revision, I will first talk briefly talk about some of the best practices when doing code review and then talk about personal experience with this topic. Let’s start by defining what is code review. Code review is when one or more people check a program you wrote by reading parts of it. The …
Continue reading “Code revision, necessary for better code quality.”
Mapping the design of a class to code.
After doing design, you may end up with a class diagram. When the implementation part of a project begins you will have to code those classes. There are certain techniques that make mapping a diagram to code easier. This significantly improves the speed at which implementation happens. I will illustrate this using an example. The …
Turning a class into a table.
Many modern businesses use programming languages like Java or C# to build applications and use a relational database to store the needed data. There are other options, but object-oriented technologies and relational databases are the norm. To store classes in a relational database, it is necessary to to a class to table conversion. The first …
UML, a general-purpose modeling language.
Unified Modeling Language (UML) is a general-purpose modeling language. The purpose of UML is to define a standard way to visualize a system and its design. A good analogy for understanding UML would be to think of it as if it were the blueprints of a house, but instead, the blueprints of s system. UML …
Continue reading “UML, a general-purpose modeling language.”
Design patterns, solutions to common problems.
When working in software development, you will often come across the same problems over and over. A design pattern provides a solution for these recurring problems. A design pattern’s main goal is to speed up development by providing well tested solutions. Design patterns, rather than being a block of code, they are a concept of …
Continue reading “Design patterns, solutions to common problems.”
Modeling languages, a better way to express a project.
Modeling languages provide a way to express a system, a project or some information using a structure that follows a consistent set of rules for easier understanding. The rules are necessary in order to be able to interpret the language. Modeling languages have been around since the start of the 20th century and are essential …
Continue reading “Modeling languages, a better way to express a project.”