practicalli / software-engineering

The initial brain dumps of a book on agile as almost no one on really seems to understand
Creative Commons Attribution Share Alike 4.0 International
0 stars 0 forks source link

Start Practicalli Software Engineering book #1

Open practicalli-johnny opened 2 years ago

practicalli-johnny commented 2 years ago

brain dump of ideas for book covering concepts and practical techniques for effective software development

Intro

Software engineering is the construction and maintenance of systems within a large number of constraints (technical, time, financial and social)

Topics

software engineering is

Misconceptions of agile

Agile is not a prescriptive process

Agile is foremost about the principles and whether they are reflected in everything you do.

If you believe agile is a process, forget everything you know and go read the agile manifesto.

Agile is a set of principles and has practices that could be applied to support those principles.

There are many ways of forming a set of practices that could be applied when carrying out valuable work.

When thinking about process, it is very easy to forget the principles.

Agile practices should be applied when they apply value to the business of developing software. This requires input from a range of stakeholders

The curse of a packaged process

Scrum is often seen as a prescriptive agile process that requires a range of practices.

None of the roles or practices that Scrum assembles are essential to getting benefit from Scrum, although there is a focus on practices that work together.

I dont know if this fits into agile

If you ask yourself this question, then you are thinking about a prescriptive process

Agile is not a prescriptive process.

So, does this fit into agile?

Ask instead which of the agile principles it supports.

When a practice, tool or technique under consideration provides a valuable way to demonstrate support for an agile principle, then that practice tool or technique should be defined as useful appraoch within the context that supports one or more agile principles.

Just because some technique is part of a prescriptive agile process, does not guarantee it is a useful technique for your specific context. In fact it could be very counter productive.

Lean software development

open source

External research

practicalli-johnny commented 1 year ago

Add specific tasks and guides to the https://practical.li/engineering-playbook/ and review if there is still enough content ideas to create its own book.

Possibly evolve this into a book like 'The Goal'