Agile Development — Why requirements matter
The clear benefits of agile development — better collaboration, incremental delivery, early error detection, and the elimination of unnecessary work—have made it the default approach for many teams. Agile methods are also being adopted… Continue reading
How software is revolutionizing the business world
Software is an integral aspect of virtually every business worldwide. The increasing pace of the industry is driven by customers who expect speed, agility, automation, and transparency in their exchanges.
These expectations are… Continue reading
Predictive software engineering: the ultimate way to deliver working software
According to a Deloitte survey predictive software engineering, distributed and remote collaboration is expected to grow across multiple functions, particularly IT, in the coming years. The survey reveals that the… Continue reading
Build a multi-cloud app with these four factors in mind
A multi-cloud strategy reduces vendor lock-in and outage risks. But to realize those benefits, development teams must first design apps to successfully run on various platforms.
In software development today, the cloud is a fact of life. And, increasingly, enterprises plan their application architectures across multiple public cloud providers, rather than just one.
A key driver behind multi-cloud adoption is increased reliability. In 2017, Amazon’s Simple Storage Service went down due to a typo in a command executed during routine maintenance. In the pre-cloud era, the consequences of an error like that would be relatively negligible. But, due to the growing dependence on public cloud infrastructure, that one typo reportedly cost upwards of $150 million in losses across many companies.
A multi-cloud app — or an app designed to run on various cloud-based infrastructures — helps mitigate these risks; if one platform goes down, other steps in to take its place. Continue reading
How component-based software engineering spurs innovation?
Demands for digital transformation in business may ring hollow to some architects. However, componentization can play a key role in making business innovation a reality. – Software engineering
Architects and developers have too many priorities and too many high-level goals as it is. The introduction of broad business imperatives, such as application modernization and digital transformation, do little to create a technical approach or define a software architecture.
The best way to really approach these demands is to get your terms straight, frame applications along modern cloud component lines, introduce component-based software engineering to make processes match business needs and recognize productivity and technology trends as equals.
The strategy – software engineering
A primary technical step in creating a business transformation bridge is to focus on component-based software engineering, part of which involves having a componentization strategy. Componentization is driven by two forces: functional requirements from the business transformation side and technical requirements from the application modernization side.
The functional side of componentization is created by the tasks workers perform and the application tools they use. The goal of functional componentization is to create components at the highest level and avoid a specialization of functions that limit sharing components among applications. Continue reading