Does Agile (scrum) require one server environment? [closed]

Is it necessary/recommend/best practice/any other positive to use only one server environment to perform all development, unit testing and QA?

If so, is it then wise/part of Agile to then have only one staging environment before Live?

Considering that this could mean internationally distributed teams of developers and testers in different time zones is this wise?


This is something being implemented by our QA manager. The opinion put forward is that doing all the dev and testing on a single server is “Agile.” The staging environment would be a second environment, and then live.

5

Agile is:

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

Set up your development environment to reflect and support these principles.

Scrum is a way to manage your work, not your development environment.

3

The QA manager might get his idea from the seemingly common interpretation of Agile where a team delivers a completely (QA-)tested product each spring that can be rolled out to the customers and he extrapolated that to reach the conclusion that it can be best achieved with a single development/QA environment.

And it might be one way to implement Agile practices, but it certainly is not the only way. I have worked with scrum in an environment where the development and QA teams were largely separate, and the QA team was the “customer” of the development team. In such an environment, the development and QA teams naturally work on different servers/deployments.

We can’t really advise if a single dev/QA server environment is going to work for you. It depends too much on how you are used to work and how well the different people can cope with the occasional broken build.

One thing is for certain: Agile does not dictate anything with regard to how you set up your development (and related) environments.

It is well established in a waterfall environment that the early detection of bugs reduces cost of fixing them. As analogy, you could think of all waterfall stages happening concurrently.

Therefore, a way of supporting that and reducing waste, you could argue that using one development server could cut costs. As soon as the developer has finished, the Testers can begin doing their work. It eliminates the waste of having to deploy the software to a new environment and the waste of waiting time.

Of course, testing deployment in itself is valuable. Having features in a state of development may cause false positives – unfinished features may ‘work’ and then later regress or testers tell you that it doesn’t work when it isn’t finished. You have to make this judgement call for our own team. We don’t have enough context for a definitive answer.

And in the end, your QA manager doesn’t actually have to do the coding himself. In this context he has a ‘chicken’ role. If your team of developers feel that they can work better or more productively by ignoring him, then they should.

I think teams can work in more agile fashion if they have multiple servers at appropriate levels..

First some assumptions: Two development teams: USA and Pakistan. QA is a separate team and uses nightly build. Development teams are highly productive and do frequent check-ins. They can use a Distributed Version Control e.g. git.

So a developer from Team USA will run unit test on his machine for areas effected by his latest check-in to Local Repository and will then push the changes to the Team Repository. There the complete unit testing suite along with automated functional tests* to be run on Product A. If everything is green then the code changes to be anatomically pushed to Check-Build Repository where integrated tests would run. If still green, then changes to be automatically pushed to Master Repository used for nightly build. That nightly build to be used by the QA next day.

All repositories to have their own application/data/build servers.

*If functional tests are long running then we can have two level of Team Repositories. One for short running tests (e.g. all unit tests, some functional tests) and second for long running functional tests.

Although as Bart says, Agile might not dictate an environmental set-up, the values and principles do indicate best practices where code is aggregated and tested on an ongoing basis. That practice is in direct opposition to the gatepost approach in traditional waterfall environments. Transition through the gateposts suggests an approach is waterfall. High levels of automated integration testing suggests agility.

Bottom Line: You’ve got to have essentially all of the testing done within the confines of the Sprint to meet any Agile Definition of Done. How the code is Released to Market is up to the business. They can RTM weekly, monthly or quarterly and still claim to be Agile, but they need to maintain a Staging site for code that is Done but not Released.

Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa Dịch vụ tổ chức sự kiện 5 sao Thông tin về chúng tôi Dịch vụ sinh nhật bé trai Dịch vụ sinh nhật bé gái Sự kiện trọn gói Các tiết mục giải trí Dịch vụ bổ trợ Tiệc cưới sang trọng Dịch vụ khai trương Tư vấn tổ chức sự kiện Hình ảnh sự kiện Cập nhật tin tức Liên hệ ngay Thuê chú hề chuyên nghiệp Tiệc tất niên cho công ty Trang trí tiệc cuối năm Tiệc tất niên độc đáo Sinh nhật bé Hải Đăng Sinh nhật đáng yêu bé Khánh Vân Sinh nhật sang trọng Bích Ngân Tiệc sinh nhật bé Thanh Trang Dịch vụ ông già Noel Xiếc thú vui nhộn Biểu diễn xiếc quay đĩa Dịch vụ tổ chức tiệc uy tín Khám phá dịch vụ của chúng tôi Tiệc sinh nhật cho bé trai Trang trí tiệc cho bé gái Gói sự kiện chuyên nghiệp Chương trình giải trí hấp dẫn Dịch vụ hỗ trợ sự kiện Trang trí tiệc cưới đẹp Khởi đầu thành công với khai trương Chuyên gia tư vấn sự kiện Xem ảnh các sự kiện đẹp Tin mới về sự kiện Kết nối với đội ngũ chuyên gia Chú hề vui nhộn cho tiệc sinh nhật Ý tưởng tiệc cuối năm Tất niên độc đáo Trang trí tiệc hiện đại Tổ chức sinh nhật cho Hải Đăng Sinh nhật độc quyền Khánh Vân Phong cách tiệc Bích Ngân Trang trí tiệc bé Thanh Trang Thuê dịch vụ ông già Noel chuyên nghiệp Xem xiếc khỉ đặc sắc Xiếc quay đĩa thú vị
Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa
Thiết kế website Thiết kế website Thiết kế website Cách kháng tài khoản quảng cáo Mua bán Fanpage Facebook Dịch vụ SEO Tổ chức sinh nhật