Contacting Rational Technical PublicationsTo send feedback about documentation for Rational products, please send e-mail toour technical publications department at techpubs@rational.com.Contacting Rational Technical SupportIf you have questions about installing, using, or maintaining this product, contactRational Technical Support as follows:Your Location Telephone Facsimile E-mailNorth America (800) 433-5444(toll free)(408) 863-4000Cupertino, CA(781) 676-2460Lexington, MAsupport@rational.comEurope, MiddleEast, Africa+31 (0) 20-4546-200Netherlands+31 (0) 20-4545-201Netherlandssupport@europe.rational.comAsia Pacific +61-2-9419-0111Australia+61-2-9419-0123Australiasupport@apac.rational.comNote: When you contact Rational Technical Support, please be prepared to supply thefollowing information:■■■■■Your name, telephone number, and company nameYour computer’s make and modelYour operating system and version numberProduct release number and serial numberYour case ID number (if you are following up on a previously-reported problem)xiiPreface
Introduction: Unifying theTeam1What truly makes a team is a group of people working together to accomplish acommon overall goal. Sometimes the team consists of only two people, other times itconsists of hundreds, but regardless of the number, the team must be unified in itsefforts. A development team is a specialized team in which the various members holddifferent responsibilities in the development life cycle. In solving business problems,there are three distinct roles in a development team—the business analyst, theapplication designer, and the database designer.Team RolesFor the scope of this book, the role of business analyst is performed bybusiness-process analysts, systems analysts, and those who capture and reviewrequirements for a business process. The role of application designer is performed byapplication developers, software engineers, and those who design and reviewapplication designs. The role of database designer is performed by data developers,database administrators (DBAs), data analysts, and those who design and reviewrelational databases.Business Analyst RoleIn the development process, the business analyst’s responsibility is to interview theend-user or client to understand the overall business problem, analyze the business asit currently is, identify the defects in the current processes that are causing the overallbusiness problem, and model the business as it could be. The business analystcaptures the end-users requirements and the process improvements in businessmodels. Business models divide the process into components of events, people orthings, and order the process using use-case, sequence, and activity models.Application Designer RoleThe responsibility of the application designer is to generate code and build anapplication based on the business analyst’s business models. The application designeruses object-oriented conceptual models and creates classes from the use cases,organizing the classes into an object model structure using class models. Then the1