The Dynamics Of Creativity In Software Development
Gimena Aguerreberry
August 20, 2021
Creativity is crucial in software development as it is the source to solve complex problems and innovate.
The industry has increased its emphasis on software usability. This is has been an issue for some time, in 1995, Microsoft attempted to buy Intuit’s money-management program, Quicken, for a staggering $1.5 billion, primarily because customers had found Quicken to be more usable and understandable than Microsoft’s own software.
In his book "Bringing Design to Software", Terry Winograd claims that:
"When software engineers or programmers say that a piece of software works, they typically mean that it is robust, is reliable, and meets its functional specification. These concerns are indeed important. Any designer who ignores them does so at the risk of disaster.
*But this inward-looking perspective, with its focus on function and construction, is one-sided. To design software that really works, we need to move from a constructor’s-eye view to a designer’s-eye view, taking the system, the users, and the context all together as a starting point. *
When a designer says that something works (for example, a layout for a book cover or a design for a housing complex), the term reflects a broader meaning. Good design produces an object that works for people in a context of values and needs, to produce quality results and a satisfying experience."
In order to solve today's complex problems in the world of software development, technical knowledge is no longer enough.
Creativity In Software Development
Agile practitioners rely on the creative talent of people to improvise solutions for complex problem-solving. Software development is an iterative process of discovery. Each problem fixed is a step nearer to the solution required and everyone learns more about the business and technology.
Programming is complex, making it likely that creativity will be involved during problem-solving.
In a recent Delphi study, important skills of exceptional software engineers were identified. Industry experts agreed that being creative (e.g., by approaching a problem from different angles) is an essential problem-solving skill, vital to succeed as a software developer. However,
creativity is a multidimensional concept that is not as easy to define as one might think.
Dealing with uncertainty
Deciding exactly how the software will look during the initial requirements phase is seen as a rather old and out-of-date method of working these days. The flexibility agile processes have brought to software development is often thought of as positive for the industry and a great way to build great software.
One component of the software development process is the human factors of communication, flexibility, and all the usual problems that come with providing a product.
Final Thoughts
Creativity doesn’t need to come at the expense of a credible and working process, and like the coexistence of agile methods and structured programming, creative processes can be at the heart of a well-functioning software strategy at any firm.
Analytical Skills with Examples for your Resume
Analytical skills allow you to collect, organize, visualize, and assimilate data. That’s why it’s hard to find a job offer where analytical skills aren’t listed among the employer’s requirements.
3 Reasons to Work at a Software Development Agency
Developers have unique advantages to gain from working at a company that offers development services. We'll take a look at why developers should consider joining a software development agency.
The Advantages of a 100% Remote Job
More employees are working remotely, and it's easy to see why. There are numerous benefits of working from home that an office just can't compete with, especially when it comes to employee satisfaction
Photo by Nishant Jain
Categorized under people.Join our team
If you're passionate about building quality software and our values resonate with you, get in touch with us!