CT2 Development Process v2
From UG
(→CT2 Supercomponent Business Team) |
|||
Line 1: | Line 1: | ||
- | [[Category: | + | [[Category:Software Development Processes]] |
<span style="color:red; font-size:14pt">! This is OUTDATED! Old version of this article here: [[CT2 Development Process]] | <span style="color:red; font-size:14pt">! This is OUTDATED! Old version of this article here: [[CT2 Development Process]] |
Current revision as of 19:46, 24 May 2010
! This is OUTDATED! Old version of this article here: CT2 Development Process
Contents |
[edit] Intro
This article defines what methodology, roles, workflow, etc we use in CT2 Web Software Development.
[edit] CT2 Supercomponents
CT2 System is large and can be divided into the following supercomponents (supertasks):
- Acc
- Client App
- OpsReps
- Ops
- OpsPdfs
- Admin
- Misc
Each supercomponent has its own Development team, project plan, etc.
Some coordination between teams is needed because supercomponents are interrelated to a certain degree.
[edit] CT2 Team
CT2 Acceptance Board (The Board)(Committee)(Demo Meeting) Group of people who:
- initiated the CT2 project
- oversees general progress
- demo meeting is conducted for The Board
- makes final decision about acceptance, tweaks, course of the project
Chairman of Acceptance Board
- person who makes final decision in case there is a conflict
CT2 Systems Architect
- Technical leadership of CT2 project
CT2 Project Manager
- time/scope leadership of CT2 project
[edit] CT2 Supercomponent Team
Each CT2 Supercomponent Team consists of 2 groups of people:
- Business Team (Client/Sponsor)
- (Software) Development Team (Vendor)
[edit] CT2 Supercomponent Business Team
Project manager
- time/scope management expert
- accountable for delivering component on time and on budget
- managing/coordinating business phases of CT2 Software Development Worflow (see below)
[edit] CT2 Supercomponent Development Team
Development Manager - leader of the development team
- coordinates development effort
- manages resources
- manages dev phase of proj plan: detailed development schedule that includes phases of development, bugfix, QA, graphics (for every sub-component/dev task)
- collects updates from developer, QA, graphic designer regarding deadlines
- if there is a chance for ETA to be postponed then he must notify Project Manager ASAP and they both decide what to do: move tasks around, add resources or push ETA forward or do something else
QA Engineer
- makes sure that specs are complete
- creates test plans
- runs test plans
- forwards bugs to developer
- provides ETA for his work to Development Manager
- must immediately notify Development Manager if his ETA can slip
Developer
- makes sure specs are complete
- implements new sub-components, changes, tweaks, bug fixes
- deploy, forwards his work to QA
- provides ETA for his work to Development Manager
- must immediately notify Development Manager if his ETA can slip
Graphic designer
- responsible for creating overall Look and Feel concept
- creates Style Guide
- creates all graphics for application
- provides ETA for his work to Development Manager
- must immediately notify Development Manager if his ETA can slip
[edit] CT2 Task and Bug Management System
We use Mantis software as a main CT2 Tasks and Bugs Management System.
Read this section as a separate article here: Mantis and CT2
[edit] CT2 Task Types
All tasks (ativities) we classify into:
- major changes:
- request for new components
- request for new version of existing component
- minor changes:
- request for tweak (minor change of existing component)
- bug
- etc
[edit] CT2 Workflows
For each task type as defined above there is a special workflow.
Read this section as a separate article here: CT2 Workflows
[edit] CT2 Project Method and Plan
Read this section as a separate article here: CT2 Project Method and Plan
[edit] Release Procedure
All accumulated code in SVN Trunk (on /CyberTrax) released at once.
In the future we will have bugfix releases
[edit] Communication
[edit] Through Mantis
If there is a question regarding task then:
- post question into Mantis notes
- set task to feedback
- assign to person you are asking
- if urgent contact that person in Skype
[edit] Through email
- If there is a general question - use email. CC to your manager and others as required
- Everyone must check email at least 2 times a day: at the beginning and at the end of workday
[edit] Comm between Sys Analyst and Dev Manager
They agree on how to reach each other during extended timeframe.
[edit] Urgent Communication
- we must define what can happen and how to reach someone we need to reach to solve urgency
[edit] Weekly Status Meetings
- Why: These meetings are group chats in Skype with Agenda to update each other on progress
- Who: Dev Team + Sys Analyst
Client App Team (summer 2009 schedule): Tuesd, Thur: 10-10:45am NY time Reports and Accounting Team (summer 2009 schedule): Tuesd, Thur: 9:15-10am NY time
[edit] Communication Hours
- Who: Dev Team + Sys An
- What: All must be available in Skype
- Why: In case somebody needs to discuss not through Mantis, but "live" through chat
- When:
For All Super Components: Mon, Tue, Wed, Thur, Fri: 9-11am NY time
- If somebody can not attend he must notify Dev Team Lead and give alternative time frame that he is available same day
[edit] Vacations and Days Off
- Must notify Dev Team Lead as much in advance as possible
- Dev Team Lead must post this info into Dev Calendar