SlideShare a Scribd company logo
CONWAY’S COROLLARY
                                    INAM SOOMRO

1. Conway's Law and its History

In 1967, A computer programmer and scientist Melvin Conway wrote and submitted a
paper to Harvard Business Review (HBR) called “How do committees invent” which was
rejected on the basis that Conway “had not proved [the] thesis”. Later on, in April 1968,
the same paper was accepted and published by “Datamation”, a major IT magazine of the
time [Conway 1968]. In 1974, Conway’s assertion was referred as “Conway’s Law” in the
seminal work named “The Mythical-Man-Month” [Brooks 1974] of Fred Brooks. After
the emergence of empirical software engineering, in the past few years, this law has
received a huge amount of attention which would have been helpful to Conway in 1967 to
prove his assertion. The two empirical case studies contained in this report will provide
the evidence to prove the Conway’s Law on the basis of established empirical guidelines
and can be appreciated and used as a touchstone for modern software engineers and
developers. The main idea behind Conway’s paper was:
“Any organization that designs a system (defined broadly) will produce a design whose
structure is a copy of the organization’s communication structure”.
Conway’s assertion was based on the “Proof” of system’s design origin that artifact the
structure. The assertion claim was focused on the initial design of software development,
however the modern observers and practitioners has perceived it to be valid for later
phases as well and conveys the possible corollary of Conway’s Law as:
“A software system whose structure closely matches its organization’s communication
structure works “better” (defined broadly) than a subsystem whose structure differs from
its organization’s communication structure”.
The high-level goals to sustain by any software development company are productivity
and the quality. The first case study will validate the Conway’s Law for productivity of
software and the second case study will validate the Conway’s Law validating the quality
of software in the context of organizational complexity within Microsoft for windows
vista.

2. Conway's law validating the productivity
2.1 Context

Large-Scale software application development requires a rich communication and
coordination between the engineering teams. If the communication and coordination really
plays an important role in software productivity, the organizations are willing to invest to
make the communication and coordination better. In 2006, Marcelo Cataldo et al. [Cataldo
et al. 2006] asked a question, “How much does coordination affect in a large real-world
software project?”, to answer this question, he investigated a large software project for
work dependencies, coordination needs and the time required to complete a single task. A
single unit of work or a request change represented by the project as modification request
(MR) which may be adding a feature, fixing a problem, or performing maintenance. For
completing the MRs, team members often need to coordinate for (i) some of the MRs are
depend on other MRs, an MR to integrate spellchecker to a word processing application
cannot be accomplished before the implementation of MR of dictionary will exemplify
such MRs. (ii) a software application is mostly built from different interdependent
modules; changes made to one module usually affect other modules.

2.2 Methods
Cataldo et al. proposed that when there is a “coordination fit” called “congruence”
between the dependent tasks that developers have and the coordination activities
performed by these developers, it will be easier to complete tasks (MRs). To examine the
coordination between software developers, Cataldo invented four measures of congruence
to observe communication and team characteristics that facilitate communication. The
four measures of coordination indicate the communication structure of the entire
development organization. It includes structural congruence; defines the ease of
coordination between developers, geographical congruence; defines the difficulty of
physical distance between developers to communicate, task congruence; defines
communication via comments on a particular task (MR), IRC communication congruence;
defines coordination between developers via instant messaging (IRC). The author
investigated software project involved 114 developers, split into eight teams distributed
across three locations. Cataldo et al. measured task assignment by looking at which MRs
were completed by each developer and which files were changed to complete it, then
counting the number of times the two files were changed together during the whole
project that represent the interdependence to complete a single MR.

2.3 Results

Cataldo et al. found that the tasks were completed faster when the communication
structure reflected the artifact structure, this is a proof that when the Conway’s Law is
followed, teams are more productive, and Conway’s corollary is true with respect to the
time required to complete tasks. The authors also found that the tasks completed in less
time when MR had a high level of congruence than a similar MR with a low level of
congruence. The most time required by MR reduced was with structural congruence,
followed by geographical congruence working on related tasks. IRC congruence was
better in later releases than in earlier ones.
Thus the developers’ productivity is explored with the relationship of Conway’s corollary
by inspecting how “Congruence” yields to faster task completion.

2.4 Implications

