For Jeanette Resources: http://www.ccs.neu.edu/research/demeter/course/f01/model-bank/ Model service business: new student enrolls at university and a specific program P; signs agreement and contract C for P new bank customer opens relationship with bank and opens account P; signs agreement and contract C for P new airline customer opens relationship with airline and opens account P with frequent flyer feature; signs agreement and contract C for P student s enrolls for class x following C bank customer announces ??? airline customer books flight x following C student s gets grade g1 for class x in P bank customer s deposits money in P airline customer takes flight x; miles added to frequent flyer account student s requests transcript bank customer s requests bank statement airline customer requests statement of how many miles flown some employee searches for a student some employee searches for a customer some employee searches for a customer students s wishes to add a second major bank customer s wishes to add a second account student s wishes to graduate bank customer wishes to withdraw money check whether student has satisfied graduation requirements according to agreement check whether customer is allowed to withdraw money (availability check) according to agreement student is billed for using university services for the year bank customer is billed for account management fees for year university hires an admission specialist (client facing) bank hires a teller (clint facing) university gets audited by accreditation body bank gets audited by national bank The above are business events that the model business should handle. How can we develop software components that we can sell both to a university and a bank? What kind of components should we have? We want to use collaborations: /proj/demeter/aop/acc-karl/acc Common: static part: Party, Address, Addressing business relationship agreement containing contracts; one contrac per account account product dynamic part: position management fee computation differences: bank services are delivered by tellers at bank branches and ATMs and the web university services are delivered by professors at university branches and the web