Download presentation
Presentation is loading. Please wait.
Published byAlfred Bradford Modified over 8 years ago
1
Software Engineering Lecture 11: System Analysis
2
Today’s Topics l Requirements Analysis & Elicitation l Modeling the Problem Domain l Prototyping l Structured Analysis Models
3
Analysis: A Bridge Between System Engineering & Software Design [From SEPA/5e]
4
Interview Questions l “Who is requesting the work?” l “Who will use the solution?” l “Desired economic benefits?” l “Another source for solutions?” l “What’s ‘good’ output?” l “What problems are addressed?” l “Environment of use?” l “Special issues or constraints?” l Meta-questions re: process
5
Facilitated Application-Specific Techniques (FAST) l Conduct meetings at neutral site l Rules for meetings established l Formal agenda, informal discussion l “Facilitator” controls meeting l “Definition mechanism” agreed upon by participants
6
FAST [3] l Goals: identify problem propose elements of a solution negotiate different approaches specify preliminary set of requirements atmosphere: goal-directed
7
Quality Function Deployment (QFD) l Normal Requirements (explicitly discussed) l Expected Requirements (easy install, good doc) l Exciting Requirements (unexpected, welcome) l Prioritize, document, and discuss with customer
8
Modeling the Information Domain l Data ( numbers, text, etc.) l Control ( events) l Information Content (objects, attributes) l Information Flow (changes to data/control during execution) l Information Structure (internal data and control, relations, etc.)
9
[From SEPA/5e] Information Flow and Transformation
10
Modeling l Focus on “what”, not “how” l Functional models (HIPO to algorithm identification) l Behavioral models (program state & changes thereto) l Models provide: tool for understanding focal point for review foundation for design
11
Partitioning l Decompose information, functional, and behavioral domains into subproblems l Vertical: expose more detail l Horizontal: decompose into subcomponents
12
[From SEPA/5e] Horizontal Partitioning functional decomposition
13
[From SEPA/5e] Vertical Partitioning exposes detail
14
Essential vs. Implementation View l Essential view presents the functions to be accomplished, without implementation details l Implementation view presents “real-world” manifestation of essential elements “current mode of operation” (not a proposed design!)
15
Prototyping l Construct/analyze a prototype: to validate requirements to show feasibility of solution l Throwaway: discarded before full development l Evolutionary: prototype is first version of finished system
16
[From SEPA/5e] The Prototyping Decision Process
17
Structured Analysis Model [From SEPA/5e]
18
Structured Analysis l Data Dictionary descriptions of all data objects l Entity-Relationship Diagram depicts relations between objects l Data Flow Diagram how data are transformed functions that transform them
19
Structured Analysis [2] l State-Transition Diagram states: modes of behavior transitions: trigger state change l Data Object Description note attributes of each object l Process Specification describe each process in DFD l Control Specification describe each state/transition in STD
20
[From SEPA/5e] Data Objects, Attributes, Relationships
21
Tabular Representation of Data Objects [From SEPA/5e]
22
Relationships
23
[From SEPA/5e] Cardinality and Modality
24
[From SEPA/5e] Simple ERD, Data Object Table
25
[From SEPA/5e] Expanded ERD
26
[From SEPA/5e] Data Object Type Hierarchy
27
[From SEPA/5e] Associative Data Objects
28
Information Flow Model [From SEPA/5e] data flow diagram
29
[From SEPA/5e] Behavioral Model control flow diagram
30
[From SEPA/5e] State- Transition Diagram
31
Specifications l Control Specification state-transition diagram program activation table: “a combinatorial specification of behavior” l Process Specification narrative text pseudocode or program design language (PDL)
32
[From SEPA/5e] Program Activation Table which processes are invoked when an event occurs?
33
Specifications [2] l Data Dictionary (for each object): Name & Aliases Where Used / How Used Content Description Supplementary Information data types, default values, restrictions, limitations, etc.
34
Questions?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.