Results from the study are intended to the similar software projects used in this case study.
To enrich the communication, MRs that are dependent on other MRs should be given to
the developers working on same site. It helps to reduce the time to complete a certain MR
when developers are coordinating via MR comments.

3. Conway's Law validating the Quality
3.1 Context

Quality of a software project is an important factor. Defects found in software after their
releases have not only the monetarist effects, but also it brings down the reputation of the
company. In the reference of Conway’s claim and the cost related with defects, Nachi
Nagappan, Brendan Murphy, Vic Basili researched on organizational structure of post-
release defects of windows vista [Nagappan et al. 2008] and found strong relationship
between the two.
3.2 Methods

For the assessment of Conway’s corollary, Nagappan classified each binary as either
failure prone or not failure prone in windows vista based on distinct failures. To observe
organizational complexity, Nagappan, Murphy, and Basili proposed eight metrics for
organizational complexity and inspected the relationship of each metric with failure-
proneness and built a regression model to observe the effect. The eight measures include
number of engineers, defines the total numbers of engineers currently working, Number of
ex-engineers, defines the total number of engineers left the company during development
and after the release of the product, edit frequency, defines the number of time a single
source file has been changed, and depth of master ownership, defines the depth of binary
distribution within the organization, etc. They used data from version control system to
determine changes made to source file. Nagappan, Murphy, and Basili also gathered data
from the company’s organizational chart to see how engineers were related
organizationally and used logistic regression that takes a series of independent variable as
input and outputs the classification. The authors also used post-release defect data to
classify the binaries into failure-prone and not failure-prone. Then they used logistic
regression to determine the relationship between an independent variable (an
organizational metric) and a classification (failure-prone or not). The authors tried to
predict the failure-prone binaries based on the organizational metrics. The standard way to
compare different prediction techniques is to examine, precision, defines how many of the
binaries predicted classifies as failure-prone are actually failure-prone and recall, defines
how many of the binaries that actually are failure prone are predicted to be failure-prone.

3.3 Results

Nagappan, Murphy, and Basili observed that the organizational metrics had a significant
effect on failure, that is, the higher the number of ex-engineers who worked on binary, the
more failure in that binary. This is a clear indication that the organizational complexity is
related to post-release defects, so in the context of windows vista, it is clear that
organizational complexity is strongly related to post-release defects. It confirms that when
communication and coordination reflects the technical artifacts, the software quality is
“better”.

3.4 Implications

In the case of windows vista, you will know better, if the software has bugs by looking at
the organizational structure rather than looking at the code. More organizational
complexity indicates that the structure of the organization is poorly aligned with the
structure of the software system. When developers from different organizations work on
common binary, it tends to be more failure-prone. In the case of engineers leaving
company, binary-specific domain knowledge is lost. A clear owning team may be
appointed to act as a gatekeeper or change reviewer for each change in the binary.
Stabilizing the interfaces of software components early in the development cycle may
mitigate the negative effects of organizational complexity later on.
Bibliography

-   Making Software By Andy Oram; Greg Wilsone , Chapter 11. Conway’s Corollary—
    Christian Bird.
-   [Brooks 1974] Brooks,F.P. 1974. The Mythical Man-Month. Datamation 20(12):44-52
-   [Cataldo et al. 2006] Cataldo. M., P.A. Wagstrom, J.D. Herbsleb, and K.M. Carley.
    2006. Identification and coordination requirements: Implications for the design of
    collaboration and awareness tools. Proceedings of the 20th Conference on computer
    supported cooperative work: 353-362.
-   [Conway 1968] Conway, M.E. 1968. How do committees invent? Datamation 14(4):
    28–31.
    [Nagappan et al. 2008] Nagappan, N., B. Murphy, and V. Basili. 2008. The influence
    of organizational structure on software quality: An empirical case study. Proceedings
    of the 30th International Conference on Software Engineering: 521–530.

More Related Content

What's hot

DOC
DOCDOC
The (Un) Expected Impact of Tools in Software Evolution
The (Un) Expected Impact of Tools in Software EvolutionThe (Un) Expected Impact of Tools in Software Evolution
The (Un) Expected Impact of Tools in Software Evolution
Gail Murphy
 
C0371019027
C0371019027C0371019027
C0371019027
inventionjournals
 
