Posts

Showing posts with the label Software Development

Six Approaches or Methods to develop standard software development

Image
  The Software Development Life Cycle (SDLC) is the software development world’s spellcheck — it can flag errors in software creation before they’re discovered (at a much higher cost) in successive stages. But it’s much more than that, of course: SDLC can also lay out a plan for getting everything right the first time.   The SDLC process involves several distinct stages, including planning, analysis, design, building, testing, deployment and maintenance. What's the best SDLC methodology? Here are six methodologies, or models, to consider. Software development lifecycle methodologies Agile Lean Waterfall Iterative Spiral DevOps Each of these approaches varies in some ways from the others, but all have a common purpose: to help teams deliver high-quality software as quickly and cost-effectively as possible.   Reviewing a brief description of the six most common SDLC methodologies may help you decide which is best for your team: 1. Agile The Agile model has been around for a...

The future of DevOps in software development

Image
True DevOps success means being able to extend initial project results to other critical application pipelines throughout the enterprise. Here are five ways to navigate the obstacles. Call it the DevOps disconnect. Excitement about DevOps keeps rising, with one  report  even suggesting that the number of companies that have adopted DevOps or plan to do so has surpassed 90%. And the DevOps tools market is expected to grow to over $10 billion by 2023. At the same time, Gartner  predicts  that through 2022, 75% of DevOps initiatives will fail to meet expectations due to issues around organizational learning and change. By unifying development and operations end to end, DevOps promises to increase companies’ speed and agility in software delivery as they grow their digital initiatives, without sacrificing quality. Yet while many organizations are finding success with DevOps pilot projects, they’ve struggled to scale those results further in the enterprise. S...

New Barriers to faster growing Software Development

Image
Software delivery speed continues to accelerate. Toward that end, software teams have adopted Agile, DevOps and continuous integration/continuous delivery (CI/CD) to speed release cycles. Meanwhile, tools throughout the software development lifecycle (SDLC) have been enabling more automation and providing more intelligence. Piece by piece, each phase of the SDLC is being optimized, albeit at different rates in different organizations. However, as specific bottlenecks are solved, new ones take their place. A couple of development-related issues that may be holding software delivery up are traditional feature flagging and hand-coding. Traditional feature flagging vs. feature experimentation The purpose of feature flagging and feature experimentation platforms is roughly the same: speed the delivery of value. Feature flagging allows features to be turned on and off. For example, a developer can deploy code and turn a feature flag on or off to test it with a user base, such as alp...

Lesson to learn from deadly seven sins in Software development

Image
The 7 deadly sins were a grouping and classification of vices within Christian teachings. Behaviors and habits were classified in here if they directly gave birth to other immoralities. The 7 deadly sins were considered to be the polar opposites of the 7 virtues and were thought to be abuses or excessive versions of one’s natural tendencies. For instance, gluttony is an excess of the desire to eat. In addition to the 7 deadly sins of modern times, there are two other historical deadly sins (Acedia and vainglory) that have analogs in software development that are interesting enough to cover. “These came about in a time where the average person couldn’t read.” This classification system originated with the desert fathers, especially Evagrius Ponticus. They were brought to Europe by John Cassian (who wrote The Institutes), where it became fundamental to Catholic confession practices. The same ideas were later featured in literature like The Parson’s Tale from Chaucer’s Canterbury Tale...

Important 10 Things I Wish I’d Known Before I Started Coding

Image
I know I am not the only person out there whose journey into software engineering was delayed because I just didn’t know where to start. The plethora of resources provides an incredible opportunity but also can make embarking on the first steps intimidating. For those of you thinking of taking those first steps, or who are in those first steps, here are 10 things that I wish I had known before I began. 1. Choosing a Language is Important There are a multitude of programming languages out there. Each language has its strengths, its weaknesses, and situations in which it is best suited. While your first language will almost certainly be the hardest to learn and many of the most basic fundamentals will be similar across languages (variables, iteration, etc), it is worth the time and effort to do some research and decide which language you want to start with. Ease of programming is something that should certainly be considered. Be honest with yourself about how confiden...