Elaboration popo Elaboration Elaboration is the contains series
Elaboration popo
Elaboration • Elaboration is the contains series of iterations • Which Includes • The core, software architecture is programmed and tested • The majority of requirements are discovered • The major risks are identified and solved popo
Elaboration • In this phase the team does the following things • • • Serious investigation Implements (programs and tests) The core architecture Clarifies most requirements, and Tackles the high-risk issues. popo
Elaboration • Elaboration often consists of two and four iterations • Each iteration is recommended to be between two and six weeks. • Each iteration is timeboxed, meaning its end date is fixed. • Elaboration is not a design phase • Design will be in the construction phase popo
Elaboration • During this phase, the team creating subset of the final system. • More commonly it is called the executable architecture or architectural baseline. popo
Iteration 1 Requirements and Emphasis • Iteration 1 of the elaboration phase emphasizes on • fundamental and common OOA/D skills used in building object systems, such as • Assigning responsibilities to objects. • Database design, • Usability engineering, and • UI design. popo
Iteration 1 Requirements • The requirements for the first iteration of the Next. Gen POS application follow: • Implement a basic, key scenario of the Process Sale use case: entering items and receiving a cash payment. • Implement a Start Up use case as necessary to support the initialization needs of the iteration. • Nothing complex is handled, just a simple happy path scenario. • There is no collaboration with external services, such as a tax calculator or product database. • No complex pricing rules are applied popo
Diff Artifacts that Start in Elaboration phase are Artifact Domain Model Design Model Software Architecture Document Data Model Use-Case Storyboards, UI Prototypes Comment This is a visualization of the domain concepts; it is similar to a static information model This is the set of diagrams that describes the logical design. This includes software class diagrams, object interaction diagrams, package diagrams… A learning aid that summarizes the key architectural issues in the design. It is a summary of the outstanding design ideas and their motivation in the system. This includes the database schemas, and the mapping strategies between object and non-object representations. A description of the user interfaces, paths of navigation, usability models, ………. . popo
Domain Model : -visualizing Concepts • A domain model is a visual representation of conceptual classes or real-situation objects in a domain. • Domain models have also been called conceptual models. • It can act as an inspiration for designing some software objects. popo
Domain Model : -visualizing Concepts • Domain model is illustrated with a set of class diagrams in which no operations (method signatures) are defined. • It may show: • Domain objects or conceptual classes • Associations between conceptual classes • Attributes of conceptual classes popo
Domain Model : -visualizing Concepts • Example in POS • A domain model drawn with UML class diagram notation. • It illustrates that the conceptual classes of Payment and Sale , • a Payment is related to a Sale , and • a Sale has a date and time popo
Domain Model : -Example in POS popo
Domain Model • It is only a visualization of things in a realsituation domain of interest, • Not software objects such as Java or C++ classes • Domain Models Are not Models of Software Components • It will not show a window or a database, or graphical user interfaces. popo
Domain Model • Domain Model represented using a conceptual class • Conceptual class shows • an idea, thing, or object. • More formally, a conceptual class contains • 1) Symbol, • 2) Intension, and • 3) Extension popo
Domain Model conceptual class • Symbol—words or images representing a conceptual class. • Intension—the definition of a conceptual class. • Extension—the set of examples to which the conceptual class applies. popo
Domain Model conceptual class • Example process Sale in POS popo
Creating Domain Model • Following are the steps in creating domain model: • 1. Find the conceptual classes. • 2. Draw them as classes in a UML class diagram. • 3. Add associations and attributes popo
Creating Domain Model • 1. Find the conceptual classes. • There are three Strategies to Find Conceptual Classes. • 1) Reuse or modify existing models. • There are published, well-crafted domain models and data models (which can be modified into domain models) such as inventory, finance, health, . . • 2) Use a category list. • Start the creation of a domain model by making a list of candidate conceptual classes. popo
Creating Domain Model • 1. Find the conceptual classes. • Use a category list. • Figure 3. 6 contains many common categories of a POS system to create a domain model. popo
Creating Domain Model • 1. Find the conceptual classes. • 3) Identify noun phrases. • Identify the nouns and noun phrases in textual descriptions of a domain, and • consider them as candidate conceptual classes or attributes. • For example, the current scenario of the Process Sale use can be used popo
• • • • • Creating Domain Model Identify noun phrases. For example, the current scenario of the Process Sale use can be used Main Success Scenario (or Basic Flow): 1. Customer arrives at a POS checkout with goods and/or services to purchase. 2. Cashier starts a new sale. 3. Cashier enters item identifier. 4. System records sale line item and presents item description, price, and running total. Price calculated from a set of price rules. Cashier repeats steps 2 -3 until indicates done. 5. System presents total with taxes calculated. 6. Cashier tells Customer the total, and asks for payment. 7. Customer pays and System handles payment. 8. System logs the completed sale and sends sale and payment information to the external Accounting (for accounting and commissions) and Inventory systems (to update inventory). 9. System presents receipt. 10. Customer leaves with receipt and goods (if any). popo
Creating Domain Model • 1. Find the conceptual classes. • 3) Identify noun phrases. • Some of these noun phrases are selected for candidate conceptual classes, • some may refer to conceptual classes • and some may be attributes of conceptual classes. Please popo
Creating Domain Model • Example: The Next. Gen POS Domain Model • The list of conceptual classes generated for the Next. Gen POS domain may be represented graphically to show the start of the Domain Model. popo
Domain Models Within the UP • Domain Model is usually started at inception and completed in elaboration. • Domain models are not strongly motivated in inception, sinception's purpose is not to do a serious investigation • More investigation in an elaboration phase. popo
Domain Models Within the UP popo
Domain Model: Adding Associations • An association is a relationship b/w objects • That indicates some meaningful and interesting connection popo
Domain Model: Adding Associations • An association is represented as a line between classes with an association name. • The ends of an association may contain a multiplicity expression indicating the numerical relationship between instances of the classes. • An optional "reading direction arrow" indicates the direction to read the association • name; popo
Domain Model: Adding Multiplicity • Multiplicity defines how many instances of a class A can be associated with one instance of a class B • A single instance of a Store can be associated with "many" (zero or more, indicated by the * ) Item instances. popo
Domain Model: Adding Multiplicity popo
- Slides: 29