Icsme 2021-keynote-creating-usable-and-useful-software-tools
Icsme 2021-keynote-creating-usable-and-useful-software-toolsIcsme 2021-keynote-creating-usable-and-useful-software-tools
Icsme 2021-keynote-creating-usable-and-useful-software-tools
Gail Murphy
 
Software Quality Measure
Software Quality MeasureSoftware Quality Measure
Software Quality Measure
Editor IJCATR
 
ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...
ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...
ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...
IJCSEA Journal
 
05 extended report
05 extended report05 extended report
05 extended report
rehema nzumira
 
Making Effective, Useful Software Development Tools
Making Effective, Useful Software Development ToolsMaking Effective, Useful Software Development Tools
Making Effective, Useful Software Development Tools
Gail Murphy
 
Software Architectural mismatches
Software Architectural mismatchesSoftware Architectural mismatches
Software Architectural mismatches
Mohammad Shawahneh
 
Lecture1422914635
Lecture1422914635Lecture1422914635
Unsustainable Regaining Control of Uncontrollable Apps
Unsustainable Regaining Control of Uncontrollable AppsUnsustainable Regaining Control of Uncontrollable Apps
Unsustainable Regaining Control of Uncontrollable Apps
CAST
 
International Journal of Business and Management Invention (IJBMI)
International Journal of Business and Management Invention (IJBMI)International Journal of Business and Management Invention (IJBMI)
International Journal of Business and Management Invention (IJBMI)
inventionjournals
 
SECURING SOFTWARE DEVELOPMENT STAGES USING ASPECT-ORIENTATION CONCEPTS
SECURING SOFTWARE DEVELOPMENT STAGES USING ASPECT-ORIENTATION CONCEPTSSECURING SOFTWARE DEVELOPMENT STAGES USING ASPECT-ORIENTATION CONCEPTS
SECURING SOFTWARE DEVELOPMENT STAGES USING ASPECT-ORIENTATION CONCEPTS
ijseajournal
 
Se chapter 1,2,3 2 mark qa
Se chapter 1,2,3   2 mark  qaSe chapter 1,2,3   2 mark  qa
Se chapter 1,2,3 2 mark qa
Aruna M
 
Visualizing Object-oriented Software for Understanding and Documentation
Visualizing Object-oriented Software for Understanding and Documentation Visualizing Object-oriented Software for Understanding and Documentation
Visualizing Object-oriented Software for Understanding and Documentation
Ra'Fat Al-Msie'deen
 
Defect Prevention Based on 5 Dimensions of Defect Origin
Defect Prevention Based on 5 Dimensions of Defect OriginDefect Prevention Based on 5 Dimensions of Defect Origin
Defect Prevention Based on 5 Dimensions of Defect Origin
ijseajournal
 
Unified V- Model Approach of Re-Engineering to reinforce Web Application Deve...
Unified V- Model Approach of Re-Engineering to reinforce Web Application Deve...Unified V- Model Approach of Re-Engineering to reinforce Web Application Deve...
Unified V- Model Approach of Re-Engineering to reinforce Web Application Deve...
IOSR Journals
 
Put Your Hands in the Mud: What Technique, Why, and How
Put Your Hands in the Mud: What Technique, Why, and HowPut Your Hands in the Mud: What Technique, Why, and How
Put Your Hands in the Mud: What Technique, Why, and How
Massimiliano Di Penta
 

What's hot (18)

DOC
DOCDOC
DOC
 
The (Un) Expected Impact of Tools in Software Evolution
The (Un) Expected Impact of Tools in Software EvolutionThe (Un) Expected Impact of Tools in Software Evolution
The (Un) Expected Impact of Tools in Software Evolution
 
C0371019027
C0371019027C0371019027
C0371019027
 
Icsme 2021-keynote-creating-usable-and-useful-software-tools
Icsme 2021-keynote-creating-usable-and-useful-software-toolsIcsme 2021-keynote-creating-usable-and-useful-software-tools
Icsme 2021-keynote-creating-usable-and-useful-software-tools
 
Software Quality Measure
Software Quality MeasureSoftware Quality Measure
Software Quality Measure
 
ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...
ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...
ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...
 
05 extended report
05 extended report05 extended report
05 extended report
 
