UserStories and Scenarios used in agile methodologies are an excellent and easy-to-use way to gather requirements and to define the expected behaviour of the system in a precise and readable manner.
Okay… let’s set a little context here. In my last post we talked about two different types of projects. The ones that are knowable and the ones that aren’t knowable. Projects where it makes sense to estimate and projects that are more like R&D investments where we are spending money to learn and discover. Today, I want to talk more about the first kind. The ones where we do have some idea of what we are building and the technical challenges that might be involved.
Peter Spung (@paspung) has started a great series on DevOps speaking to the middle management layers.
Celery ships with an configuration option called CELERY_ALWAYS_EAGER which causes all tasks to be executed immediately instead of being asynchronously executed on workers. This can be very useful for unit tests. Instead of running a real message queue and separate worker processes, your unit tests can execute all in one process and still run the necessary tasks.
I was listening recently to the “Global Product Management Talk” live podcast (which I recommend, by the way). The speaker talked about creating roadmaps for product lines. It’s an interesting topic for me, as I’m juggling between products everyday. As the the interview sped along, I asked on Twitter: How are roadmaps related to agile?
Many systematic reuse initiatives don’t take off the ground because of the over-emphasis on investing in a new set of components. There is all the talk and promise of enhanced productivity, reduced cost, and swift time to market – however, as focus shifts to building a library of components, real delivery suffers and business applications don’t see any material improvements.
I’ve outlined five potential costs of delay in the previous five posts. The real problem is this: Why should you care? Maybe you have a “sweet spot” in the way you start your projects or release them. “It just takes that long here.” (That’s the sign of a system impediment.)
Every week here and in our newsletter, we feature a new developer/blogger from the DZone community to catch up and find out what he or she is working on now and what's coming next. This week we're talking to Matt Raible, Web Architecture Consultant specializing in open source frameworks.
//The following example shows how to convert a chart to render an image file.
//Create a new Workbook.
Workbook workbook = new Workbook();
//Get the first worksheet.
Worksheet sheet = workbook.getWorksheets().get(0);
//Set the name of worksheet
//Get the cells collection in the sheet.
Cells cells = workbook.getWorksheets().get(0).getCells();
//Put some values into a cells of the Data sheet.
int chartIndex = sheet.getCharts().add(ChartType.COLUMN, 12, 1, 33, 12);
Chart chart = sheet.getCharts().get(chartIndex);
//Set properties of chart title
chart.getTitle().setText("Sales By Region");
//Set properties of nseries
//Set the fill colors for the series's data points (France - Portugal(7 points))
ChartPointCollection chartPoints = chart.getNSeries().get(0).getPoints();
ChartPoint point = chartPoints.get(0);
point = chartPoints.get(1);
point = chartPoints.get(2);
point = chartPoints.get(3);
point = chartPoints.get(4);
point = chartPoints.get(5);
point = chartPoints.get(6);
//Set the legend invisible
//Get the Chart image
ImageOrPrintOptions imgOpts = new ImageOrPrintOptions();
//Save the chart image file.
chart.toImage(new FileOutputStream("D:\\Files\\MyChartImage.png"), imgOpts);
This story goes back at least a decade, when I was first approached by a PHB with a question “How big servers are we going to need to buy for our production deployment”. The new and shiny system we have been building was nine months from production rollout and apparently the company had promised to deliver the whole solution, including hardware. Oh boy, was I in trouble.
The problem I had was that I knew were I needed to go, but instead of taking small steps, I kept trying to take one big leap at once. Which brings me to the analogy of Agile to good programming habits (and TDD would be one of them). One of the advantages in Agile development that I really like is the small steps (iteration) we do in order to reach our goal.
In this article we answer a common query about Scrum and Kanban boards: what columns should be used for tracking the progress of work items?
The gig that was suppose to be a couple of weeks long was quickly turning into a perpetual job. Soon I learned that what I was working with was a system that had a lot of bugs, but no one was willing to admit that. Eventually, frustrated by the fact that this system seemed to have a new bug every day, I asked for the specs so that I could create a test plan. That’s when I found out the worse news of all about this system: Lost Specifications.
One side of my news feed showcases how we are innovating with technology in so many new ways, and the other side just tells how screwed we are. Which is it? Are we innovating or are we drowning in big problems?
Agile teams embracing TDD thought-process to design and implement their product features have realized significant improvements in code and design quality. Still waiting and thinking about TDD?
Python has a number of different concurrency constructs such as threading, queues and multiprocessing. The threading module used to be the primary way of accomplishing concurrency. Unfortunately, threads in Python are severely limited by the Global Interpreter Lock (GIL) which causes all your threads to run on the same core.
This article deals with different approaches to load multiple versions of the same class.
This article describes an approach for creating live documentation for Java projects. One of the easiest way is to use a BDD framework - but which one? Hopefully this article will answer your questions...
In this post we will explain how we can move to shared responsibility by focusing away from roles in Scrum.
Code metrics are a conversation starter. Metrics are a great way to start the conversation that says, “Hey, I notice there may be a problem here, what’s up?” In this post, I’ll go through a few cases where I’ve used metrics effectively in concrete ways. This is personal; each case is different and your conversations will vary.