1. <Project Name>

    1. Initiation

      1. Requirement Analysis

        1. Bussiness analysis: Write down Requirements in clients language

        2. Compare competitor products

        3. Check if similar modules in previously done apps could be incorporated

        4. Identify Parties involved in the intented system

        5. List requirements that could be implemented in developers language

      2. Feasibility study

        1. Estimate Potential volume of Users

        2. Estimate Resources

          1. Resources(s/w) : OS,Development s/w,Deployment/Server,DB,CDN etc
          2. Resources(h/w)
          3. Resources(HR & Time)
            For Internal & HR estimation
            Take stock of existing sw/librari es that could be used
            Take stock of new *critical* bespoke functionalities to be developed
            **Special Estimate for Learning, R & D for new *critical* bespoke functionalities
          4. Resources(other)
            1. Server, Cloud
            2. Third party Services
            3. Logistics, Travel & Accomodation
            4. Events to be conducted?
        3. Risks

      3. Identifying deliverables

      4. Identifying Stake Holders

      5. Developing Business Case

        Potential costs and benefits
        Is it really worth?
      6. Draft Project Plan and Estimation

        In association with Project Manager who creates Draft Development Doc with budget and Time, Prepare Requirements Doc by Bussiness Analyst. Send for client's approval (**SANS** 5.use case models and 6. class models & 7. DB Design)
      7. Statement of Work

        (Project Proposal including rough estimate of cost, schedule, list of deliverables,Decide First MVP to start with,Additional phases, and delivery dates)
    2. Planning

      1. Finalize Scope

        1. Use Case Diagram

        2. High level Use Case Description

        3. Finalize

          1. Use case models
          2. Class models
          3. DB Design
          4. Wireframes
          5. UI Designs Using Questionnare
          6. Development Doc
          7. Changes Log
          8. readme for underlying technical details, including installation

          PS:
          Docs 1 to 6 may change as the development progresses. Each change should also be documented in changes log

          Use case models,Class models,DB Design are in Requirements Doc
        4. Find domain, control and boundary objects

          Frontend(JS)
          Backend
        5. Extended Use case description

        6. Activity Diagram

        7. Designs based on Wireframes

          Finalize Links
          Frontend
          Backend
        8. Collaboration Diagram

        9. Class Diagram

          1. Frontend:
            __construct()
            //getter & setter
            get()
            set()
            //controller methods
            add()
            edit()
            delete()
            list()
            search()
            validateSubmit()
          2. Backend
        10. DB Design

      2. Finalize Resources

      3. Finalize Deliverables

      4. Define Goals

      5. Estimate Risks

      6. Dileneate Roles

        example
      7. Finalize Time estimate and schedule

      8. Finalize Cost Estimate

      9. Project kickoff meeting

        Finalize
        Product Back Log
        MVP & Additional phases
        Daily Targets
    3. Execution

      1. Create Additional Product Back Log

        1. Prepend Log

          1. build database
          2. Build frontend(php/.bat file)
            JS & HTML
            templating Structure
          3. Build Backend(Server)
            1.MVC
            2.Classes as in Collaboration Diagram

            1.Folder structure(Public & Non public)
            2.Core & Addons Folders
            3.Controller,Module, Views(Blocks),Templates
            4.Libraries/Global Helpers
            5.Composer(vendor) Folder
            6.Email, Captcha,Contact Us, DB, PageNav, OAuth
            7.autoload
            8.Router
            9.Dependency Injection
            10.DI Container
            11.bootstrap file
            12.index file
            13.Config file
            14. .htaccess file
            15.Crons folder
            16.Lang folders
            17.Cache Folder
            18.Logs Folder
            19.User Uploads Folder
            20.Temp Folder
            21.Backups Folder
            22.CDN and Related Scripts
            22.SVN Setup
          4. CVS
          5. UI Design & VFX Integration
          6. Legal
            Terms and Policies
            Terms of Service(End user agreement
            Data/Privacy Policy)
            Community Standards
            Data Laws in specific Regions(GDPR)
            Cookie Policy

            Disclaimer
        2. Append Log

          1. Add test cases
          2. Add unit tests log
          3. Backup Programs
            full
            differential
            incremental
      2. Agile Scrum (Jira)

        1. Testing (PHPUnit)

        2. Bugs Management

        3. Code optimization

          Ensure minimum resources
          PHP Mess Detector
      3. Change Management

      4. Review

        1. Daily Progress against Targets

        2. Variance Scrutiny

          1. Time
          2. Class Diagrams
          3. Behavioural Diagrams
          4. Cost
        3. Documentation

          1. Completion of Doxygen Documentation
          2. Users Manual for client
          3. 'How to' videos for users
    4. Closure

      1. Documentation

        1. Operations & Maintainace Manual

          Admin Panel
          Crons
          Backup Manual
          User hierarchy & Roles
          User Manual
      2. Final Deployment

        1. Test Report

      3. Setup Ticketing

      4. Final Contract

      5. Checkout

      6. Retrospective

        What went wrong
        New Tip/Lessons Learned