Download presentation
Presentation is loading. Please wait.
1
Project 1 Guide System Analysis & Design
Seminar Second Semester 1435/1436 – 2014/2015 Presented by: Dr. Souad Larabi Marie-Sainre GP1 head committee L. Mashael Daouis Clinic member L. Hend Albassam Clinic member L. Abeer Adrees Clinic member L. Malak Bagais Clinic member 9/17/2018
2
Plan Introduction System Analysis & Design Object Oriented analysis
Structured Analysis Database Web Development 9/17/2018
3
Introduction After Literature Review and Background phases
System analysis & design phase User & System requirements Structured Approach Object Oriented Approach Design approach 9/17/2018
4
System analysis & Design
User Requirements and System Specifications Analysis Design Conclusion 9/17/2018
5
System analysis & Design
User Requirements Definition: The UR stage is considered as the ‘concept' or ‘problem definition‘ stage; UR frequently derive directly from a spontaneous idea or thought UR should be gathered based on the user needs; UR should be clarified through criticism and experience of existing software and prototypes; UR should be approved through interviews and surveys; UR should be realistic (clear, verifiable, complete, accurate, feasible). 9/17/2018
6
System analysis & Design
System Requirement Specification A detailed statement of the results that a system is requested to reach. A good specification gives a complete statement of what the system is to do, A system requirements specification is normally produced in response to a user requirements. 9/17/2018
7
System analysis & Design
Object Oriented Analysis (still growing): Population of interacting objects of a system Structured Analysis (still in use today): The traditional data or functional views 9/17/2018
8
System analysis & Design
Structured Approach 1- Use Case diagram 2- Context level DFD 3- Level-0 DFD 4- Subsequent levels DFDs (max 3 levels) 5- ER Diagram (if needed) 6- DB Shema & Dictionary (Data Design) if needed 7- Architectural Design 8- Structured English/ Decsion Tables/ Decision trees/ Flowcharts (for major processes only) – (Component Design) 9- Interface design Object Oriented Approach 1- Use Case diagram 2- Use Cases Descriptions 3- Conceptual Diagram 4-Sequence Diagram 5- Class Diagram 6- ER Diagram (if needed) - 7- DB Shema & Dictionary (Data Design) if needed 7- Architectural Design 8- Pseudo code/ Algorithms/ Flowcharts (component Design) 9- Interface design 9/17/2018
9
Object Oriented Analysis
9/17/2018
10
Use Case Diagram It describes the main system functions from the standpoint of an external observer. Used during requirements elicitation to represent external behavior. It emphasize on what the system does rather than how it. It is created during the early stages of a project – during the analysis phase rather than during the design phase. It provides a high-level view of what the system does and who uses it. It provides the basis for determining the user interfaces (UIs) to the system 9/17/2018
11
Example Use cases diagram
9/17/2018
12
Example 9/17/2018
13
Example 9/17/2018
14
Conceptual (Domain) Model
A domain model illustrates meaningful concepts in a problem domain. It’s a representation of real-world things, not software components. It’s a set of static structure diagrams; no operations are defined. It may show: Concepts Attributes of concepts. Associations between concepts 9/17/2018
15
Domain Model 9/17/2018
16
Sequence diagrams: An Interaction Model
Sequence diagrams are part of the UML and are used to model the interactions between the actors and the objects within a system. The objects and actors involved are listed along the top of the diagram, with a dotted line drawn vertically from these. Interactions between objects are indicated by annotated arrows. Detail how operations are carried out Dynamic Diagrams Organized according to time The time progresses as you go down the page The objects involved in the operation are listed from left to right according to when they take part in the message sequence. Create a sequence diagram for each scenario 9/17/2018
17
Sequence Diagrams :Register :ProductCatalogue Sale :ProductSpec
addLineItem(itemID, quantity) 1. Spec=getSpecification(itemID) 1.1 Spec=Find(itemID) 2. makeLineItem(spec,quantity) 2.1 sli= Create(spec,quantity) :SalesLineItem 2.2 Add(sli) 9/17/2018
18
Class Diagram A class diagram shows the existence of classes and their relationships in the logical view of a system. UML modeling elements in class diagrams: Classes and their structure and behavior. Association, aggregation, dependency, and inheritance relationships. Multiplicity and navigation indicators. Role names. 9/17/2018
19
Class Diagram 9/17/2018
20
Structured Analysis 9/17/2018
21
System Analysis Basic principle: problem partition
Partition with regard to what Object Object Oriented analysis Function - Structural analysis Data Flow Modeling (DFD) 9/17/2018
22
Data Flow Modeling Widely used; focuses on functions performed in the system Uses data flow diagrams (DFDs) and functional decomposition in modeling 9/17/2018
23
Steps in Building DFDs Build the context diagram
Create DFD fragments for each scenario Organize DFD fragments into level 0 Decompose level 0 DFDs as needed Validate DFDs with user 9/17/2018
24
Subsequent DFD levels 9/17/2018
25
Context Diagram Shows the overall business process as just one process
Shows all the outside entities that receive information from or contribute information to the system 9/17/2018
26
Level 0 Diagram Shows all the processes that comprise the overall system Shows how information moves from and to each process Adds data stores 9/17/2018
27
Level 0 Diagram 9/17/2018
28
Level 1 Diagrams Shows all the processes that comprise a single process on the level 0 diagram Shows how information moves from and to each of these processes Level 1 diagrams may not be needed for all level 0 processes 9/17/2018
29
Level 2 Diagrams Shows all processes that comprise a single process on the level 1 diagram Level 2 diagrams may not be needed for all level 1 processes Correctly numbering each process helps the user understand where the process fits into the overall system 9/17/2018
30
Composite & Elementary Flows
9/17/2018
31
DFD – Common Errors Black Hole Gray Hole Miracle 9/17/2018
32
Illegal Data Flows 9/17/2018
33
DFD drawing – common errors
Unlabeled data flows Missing data flows Extraneous data flows Consistency not maintained during refinement Missing processes Too detailed or too abstract 9/17/2018
34
Logic Modeling Data flow diagrams do not show the logic inside the processes. Logic modeling involves representing internal structure and functionality of processes: Structured English Decision Tables Decision Trees 9/17/2018
35
Logic Modeling 9/17/2018
36
Logic Modeling 9/17/2018
37
Logic Modeling 9/17/2018
38
Database 9/17/2018
39
9/17/2018
40
Weak Entity 9/17/2018
41
DB Schema How to derive a set of relations from a conceptual data model. 9/17/2018
42
Student (Student_ID, Name, DOB) Student_Phone ( Student_ID, Phone)
Enroll (Student_ID, Code, Grade) Course (Code, Name, Instructor_ID) Instructor (Instructor_ID, Name, city, street) 9/17/2018
43
Section (Section#, Code, Enrollment_limit)
Course (Code, Name) 9/17/2018
44
DB Dictionary Entity dictionary 9/17/2018
45
General term describing all enrolled students.
Entity Name Description Aliases Occurrence Student General term describing all enrolled students. Students can enroll in several courses. Course A general term describing all courses offered by the university. Each course is taught by one teacher. Instructor The person who teaches courses at the university. Teacher The instructor can teach many courses. 9/17/2018
46
DB Dictionary Relationships dictionary 9/17/2018
47
Entity Name Multiplicity Relationship Student 0..* Enroll Course
Teaches Instructor 1..1 9/17/2018
48
DB Dictionary Attributes dictionary 9/17/2018
49
Uniquely identifies instructor. varchar 5 no Y
Entity name Attribute Description Data Type Length Nulls Multi-valued Default Value Range PK CK Instructor Instructor_ID Uniquely identifies instructor. varchar 5 no Y Name Name of instructor 30 Address City The city where the instructor lives. 10 Street The street where the instructor lives. 20 9/17/2018
50
Web Development 9/17/2018
51
How to Choose a Programming Language
Figure out what works for the team. Find out what works in context. Consider ease of learning. Evaluate the availability of tools for the potential computer programming languages. Look at cross-platform ability. Determine the ease of server-side and client-side scripting. 9/17/2018
52
Popular Web Programming Language
Server-side: PHP with MySQL ASP.NET with SQL Server Express Python with MySQL Java Servlets with JDBC (support different DBs) Java Hosting Servers are different from Regular web Hosting. You should check that the hosting server support Java 9/17/2018
53
Responsive Web Design Responsive web design (RWD) is an approach to web design aimed at crafting sites to provide an optimal viewing experience. 9/17/2018
54
Responsive Web Design How to achieve? Use responsive templates
Use framework (e.g. Bootstrap and Foundation) Built it: Media queries Fluid Grids Fluid Media 9/17/2018
55
9/17/2018
56
References Guide to the User Requirements Definition phase, ESA PSS Issue 1 Revision 1 March 1995 Modern Systems Analysis and Design by Jeffrey A. Hoffer, Joey George, Joe A. Valacich 9/17/2018
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.