Deprecated: Function create_function() is deprecated in /home/qualit96/public_html/wp-content/plugins/revslider/includes/framework/functions-wordpress.class.php on line 258

Warning: Cannot modify header information - headers already sent by (output started at /home/qualit96/public_html/wp-content/plugins/revslider/includes/framework/functions-wordpress.class.php:258) in /home/qualit96/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1372

Warning: Cannot modify header information - headers already sent by (output started at /home/qualit96/public_html/wp-content/plugins/revslider/includes/framework/functions-wordpress.class.php:258) in /home/qualit96/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1372

Warning: Cannot modify header information - headers already sent by (output started at /home/qualit96/public_html/wp-content/plugins/revslider/includes/framework/functions-wordpress.class.php:258) in /home/qualit96/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1372

Warning: Cannot modify header information - headers already sent by (output started at /home/qualit96/public_html/wp-content/plugins/revslider/includes/framework/functions-wordpress.class.php:258) in /home/qualit96/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1372

Warning: Cannot modify header information - headers already sent by (output started at /home/qualit96/public_html/wp-content/plugins/revslider/includes/framework/functions-wordpress.class.php:258) in /home/qualit96/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1372

Warning: Cannot modify header information - headers already sent by (output started at /home/qualit96/public_html/wp-content/plugins/revslider/includes/framework/functions-wordpress.class.php:258) in /home/qualit96/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1372

Warning: Cannot modify header information - headers already sent by (output started at /home/qualit96/public_html/wp-content/plugins/revslider/includes/framework/functions-wordpress.class.php:258) in /home/qualit96/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1372

