Software Development Best Practices

As a software engineer, i feel overwhelming with the software development process. Although, it's been more than decades to learn about it and plus my doctoral degree is in software engineering. i don't have any confidence that our software will have less bugs, better performance, and stable architecture. This is because several reasons such as: requirements changes lack of better architecture (chaos architecture) untested software So my real question is how we create better software and eliminating that problem. Let's think simple solution about this: Requirements changes --> unavoidable --> we should take care the changes by giving our customer chance to change as long as they pay Lack of better architecture --> can be avoided --> we should create a standard platform in the team and the architect should maintain the document so it should up to date Untested software --> can be avoided --> we can create a standard process to make sure the software is tested and the bugs is eliminated. Requirements Changes the way to improve the requirement process is by Creating a series workshop / meeting session to improve the requirement visibility Managing clear documentation about the requirement and the requirement changes. Tracking the changes about the requirement and the requirement changes. So what tool do you have for these: Azure DevOps Microsoft Planner Microsoft OneNote You can learn further here Manage requirements, Agile methods - Azure DevOps | Microsoft Docs Lack of Better Architecture The way to improve better architecture are: Evaluate the architecture with the architecture best practices Learning the new technology that can fulfill you architectural need Implement standardization of your platform and architecture task So what tool do you have for these: Visual Studio 2022 or later to check the code map, and code analysis Visio or PowerPoint to create and propose your architecture work Azure WIKI to document your architecture You can learn further about the architecting here Visual Studio 2022 architecture feature - Architecture analysis & modeling tools - Visual Studio (Windows) | Microsoft Docs Architecture Center - Azure Architecture Center - Azure Architecture Center | Microsoft Docs Untested Software The way to improve your software quality are: Regular testing. For example, do software testing for each iteration Creating your testing script. For example, you can create manual testing on Azure DevOps or automated testing with Visual Studio Get Feedback from customer. Do feedback session with the client for each iteration. So what tool do you have for these: Visual Studio unit testing and testing feature Azure DevOps testing feature Microsoft Teams for documenting your meeting You can learn further about the testing here Unit test tools - Visual Studio (Windows) | Microsoft Docs What is Azure Test Plans? Manual, exploratory, and automated test tools. - Azure Test Plans | Microsoft Docs

Bootstrapper for SQL Compact 4 and Sync Framework 2.1

Deployment is an important step in an ALM. Building smooth and good experience in installation will make the user happy and the application lifecycle management will be better. In .NET development application, the software distribution can be done two ways which are click once deployment and MSI installer. For the MSI Installer you might need to set dependency such as .NET Framework, Crystal Report, and others. Unfortunately, not the entire redistributable is ready to download in Microsoft side. You can download The SQL Compact 4 and Sync Framework here.

Deployment Strategy in .NET Client Application

Having confused with deployment option for your Client Application. In this article, it shows you that the .NET Client App has many option to deploy and to package. You can read and download the article in Bahasa Indonesia below  You can also read this article here online  Ciao, @ridife

Topics Highlights

About @ridife

This blog will be dedicated to integrate a knowledge between academic and industry need in the Software Engineering, DevOps, Cloud Computing and Microsoft 365 platform. Enjoy this blog and let's get in touch in any social media.


Month List