Skip to main content

Week 4 Lecture


Introduction

During this lecture, we discussed different methods for software development including waterfall and Agile. Waterfall is a rigid way to approach software development. It can be beneficial to projects where there are little to no unknown factors as it is a rigid, structured and organized process

Releasing iteratively is a useful way to approach software development projects when there is an element of uncertainty. It allows for feedback and changes throughout the development lifecycle. 



Required Readings
During the lecture, we reflected in small groups on the readings. A reading which stood out for me this week was the Brooks "No Silver Bullet" paper. I enjoyed the metaphor of the werewolf which was used to describe the complexities associated with SDLC which teams don't envision from the onset of the project.

The paper stresses that investing in good developers is far more important than attempting to find a solution or a "silver bullet".

SDLC projects are so complex, more so than constructing bridges or other physical objects due to the fact that software is much more complex than physical material. You cannot see it, there are many people simultaneously working on different pieces of it etc. Software is inherently complex because it is non-visible.

The papers discusses user driven programming - high level language where the computer does all the rest. Examples of such languages include SQL, C++ etc. Queries enable us to interact with software 





The additional readings for this week focused around objectives v requirements, involving people early to set their sights on the overall goals of the project, visualising what you will create and learning as you go


  

Even though these articles are quite dated, the frustrations still remain today




Discussion During Lecture

A lifecycle is a way of structuring a project. The waterfall model is rigid in that requirements are made at the beginning of the project and cannot be changed during the subsequent stages. Agile however, is like lots of little waterfalls where the team and stakeholders can analyse the project and assess whether fixes need to be made or additional features introduced. Despite my initial view that a business would either choose Agile or Waterfall, The lecturer discussed that most firms are not agile or waterfall, its more "in house", local rules apply.

The lecture also contradicted my previous view that new companies adopt agile type methodologies and only older, established companies would adopt agile. To me, agile seemed like the ideal way to approach the SDLC as I had never considered the need for stabilisation and the fact that waterfall can reduce in lower costs and faster development life cycles.

Finally, we discussed constraints associated with the SDLC. These include:
  • Quality
  • Scope
  • Time
  • Cost


Within Software Development Lifecycle's quality, cost and time are variables which need to be managed whereas scope is usually stabilised pretty early on. An example of scope include requirements.




Comments

Popular posts from this blog

Iona Technologies

·        Iona was founded in 1991 by Chris Horn, Sean Baker and Anrai O’Toole ·        The company progressed from a Trinity campus company, releasing Orbix in 1992 and going public in NASDAQ in 1997 ·        Trinity College Distributed Systems Group (DSG) was a small group of academics and engineers conducting research and development into the problem of inter-network computing systems, essentially connecting systems which were developed as independent systems to work and communicate with one another ·        Their research was initially supported by Trinity and then the EU ·        They took a brave leap from academic to the commercial world due to the attractive opportunity of industries like banking and telecommunications embracing networks and internets ·        Iona found that their c...

Exercise: Prototyping and Creating Mock-Ups

We were tasked with designing a test-free search page mock-up for individuals who were unable to read. We were first required to create a paper prototype and then use an online tool, Balsamiq. I found the exercise very interesting as it forced me to refine all my ideas into one, single representation. It also involved selecting the most important requirements as we were under a time constraint. I found the paper prototype process slightly easier a using Balsamic introduced constraints, in that I had to create my design choosing from the icons within the Balsamiq tool as opposed to creating my own. I found this exercise very useful and I will aim to introduce quick prototyping in my future roles when applicable.