Software lifecycle

What Is Software Development Lifecycle?

Is a series of steps, or phases, that provide a model for the development and lifecycle management of an application or piece of software.

Benefits of SDLC

Is to help produce a product that is cost-efficient, effective and of high quality.

Phases of the Software Development Lifecycle

SDLC starts with the analysis and definition phases, where the purpose of the software or system should be determined. During the software construction or development stage, the actual engineering and writing of the application is completed. The software is designed and produced. Next is the testing phase. Code produced during construction should be tested to ensure that the application is not easily exploitable to hackers.

Once the software is secure enough for use, it is tested in real-world usability, and then pushed to a full release where it enters the maintenance phase. The maintenance stage allows the application to be adjusted to organizational, systemic and utilization changes. Finally, some years later, the code dies.

References:

http://www.veracode.com/security/software-development-lifecycle

Image: http://cdn.wallpapersafari.com/38/7/btQ5JF.jpg


History of software engineering

Software Engineering has been changing dramatically over the time. Not so long ago, we had huge computers that occupied a complete room. Now, almost everyone has a personal computer and there’s internet everywhere you go. But it was not always that way. Software has been evolving, non-stop and there’s still a lot more to discover. Here is a brief resume of the history of software engineering.

  • 87 B.C.: the Antikythera, the earliest known analog computer, developed in ancient Greece.
  • 1703 A.D.: Gottfried Wilhelm Liebnitz introduces the binary number system.
  • 1837: Charles Babbage invents the analytic engine.
  • 1843: Ada Lovelace develops the first computer algorithm.
  • 1936: Alan Turing invents the Turing Machin.
  • 1941: Konrad Zuse invents the first programmable digital computer.
  • 1947: the transitor is invented at Bell Labs.
  • 1963: Douglas Engelbart inventsthe computer mouse.
  • 1968: DARPA creates ARPAnet, the first operational computer network and ancestor of the internet.
  • 1971: Kenbak-1 the first personal computer sold in the USA.
  • 1976: Steve Wozniak designed the Apple-1, a single-board computer for hobbyists.
  • 1981: IBM introduces its first MS-DOS computer.
  • 1985: Microsoft releases Windows 1.0
  • 1990: Sir Tim Burners-Lee of CERN invents the WorldWideWeb.
  • 1993: Mar Andresson created Mosaic, later known as Netscape, the first popular user-friendly web browser.
  • 2008: IBM supercomputer “RoadRunner” reaches the speed of 1 petaflops.
  • 2010: Researchers are able to manipulate “qubits” quantum computing information units.
  • 2012: scientists cultivate brain cells on a microchip, advancing neurochip technology.

 

Viking Code School Prep. (s.f.). A Brief History of Software Engineering. Recuperado de Viking Code School Prep Sitio web: https://www.vikingcodeschool.com/software-engineering-basics/a-brief-history-of-software-engineering


What is software engineering? Is it a craft or an engineering discipline? Neither? Both?

According to the Institute of Electrical and Electronics Engineers (IEEE), software engineering means applying the principles of engineering to the software development field. Now a day’s software is used in everything, in medicine, engineer, business, humanities, law and more… without it, life would be extremely different and difficult.

ART VS SCIENCE

For me, software engineering can be a craft or an engineering discipline. It’s an art and also a science. A developer should be not only an engineering, but also an artist. Design is not only how an application looks, is also how end users feels when they are using it. Design is about purpose, is not scientific but developers produce scientifically design applications. It should be a balance between design/art and science.

 

References:

Software Engineer Insider. (s.f.). What is Software Engineering?. Recuperado de Software Engineer Insider Sitio web: http://www.softwareengineerinsider.com/articles/what-is-software-engineering.html#.V6zmNrjhC01

Reitano, V.. (2011). Software engineering: Art or science?. Recuperado de SD Times Sitio web: http://sdtimes.com/software-engineering-art-or-science/