Archive of posts in tag 'Software Development'

Please note: This archive page is only available in English. If a German version of a post is available, you can change the language once you've opened the post.
See all posts

Scroll down to see more ...

Aug 6, 2018

Java Annotation Processors - Creating Configurations

In the second section, we would like to focus on generating configuration files for a simple plugin library. To do this, we will write an annotation processor that exports all classes which are annotated with an `@Extension` annotation to an XML file. In addition to the full name of the class, the Javadoc for the class is also written to the XML file. Additionally, we will write a class that allows us to read these files from the classpath.

Read more

Jul 13, 2018

Coding Continuous Delivery — Static Code Analysis with SonarQube and Deployment on Kubernetes et al. with the Jenkins Pipeline Plugin

Jenkins Pipelines were subject to three former blog posts. This last part one is dedicated to the integration of SonarQube, Kubernetes and CD on other platforms.

Read more

Jun 15, 2018

Java Annotation Processors - An introduction

Java annotation processors are a very powerful tool in a developer’s toolkit. They can be used for many things, such as logging information during the build, aborting a build with an error message, creating configurations and documentation, altering classes or creating new classes.

Read more

Jun 6, 2018

Own Your Code

Due to the recent announcement of the acquisition of GitHub by Microsoft and the (sometimes very emotional) discussions about possible ramifications, it becomes obvious that people, teams or companies use services like GitHub for many different reasons. That is because they all have different prerequisites and requirements; GitHub hosts code for 100% Open Source developers as well as for companies with private repositories only and everything in between.

Read more

May 24, 2018

Coding Continuous Delivery—Helpful Tools for the Jenkins Pipeline

After the first two parts of this series discuss the basics and the performance of Jenkins Pipelines, this article describes useful tools and methods: Shared libraries allow for reuse for different jobs and unit testing of the Pipeline code. In addition, the use of containers with Docker offers advantages when used in Jenkins Pipelines.

Read more

May 2, 2018

Coding Continuous Delivery—Performance optimization for the Jenkins Pipeline

If you’ve ever used a conventional CI tool to set up a Continuous Delivery pipeline by chaining individual jobs without any direct pipeline support, then you’ll know just how complicated this can get. In this article series, we’ll explain how a pipeline can be defined as code in a central location using the Jenkins pipeline plugin. In the first part of this article series, we’ll take a look at the basics and share some practical tips for getting started.

Read more

Apr 19, 2018

Coding Continuous Delivery—Jenkins pipeline plugin basics

If you’ve ever used a conventional CI tool to set up a Continuous Delivery pipeline by chaining individual jobs without any direct pipeline support, then you’ll know just how complicated this can get. In this article series, we’ll explain how a pipeline can be defined as code in a central location using the Jenkins pipeline plugin. In the first part of this article series, we’ll take a look at the basics and share some practical tips for getting started.

Read more

Feb 28, 2017

First Steps Towards Test Management

If you develop software it is inevitable to test the code that was programmed and there are several different ways to do that. For instance you can automate your tests or execute them manually. No matter how you carry out your tests you have to ensure that you test the right thing and that you test everything that is relevant. That is where test cases and scenarios come into play.

Read more

Dec 20, 2016

Software Prototyping - Rapid Application Development

Prototypes are a great way to get feedback on design ideas and the feasibility of technical solutions. RAD (Rapid Application Development) is a methodology that focuses on starting development asap instead of writing rigorous design specifications. In contrast to the advice from the first post on software prototyping, to never use a prototype in production, RAD does exactly that. That is why we want to take a closer look at it.

Read more

Nov 4, 2016

Noestimates Part2 Get Started

NoEstimates is a lean and agile methodology that focuses on the delivery of customer value. To reach this goal it tries to minimize non-value-creating actions like the estimation of implementation effort for User Stories. In the first part we introduced the basic ideas of the methodology. In this part we want to provide some tips on how you can get started with NoEstimates.

Read more

Nov 4, 2016

No Estimates Part 1 - Just Another Agile Methodology

In the "Lean way of thinking" effort to estimate the implementation time for tasks, user stories or features, is waste, because it doesn´t produce value to the customer, it just makes people feel better. Therefore time spent on such activities should be reduced as much as possible. NoEstimates is an agile methodology that helps you to focus on creating customer value instead of spending time on things that don´t create value.

Read more

May 24, 2016

Software Prototyping

Prototyping is a great way to get an impression of how a product or idea could look like. In manufacturing you can use e.g. 3D printers to create prototypes. In software development you still have to code but you can apply different principles compared to developing a "real" product. We want to give a short introduction into software prototyping, because it can help you to develop better software, faster.

Read more

Feb 24, 2016

How to improve software quality

In the last post we defined quality as "the degree of conformance to explicit or implicit requirements and expectations" and took a closer look at the different terms of the definition. During this examination it became clear that quality starts with thoroughly defined requirments. In this post we want to go one step further and show which steps can be taken to improve quality.

Read more

Feb 24, 2016

Understanding Software Quality

People often talk about high quality software products, but what is that? How can you measure or compare the quality of an application? Let´s take a closer look at this topic and discuss what quality is all about and how it can be improved.

