BSIT-3-B
Software Engineering
Mr. Sherwin Mercurio
Lecture 10
Requirements 3
Software development Software development is a craft. Software developers have a variety of tools that can be applied in different situations. Part of the art of software development is to select the appropriate tool for a given implementation
The craft of requirements analysis, modeling and specification is to select the appropriate tool for the particular task.
• A variety of tools and techniques.
• Many familiar from other courses.
• No correct technique that fits all situations.
As you build understanding of the requirements through viewpoint analysis, scenarios and use cases, etc., use models to specify requirements. The models provide a bridge between the client's understanding and the developers.
An informal modeling technique to show the flow of data through a system.
External entities
Processing steps
Data stores or sources
Data flows
Modeling Tools: Data-Flow Model
Example: Process Completed Application Stage
Rejection
Evaluation
Applicant database Evaluation request Acceptance
Financial aid Offer
Special request The requirements will need specification of the decision-making process.
Modeling Tools: Pseudo-code
An informal modeling technique to show the logic behind part of a system.
Example: Check project plan check_plan (report) if report (date_time) > due_date_time then error (too_late) if report (client) = none then error (no_client) if report (team) < min_team or > max_team then error (bad_team) if error() = none then comments = read_report (report) return (comments (text), comments (grade)) else return error()
Modeling Tools: Transition Diagrams
A system is modeled as a set of states, Si
A transition is a change from one state to another.
The occurrence of a condition, Ci, causes the transition from one state to another
Transition function: