- Agile Development
- Scrum
- FDD: Feature-driven Development
- Lean development
- XP: Extreme Programming
- Waterfall Model
- Prototype Model
- RAD: Rapid Application Development
- Dynamic Systems Development Model
- Spiral Pattern
- JAD: Joint Application Development
- Unified Rational Process
- DevOps Methodology
- Adaptive Software Development
- Behavior-driven Development
Software Development Methodology We Recommend at BainsLabs
Our Pick: Model of Agile Lean Software Development
Company Characteristics: For companies that have projects with low budgets.
Project Characteristics: short deadlines to obtain the first products or functional modules.
Development Group’s Characteristics: It depends on the technical knowledge of the team and its capacity for collaboration, coordination, and communication so as not to lose focus during the project.
User Characteristics: Must have well-specified and executed processes and their requirements based on them.
Agile Scrum Software Development Model
Company Characteristics: For companies that have defined an intense life cycle with frequent deliveries.
Project Characteristics: rapidly changing requirements.
Development Group’s Characteristics: It requires technical experts, rather than novices, to use it successfully.
User Characteristics: It does not have defined processes or very few, its requirements are general, and it “completes” its software as it understands and incorporates its requirements into the computer system. Define “on the go.”
Extreme Programming Model (XP)
Company Characteristics: For companies that have defined an intense life cycle with frequent deliveries and six-sigma quality indicators of the generated software.
Project Characteristics: developers work in pairs on a simple design and continually improve the code based on feedback from users whose requirements change rapidly.
Development Group’s Characteristics: requires technical experts working in pairs for each requirement.
User Characteristics: it has nothing documented; its requirements are general, and it specifies them together with the development group. actively participates in the release and deployment.
How to choose a methodology for your software development
Company Characteristics
Have you defined a project life cycle?
Does all staff comply?
Development Group's Characteristics
Are all the staff equally experts?
Is there a mix of newbies and experts?
Project Highlights
User Characteristics
What is the degree of documentation of user processes?
What time availability does the user have to participate in the development group?
If you have any more question regarding software development, software methodology or software methodology’s adoption, feel free to contact us.