What items go into a software shop's development environment, how do you document it, and what processes do you follow to make changes?
I thinking about this from the standpoint where I want to make it easier to bring new hires up to speed quickly by having all this on a checklist we follow when setting them up, and then while I'm at it making it easier for the new hires or existing team members to bring new powerful toolkits and ideas into the environment without disrupting things.
I want to keep this platform agnostic, so even though I'm currently at a microsoft shop where Visual Studio would be assumed I'll go ahead and list compiler/IDE as one of the items:
Here are some ideas for part 1:
[edit]: I'm keeping this updated based on the better suggestions.
- Source Control access
- Issue/Bug/Project tracker
- System Documention, or references to find the system documentation in source control or in a wiki, including:
- build document/environment covered by this question
- design documents / technical notes
- Coding Style guidelines
- Deploy for review/testing/QA/staging/production procedures
- Licensing details for your tools and your product
- Team Calendar, including the project schedule(s), deadlines, vacation time, and support/on-call schedule (if required)
- compiler/IDE
- compiler/IDE extensions (things like source control plugins or visual studio add-ins)
- 3rd party SDKs/toolkits
- Database connection and tools
- Testing Frameworks
- Internal libraries
- communication tools (chat, wiki, etc)
- Static analysis tools (FxCop, FlawFinder, etc)
- Virtual machines (holding dev environment or for testing)
- Specialized editors (modeling, xml, etc)
- Other tools
What else goes in this list, and how do you document it and vet changes?