Making Effective, Useful Software Development Tools
Making Effective, Useful Software Development ToolsMaking Effective, Useful Software Development Tools
Making Effective, Useful Software Development Tools
 
Software Architectural mismatches
Software Architectural mismatchesSoftware Architectural mismatches
Software Architectural mismatches
 
Lecture1422914635
Lecture1422914635Lecture1422914635
Lecture1422914635
 
Unsustainable Regaining Control of Uncontrollable Apps
Unsustainable Regaining Control of Uncontrollable AppsUnsustainable Regaining Control of Uncontrollable Apps
Unsustainable Regaining Control of Uncontrollable Apps
 
International Journal of Business and Management Invention (IJBMI)
International Journal of Business and Management Invention (IJBMI)International Journal of Business and Management Invention (IJBMI)
International Journal of Business and Management Invention (IJBMI)
 
SECURING SOFTWARE DEVELOPMENT STAGES USING ASPECT-ORIENTATION CONCEPTS
SECURING SOFTWARE DEVELOPMENT STAGES USING ASPECT-ORIENTATION CONCEPTSSECURING SOFTWARE DEVELOPMENT STAGES USING ASPECT-ORIENTATION CONCEPTS
SECURING SOFTWARE DEVELOPMENT STAGES USING ASPECT-ORIENTATION CONCEPTS
 
Se chapter 1,2,3 2 mark qa
Se chapter 1,2,3   2 mark  qaSe chapter 1,2,3   2 mark  qa
Se chapter 1,2,3 2 mark qa
 
Visualizing Object-oriented Software for Understanding and Documentation
Visualizing Object-oriented Software for Understanding and Documentation Visualizing Object-oriented Software for Understanding and Documentation
Visualizing Object-oriented Software for Understanding and Documentation
 
Defect Prevention Based on 5 Dimensions of Defect Origin
Defect Prevention Based on 5 Dimensions of Defect OriginDefect Prevention Based on 5 Dimensions of Defect Origin
Defect Prevention Based on 5 Dimensions of Defect Origin
 
Unified V- Model Approach of Re-Engineering to reinforce Web Application Deve...
Unified V- Model Approach of Re-Engineering to reinforce Web Application Deve...Unified V- Model Approach of Re-Engineering to reinforce Web Application Deve...
Unified V- Model Approach of Re-Engineering to reinforce Web Application Deve...
 
Put Your Hands in the Mud: What Technique, Why, and How
Put Your Hands in the Mud: What Technique, Why, and HowPut Your Hands in the Mud: What Technique, Why, and How
Put Your Hands in the Mud: What Technique, Why, and How
 

Similar to Conway corollary

MySCMInnovation
MySCMInnovationMySCMInnovation
MySCMInnovation
Scott Lehman
 
Asundi
AsundiAsundi
Asundi
guestfea9c55
 
Learning from Human Repairs Through the Exploitation of Software Repositories
Learning from Human Repairs Through the Exploitation of Software Repositories Learning from Human Repairs Through the Exploitation of Software Repositories
Learning from Human Repairs Through the Exploitation of Software Repositories
ijseajournal
 
A3 - AR Code Planetarium CST.pdf
A3 - AR Code Planetarium CST.pdfA3 - AR Code Planetarium CST.pdf
A3 - AR Code Planetarium CST.pdf
James Anderson
 
Software Refactoring Under Uncertainty: A Robust Multi-Objective Approach
Software Refactoring Under Uncertainty:  A Robust Multi-Objective ApproachSoftware Refactoring Under Uncertainty:  A Robust Multi-Objective Approach
Software Refactoring Under Uncertainty: A Robust Multi-Objective Approach
Wiem Mkaouer
 
Exploiting semantics-in-collaborative-software-development-tasks
Exploiting semantics-in-collaborative-software-development-tasksExploiting semantics-in-collaborative-software-development-tasks
Exploiting semantics-in-collaborative-software-development-tasks
Dimitris Panagiotou
 
Learning activity 4
Learning activity 4Learning activity 4
Learning activity 4
Aileen Banaguas
 
Ko tse06-developers behaviour
Ko tse06-developers behaviourKo tse06-developers behaviour
Ko tse06-developers behaviour
PtidejPoly
 
