Please enable JavaScript.
Coggle requires JavaScript to display documents.
Software Development - Coggle Diagram
Software Development
THE NONHUMAN TOUCH
Computers have changed the way we do just about everything these days, but without the right software, they’d be about as useful as a flat tire.
One of Babbage’s most important creations was the design of a machine he called an Analytical Engine. He hoped this device would be the first computing machine to perform complex arithmetic.
Binary code is one method of telling computers what to do. You may have seen this code represented as a series of 1s and 0s. Each number represents one bit, or binary digit.
By 1986, Apple was shipping out units with a full-color GUI. You could even customize it, although choices were limited. Microsoft successfully produced its own operating system in 1985. It was called Windows 1.0 and worked similarly to Apple’s system
As more people went online, software developers had to make it easier to use and navigate the Web. This gave rise to Web browsers and new languages, such as HTML, made just for the Internet.
More recently, a new market emerged with the introduction of smartphones, tablets, and other mobile devices. This led to a new boom in software development: mobile apps. From video games to business meetings, almost anything can now be done on mobile devices.
SO MANY OPTIONS
One of the most common methods of software development is the waterfall model. This approach largely consists of matching the needs to existing hardware. The first step, therefore, is critical: determining what the software needs to do and how it needs to do it
A prototype is the earliest version of something. Where software is concerned, a developer puts together an early and very simple version of a program. This preliminary version is not necessarily “pretty.” In other words, it doesn’t possess all the streamlined interfacing that the finished product will have. It may also lack some extra features that will be added later on.
Blue Gene is one of the most powerful supercomputers of all time. Actually, there are several different supercomputers that bear the Blue Gene label. A company called IBM designed them all with the aim of being remarkably fast while consuming very little power.
A key feature in the agile approach is to focus on a different aspect of the program with each pass of the cycle. Developers inspect and test a program from a variety of approaches. Over time, each aspect is refined and tightened. In a way, the agile approach is the ultimate form of development modeling.
The agile method of software development is perhaps one of the most interesting. It focuses heavily on adaptability and fast, continuous development.
Dial-up connections, which used phone lines to connect computers to the Internet, became openly available to everyday users in 1989. Around the same time, Tim Berners-Lee of the European Organization for Nuclear Research (CERN) changed the Internet forever.
The iterative development process is, to many, the most intuitive method for designing software. In simplest terms, it means to design a program in its entirety, put it through thorough testing, then go back and fix any problems that turned up
A development method that has picked up in popularity in recent years is known as rapid development. As its name suggests, the focus is on speed. That means certain steps are either shortened or eliminated. The initial planning and design stages, for example, are almost nonexistent
ON THE JOB
The software development field has seen significant growth in the past few decades. This is likely to continue in the years ahead. Those who are interested in a career in this field should focus on areas of study such as computer programming and technology, electronics, mathematics, and similar areas
A software engineer is involved in the nuts-and-bolts production of software. He or she can take part in virtually any aspect of software development—brainstorming, creation, testing, maintenance, and so on. The better engineers are familiar with all these steps and all disciplines related to the field.
Performance optimization might not be the most glamorous profession in the tech universe. However, it’s certainly one of the most important.
The field during this decade. The company paid close attention to the pleasing visual aspects of its operating system. Microsoft made its own move in this direction in 1995 with Windows 95. In terms of artistry, it was an improvement over the operating system before it. Windows 95 has even been the basis for all Windows GUIs since then
Having a good GUI is only one part of program artistry. A company also has to convince people to use it. The people the company hires to do this have to understand and believe in the product. Advertising can take the form of posters, billboards, big presentation events, or commercials
Some people are big-picture thinkers. Others are better at thinking about the details. Then there are those who are good at both. Software architects usually fall into this last category. A software architect helps develop new programs on all levels, from the original big idea to the tiniest final features.
A system architect is similar to a software architect in that he or she thinks big and oversees an entire project. For a system architect, however, there is less focus on the programs within a system and more focus on the system itself. A system is an existing structure within which software runs and hardware functions.
"A technical consultant often serves as both the face of a company and the voice of the customers who the company serves. A consultant has a broad knowledge of every aspect of software creation. He or she is particularly knowledgeable about how a piece of software is meant to function."
People who have a broad knowledge of software design and are good at connecting with people are ideal marketing engineers. These engineers are in charge of spreading the word about a project and inspiring customers to purchase it. This is not just a matter of smart salesmanship. The job also requires a deep knowledge of the specific software and how it can be most valuable to a user.
-