All About Software Engineering: Part 5 (Possible Solutions for Most Faced Software Engineering Challenges)
Saiful Islam Rasel
Senior Engineer, SDE @ bKash | Ex: AsthaIT | Sports Programmer | Problem Solver | FinTech | Microservice | Java | Spring-boot | C# | .NET | PostgreSQL | DynamoDB | JavaScript | TypeScript | React.js | Next.js | Angular
*** Previous Parts ***
Part 2: All About Software Engineering: Part 2 (Software Development Life Cycle [SDLC] and Process Models)
Story:
Previously Shuvo and Tapu explored some of the challenges in modern software engineering faced day to day life. Now they want to explore the possible solutions for the most faced software engineering challenges. Why possible solutions because they know there is nothing in software engineering which is "fit for all".
Possible Solutions for Most Faced Software Engineering Challenges:
As stated earlier, modern software engineering is a complex and dynamic field, presenting various challenges. And there is no solution which is fit for all. The only constant in modern software engineering is change and powerful solution is tradeoff decision with proper execution. So the below mention solutions are possible solutions which can be followed and can be considered as the first check point. So lets start...
Rapid Change
Problem: Technological change
Solution:
Problem: Requirement change
Solution:
Problem: People change
Solution:
Compliance, Regulation and Security
Problem: Compliance & Regulation
Solution:
Problem: Security
Solution:
Managing Complexity
Problem: System complexity
Solution:
Problem: Large cross functional team complexity
Solution:
Scalability
Problem: System scaling
Solution:
Problem: Team scaling
Solution:
Managing Development Process
Problem: Project management
Solution:
Problem: Follow agile and scrum
Solution:
Addressing Human Factors:
Problem: Talent acquisition and shortage
Solution:
领英推荐
Problem: Team collaboration
Solution:
Problem: Leading team effectively
Solutions:
Ensuring User Expectation and Quality
Problem: Meet user expectation
Solution:
Problem: Ensure quality
Solution:
Dealing and Managing User Data
Problem: Ensure user data security
Solution:
Problem: Manage large volume of data
Solution:
Rapid Implementation and CI/CD
Problem: Fast implementation
Solution:
Problem: CI/CD and infrastructure management
Solution:
Problem: Ensure availability
Solution:
Working With Legacy System Parallelly
Problems: Maintain legacy system, Legacy system migration, Integrating with legacy system
Solutions:
Ethical Considerations
Problems: Ethical use of technology, Digital inclusion
Solutions:
Tradeoff Decision
Problems: Cost vs performance tradeoff, Deadline meet vs best practice tradeoff
Solutions:
And more. There has a lots of other problems associated with modern software engineering and their possible solutions too.
Summary:
I hope if you face any of the problems, then the above mentioned solutions will help you to find a way around. Always remember, the software engineering is all about tradeoff decision making. Be flexible and open to adopt any situation.
Happy Reading !!!
Happy Learning !!!
Happy Sharing !!!
Senior Engineer, SDE @ bKash | Ex: AsthaIT | Sports Programmer | Problem Solver | FinTech | Microservice | Java | Spring-boot | C# | .NET | PostgreSQL | DynamoDB | JavaScript | TypeScript | React.js | Next.js | Angular
9 个月Previous Part: https://www.dhirubhai.net/pulse/all-software-engineering-part-4-challenges-modern-saiful-islam-rasel-iiulc/