Building analysis model  Analysis modeling uses a combination of text and diagrammatic forms to depict requirements for data function and behavior in.

Slides:



Advertisements
Similar presentations
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Advertisements

Requirements Modeling Strategies
Analysis Concepts, Principles, and Modeling
Lecture 8- Analysis Modeling The Elements of Anaylsis Model The Elements of Anaylsis Model Data Modeling, Functional Modeling and Information Flow Data.
Chapter : Analysis Modeling
Analysis Modeling.
Chapter 8 Analysis Engineering Software Engineering: A Practitioner’s Approach by Roger S. Pressman.
Software Requirements Engineering Elaboration Process Lecture-13.
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
1 SWE Introduction to Software Engineering Lecture 16 – System Modeling An Example.
Introduction To System Analysis and Design
Analysis Modeling Over view of today’s lesson T he analysis model is the first technical representation of a system. Analysis modeling uses a combination.
Chapter 8 Analysis Modeling
Analysis Concepts and Principles
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Chapter 6 Requirements Modeling: Scenarios, Information, and Analysis Classes Slide Set to accompany Software Engineering: A Practitioner’s Approach,
1 Objective of today’s lesson S oftware engineering occurs as a consequence of a process called system engineering. Instead of concentrating solely on.
Software Design Description (SDD) Diagram Samples
Chapter 7: The Object-Oriented Approach to Requirements
Building The Analysis Model. Object-Oriented Analysis The object oriented analysis define all classes, the relationships and behavior associated with.
Architectural Design.
Introduction To System Analysis and design
Chapter 7 Requirement Modeling : Flow, Behaviour, Patterns And WebApps.
Chapter 10 Architectural Design
Analysis Modeling (cont’d) CpSc 372: Introduction to Software Engineering Jason O. Hallstrom Authorship Disclaimer. These slides.
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
These slides are designed to accompany Web Engineering: A Practitioner’s Approach (The McGraw-Hill Companies, Inc.) by Roger Pressman and David Lowe, copyright.
Data Flow Diagrams.
Requirement Engineering. Review of Last Lecture Problems with requirement Requirement Engineering –Inception (Set of Questions) –Elicitation (Collaborative.
Introduction To System Analysis and Design
Chapter 4 – Requirements Engineering Lecture 3 1Chapter 4 Requirements engineering.
CSC 395 – Software Engineering Lecture 13: Object-Oriented Analysis –or– Let the Pain Begin (At Least I’m Honest!)
Architectural Design Based on Chapter 11 of the textbook [SE-8] Ian Sommerville, Software Engineering, 8t h Ed., Addison-Wesley, 2006 and on the Ch11 PowerPoint.
Chapter 9 요구사항 모델링: 시나리오 기반 방법론 Requirements Modeling: Scenario-Based Methods 임현승 강원대학교 Revised from the slides by Roger S. Pressman and Bruce R. Maxim.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 8: Analysis Modeling Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Analysis Modeling. Function Modeling & Information Flow  Information is transformed as it flows through a computer-based system. The system accepts input.
Systems Analysis and Design in a Changing World, 3rd Edition
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Developed by Reneta Barneva, SUNY Fredonia for CSIT 425 Requirements Modeling.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 8: Analysis Modeling Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Chapter 8 Analysis & Modeling. Data Modeling examines data objects independently of processing focuses attention on the data domain creates a model at.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
1 Chapter 18 Analysis Modeling for WebApps Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Requirement Engineering. Recap Flow Based Modeling DFDs CFDs Processing narratives Class-based Model How to select classes? How to find attributes and.
Chapter 12 Analysis Modeling. Analysis Modeling ä Two primary methods today ä Structured Analysis ä Object-oriented analysis ä Some important considerations.
Requirement engineering & Requirement tasks/Management. 1Prepared By:Jay A.Dave.
Chapter : 9 Architectural Design
Software Engineering Lecture 10: System Engineering.
Architectural Complexity  A useful technique for assessing the overall complexity of a proposed architecture is to consider dependencies between components.
Course Instructor: Kashif I hsan 1. Chapter # 6 2.
Elements Of Modeling. 1.Data Modeling  Data modeling answers a set of specific questions that are relevant to any data processing application. e.g. ◦
1 8.1 Requirements Analysis Rules of Thumb Rules of Thumb Models should focus on requirements that are visible within the problem or business domain. The.
Systems Analysis and Design in a Changing World, Fourth Edition
Chapter 8 Analysis Engineering
Object-Oriented Analysis and Design
Requirements Modeling: Flow, Behavior, Patterns, and WebApps
Elaboration & Negotiation Process
Data Dictionaries ER Diagram.
CHAPTER 2 CREATING AN ARCHITECTURAL DESIGN.
Object-Oriented Analysis
Chapter 9 Requirements Modeling: Scenario-Based Methods
Object Oriented Analysis and Design
Analysis Modeling Requirements analysis Flow-oriented modeling
Chapter 12 Analysis Modeling
Unit-3 Analysis Modeling
Requirement Analysis using
Software Modelling and Design
CIS 375 Bruce R. Maxim UM-Dearborn
Presentation transcript:

Building analysis model  Analysis modeling uses a combination of text and diagrammatic forms to depict requirements for data function and behavior in a way that is relatively easy to understand and straight forward to review for correctness, completeness and consistency.  s/w engineer or Analyst builds the model using requirements elicited from the customer.

Requirements Analysis  Requirements analysis allows the software engineer (an analyst or modeler ) to elaborate on basic requirements established during earlier requirement engineering tasks and build models that depict user scenarios, functional activities, problem classes and their relationships, system and class behavior and the flow of data as it is transformed.  It provides the software designer with representation of information, function and behavior that can be translated to architectural, interface, and component level designs  The analysis model and the requirements specification provide the developer and the customer with the means to assess quality once S/w is built.

Overall Objectives The analysis model must achieve three primary objectives:  To describe what the customer requires.  To establish a basis for the creation of a s/w design.  To define a set of requirements that can be validated once the s/w is built. The analysis model bridges the gap b/w a system-level description that describes overall system functionality as it is achieved by applying s/w, h/w and other system elements and a s/w design that describes s/w application, architecture,user interface and component level structure. The analysis model bridges the gap b/w a system-level description that describes overall system functionality as it is achieved by applying s/w, h/w and other system elements and a s/w design that describes s/w application, architecture,user interface and component level structure.

Analysis Rules of Thumb Arlow and Neustadt suggest a no. of worthwhile rules of thumb that should be followed when creating the analysis model:  The model should focus on requirements that are visible within the problem or business domain.  Each element of the analysis model should add to an overall understanding of s/w requirements and provide insight into the information domain, function, and behavior of the system.  Delay consideration of infrastructure and other non- functional models until design. Ex: Database.

 Minimize coupling throughout the system. It is important to represent relationships between classes and functions.  Be certain that the analysis model provides value to all stakeholders ( business people, s/w designer, QA people for planning acceptance tests)  Keep the model as simple as it can be. Don’t add additional diagrams when they provide no new information. Don’t use complete notational forms, when a simple list will do.

Domain Analysis  The “specific application domain “ can range from avionics to banking, from multimedia video games to s/w embedded within medical devices.  The role of the domain analyst is to discover and define reusable analysis patterns, analysis classes, and related information that may be used by many people working on similar but not necessarily the same applications. Domain analysis Domain Analysis model Sources of domain knowledge Technical literature Existing applications Customer Surveys Expert advice Current/future requirements Class taxonomies Reuse standards Functional models Domain languages

Analysis modeling approaches  One view of AM is structured analysis,considers data and the processes that transform the data as separate entities  Data objects are modeled in a way that defines their attributes and relationships.  Processes that manipulate data objects are modeled in a manner that shows how they transform data as data objects flow through the system.  Second view is object oriented analysis, focuses on the definition of classes and the manner in which they collaborate with one another to effect customer requirements.

Analysis modeling leads to the derivation of each of the fallowing modeling Elements

Data modeling concepts  Data objects. it is a representation of composite information that must be understood by s/w. it is a representation of composite information that must be understood by s/w. Ex: Dimension (width, height…)  it encapsulates data only there is no reference with in a data object to operations that act on data. Car Makemodeid body type color owner color owner fordtaurusq12a45sedan Blue blf

 Data attributes it defines the properties of data objects and take one of the three different characteristics 1) name an instance of the data object 1) name an instance of the data object 2) describe the instance 3) make reference to another instance in another table  Relationships Data objects are connected to one another in different ways. person car owns

 Cardinality it is the specification of the no..of occurrences of one object that can be related to the the no. of occurrences of another object. (1:1,1:N,M:N relation ship) (1:1,1:N,M:N relation ship)  Cardinality also defines the maximum no’ of occurrences of an object in a relation  but it does not provide an indication of whether or not a data object must participate in the relationship.  modality of a relationship is 0, if there is no explicit need for the relationship to occur or the relationship is optional, when it is 1 it is mandatory.

