Planning from a Technical Perspective


From a technical perspective, your team must also do a considerable amount of planning. This book is not meant to provide the technical details of a project; however, you should be aware of the aspects of technical planning on which your team will likely want to focus on. One of the most important things your developers and testers will want to understand is the technical approach for the solution. Will it be a Web application? Will it run on a mobile device? Will the software be required to support different platforms? What database technology will be used to store data? The list of questions can go on; however, just like customer requirements, these questions are quite significant to your team and answering many of these questions should also be a goal of the planning phase. In the first few iterations, your technical team will likely be focused on the overall solution architecture of the target system and may not be as concerned with the finer details of the solution such as user interface navigation or screen colors.

The establishment of the development and test environment is also critical. Because this activity is usually performed during project initiation, covered in Chapter 3, it will impact other aspects of planning-for example, the source control management plan and the quality plans, of which the automated build and testing environments play a significant role. Your technical team must also ensure that they have time allotted for them to perform any code migrations from previous versions of a product and to appropriately set up and configure the project’s source control repository within Visual Studio Team System. You should ensure that the team has sufficient time to make good planning decisions in this area because changes to the development environment after the software development process begins can be detrimental to your project.

When discussing requirements management in Visual Studio Team System previously in this chapter, we discussed how important it is for requirements to be testable. This is a mindset that must permeate its way throughout your team, including your developers. Developers must consider how they will utilize the automated testing features of Visual Studio Team System, specifically unit testing and code coverage analysis, throughout their development processes. Many organizations employ a technique called Test Driven Development to help ensure that every line of code written by developers is covered by at least one test that can be automated. Test Driven Development works to establish a test case first; then it develops a solution that will allow that test case to pass. This will ensure that a number of good practices emerge in your project. First, Test Driven Development demands testable requirements. Second, by writing automated test cases first, it will be easier for developers to regression test their software, which helps to reduce the number of bugs that can get introduced into a system during the normal course of product development.

Finally, ensure that your developers truly understand the user and business requirements for the system they are creating. The greater their understanding, the greater the chance they will produce software acceptable to your customers. Do not simply provide your developers with a mountain of requirement specification documents as the source of their product knowledge because documents alone are rarely enough to transfer the mindset of the user’s intent to the creativity of your developers.




Managing Projects with Microsoft Visual Studio 2005 Team System
Managing Projects with Microsoft Visual Studio 2005 Team System
ISBN: 735622167
EAN: N/A
Year: 2007
Pages: 93

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net