Download as pdf or txt
Download as pdf or txt
You are on page 1of 27

BUSINESS ANALYSIS

DAY-4 Vamsi Mohan V

AGENDA (DAY-4)
Data Modeling Process Modeling Software Development Process Models Waterfall model V-Model Agile Development Processes eXtreme Programming (XP) Test Driven Development (TDD) Agile Methods Classic Vs Agile processes

Data Modeling
Data Modeling
The purpose of a data model is to describe the concepts relevant to a domain, the relationships between those concepts, and information associated with them. A data model usually takes the form of a diagram supported by textual descriptions. It visually represents the types of people, places, things and concepts that are important to the business, attributes associated with them and the significant business relationships among them. Data models are often supported by a Data Dictionary and Glossary and Business Rules analysis. The two most widely used types of data model are the entityrelationship diagram (ERD) and the class diagram

Elements
Logical data models describe the information relevant to an organization. High-level logical data models may focus solely on describing the entities, attributes and relationships of most importance. Physical data models describe how data is stored and managed in a software application. 1. Concept:
Logical data models describe the information relevant to an organization. High-level logical data models may focus solely on describing the entities, attributes and relationships of most importance. Physical data models describe how data is stored and managed in a software application. Each type of concept should have a unique identifier (a type of attribute) that differentiates between actual instances of the concept. Concepts are referred to as entities in ERDs and as classes in class diagrams.

2. Attributes: An attribute defines a particular piece of information associated with a concepthow much information can be captured in it, allowable values, and the type of information it represents. Name: a unique name for the attribute. Other names used by stakeholders may be captured as aliases. Values/Meanings: a list of acceptable values for the attribute. This may be expressed as an enumerated list or as a description of allowed formats for the data (including information such as the number of characters). If the values are abbreviated this will include an explanation of the meaning. Description: the definition of the attribute in the context of the solution.

3. Relationship: Relationships are significant business associations between concepts. The example shows the relationships between Business Analyst and Requirement as an annotated line. The labels explain the nature of the relationship from the perspective of each entity. Relationships define how information is used in the operation of the business, and indicate the important linkages that need to be managed and maintained in the solution. Relationships may also indicate the cardinality or multiplicity of the relationship (i.e. the number of relationships allowed or required). 4. Metadata Metadata is defined as data about data. Metadata describes the context, use, and validity of business information and is generally used to determine when and why information stored in a system was changed.

Data Model - Usage Considerations


Data Model Advantages: Data models offer the flexibility of different levels of description. They provide a consistent modeling approach that supports the transition through planning, analysis, design and implementation. Because they have a strong basis in mathematical concepts, data models are supported by rigorous rules for correctness and completeness. This encourages accuracy in the development of the models. Disadvantages: Data models can be complex, and they deal with concepts that may be unfamiliar to people without a background in Information Technology. If not properly presented, they can be difficult for users to understand and relate to. Terms and definitions may vary in use in different organizational units or domains.

Process Modeling
A process describes how multiple people or groups collaborate over a period of time to perform work. Processes involve a number of activities that are linked by a sequence flow. A process is repeatable and may have multiple paths to completion. A process is initiated by an event in the business domain, such as a sale of a product to a customer, a request for information by a senior executive, or a failure to complete a transaction. Events may be actions taken by a person, rules which cause action to be taken, or simply the passage of a period of time. The process model may involve manual activities, be completely automated, or a combination thereof. The process is complete when the objective or the goal of the process is completed. A process model is a visual representation of the sequential flow and control logic of a set of related activities or actions. Process modeling is used to obtain a graphical representation of a current or future process within an organization. A model may be used at its highest level to obtain a general understanding of a process or at a lower level as a basis for simulation so that the process can be made as efficient as possible.

Elements
There are many different notations in use to depict process models. Process models typically contain some or all of the following key elements: 1. Notation Elements: Activities: The individual steps or pieces of work that must be completed in order to execute the business process. An activity may be a single task or may be further decomposed into a subprocess (with its own activities, flow, and other process elements). Decisions: Forks where the flow of work proceeds in two or more flows and, optionally, where separate flows merge together. A decision may create mutually exclusive or parallel flows. Events: Events occur outside the scope of a process and may be the result of actions taken, messages received, or the passage of time. Events may create, interrupt, or terminate processes. Flow: Indicate the direction of the step-by-step sequence of the workflow. In general, diagrams are drawn from top to bottom or in the direction of reading to show the passage of time. The process flow may split to allow for activities to occur simultaneously and later merge.

Roles: Roles represent a type of person or group. Role definitions typically match those in the organization model.

Swimlanes and Pools: Swimlanes are horizontal or vertical sections of a process model that show which activities are performed by a particular role. When the flow of work crosses the boundary of a swimlane, responsibility for that work then passes to another person or group within the organization. A pool represents an organizational boundary. It may include a number of swimlanes. Commonly, a process will include one pool for the customer and a second pool for the organization, although it is possible for a process to include any number of pools. Terminal Points: Terminal points represent the beginning or end of a process or process flow. A terminal point generally represents some kind of event that is visible to the organization or outside of it.

2. Process Improvement: There are a number of frameworks and methodologies that focus on process improvement methods, such as Six Sigma, Lean, and a large number of proprietary BPM approaches. Methods for process improvement include value stream mapping, statistical analysis and control, process simulation, benchmarking, process frameworks, and others. Common changes to processes in order to improve them include: Analysis of a process to identify and remove activities that do not add value to a stakeholder, where possible. Reduction of the time required to complete a process (by reducing the time to perform a task or the wait time between tasks). Improving interfaces or handoffs between roles and organizational units to remove errors. Reduction or elimination of bottlenecks and backlogs.

Process Modeling Components

Modeling

Development process models


Static process models Waterfall model V-model Incremental process model Modern approaches (Agile) Iterative/Incremental process model eXtreme Programming Prototypic development Test Driven Development (TDD)

Waterfall model

V-Model

Agile Development Processes

eXtreme Programming (XP)

Planning in XP

Methods in XP

Software Prototypes

Test Driven Development (TDD)

TDD Process

Advantages of TDD

Agile Methods

Classic Vs Agile processes

Session Review: Questions?

I would like to hear from you: please send us your queries at vamsi.in@gmail.com

You might also like