The Methodology followed by ThoughtExecution revolves around the business objective of providing Customer centric delivery approach and hence we have adapted the Iterative methodology or agile software development for easily tracking & traceability of project artifacts in different phases.
About Agile Methodology
Agile software development is a style of software development characterized by an emphasis on people, communication, working software, and responding to change. All Agile methodologies engage in an iterative workflow and incremental delivery of working software in short time-boxed iterations. Iteration is essentially a small release of software. Generally during each iteration many activities will occur in parallel, such as requirements, coding, and testing. Iterations are typically a fixed length (although this length varies between the methodologies) and thus are referred to as time-boxed. The time allocated to each iteration is sometimes referred to as a cycle time.
Extreme Programming (XP) is one of the well-known form of Agile methodologies. As its name suggests it is a programmer-centric methodology that emphasizes technical practices to promote skilful development through frequent delivery of working software. Although XP (and Agile methods as a whole) is often characterized as less rigorous then traditional techniques, this could not be farther from the truth.
XP recommends very short iterations between one and four weeks. XP is also a very low ceremony methodology. Minimal artifacts in an XP project include story cards, code, and unit tests. There are two primary types of planning activities that are referred to in XP parlance as planning games: the release and iteration planning games. And each planning game is characterized by three phases: exploration, commitment, and steering.
Release planning begins with the customer writing story cards and prioritizing them. Programmers then estimate the stories from which a velocity can be derived.
Iteration planning follows a similar pattern to release planning. Each iteration begins with developers taking stories and breaking them into tasks. Programmers accept responsibility for tasks and estimating the tasks that they are responsible for. Each programmer's load is compared to their historical performance to determine whether anyone is overcommitted and to allow the workload to be balanced across the team.
We are also open to adopt other methodologies based on client preferences.
Complete End to End Software Life Cycle Service
We provide complete end to end software life cycle services which includes all phases of SDLC from Inception phase to Go-Live phase.
- Identify High Level Scope
- Initial Requirements envisioning
- Initial architecture envisioning
- Identify Non-functional requirements
- Iteration Releases plan
- Feasibility Study
- Proof of concepts
- UML Diagrams Creation
- Design Solution Architecture
- Test Driven Development
- Identify 'Technology stack'
- Technical Design Document
- Deployment Strategy Document
- Setup Dev Environment
- Setup Foundation Framework
- Robust Coding
- Normalize Database Structure
- Follow applicable design patterns
- Highly Configurable approach
- Interfaces Integration
- End to End Testing
- Build & Release Management
Deployment & Hosting
- Identify Hosting requirements
- Setup Hosting Environment
- Software Packaging
- Deploy Application
- Application Monitoring