档案为‘敏捷软件开发’类别
-->软件工程框架通过敏捷软件开发概念介绍被重新了解释。 敏捷提示了在软件项目的生命周期的更加巨大的改善。 当实施敏捷与近海或分布的开发小组,那里是机会论及项目的三个方面。 我们在敏捷将报道这三个项目并且提供一点背景。
There are several development tactics introduced by Agile. Most tactics focus attempt to minimize and/or expose risk in developing software in short amount of time. 叠代是软件的发展在一时间单位,并且这也许持续从一个到四个星期。 它包括计划、必要条件分析、设计,编制程序和测试。 在叠代期间被开发的软件在市场上不需要是足够工作被发布作为一个产品,但是宗旨将有运作的软件,没有臭虫,在每叠代的结尾。 队复评项目优先权在每叠代的结尾。
传统外购挑战被放大,并且新的挑战被创造,当软件开发被采取近海处时。 These new challenges are mainly in cultural differences, combined with the communication difficulty due to the difference in time and language comprehension. Most importantly, the biggest challenges remain in communicating, transfer of business logic understanding, demand in co-operation in poorly defined projects, unknown and imprecise requirements and lack of customer involvement, differences between customer and vendor, geographical distance, and many more. To be successful with offshore software development, these hurdles need to be overcome by both the onshore and offshore teams.
In plan-driven and Agile as well, face to face communication is stressed to improve communication and understanding of the project. This type of face to face time takes place during each iteration, where plan-driven project is concerned and this took place essentially at the beginning of the project. When face to face time is not possible with the offshore provider, it is beneficial to have each developer answer 3 daily questions: what you did yesterday? what you plan to do today? describe any roadblocks or obstacles in completing the iteration stories? Each developer should answer these question and not simply the offshore project manager. Perhaps the offshore project manager can help in translating the answers to these questions.
In case of Agile, face to face meetings are held at all time, usually in the form of daily Scrums, pair programming, iteration retrospectives and iteration planning. In distributed development teams, many times the onshore managers travel offshore to hold meetings with the offshore team, or in other circumstances, managers from offshore travel onshore for meetings. One important influence depends on the offshore person visiting the onshore team to absorb the project details and develop/foster relationships. He should take this know-how from the onsite team in a way that he is knowledgeable enough to answer many questions raised by his offshore team. In addition, he should be also capable of relating to his team members about the decisions that were taken in his meetings with the onsite team. Depending upon the complexity of the project, a member of the onsite team, with good knowledge in business logic is often sent to work offshore.
In implementing Agile projects, a series of processes are utilized. The development process is not just a single approach. In implementing software offshore development, there are some principles that are followed, which have been termed as Agile Manifesto. These are as follows -
➢ Customer satisfaction is achieved by rapid and continuous delivery of useful software.
➢ Quick delivery of working software within weeks rather than months.
➢ The principle measure of development progress is derived from the working software.
➢ Any changes in the software may be incorporated later.
➢ Necessity in having face to face communication for better understanding.
➢ Maintain close relationships between the business people and the developers.
➢ Motivation and trust on the individuals make the project implementation successful.
➢ Apply continuous attention to the project design, and try to attain technical excellence.
➢ Adapt fast to changing circumstances.
It was found that the iterative framework brought benefits to Agile software development vendors. By this approach, the customers could make payments after each iteration. By paying this way, the customer does not lose or be in a risk to pay the for the whole lot after the completion of the project. This brought in commitment from the customer to provide the vendor with better business and motivates the vendor to consider each iteration important. The method of continuous feedback and communication helps in the offshore development process, but the approach of short iterations has proved to be especially successful.
Another aspect of Agile development is the importance of testing in each iteration. Each iteration should produce automated tests that can be used during each iteration and future iterations as well. The benefits of automated testing is better covered in different articles. However, in the context of this article, it is important for your offshore vendors to deliver automated tests with each iteration. When considering new vendors, ask about their testing strategies. It is better to go with a vendor who believes in automated testing, rather than trying to convince a vendor the benefits of automated testing.
So, in sum, when implementing Agile in distributed development teams, there are opportunities to address three aspects of the project: communication, payment/deliverables and automated testing.
外购软件