Object Oriented Analysis  The intent of object oriented analysis is to define all classes (and the relation ships,behavior associated with them) that are relevant to the problem to be solved.  To accomplish a no. of tasks must occur 1. basic user requirements must be communicated b/w the customer and the s/w engineer. 2. classes must be identified. (i.e attributes and methods are defined) 3. a class hierarchy is defined 4. object – object relationship should be represented 5. object behavior must be modeled. 6. task 1 through 5 are reapplied iteratively until the model is complete. OOA builds class oriented model that relies on a understanding of OO concepts

Scenario based modeling  The success of the computer based system or product ism measured in many ways, user satisfaction resides at the top of the list.  If the s’w engineers understand how end-users want to interact with the system,they can be better able to understand the requirements and build meaningful analysis and design models.  Analysis modeling with UML begins with creation of scenarios in the form of use cases, activity diagram and swim lane diagrams

Writing use cases  A use case captures the interaction that occurs b/w producers and consumers of information and the system itself.  Use-case describes a usage scenario from the point of view of a defined actor.  The first two requirements engineering tasks –inception, elicitation provide us information we need to begin writing use-cases  To begin developing a set of use-cases,the functions or activities performed by specific actor are listed.  These may be obtained from a list of required system functions, through conversation with customer or end- users,or by evaluating activity diagrams.

