R.S. Riley's Software Sense

  • Increase font size
  • Default font size
  • Decrease font size
Home Articles
Software Development

Heuristics, Refactoring and Maintainable Software Part I

E-mail Print PDF

computer-key-smallAlmost all developers are familiar with design patterns, however many are unaware some of their less formal brethren known as ‘design heuristics’. Design heuristics are ‘rules of thumb’ that are used when implementing and designing software and can serve as a natural complement to patterns. Design heuristics often take into account fuzzy factors such as maintainability which is often underplayed or outright ignored by the patterns camp.

Read more...
 

The Maintainable Software Mindset

E-mail Print PDF

computer-desk-smallOne of the most important determinants of a project’s success is how maintainable the software is. Maintainability in turn, is often driven by soft factors – factors that can’t be quantified or easily measured. This is one reason why so many projects churn out software of poor quality and consistently miss deadlines. A company can have great engineers, the latest tools and technologies, and enforce strict software processes but still create unmaintainable software. Instead of solely relying on things that can be written in a list and checkmarked, one must work on developing a culture of simplicity. Once such a culture exists, the creation of quality, maintainable software will be the natural outcome.

Read more...
 

Hiring Good People

E-mail Print PDF

interview-smallHiring good people can be one of the most if not the most important thing you can do to ensure a quality technical solution is produced that will solve a business need. I generally look for traits that fall in a few broad categories: technical competence, how well the individual fits into the team and the ability to prioritize tasks with respect to business/project needs.

Read more...
 

7 Tips for a Successful Software Project

E-mail Print PDF

project management-smallAccording to softwaremag.com, only 34% of software projects end up on time, 15% fail all-together, and 51% of projects are over budget and often lack critical features. As these statistics point out, it is vitally important that a project is set up so as to efficiently handle problems as they arise to ensure the long-term success of the project.

Read more...