Q1) Discuss the term coupling in software design. In a good software design, why modules should have low coupling? Justify with your answer.
Q2) Draw the associations that are described by the following business rules. Include the multiplicities for each relationship.
(I)A patient must be assigned to only one doctor and a doctor can have one or many patients.
(II)An employee has one phone extension, and a unique phone extension is assigned to an employee.
(III) A movie theater plays at least one movie, and a movie can be shown at up to four other movie theaters around town.
(IV) A movie has either one star, two co-stars, or more than ten people starring together. A star must be in at least one movie.
Q3) An ATM allows us to access bank accounts through an automated software process by ATM card to withdrawal money, transferring money, balance enquiry and depositing money. Draw the sequence diagram step by step considering four objects Patron, ATM, Control and database for ATM process.
Q1) a) coupling refers to degree to which software components are depenedent upon each other.it defines the level of interdependability among modules of a program.it tells at what level hte modules interfere and interact with each other.in precise the lower the coupling the better the program.
b)now before answering the second part why should modules have low coupling ,ill tell what is loose(low) coupling means.
Loose coupling is a method of interconnecting the components in a system or a network such that these components are dependent on each to atleast extend practically possible,and also low coupling suggests that class should be weak dependencies (ie:we should prefer dependency on interface rather than dependency on concrete class)or else we can prefer composition over inheritance.
Example:supoose lets take android phones ,suppose there is one big apps or lots of little one,does 1 app rely upon
others?no right ,and while installing ,updatiing or uninstlaling another,we can use other apps right this is because each app is self contained .each app is not depeendent on others is due to loose coupling.because even though one module interacts with another through a simple inteface(like camera apps)doesnt need to concerned wih other module internal implementation.
Now for the Q2) and Q3) i ve written and uploaded answers accordingly asked ,theyattached below please do check .Thank you
Q1) Discuss the term coupling in software design. In a good software design, why modules should...