原帖由
亞糊 於 2009-4-16 04:03 PM 發表
無錯係要呢d~ 我地依家一腳踢由coding到deployment都係自己來. 但老細開始要睇audit, 要我地實行番正常既procedure.
依家得programmers有softsafe, 如果manager要參與deployment, 佢部機係咪都要裝softs ...
If for IT auditing, you need to separate role of each member in the team. Each member can acts as several roles but each role of the member cannot have conflicts. For example, member A is developer, he/she cannot allow to update UAT server content and he/she cannot access production server. Also, he/she cannot approve the change. This is the formal practie but depending on the resources, some roles may be simplified.
I use two version control software before. One is SourceSafe and the other one is PVCS. In PVCS, you can setup promote group so that you can divide the groups into Development, UAT and Production. System Support(SS) team member only get files from the group depending on which stage you are in. For example, a programmer complete the change, he/she check-in the chnage to the development environment(DEV), then he/she submit the change to SS, SS promotes the files from DEV to UAT according to the submitted document. Then SS get (NOT Check-out) all changes to SS workspace. As SS does not know the structure of the application, developer has the responsibility to state clearly how to get the files from version control software so that SS can follow the instructions to get the files and complile the files into DLL.
for example, your Win app called App have the below files:
A.cs, B.cs, C.cs, D.cs, App.config
you are now deploy the changes and files involved are A.cs B.cs, so you need to check-in A.cs and B.cs with the corresponding label (for sourceSafe) so that SS can get the changes according to the label. Second, if your company does not provide an UAT environment for compiling the changes, you need to compile yourself and then check-in the output. In this case, you need to check-in the complied executable App.exe for SS to get the file and put to the UAT environment. In this situation, SS don't need to compile the change, SS just promote the changed files from DEV to UAT and copy the affected files to UAT environment. After the UAT completed and satified, Developer submit Change Request Form (CRF) for production deployment (need other doc for auditing such as UAT sign-off). Programmer need to submit code review together with the CRF. The code review must be performed by other programer. Then SS collected all the rewquired doc, they can get the complied EXE from UAT to Production environment and promote the EXE from UAT to PROD in order to keep each version of each file in sync. You must notice that never promote files from DEV to PROD except have approval from an appointed person.
So that for SourceSafe, since the software have no Group concept, you may need to implement this version control model using its "Label" feature. for example, DEV start with "DEV_", UAT start with "UAT_" depending on your design of the infrasture of the verison control
If your manager is a member in the deployment procedure, depending on the manager's role. If he involve promote version, the manager need to install the version control software. If the manager only approve change request, he/she don't need to install the version control software.
Since the deployment procedures can be very complicated and involve many documents, so need to depending on your company scale (such as how many persons involved) to design the deployment procedures. My past experience involve the following departments:
User (can be any departments)
IT - Development
IT - System Support
IT - Technical Support
Each department must have at least onr approver to approve the workflow of the documents.
In addition, your chnage control must involve the following components:
1. Rollback procedures
2. Emergency Deployment
Hope can help u