640 likes | 1.54k Views
Software Engineering – Analysis Modeling. INTRODUCTION. Software Engineering – Analysis Modeling. DOMAIN ANALYSIS Sources of domain knowledge Technical literature Existing application Customer surveys Expert advice Current/future requirements. Software Engineering – Analysis Modeling.
E N D
Software Engineering – Analysis Modeling INTRODUCTION
Software Engineering – Analysis Modeling DOMAIN ANALYSIS Sources of domain knowledge Technical literature Existing application Customer surveys Expert advice Current/future requirements
Software Engineering – Analysis Modeling ANALYSIS MODELING APPROACHES ELEMENTS OF THE ANALYSIS
Software Engineering – Analysis Modeling DATA MODELING CONCEPTS Analysis modeling often begins with data modeling. A data object is a representation of almost any composite information (different properties or attributes) Data objects encapsulates data only, there is no reference within a data object or the operations that act on the data. Data objects can then be represented as tables:
Software Engineering – Analysis Modeling DATA MODELING CONCEPTS Data attributes define properties of a data object. RELATIONSHIPS Data objects connect to one another in different ways. Arrows can provide directionality to a relationship and therefore reduce ambiguity
Software Engineering – Analysis Modeling RELATIONSHIPS CARDINALITY We must understand the number of occurrences an object has related to another object. Cardinality is the specification of the number of occurrences of one object that can be related to the number of occurrences of another object. 1 : 1 relationship – one object can relate to only another object. 1 : N relationship – one object can relate to many objects. M : N relationship – a number of occurrences of an object can relate to many objects
Software Engineering – Analysis Modeling SCENARIO BASED-MODELING Write Use-Cases Develop an Activity Diagram
Similar to a flowchart: • Round rectangles imply specific system functions • Arrows represent flow through the system • Diamonds depict a branching decision Software Engineering – Analysis Modeling SCENARIO BASED-MODELING
Swim Lane Diagram Represents flow of activities indicating which actor has responsibility for the action. Responsibilities are represented as parallel segments that divide the diamond vertically, like the lanes in a swimming pool. Software Engineering – Analysis Modeling SCENARIO BASED-MODELING
Software Engineering – Analysis Modeling FLOW-ORIENTED MODELING Data Flow Diagrams show the input-process-output view of a system. DFD’s are not part of UML, but a complement to UML. There is a natural tendency to show too much detail too soon. Start at a high level and work your way down one process at a time.
Software Engineering – Analysis Modeling FLOW-ORIENTED MODELING DFD for the SafeHome Security function
Software Engineering – Analysis Modeling FLOW-ORIENTED MODELING Level 1 DFD for SafeHome Security Function
Software Engineering – Analysis Modeling FLOW-ORIENTED MODELING Level 2 DFD that refines the monitor sensors process
Software Engineering – Analysis Modeling FLOW-ORIENTED MODELING
Software Engineering – Analysis Modeling CLASS-BASED MODELING Class diagram for the system class
Software Engineering – Analysis Modeling CLASS-BASED MODELING Class diagram for FloorPlan
Software Engineering – Analysis Modeling CLASS-BASED MODELING A composite aggregate class
Software Engineering – Analysis Modeling CLASS-BASED MODELING Multiplicity
Software Engineering – Analysis Modeling CLASS-BASED MODELING Dependencies
Software Engineering – Analysis Modeling CLASS-BASED MODELING An important part of analysis modeling is categorization. Grouping various elements of the analysis model are done with a package.
Software Engineering – Analysis Modeling CLASS-BASED MODELING State diagram for the Control Panel class
Software Engineering – Analysis Modeling CLASS-BASED MODELING Sequence diagram (partial) for the SafeHome security Function