Read more

Jan 7, 2016

Bring Your Product Idea to Life

Lean Startup is a methodology that focuses on successfully bringing product ideas to life. The main elements of the approach are an interactive product launch, very short development iterations and as the most important element, customers´ feedback.

Read more

Sep 22, 2015

Making Estimations

When you are working on a software development project you need to estimate the required effort for tasks or a whole project. In traditional project management (waterfall) it is necessary to estimate the overall expenses for the project before it has even started. This comes along with high uncertainties and risk. In projects that are using agile approaches the uncertainties are lower, because you only need to consider the next iteration in detail (in case of Scrum). Nevertheless it is necessary to estimate effort and there are different approaches for that.

Read more

Aug 31, 2015

Agile Contracts

Agile approaches and methodologies are being used more and more, because the benefits of using them can be huge, e.g. improved quality of products. But often an issue arises that makes adopting agile in companies difficult: the contract with the customer. Clients often prefer fixed prices and demand a fixed set of requirements which is totally in contrast with the principles of agile approaches. This prevents that the development team can take advantage of the full potential. Lately, the awareness for this issue rose and efforts for creating contracts that support agile working are undertaken.

Read more

Jul 20, 2015

How we use SCM-Manager Universe

In software development there is no such thing as the holy grail, no perfect process that you can follow in each project and that ensures that everything works out smoothly. But there are tons of very helpful best practices that you can use as a guideline. One of the principles of SCM-Manager Universe is that you can adapt it to different software development processes, because it isn't designed specifically for one process. To give you a better understanding of how you can use SCM-Manager Universe, we want to show you how we configured the appliance for one of our projects.

Read more

Jun 30, 2015

Software Development in the Cloud

It is predicted that the cloud market will keep on growing for the next years and that more and more businesses will start moving to the cloud. That's why we want to take a closer look at the pros and cons of this subject, especially focused on advantages and disadvantages for software development with cloud services.

Read more

Apr 28, 2015

Automated Release Management

Use SCM-Manager Universe to implement an automated release-management for your projects. You can do that by using Jenkins and Sonatype Nexus. In this post we will show the necessary configuration for Maven projects with an automated deploy of snapshots and release of new versions.

Read more

Mar 3, 2015

Code Anywhere

Web IDEs are a good way to be independent from a single workstation. Over the last couple of months a large number of web IDEs came up, either as cloud service or as server based option. Depending on your project and the way you work, it could be a good alternative to a classic IDE. We want to take a look at Orion by Eclipse, which is geared for Java projects, just like our appliance and the standard Eclipse IDE. Therefore it could be a perfect match to integrate Orion into SCM-Manager Universe.

Read more

Feb 3, 2015

Code Conventions

80% of lifetime costs goes to maintenance and hardly any software is maintained for its whole life by the original author. Therefore it is crucial that code is written in a comprehensible manner. Code conventions help to achieve this.

Read more

Nov 28, 2014

PHP meets SCM-Manager Universe

To keep SCM-Manager Universe as lean as possible the appliance is geared for Java projects. To use it with some of the other programming languages it is necessary to perform some modifications. We want to show you how to adjust your SCM-Manager Universe for PHP projects.

Read more

May 23, 2014

SCM-Manager Plugins Part 7: pathwp and branchwp

If you want to restrict the write access to parts of your repositories, SCM-Manager offers you two useful plugins: scm-branchwp-plugin and scm-pathwp-plugin. Both enable you to manage write access to your repositories in more detail, either by paths or by branches.

Read more

Sep 4, 2013

SCM-Manager Plugins Part 6: Checkstyle

We published a new SCM-Manager plugin: scm-checkstyle. It helps you to improve your software quality in Java projects by checking your code against code conventions in a very early stage of software development where adaptations are only little time-consuming.

Read more

Jul 22, 2013

SCM-Manager Universe Tools Part 1: Jenkins

This is the first part of our new series "SCM-Manager Universe Tools" in which we want to present the tools that are part of SCM-Manager Universe in more detail. First of all we want to present Jenkins, a continuous integration tool. We will introduce Jenkins and continuous integration in general and special circumstances of the Jenkins installation on SCM-Manager Universe.

Read more

Jun 5, 2013

Open Source. A Success Story

What comes into your mind when you hear "open source"? Do you think about something that came up several years ago, which is now a trend in software development? Or do you think about something that was there from the early days of the computer age, went through a difficult time and is now celebrating a renaissance? In this post we give a condensed overview on the history of open source, its characteristics and a prospect on where it might go.

Read more

Apr 18, 2013

Version Control Part 1: SCM and the SCM-Manager

Nowadays distributed source code management is a must-have tool for every developer and a large number of different implementations compete for attention. So getting started is a complex task. To make the start more easy we want to show you today the development of source code management from centralized to distributed systems and the on top tool SCM-Manager. In following articles we will familiarize you with the different version control systems (VCS) in more depth.

Read more

©2018 Cloudogu GmbH. All rights reserved. Legal Notice | Privacy Policy

Cloudogu™, Cloudogu EcoSystem™ and the Cloudogu™ logo are registered trademarks of Cloudogu GmbH, Germany.