Slide 1

Slide 1 text

CSE 360 Introduction to Software Engineering Lecture 05: Requirements Specification Dr. Javier Gonzalez-Sanchez [email protected] javiergs.engineering.asu.edu | javiergs.com PERALTA 230U Office Hours: By appointment

Slide 2

Slide 2 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 6 Announcements • Exercise 04 (UML Sequence Diagram) • Quiz 02 (UML Diagrams, All of them) • A Sample Exam is available for you to test your access to Lock Down Browser. It has no value, and you can take it as many times as needed.

Slide 3

Slide 3 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 7 Announcements • First Midterm Exam During the lecture time. No lecture that day. Lockdown browser will not allow you to use Zoom • Assignment 01 will open. It is about GitHub (version control).

Slide 4

Slide 4 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 8 Email Etiquette • What course? CSE 360 • What section? Tuesday • Is it about a grade? First, contact the TA • Is it about a medical condition? Include documentation • Use your ASU email

Slide 5

Slide 5 text

LockDown Browser

Slide 6

Slide 6 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 11 Proctoring

Slide 7

Slide 7 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 12 Proctoring

Slide 8

Slide 8 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 13 Proctoring

Slide 9

Slide 9 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 14 Proctoring Sample Exam is available. Test your system ASAP Important: a) Show your environment. b) It is a CLOSED BOOK exam. Do not use any material c) Scratch paper is allowed. Empty White Paper. Show it on camera when you show your environment!

Slide 10

Slide 10 text

Previously

Slide 11

Slide 11 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 16 Concepts necessities requirements functional requirement non-functional requirement

Slide 12

Slide 12 text

Requirement Specification

Slide 13

Slide 13 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 18 Requirements Engineering Stories or Scenarios Interview or Observe (Ethnography)i.e., identify needs Functional or not? Structural issues, Cost, complexity

Slide 14

Slide 14 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 19 Where we are? Process Requirements Concepts functional non-functional Specification Natural Language Mathematical specification Structured Natural Language Graphical notations Planning Modeling Coding Deployment

Slide 15

Slide 15 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 20 Relationships a) Actors b) Use Cases a) Relationships child father base addition extension base << include >> << extend >>

Slide 16

Slide 16 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 21 Scenarios | Example Nurse Medical receptionist Manager Register patient View personal info. View record Generate report Export statistics Doctor Edit record Setup consultation

Slide 17

Slide 17 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 22 Inclusion • Show that behavior of the included use case (addition) is inserted into the behavior of the including (base) use case. • A dashed line with an open arrowhead directed from the including use case (base) to the included (addition) use case. The arrow is labeled with the keyword «include». • The include relationship is used to (1) simplify large use case by splitting it into several use cases, (2) extract common parts of the behaviors of two or more use cases. base addition

Slide 18

Slide 18 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 23 Example

Slide 19

Slide 19 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 24 Extension • Extending use case defines optional behavior that is not necessarily meaningful by itself. • Extend relationship is shown as a dashed line with an open arrowhead directed from the extending use case to the extended (base) use case. The arrow is labeled with the keyword «extend». base extension

Slide 20

Slide 20 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 25 Example 3

Slide 21

Slide 21 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 26 Include vs Extends

Slide 22

Slide 22 text

Examples Use Case Diagrams

Slide 23

Slide 23 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 28 Example

Slide 24

Slide 24 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 29 Example

Slide 25

Slide 25 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 30 Example

Slide 26

Slide 26 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 31 Example

Slide 27

Slide 27 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 32 Example http://epf.eclipse.org/wikis/openup/core.tech.common.extend_supp/guidances/examples/uc_model_elaboration_phase_70035F60.html

Slide 28

Slide 28 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 33 Think About This

Slide 29

Slide 29 text

Midterm Review

Slide 30

Slide 30 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 35 Note The following is a summary of the most relevant ideas. But, the exam is not limited to these, i.e., The following IS NOT a comprehensive list

Slide 31

Slide 31 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 36 Class diagram Class diagrams show the classes in a system • modifiers • Attributes • methods And the relationships between these classes: • Association / Dependency • Aggregation / Composition • Generalization / Specialization / Realization

Slide 32

Slide 32 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 37 Relationships Association Aggregation Composition Generalization Realization

Slide 33

Slide 33 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 38 Concepts

Slide 34

Slide 34 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 39 Process Models What process model is recommended for a large system (developed by several partner companies) Agile V-model Spiral Waterfall

Slide 35

Slide 35 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 40 Diagrams

Slide 36

Slide 36 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 41 Diagrams

Slide 37

Slide 37 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 42 Diagrams

Slide 38

Slide 38 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 43 References Chapter 1-5

Slide 39

Slide 39 text

Javier Gonzalez-Sanchez | CSE360 | Fall 2020 | 44 Homework Complete This Week’s Hybrid Activities

Slide 40

Slide 40 text

CSE360 – Introduction to Software Engineering Javier Gonzalez-Sanchez [email protected] Fall 2020 Disclaimer. These slides can only be used as study material for the class CSE360 at ASU. They cannot be distributed or used for another purpose.