Analysis and design

5.0(1)
studied byStudied by 4 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/32

flashcard set

Earn XP

Description and Tags

Work in progress : more will be added

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

33 Terms

1
New cards
Sort of models for information systems
Models can be build :

* to document business requirements **(analysis)** or technical **designs**
* To automatically build prototype applications
* For existing software systems as a way to better understand those systems (i.e. reverse engineering)
2
New cards
Terminologies of domain model
* Classes
* Association
* Multiplicities ( \* means 0 or more)
3
New cards
Use case purpose
Describes the behavior of the system in interaction with users and environment
4
New cards
Business use case (aka “Abstract-Level use case”)
* Describes the more general interaction between a business system and the users/actors of that system to produce business results of value
* System considered in business use case model may contain people in addition to technological system
* Example : sells book
5
New cards
System Use Case (Aka “implementation use case”)
* Describe show actors communicate with the (software) system to achieve their goalds
* Software system is the main subject (instead of business as a system)
* Example : Browse catalogue
6
New cards
🪁 Summary use case (Kite use case)
* Outline the context of a set of User Goal uses cases
* May have a step in its scenario for each Use Goal use case
* Help identifying high-level requirements, does not provide functional requirements
* Example : Complet Online Purchase Order
7
New cards
🌊 User goal use case (Sea use case)
* Can the actor go away happily after the use case finished ?
* Example : buy book or register customer
8
New cards
🐟 Subfunction use cases (fish level use cases)
* Created to move out an isolated part of a scenario to a separate use case
* Reusable in other use cases
* Example : log in
9
New cards
Use case diagram : extends

A → B
A extends the B use case
10
New cards
Use case diagram : include

A → B
A includes the B use case
11
New cards
Business process
Sequence of activities that produce a specific result for a particular customer of the process
12
New cards
Uml abbreviations for visibility
* + public


* \~ package
* #protected


* - private
13
New cards
Class diagram : Aggregation ◇-
Implies a relationship where the child can exist independently of the parent

* Example : Class (parent) and student (child)
14
New cards
Class diagram : Composition ◆-
Implies a relationship where the child cannot exist independent of the parent

* Example : house (parent) and room (child)
15
New cards
Transition label of state diagram
trigger-signature \[guard\]/activity
16
New cards
Requirement Engineering (RE)
Set of activities concerned with identifying and communicating the purpose of a software intensive system, and the context in which it will be used.

Hence, it acts as the bridge between the real world needs of users, customers, and other stakeholders affected by a software system, and the capabilities and opportunities afforded by software-intensive technologies.
17
New cards
How to do requirement engineering?
* Domain understanding and elicitation
* Evaluation and agreement
* Specification and documentation
* Validation and verification

This again if another alternative has been proposed
18
New cards
Truths of requirement engineering
* Requirement are not about the solution
* If we build software it must be optimally valuable for its owner
* If your software does not have to satisfy a need, then you can build anything.
* There is a difference between building a piece of software and solving a business problem. The former doesn’t necessarily solve the latter
19
New cards
Business requirements
Goals of the business like “increase profits”, “improve branding”, “become dominant in a market”…
20
New cards
User requirements
Goals or tasks of the users of software like “create purchase order”, “find a book my wife would like”
21
New cards
Functional requirements
Functionality that the software must include like “calculate profit-maximizing price” or “generate Sarbanes-Oxley compliance report” (what system must do)
22
New cards
Non-functional requirements
Characteristics that the software must show (how the system must do it)
23
New cards
How to identify stakeholders with STEP analysis
• Social variables

• Technological variables

• Economic variables

• Political variables in the environment.
24
New cards
Design principles SOLID :
• S ingle responsibility principle (SRP)

• O pen/closed principle (OCP)

• L iskov substitution principle (LSP)

• I nterface segregation principle (ISP)

• D ependency inversion principle (DIP)
25
New cards
Single responsibility principle (SRP)
Every object in your system should have a single responsibility and all the object’s services should be focused on carrying out that single responsibility.

(Think if the class can _____ itself )
26
New cards
Open/closed principle (OCP)
Software entities (classes, modules, functions, etc.) should be open for extension, but closed for modification.

(Suggest more use of abstraction)
27
New cards
Liskov substitution principle (LSP)
Subtypes must be substitutable for their base types:

*If T is a class and S is a subclass of T, then everywhere where you can use an instance of T in your program, you must be able to use an instance of S.*
28
New cards
Interface segregation principles (ISP)
Following it means splitting up the fat interface into smaller so-called role interfaces.

Example : have interfaces named movable, feedable, workerIF…
29
New cards
Dependency inversion principle (DIP)
Principle: High-level modules should not depend on low-level modules. Both should depend on abstractions

Abstractions should not depend on details. Details should depend on abstractions.
30
New cards
Business process
Series of steps performed by a group of stakeholders to achieve a concrete goal

→ consists of task and activities that are assigned to a participant
31
New cards
BPMN
* Standard for process description/visualization
* Provides guidance, best practices
* Visualizes activities and information flow
* Is used for documentation and process optimization
32
New cards
Transition
A change from an originating state to a successor state as a result of some stimulus (typically events)
33
New cards
Event
Specification of a significant occurrence that has a location in time and space