Warning: Cannot modify header information - headers already sent by (output started at /home/qualit96/public_html/wp-content/plugins/revslider/includes/framework/functions-wordpress.class.php:258) in /home/qualit96/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1372
{"id":14529,"date":"2018-12-05T22:43:13","date_gmt":"2018-12-05T17:43:13","guid":{"rendered":"http:\/\/quality-spectrum.com\/?p=14529"},"modified":"2018-12-05T22:43:13","modified_gmt":"2018-12-05T17:43:13","slug":"how-loosely-to-couple-your-framework","status":"publish","type":"post","link":"http:\/\/quality-spectrum.com\/how-loosely-to-couple-your-framework\/","title":{"rendered":"How loosely to couple your framework?"},"content":{"rendered":"

To couple your framework tighty or loosely, that’s the question!<\/p>\n

And here is my thought:<\/p>\n

The first answer straight away is – loosely coupled off course,<\/p>\n

Which is true, but how loosely?<\/p>\n

The answer would be highly dependent on the context and usage, so there is no single answer.<\/p>\n

Here are some general considerations to think about:<\/p>\n

– Configurability
\n– Maintainability
\n– Reusability
\n– Robustness
\n– Scalability<\/p>\n

Unforunately, most of these are polar opposites
\n– Reusability \/ configurability vs maintainability
\n– scalabiliy vs robustness
\n– configurability vs robustness<\/p>\n

The trick is to strike the right balance between these factors,<\/p>\n

Which would depend on the context and usage.<\/p>\n

To give an example, a common one which I always mention is configurable vs robust,<\/p>\n

As you add more features to your application \/ framework and make it more configurable,<\/p>\n

It is bound to be more prone to errors and unknown states in the system.<\/p>\n

That’s why we have the McCabe complexity measurement..<\/p>\n

Anything else you would consider to determine how loosely your product \/ framework coupling should be?<\/p>\n

#QsDaily #automation #FrameworkDesign #SoftwareArchitecture<\/p>\n<\/div>

<\/div><\/div><\/div><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[52],"tags":[],"yoast_head":"\nHow loosely to couple your framework? - Quality Spectrum<\/title>\n<meta name=\"robots\" content=\"index, follow\" \/>\n<meta name=\"googlebot\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta name=\"bingbot\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"http:\/\/quality-spectrum.com\/how-loosely-to-couple-your-framework\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How loosely to couple your framework? - Quality Spectrum\" \/>\n<meta property=\"og:url\" content=\"http:\/\/quality-spectrum.com\/how-loosely-to-couple-your-framework\/\" \/>\n<meta property=\"og:site_name\" content=\"Quality Spectrum\" \/>\n<meta property=\"article:published_time\" content=\"2018-12-05T17:43:13+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@aali_khalid\" \/>\n<meta name=\"twitter:site\" content=\"@aali_khalid\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"http:\/\/quality-spectrum.com\/#organization\",\"name\":\"Quality Spectrum\",\"url\":\"http:\/\/quality-spectrum.com\/\",\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/alikhalid\/\",\"https:\/\/www.youtube.com\/c\/QualitySpectrum\",\"https:\/\/twitter.com\/aali_khalid\"],\"logo\":{\"@type\":\"ImageObject\",\"@id\":\"http:\/\/quality-spectrum.com\/#logo\",\"inLanguage\":\"en-US\",\"url\":\"http:\/\/quality-spectrum.com\/wp-content\/uploads\/2019\/11\/QS-logo-mobile-e1574510459832.png\",\"width\":40,\"height\":40,\"caption\":\"Quality Spectrum\"},\"image\":{\"@id\":\"http:\/\/quality-spectrum.com\/#logo\"}},{\"@type\":\"WebSite\",\"@id\":\"http:\/\/quality-spectrum.com\/#website\",\"url\":\"http:\/\/quality-spectrum.com\/\",\"name\":\"Quality Spectrum\",\"description\":\"Redefining software quality\",\"publisher\":{\"@id\":\"http:\/\/quality-spectrum.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"http:\/\/quality-spectrum.com\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"http:\/\/quality-spectrum.com\/how-loosely-to-couple-your-framework\/#webpage\",\"url\":\"http:\/\/quality-spectrum.com\/how-loosely-to-couple-your-framework\/\",\"name\":\"How loosely to couple your framework? - Quality Spectrum\",\"isPartOf\":{\"@id\":\"http:\/\/quality-spectrum.com\/#website\"},\"datePublished\":\"2018-12-05T17:43:13+00:00\",\"dateModified\":\"2018-12-05T17:43:13+00:00\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\/\/quality-spectrum.com\/how-loosely-to-couple-your-framework\/\"]}]},{\"@type\":\"Article\",\"@id\":\"http:\/\/quality-spectrum.com\/how-loosely-to-couple-your-framework\/#article\",\"isPartOf\":{\"@id\":\"http:\/\/quality-spectrum.com\/how-loosely-to-couple-your-framework\/#webpage\"},\"author\":{\"@id\":\"http:\/\/quality-spectrum.com\/#\/schema\/person\/4805a00d7139e111ea9430e17cc8f28c\"},\"headline\":\"How loosely to couple your framework?\",\"datePublished\":\"2018-12-05T17:43:13+00:00\",\"dateModified\":\"2018-12-05T17:43:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\/\/quality-spectrum.com\/how-loosely-to-couple-your-framework\/#webpage\"},\"commentCount\":0,\"publisher\":{\"@id\":\"http:\/\/quality-spectrum.com\/#organization\"},\"articleSection\":\"daily post\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\/\/quality-spectrum.com\/how-loosely-to-couple-your-framework\/#respond\"]}]},{\"@type\":[\"Person\"],\"@id\":\"http:\/\/quality-spectrum.com\/#\/schema\/person\/4805a00d7139e111ea9430e17cc8f28c\",\"name\":\"Ali Khalid\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"http:\/\/quality-spectrum.com\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"http:\/\/1.gravatar.com\/avatar\/70cbf539f218f275a77959dd2e56bddb?s=96&d=mm&r=g\",\"caption\":\"Ali Khalid\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","_links":{"self":[{"href":"http:\/\/quality-spectrum.com\/wp-json\/wp\/v2\/posts\/14529"}],"collection":[{"href":"http:\/\/quality-spectrum.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/quality-spectrum.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/quality-spectrum.com\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"http:\/\/quality-spectrum.com\/wp-json\/wp\/v2\/comments?post=14529"}],"version-history":[{"count":2,"href":"http:\/\/quality-spectrum.com\/wp-json\/wp\/v2\/posts\/14529\/revisions"}],"predecessor-version":[{"id":14531,"href":"http:\/\/quality-spectrum.com\/wp-json\/wp\/v2\/posts\/14529\/revisions\/14531"}],"wp:attachment":[{"href":"http:\/\/quality-spectrum.com\/wp-json\/wp\/v2\/media?parent=14529"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/quality-spectrum.com\/wp-json\/wp\/v2\/categories?post=14529"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/quality-spectrum.com\/wp-json\/wp\/v2\/tags?post=14529"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}