What makes modular software development so special? Modular software development refers to the separation of a software project into individual, logically separated components. This modularity leads to the fact that the individually available software components can be developed separately from each other and then (re)used. As already mentioned in the blog post on unit testing , this has the great advantage that the individual modules can be tested separately. Software developers can use already finished components without (partially) redeveloping them. This blog post will discuss how software packages are created and delivered. One of the most common ways to realize [...]
Unpopular Onlooker: The Risk At some point we are all customers and none of us likes to buy a pig in a poke. The bigger the investment - for example an individual software solution - the less risk you want to take. Unfortunately, this risk seems to increase with the size of the project. This also applies to the contractor, depending on the contract. Frequently, fixed budgets for a fixed scope of delivery are agreed in this way. Although this provides clarity about sums and deadlines, what happens until the project is completed, the laughter about some project cartoons gets [...]
In software development, testing applications and troubleshooting takes up a large part of the time. If the modules of a software are clearly separated by loose coupling of dependencies, the software can be tested in isolation using Dependency Injection and Mock objects. However, if external resources are used by the software, such as USB devices or databases, automated testing becomes more difficult. So this blog post is about testing a database connection with Entity Framework 6. A simple ASP.NET MVC application Fig. 1 shows the rough software architecture of a simple ASP.NET MVC App. The app consists of several layers [...]
Physical Computing Platforms With physical computing platforms such as the Arduino, smaller projects can be realized quickly. Such platforms are a good introduction to microcontrollers and programming. Especially in the short time of student internships it is difficult to get familiar with larger projects and without previous knowledge of microcontrollers or programming, almost impossible. Boards like that in the Arduino-plattform are a good way to enable students without previous knowledge to work independently on projects. Here you can find out what we have already been able to achieve with a few internships and what we still have in mind. Welcome [...]
Why Unit Tests? Testing products before delivery is not new. Machines of any kind are extensively tested for stability, running time and safety before they reach the customer. So, it’s easy to test properties of physical products. But how can software be tested? The software technology differentiates in various testing types. In this blog entry, we will limit ourselves to one of the common types of tests: Unit Tests . They are easy to use and maintain at relatively low cost and thus represents a major development support. Unit Tests, in their most primitive form verify, that a tiny unit [...]