The term "Microservice Architecture" has sprung up over the last few years to describe a particular way of designing software applications as suites of independently deployable services. While there is no precise definition of this architectural style, there are certain common characteristics around organization around business capability, automated deployment, intelligence in the endpoints, and decentralized control of languages and data.
Most development efforts use a project model: the goal is to deliver software which is then considered to be completed. On completion, the software is handed over to be maintained, and the project team is disbanded. Microservice development tend to avoid this model, preferring instead the idea that a team should own a product over the full life cycle.
Read more from this bloke...