Service Oriented Architecture (SOA) Design Principle: Coupling, Cohesion, and Granularity

In the realm of Service Oriented Architecture (SOA) design principles, the concepts of Service Coupling, Service Cohesion, and Service Granularity play pivotal roles in shaping a robust and effective architectural framework. Service Coupling refers to the degree of interdependence between any two business processes. In the context of SOA, weak coupling is highly preferred as…

data codes through eyeglasses

What Software Patterns (or Design Patterns) are and an introduction to the most common one

Software patterns, often referred to as design patterns, are a reusable and generalizable solution to a common problem that software developers face when designing and building software applications. Design patterns are essentially templates or blueprints for solving recurring design problems in a systematic and efficient way. Design patterns serve several important purposes in software development:…

A Survey of Social Software Engineering

A Survey of Social Software Engineering

Abstract: Software engineering is a complex sociotechnical activity, due to the need for discussing and sharing knowledge among team members. This has raised the need for effective ways of sharing ideas, knowledge, and artifacts among groups and their members. The social aspect of software engineering process also demands computer support to facilitate the development by…

Front End Development, Back End Development, and Full Stack Developers

Developing software is more and more a collaborative activity where multiple experts interact for delivering a particular solution. Strictly talking about development and without including supporting activities, we can divide programmers as specialized in front-end development or back-end development. Let’s try to define these activities. We can define front-end-development as the practice of converting data…