SafeHome Surveillance function These are the functions performed by the Home owner (actor ) under the above sub system User scenario  Access camera surveillance via the internet  Select the camera to view.  Request thumbnails from all cameras  Display camera views in a PC window  Control pan and zoom for a specific camera  Selectively record camera output.  Replay camera output.

Use case  The home owner logs onto the safehome products website  The homeowner enters his id and password  The system displays all major function buttons.  The home owner selects surveillance button  The homeowner selects pick a camera  System display the floor plan of the house  Owner selects the camera icon from the floor plan  He selects the view button  System displays viewing window identified by the camera id  System displays video output at one frame per sec.

Use-case diagram for safe home system

Developing activity diagram  The UML activity diagram supplements the use case by providing graphical representation of the flow of interaction with in a specific scenario  It is almost similar to a flow chart.  a rounded rectangle to represent a specific system function.  arrows to represent flow through the system.  Decision diamonds for branching decisions.  solid horizontal lines for parallel activities.

Activity diagram for access camera surveillance-display camera views function

Swimlane diagrams  Variation of activity diagram  Allows the modeler to represent the flow of activities described by the use case and at the same time indicates which actor or analysis class has responsibility for the action described by an activity rectangle

Swim lane diagram for ACS-DCV function

Flow oriented modeling  Data flow diagrams - It takes an input-process-output view of a system. - It takes an input-process-output view of a system. - Data objects flow into the software, are transformed by processing elements, and resultant data objects flow out of the software - Data objects are represented by labeled arrows and transformations are represented by circles. - Data objects are represented by labeled arrows and transformations are represented by circles.  These are created in a hierarchical fashion.  First data flow model called level 0 DFD or context diagram represents overall system.  Subsequent diagrams refine context diagram representing increasing detail in each subsequent level.

 Guide lines to follow 1. The level 0 DFD should depict the s/w or system as a single bubble. 1. The level 0 DFD should depict the s/w or system as a single bubble. 2. Primary input and output should be carefully modeled. 2. Primary input and output should be carefully modeled. 3. Refinement should begin by isolating candidate process, data objects and data stores to be represented at the next level. 3. Refinement should begin by isolating candidate process, data objects and data stores to be represented at the next level. 4. All arrows and bubbles should be labeled. 4. All arrows and bubbles should be labeled. 5. Information flow continuity must be maintained from level to level. 5. Information flow continuity must be maintained from level to level. 6. One bubble at a time should be refined. 6. One bubble at a time should be refined.

Context level DFD for safe-home security function

Level1 DFD for safe-home security function Control Panel display alarm Telephone line

Level 2 DFD that refines the monitor sensors process