• Complain

Simon Brown - Software Architecture for Developers

Here you can read online Simon Brown - Software Architecture for Developers full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2015, publisher: LeanPub, genre: Home and family. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

No cover
  • Book:
    Software Architecture for Developers
  • Author:
  • Publisher:
    LeanPub
  • Genre:
  • Year:
    2015
  • Rating:
    5 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Software Architecture for Developers: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Software Architecture for Developers" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

This book is a practical and pragmatic guide to lightweight software architecture for developers. Youll learn: The essence of software architecture. Why the software architecture role should include coding, coaching and collaboration. The things that you *really* need to think about before coding. How to visualise your software architecture using simple sketches. A lightweight approach to documenting your software. Why there is *no* conflict between agile and architecture. What just enough up front design means. How to identify risks with risk-storming.

Simon Brown: author's other books


Who wrote Software Architecture for Developers? Find out the surname, the name of the author of the book and a list of all author's works by series.

Software Architecture for Developers — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Software Architecture for Developers" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Software Architecture for Developers Technical leadership by coding coaching - photo 1
Software Architecture for Developers
Technical leadership by coding, coaching, collaboration, architecture sketching and just enough up front design
Simon Brown

This book is for sale at http://leanpub.com/software-architecture-for-developers

This version was published on 2015-09-12

This is a Leanpub book Leanpub empowers authors and publishers with - photo 2

* * * * *

This is a Leanpub book. Leanpub empowers authors and publishers with the Lean Publishing process. Lean Publishing is the act of publishing an in-progress ebook using lightweight tools and many iterations to get reader feedback, pivot until you have the right book and build traction once you do.

* * * * *

2012 - 2015 Simon Brown

For Kirstie, Matthew and Oliver

Preface

The IT industry is either taking giant leaps ahead or its in deep turmoil. On the one hand were pushing forward, reinventing the way that we build software and striving for craftsmanship at every turn. On the other though, were continually forgetting the good of the past and software teams are still screwing up on an alarmingly regular basis.

Software architecture plays a pivotal role in the delivery of successful software yet its frustratingly neglected by many teams. Whether performed by one person or shared amongst the team, the software architecture role exists on even the most agile of teams yet the balance of up front and evolutionary thinking often reflects aspiration rather than reality.

Software architecture has a bad reputation

I tend to get one of two responses if I introduce myself as a software architect. Either people think its really cool and want to know more or they give me a look that says I want to talk to somebody that actually writes software, not a box drawing hand-waver. The software architecture role has a bad reputation within the IT industry and its not hard to see where this has come from.

The thought of software architecture conjures up visions of ivory tower architects doing big design up front and handing over huge UML (Unified Modeling Language) models or 200 page Microsoft Word documents to an unsuspecting development team as if they were the second leg of a relay race. And thats assuming the architect actually gets involved in designing software of course. Many people seem to think that creating a Microsoft PowerPoint presentation with a slide containing a big box labelled Enterprise Service Bus is software design. Oh, and we mustnt forget the obligatory narrative about ROI (return on investment) and TCO (total cost of ownership) that will undoubtedly accompany the presentation.

Many organisations have an interesting take on software development as a whole too. For example, theyve seen the potential cost savings that offshoring can bring and therefore see the coding part of the software development process as being something of a commodity. The result tends to be that local developers are pushed into the higher value software architecture jobs with an expectation that all coding will be undertaken by somebody else. In many cases this only exaggerates the disconnect between software architecture and software development, with people often being pushed into a role that they are not prepared for. These same organisations often tend to see software architecture as a rank rather than a role too.

Agile aspirations

Agile might be over ten years old, but its still the shiny new kid in town and many software teams have aspirations of becoming agile. Agile undoubtedly has a number of benefits but it isnt necessarily the silver bullet that everybody wants you to believe it is. As with everything in the IT industry, theres a large degree of evangelism and hype surrounding it. Start a new software project today and its all about self-organising teams, automated acceptance testing, continuous delivery, retrospectives, Kanban boards, emergent design and a whole host of other buzzwords that youve probably heard of. This is fantastic but often teams tend to throw the baby out with the bath water in their haste to adopt all of these cool practices. Non-functional requirements not sounding cool isnt a reason to neglect them.

Whats all this old-fashioned software architecture stuff anyway? Many software teams seem to think that they dont need software architects, throwing around terms like self-organising team, YAGNI (you arent going to need it), evolutionary architecture and last responsible moment instead. If they do need an architect, theyll probably be on the lookout for an agile architect. Im not entirely sure what this term actually means, but I assume that it has something to do with using post-it notes instead of UML or doing TDD (test-driven development) instead of drawing pictures. That is, assuming they get past the notion of only using a very high level system metaphor and dont use emergent design as an excuse for foolishly hoping for the best.

So you think youre an architect?

It also turns out there are a number of people in the industry claiming to be software architects whereas theyre actually doing something else entirely. I can forgive people misrepresenting themselves as an Enterprise Architect when theyre actually doing hands-on software architecture within a large enterprise. The terminology in our industry is often confusing after all.

But what about those people that tend to exaggerate the truth about the role they play on software teams? Such irresponsible architects are usually tasked with being the technical leader yet fail to cover the basics. Ive seen public facing websites go into a user acceptance testing environment with a number of basic security problems, a lack of basic performance testing, basic functionality problems, broken hyperlinks and a complete lack of documentation. And that was just my external view of the software, who knows what the code looked like. If youre undertaking the software architecture role and youre delivering stuff like this, youre doing it wrong. This isnt software architecture, its also foolishly hoping for the best.

The frustrated architect

Admittedly not all software teams are like this but what Ive presented here isnt a straw man either. Unfortunately many organisations do actually work this way so the reputation that software architecture has shouldnt come as any surprise.

If we really do want to succeed as an industry, we need to get over our fascination with shiny new things and starting asking some questions. Does agile need architecture or does architecture actually need agile? Have we forgotten more about good software design than weve learnt in recent years? Is foolishly hoping for the best sufficient for the demanding software systems were building today? Does any of this matter if were not fostering the software architects of tomorrow? How do we move from frustration to serenity?

About the book

This book is a practical, pragmatic and lightweight guide to software architecture for developers. Youll learn:

  • The essence of software architecture.
  • Why the software architecture role should include coding, coaching and collaboration.
  • The things that you really need to think about before coding.
  • How to visualise your software architecture using simple sketches.
  • A lightweight approach to documenting your software.
  • Why there is no conflict between agile and architecture.
Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Software Architecture for Developers»

Look at similar books to Software Architecture for Developers. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Software Architecture for Developers»

Discussion, reviews of the book Software Architecture for Developers and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.