Where is the programming architecture discussed during the fight?

Say I have my vision, and now my product is lagging behind objects. This part is written and ready for use. I am going to create my sprint (s). I am curious. When the development team sits down and says “let's use this platform, this framework and language” and things like “We need a class here” or “I see a way to use the interface with this”, etc. When does this conversation take place?

Are there any meetings that take place before the sprint, where someone decides for all the teams - “We will use Linux, MySQL, PHP and CodeIgniter”, and then one of the teams has a sprint to implement this infrastructure, while the other teams are waiting to complete, to start other sprints (A2 team will build a ui or security model and its features from the backlog of the product)?

This is also when tools like trac will be used at the team level, when will sprints start?

Sorry if I'm everywhere with this. I have never seen this, and when I think I understand, I think of a new question.

This also applies to the point, but what do you call your teams? Is Bob's team, Smith's team, something more colorful?

Thanks.

+4
source share
5 answers

The short answer is: “It depends,” as the first part may contain other commands that dictate these terms to a certain extent. For example, in my current project, some things are almost set, for example. IDE = Visual Studio, bug tracking = HP Quality Center, Version Control = Subversion, O / S for XP Professional developers, etc.

There might be Sprint 0, where some infrastructure elements are handled as a CI server, a wiki for the team, making sure everyone has SVN accounts and other administrative things that need to be handled.

Command names, such as code names, can appear at any time, although they can have different meanings, because what someone can use for the command name in one place may not be so good in another place, for example. The Voltron team may not be suitable for those who are not familiar with this term.

+1
source

Some teams start their projects with Sprint Zero , where they improve vision, define global architecture (choice of platform, language, not class or interfaces), the definition of "done" ...

This Sprint is special, it concerns preparation and, unlike other sprints, it may not lead the team to execute any working software.

+1
source

If you are part of the agile-scrum team, chances are that your company has already defined patterns and architectures.

In my opinion, scrum teams are not responsible for the design. There are separate design teams that are responsible for the overall design and integration plan of any ongoing projects.

The development team performs the strategic part of the project development phase, which is a plan of architecture, design and integration. These teams may have their own sprint sprints.

Scrum-master together with the management team are responsible for the tactics of the implementation of design projects.

QA programmers, testers, and engineers have operational responsibility for writing and testing code.

+1
source

I would divide it into several parts.

Things like choosing tools / platforms (Linux, MySQL, PHP, etc.), I would even agree to run sprint 0. I believe that sprint 0 is more like setting up vision and a high-level architecture, which in some The moment depends on the tools / platform of your choice. The people you would like to have on the team will also be different for the ASP.NET project than for the PHP project.

Another thing is the discussion of discussions like "I need a class here and an interface there." This level of detail cannot really be decided during sprint 0. We just go with these decisions all the way. This means that we often change our architecture, but this is a rare situation when the changes are deep. And almost always, when we change something, this is an informed decision.

To summarize: key technological decisions before starting work, high-level architecture during sprint 0, design decisions of the lower level if necessary (during sprints).

+1
source

"Sprint 0" is the standard launch approach. For the current core architecture solutions (switch toolkit, language, platform), a series of studies related to spikes worked well if they were as small and focused as possible. The story is to solve a specific issue or prove a concept. Infrastructure issues can - and I would argue that they should be broken down into small stories or you can roam the map.

Small changes in infrastructure sometimes work well, like a “tax” on other stories, and sometimes not. (For example, researching and adding a dependency injection tool, switching to a general hibernation tool) Tax stories require excellent communication between product and development. It is assumed that some impatient developer has already done homework at night on the infrastructure.

Without success, we tried to hope that the main decisions in the field of architecture will occur in the course of ordinary work. This fails because the fight makes you focus.

0
source

All Articles