An Introduction to Agile Software Development
An Introduction to Agile Software DevelopmentAn Introduction to Agile Software Development
An Introduction to Agile Software Development
Serena Software
 
Coupling based structural metrics for measuring the quality of a software (sy...
Coupling based structural metrics for measuring the quality of a software (sy...Coupling based structural metrics for measuring the quality of a software (sy...
Coupling based structural metrics for measuring the quality of a software (sy...
Mumbai Academisc
 
Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)
MuhammadTalha436
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020
MuhammadTalha436
 
1. Emergence of Software EngineeringIn the software industry, we.docx
1. Emergence of Software EngineeringIn the software industry, we.docx1. Emergence of Software EngineeringIn the software industry, we.docx
1. Emergence of Software EngineeringIn the software industry, we.docx
jackiewalcutt
 
Open source evolution analysis
Open source evolution analysisOpen source evolution analysis
Open source evolution analysis
Izzat Alsmadi
 
Contributors to Reduce Maintainability Cost at the Software Implementation Phase
Contributors to Reduce Maintainability Cost at the Software Implementation PhaseContributors to Reduce Maintainability Cost at the Software Implementation Phase
Contributors to Reduce Maintainability Cost at the Software Implementation Phase
Waqas Tariq
 
ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...
ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...
ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...
IJCSEA Journal
 
Performance assessment and analysis of development and operations based autom...
Performance assessment and analysis of development and operations based autom...Performance assessment and analysis of development and operations based autom...
Performance assessment and analysis of development and operations based autom...
IJECEIAES
 
Does Distributed Development Affect Software Quality? An Empirical Case Study...
Does Distributed Development Affect Software Quality? An Empirical Case Study...Does Distributed Development Affect Software Quality? An Empirical Case Study...
Does Distributed Development Affect Software Quality? An Empirical Case Study...
Daniel Agaba
 
Software design.edited (1)
Software design.edited (1)Software design.edited (1)
Software design.edited (1)
FarjanaAhmed3
 
Software Process and Requirement
Software Process and RequirementSoftware Process and Requirement
Software Process and Requirement
cricket2ime
 

Similar to Conway corollary (20)

MySCMInnovation
MySCMInnovationMySCMInnovation
MySCMInnovation
 
Asundi
AsundiAsundi
Asundi
 
Learning from Human Repairs Through the Exploitation of Software Repositories
Learning from Human Repairs Through the Exploitation of Software Repositories Learning from Human Repairs Through the Exploitation of Software Repositories
Learning from Human Repairs Through the Exploitation of Software Repositories
 
A3 - AR Code Planetarium CST.pdf
A3 - AR Code Planetarium CST.pdfA3 - AR Code Planetarium CST.pdf
A3 - AR Code Planetarium CST.pdf
 
Software Refactoring Under Uncertainty: A Robust Multi-Objective Approach
Software Refactoring Under Uncertainty:  A Robust Multi-Objective ApproachSoftware Refactoring Under Uncertainty:  A Robust Multi-Objective Approach
Software Refactoring Under Uncertainty: A Robust Multi-Objective Approach
 
Exploiting semantics-in-collaborative-software-development-tasks
Exploiting semantics-in-collaborative-software-development-tasksExploiting semantics-in-collaborative-software-development-tasks
Exploiting semantics-in-collaborative-software-development-tasks
 
Learning activity 4
Learning activity 4Learning activity 4
Learning activity 4
 
Ko tse06-developers behaviour
Ko tse06-developers behaviourKo tse06-developers behaviour
Ko tse06-developers behaviour
 
An Introduction to Agile Software Development
An Introduction to Agile Software DevelopmentAn Introduction to Agile Software Development
An Introduction to Agile Software Development
 
Coupling based structural metrics for measuring the quality of a software (sy...
Coupling based structural metrics for measuring the quality of a software (sy...Coupling based structural metrics for measuring the quality of a software (sy...
Coupling based structural metrics for measuring the quality of a software (sy...
 
Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)Software Engineering (Short & Long Questions)
Software Engineering (Short & Long Questions)
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020
 
1. Emergence of Software EngineeringIn the software industry, we.docx
1. Emergence of Software EngineeringIn the software industry, we.docx1. Emergence of Software EngineeringIn the software industry, we.docx
1. Emergence of Software EngineeringIn the software industry, we.docx
 
Open source evolution analysis
Open source evolution analysisOpen source evolution analysis
Open source evolution analysis
 
Contributors to Reduce Maintainability Cost at the Software Implementation Phase
Contributors to Reduce Maintainability Cost at the Software Implementation PhaseContributors to Reduce Maintainability Cost at the Software Implementation Phase
Contributors to Reduce Maintainability Cost at the Software Implementation Phase
 
ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...
ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...
ARCHITECTING IN THE CONTEXT OF AGILE SOFTWARE DEVELOPMENT: FRAGILITY VERSUS F...
 
Performance assessment and analysis of development and operations based autom...
Performance assessment and analysis of development and operations based autom...Performance assessment and analysis of development and operations based autom...
Performance assessment and analysis of development and operations based autom...
 
Does Distributed Development Affect Software Quality? An Empirical Case Study...
Does Distributed Development Affect Software Quality? An Empirical Case Study...Does Distributed Development Affect Software Quality? An Empirical Case Study...
Does Distributed Development Affect Software Quality? An Empirical Case Study...
 
Software design.edited (1)
Software design.edited (1)Software design.edited (1)
Software design.edited (1)
 
Software Process and Requirement
Software Process and RequirementSoftware Process and Requirement
Software Process and Requirement
 

Recently uploaded

Your Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective UpskillingYour Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Excellence Foundation for South Sudan
 
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
สมใจ จันสุกสี
 
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
Nguyen Thanh Tu Collection
 
MARY JANE WILSON, A “BOA MÃE” .
MARY JANE WILSON, A “BOA MÃE”           .MARY JANE WILSON, A “BOA MÃE”           .
MARY JANE WILSON, A “BOA MÃE” .
Colégio Santa Teresinha
 
PIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf IslamabadPIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf Islamabad
AyyanKhan40
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
Priyankaranawat4
 
How to deliver Powerpoint Presentations.pptx
How to deliver Powerpoint  Presentations.pptxHow to deliver Powerpoint  Presentations.pptx
How to deliver Powerpoint Presentations.pptx
HajraNaeem15
 
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
imrankhan141184
 
How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17
Celine George
 
Beyond Degrees - Empowering the Workforce in the Context of Skills-First.pptx
Beyond Degrees - Empowering the Workforce in the Context of Skills-First.pptxBeyond Degrees - Empowering the Workforce in the Context of Skills-First.pptx
Beyond Degrees - Empowering the Workforce in the Context of Skills-First.pptx
EduSkills OECD
 
The History of Stoke Newington Street Names
The History of Stoke Newington Street NamesThe History of Stoke Newington Street Names
The History of Stoke Newington Street Names
History of Stoke Newington
 
A Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdfA Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdf
Jean Carlos Nunes Paixão
 
Leveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit InnovationLeveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit Innovation
TechSoup
 
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
Nguyen Thanh Tu Collection
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
Nicholas Montgomery
 
UGC NET Exam Paper 1- Unit 1:Teaching Aptitude
UGC NET Exam Paper 1- Unit 1:Teaching AptitudeUGC NET Exam Paper 1- Unit 1:Teaching Aptitude
UGC NET Exam Paper 1- Unit 1:Teaching Aptitude
S. Raj Kumar
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
PECB
 
Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...
Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...
Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...
Diana Rendina
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
GeorgeMilliken2
 
The basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptxThe basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptx
heathfieldcps1
 

Recently uploaded (20)

Your Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective UpskillingYour Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective Upskilling
 
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
 
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
 
MARY JANE WILSON, A “BOA MÃE” .
MARY JANE WILSON, A “BOA MÃE”           .MARY JANE WILSON, A “BOA MÃE”           .
MARY JANE WILSON, A “BOA MÃE” .
 
PIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf IslamabadPIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf Islamabad
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
 
How to deliver Powerpoint Presentations.pptx
How to deliver Powerpoint  Presentations.pptxHow to deliver Powerpoint  Presentations.pptx
How to deliver Powerpoint Presentations.pptx
 
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
 
How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17
 
Beyond Degrees - Empowering the Workforce in the Context of Skills-First.pptx
Beyond Degrees - Empowering the Workforce in the Context of Skills-First.pptxBeyond Degrees - Empowering the Workforce in the Context of Skills-First.pptx
Beyond Degrees - Empowering the Workforce in the Context of Skills-First.pptx
 
The History of Stoke Newington Street Names
The History of Stoke Newington Street NamesThe History of Stoke Newington Street Names
The History of Stoke Newington Street Names
 
A Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdfA Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdf
 
Leveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit InnovationLeveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit Innovation
 
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
 
UGC NET Exam Paper 1- Unit 1:Teaching Aptitude
UGC NET Exam Paper 1- Unit 1:Teaching AptitudeUGC NET Exam Paper 1- Unit 1:Teaching Aptitude
UGC NET Exam Paper 1- Unit 1:Teaching Aptitude
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
 
Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...
Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...
Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
 
The basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptxThe basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptx
 

Conway corollary

  • 1. CONWAY’S COROLLARY INAM SOOMRO 1. Conway's Law and its History In 1967, A computer programmer and scientist Melvin Conway wrote and submitted a paper to Harvard Business Review (HBR) called “How do committees invent” which was rejected on the basis that Conway “had not proved [the] thesis”. Later on, in April 1968, the same paper was accepted and published by “Datamation”, a major IT magazine of the time [Conway 1968]. In 1974, Conway’s assertion was referred as “Conway’s Law” in the seminal work named “The Mythical-Man-Month” [Brooks 1974] of Fred Brooks. After the emergence of empirical software engineering, in the past few years, this law has received a huge amount of attention which would have been helpful to Conway in 1967 to prove his assertion. The two empirical case studies contained in this report will provide the evidence to prove the Conway’s Law on the basis of established empirical guidelines and can be appreciated and used as a touchstone for modern software engineers and developers. The main idea behind Conway’s paper was: “Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization’s communication structure”. Conway’s assertion was based on the “Proof” of system’s design origin that artifact the structure. The assertion claim was focused on the initial design of software development, however the modern observers and practitioners has perceived it to be valid for later phases as well and conveys the possible corollary of Conway’s Law as: “A software system whose structure closely matches its organization’s communication structure works “better” (defined broadly) than a subsystem whose structure differs from its organization’s communication structure”. The high-level goals to sustain by any software development company are productivity and the quality. The first case study will validate the Conway’s Law for productivity of software and the second case study will validate the Conway’s Law validating the quality of software in the context of organizational complexity within Microsoft for windows vista. 2. Conway's law validating the productivity 2.1 Context Large-Scale software application development requires a rich communication and coordination between the engineering teams. If the communication and coordination really plays an important role in software productivity, the organizations are willing to invest to make the communication and coordination better. In 2006, Marcelo Cataldo et al. [Cataldo et al. 2006] asked a question, “How much does coordination affect in a large real-world software project?”, to answer this question, he investigated a large software project for work dependencies, coordination needs and the time required to complete a single task. A single unit of work or a request change represented by the project as modification request (MR) which may be adding a feature, fixing a problem, or performing maintenance. For completing the MRs, team members often need to coordinate for (i) some of the MRs are depend on other MRs, an MR to integrate spellchecker to a word processing application cannot be accomplished before the implementation of MR of dictionary will exemplify
  • 2. such MRs. (ii) a software application is mostly built from different interdependent modules; changes made to one module usually affect other modules. 2.2 Methods Cataldo et al. proposed that when there is a “coordination fit” called “congruence” between the dependent tasks that developers have and the coordination activities performed by these developers, it will be easier to complete tasks (MRs). To examine the coordination between software developers, Cataldo invented four measures of congruence to observe communication and team characteristics that facilitate communication. The four measures of coordination indicate the communication structure of the entire development organization. It includes structural congruence; defines the ease of coordination between developers, geographical congruence; defines the difficulty of physical distance between developers to communicate, task congruence; defines communication via comments on a particular task (MR), IRC communication congruence; defines coordination between developers via instant messaging (IRC). The author investigated software project involved 114 developers, split into eight teams distributed across three locations. Cataldo et al. measured task assignment by looking at which MRs were completed by each developer and which files were changed to complete it, then counting the number of times the two files were changed together during the whole project that represent the interdependence to complete a single MR. 2.3 Results Cataldo et al. found that the tasks were completed faster when the communication structure reflected the artifact structure, this is a proof that when the Conway’s Law is followed, teams are more productive, and Conway’s corollary is true with respect to the time required to complete tasks. The authors also found that the tasks completed in less time when MR had a high level of congruence than a similar MR with a low level of congruence. The most time required by MR reduced was with structural congruence, followed by geographical congruence working on related tasks. IRC congruence was better in later releases than in earlier ones. Thus the developers’ productivity is explored with the relationship of Conway’s corollary by inspecting how “Congruence” yields to faster task completion. 2.4 Implications Results from the study are intended to the similar software projects used in this case study. To enrich the communication, MRs that are dependent on other MRs should be given to the developers working on same site. It helps to reduce the time to complete a certain MR when developers are coordinating via MR comments. 3. Conway's Law validating the Quality 3.1 Context Quality of a software project is an important factor. Defects found in software after their releases have not only the monetarist effects, but also it brings down the reputation of the company. In the reference of Conway’s claim and the cost related with defects, Nachi Nagappan, Brendan Murphy, Vic Basili researched on organizational structure of post- release defects of windows vista [Nagappan et al. 2008] and found strong relationship between the two.
  • 3. 3.2 Methods For the assessment of Conway’s corollary, Nagappan classified each binary as either failure prone or not failure prone in windows vista based on distinct failures. To observe organizational complexity, Nagappan, Murphy, and Basili proposed eight metrics for organizational complexity and inspected the relationship of each metric with failure- proneness and built a regression model to observe the effect. The eight measures include number of engineers, defines the total numbers of engineers currently working, Number of ex-engineers, defines the total number of engineers left the company during development and after the release of the product, edit frequency, defines the number of time a single source file has been changed, and depth of master ownership, defines the depth of binary distribution within the organization, etc. They used data from version control system to determine changes made to source file. Nagappan, Murphy, and Basili also gathered data from the company’s organizational chart to see how engineers were related organizationally and used logistic regression that takes a series of independent variable as input and outputs the classification. The authors also used post-release defect data to classify the binaries into failure-prone and not failure-prone. Then they used logistic regression to determine the relationship between an independent variable (an organizational metric) and a classification (failure-prone or not). The authors tried to predict the failure-prone binaries based on the organizational metrics. The standard way to compare different prediction techniques is to examine, precision, defines how many of the binaries predicted classifies as failure-prone are actually failure-prone and recall, defines how many of the binaries that actually are failure prone are predicted to be failure-prone. 3.3 Results Nagappan, Murphy, and Basili observed that the organizational metrics had a significant effect on failure, that is, the higher the number of ex-engineers who worked on binary, the more failure in that binary. This is a clear indication that the organizational complexity is related to post-release defects, so in the context of windows vista, it is clear that organizational complexity is strongly related to post-release defects. It confirms that when communication and coordination reflects the technical artifacts, the software quality is “better”. 3.4 Implications In the case of windows vista, you will know better, if the software has bugs by looking at the organizational structure rather than looking at the code. More organizational complexity indicates that the structure of the organization is poorly aligned with the structure of the software system. When developers from different organizations work on common binary, it tends to be more failure-prone. In the case of engineers leaving company, binary-specific domain knowledge is lost. A clear owning team may be appointed to act as a gatekeeper or change reviewer for each change in the binary. Stabilizing the interfaces of software components early in the development cycle may mitigate the negative effects of organizational complexity later on.
  • 4. Bibliography - Making Software By Andy Oram; Greg Wilsone , Chapter 11. Conway’s Corollary— Christian Bird. - [Brooks 1974] Brooks,F.P. 1974. The Mythical Man-Month. Datamation 20(12):44-52 - [Cataldo et al. 2006] Cataldo. M., P.A. Wagstrom, J.D. Herbsleb, and K.M. Carley. 2006. Identification and coordination requirements: Implications for the design of collaboration and awareness tools. Proceedings of the 20th Conference on computer supported cooperative work: 353-362. - [Conway 1968] Conway, M.E. 1968. How do committees invent? Datamation 14(4): 28–31. [Nagappan et al. 2008] Nagappan, N., B. Murphy, and V. Basili. 2008. The influence of organizational structure on software quality: An empirical case study. Proceedings of the 30th International Conference on Software Engineering: 521–530.