Ict 213 lecture 1
-
Upload
leodgard-erasmus -
Category
Science
-
view
79 -
download
1
Transcript of Ict 213 lecture 1
1
System Analysis and Design
Prof. Dr. ir. S. S. Msanjila
2
Course Materials
Book: Requirements analysis and system design, 3rd edition (Leszek A. Maciaszek)
Website: http://www.comp.mq.edu.au/books/rasd3ed/ReadersArea/lectureslides.htm
3
Course outline - Lectures
Introduction to conceptual modeling and visual modeling (Sect. 1.1 & 1.4, &
Chapter 3)
Identification of users, and business requirements (Chapter 2)
Specification of system requirements (Chapter 4)
System Modeling (Chapter 5)
Designing system architecture (Chapter 6)
Designing user interfaces (Chapter 7)
System analysis
System design
4
Lecture 1
Introduction to System Analysis and Design
&
Visual modeling with UML
5
Introduction
Model: • An abstraction of reality, an abstract
representation of reality
• Applied to guide the implementation of
targeted product
System modeling: • Representing concepts using some defined
constructs
• Conceptual models (conceptual constructs)
represent some optional solutions that can be
implemented
For software developments it is referred to as “system
analysis and design”
In computer science • Addresses the capturing of activities and
processes that need to be modeled to guide the
implementation of a system
Physical
process
Model of
a process
System
automating
the process
Analysis
Designing
6
System and software development process
Why having a process: Developing a system/software is
also an engineering project:
• Has goals, deadlines, budget
• Involves a number of stakeholders
• Needs some managerial skills
A system/software development is a complex engineering project
• Needs a properly defined process
7
Complexities in developing system/software
Of the development process: • Size of the system/software
• Involved developers/experts
• Interdependencies between
components/modules
• Number of stakeholders
Of the system/software:
• Number of applications
• Application domains • Computational-intensive vs. Data intensive
• Conformity • Hardware & Software
• Changeability • Fluctuation/variation of business
requirements
• Visibility • Privacy vs. sharing code
• Security vs. access of code
As an engineering product,
systems can be duplicated: • Duplication cost is too low
as compared to that of
development
8
The accidents of software development
9
Software life cycle
Software life cycle represents an ordered set of activities conducted
and managed to support the creation and operation of software
• Activities are mostly performed sequentially
• Methods are applied to guide performing the processes
A software life cycle consists of:
• Exact phases (during which transformation occurs)
• Methods (methodologies)
• Applied modeling approach
10
Software life cycle - Phases
3. Implementation
4. Operation
2.
Design 5.
Maintenance
1.
Analysis
1.
Analysis
11
1. System (business) analysis
Requirement Analysis: Identifying, specifying and modeling
customers’ (users’) requirements:
• Identification (Business analyst)
• Specification (System analyst)
• Documentation (System analyst and system designer)
Types of requirements: • Functional requirements
• Non-functional requirements
Focuses on:
• Identification of users,
• Characterization of user requirements
• Specification of functionalities
12
Software life cycle - Phases
3. Implementation
4. Operation
2.
Design 5.
Maintenance
1.
Analysis
2.
Design
13
2. System Design
Addresses:
• Structure of the system
• Internal components of the system
• Components supporting external interactions
• System architectures
Designing process must take into account
the software and hardware platforms that
system will installed
Focuses on:
• Designing models and architectures of the intended system
14
Software life cycle - Phases
3. Implementation
4. Operation
2.
Design 5.
Maintenance
1.
Analysis
3. Implementation
15
3. System Implementation
Focus:
• Development of the system by implementing the needed codes.
• Testing developed components
• Loading data into databases
• Setting required hardware
• Validation and verification of:
• Functionalities
• External interactions
• User aspects and documentation
• Compilation
• Integration of separately developed components
• Deployment of the system
16
Software life cycle - Phases
3. Implementation
4. Operation
2.
Design 5.
Maintenance
1.
Analysis
4.
Operation
17
4. System Operation and maintenance
18
Software life cycle – Course focus
3. Implementation
4. Operation
2.
Design 5.
Maintenance
1.
Analysis
Course focus
19
Discussion -1
1. What is the difference between the following three terms: a) Software
b) System
c) Software system
2. According to the software life cycle, the specification of
functionalities of a system is performed by the system analyst in
the analysis phase. The specified functionalities guide the
development of system architectures in the designing phase. a) What problems do you think may happen due to the separation of
these two processes in different phases?
b) Do you think it is better to move the task for specification of
functionalities into designing phase?
20
Visual Modeling with UML
21
Topics to be covered
© Pearson education 2007
22
Visualization of system models
Model: Focuses on visualizing fundamental
concepts of the intended system
UML: Unified modeling language
© Pearson education 2007
Types of conceptual models
23
Use case view
© Pearson education 2007
24
Use case modeling
© Pearson education 2007
25
Requirements, actors and use cases
© Pearson education 2007
26
Representation of actors
© Pearson education 2007
27
Representation of use cases – Video store
© Pearson education 2007
28
Use case diagram – Video store
© Pearson education 2007
29
Use case diagrams forming a subject – Video store
© Pearson education 2007
30
Documenting a use case
© Pearson education 2007
31
Documenting a use case: Video store
© Pearson education 2007
32
Activity view
© Pearson education 2007
33
Activity modeling
© Pearson education 2007
34
Identifying actions from a use case statement
© Pearson education 2007
35
Activity diagrams
© Pearson education 2007
36
Activity diagrams – Video store system (not complete)
© Pearson education 2007
37
Structure view
© Pearson education 2007
38
Class modeling
© Pearson education 2007
39
Identification of classes: Some considerations
© Pearson education 2007
40
Identifying classes
© Pearson education 2007
41
Class diagram: Association relationship
© Pearson education 2007
42
Class diagram: Aggregation relationship
© Pearson education 2007
43
Class diagram: Generalization relationship
© Pearson education 2007
44
Interaction view
© Pearson education 2007
45
Sequence diagram
© Pearson education 2007
46
Communication/collaboration diagram
© Pearson education 2007
47
State machine view
© Pearson education 2007
48
State machine modeling
© Pearson education 2007
49
States, events and transitions
© Pearson education 2007
50
QUESTION