source : https://t4tutorials.com/cyclomatic-complexity-of-a-graph/

According to Debbarma et al. (2013), the complexity of software is based on the quality of code with respect to the degree of complexity of subroutine, methods, classes, functions in the software. Among the characteristics of good code are readability, reliability, durability, maintainability just to mention but a few, when some of these are not achieved or implemented in the software, therefore, the software is complex. Software complexity is based on software metrics (Debbarma et al., 2013), over the years, so many metrics have been proposed such as quality of code (Baresi & Pezzè, 2006), ease of testability of software…

Source: https://plan.io/blog/project-management-skills/

Software engineering is bigger than mere programming because the software project must be quality, budgeted and completed within a certain time frame. According to Pressman (2015), “a project is a complicated journey” as it requires several operations in between before its completion. Technically speaking, a software project is a software development and delivery from requirement gathering down to testing and maintenance within a certain period (Sommerville, 2016). In a typical IT setting, software development is software creation and software project management (Sommerville, 2016). Holtsnider et al. (2010) explain that the software project’s success does not end in the creation rather…

Why did we need to validate and verify the product before shipping it to market?

https://www.geeksforgeeks.org/software-engineering-verification-and-validation/

Boehm (1983) questionably simplifies these, validation: are we building the right software ? and verification: are we building the right software “right”? The purpose of this article is to showcase the impact of software testing in the software development industry. As software developers, our perspective towards working software has failed us. Often than not this saying goes popular among developers that the software is working on my local development but seems not to work on production and as manager would always reply “we ain’t shipping…

source: https://blog.crowdbotics.com/5-common-software-architecture-patterns-and-when-to-use-them/

In the software development world, is the thoughts that metamorphoses to product haven undergone Software Development Life Cycle(SDLC), in other engineering world, the product can be felt or touched (this could be seen easy), this is not the case in software world and evidently contributing to the difficulty of software development plus the product requirement is ever changing and unstable at all times, the processing of converting your thought to physis of the product is called software architecture. Software architecture is different from software design as Pressman (2015) clearly stated that software architecture is the blueprint of software design, in…

source: https://medium.com/omarelgabrys-blog/software-engineering-software-process-and-software-process-models-part-2-4a9d06213fdc

The phases of software development are not only cleared but very concise and explanatory as well, however the act or the plan to combine the phases to make a good software is what is called Software Process Model(SPM). Sommerville (2016) defines software process model as the set of related activities involved during production of software from start to finish. The main idea behind the SPM is organizing the order of the activities to know which came first or last and establishing the transition between those activities. …

source: https://www.pinterest.com/pin/194288171402864609/

Imprecision in the requirement analysis and specification is the root cause of many software engineering problems(Sommerville, 2016). According to the Software Engineering Body of Knowledge(SWEBOK), the phases in software development are requirement gathering, system design, implementation, testing and maintenance, and among all requirement gathering is the far most important. Bharathi stressed the essences of requirement gathering(which is also known as requirement engineering) in her study stating the importance of understanding problems in client terms by outlining the processes that must be followed for adequate requirement gathering when developing software which as follows:

  1. Simple listings : Listing out all the requirement…

source: https://www.azquotes.com/picture-quotes/quote-the-function-of-good-software-is-to-make-the-complex-appear-to-be-simple-grady-booch-60-26-39.jpg

From what i have read and practiced over time in my career I would agree that the following are what makes good/quality software:

1. Functionality: Software is not good if it does not meet the intent or stated needs. complexity aside, if you are building a software to send/receive messages for instance. it should be able to do so accordingly without hassles. if software does over or under on what it is intended to do, then that software is considered poor software/product.

2. Reliability: Software should be able to provide failure free service. message software should be reliable as such…

source: https://www.getsmarter.com/blog/career-advice/business-systems-analysis-important-business-faqs/

Software is a set of programs or instructions that instruct the computer what to do and is completely independent of hardware, and is generally categorized as system software, programmable software and application software (Dempster, 2021). The analysis and synthesis of the software categories are guided by a set of principles which are documented in the Software Engineering Body of Knowledge(SWEBOK). …

James Oladimeji

I have always wanted to know how things work. I hate magic. This curiosity has driven me to programming, Java is my first and is to death do us part.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store