Presentation on theme: "Introduction To System Analysis and design"— Presentation transcript:
1 Introduction To System Analysis and design Prepared by: L. Fatimah Alageel.Reviwed by: L. Asma Alzaid
2 What Is An Information System? An information system is a collection of interrelated components that collect, process, store, and provide as output the information needed to complete a business task.
3 Examples of Information Systems Course registration systemOnline order systemOnline banking system
4 What Is System Analysis About? Understanding the goals and strategies of the business.Defining the information requirements that support those goals and strategies.It is not about programming.
5 System Analysis vs. System Design Investigation of the problem and requirement rather than solution.System Design:A conceptual solution that fulfills the requirements, rather than implementation.
6 System AnalystA business professional who uses analysis and design techniques to solve business problems using information technology.
7 The Role of a System Analyst Investigate, analyze, design, develop, installs, evaluate, and maintains a company’s information systems.Business knowledge.Business problem solver.Help translate business requirements into IT projects.
8 Traditional System Development Life Cycle (SDLC)
9 Traditional System Development life Cycle (SDLC) Project planning – initiate, ensure feasibility, plan schedule, obtain approval for projectAnalysis – understand business needs and processing requirementsDesign – define solution system based on requirements and analysis decisionsImplementation – construct, test, train users, and install new systemSupport – keep system running and improve
10 Two Approaches to System Development Traditional (Structured) approachAlso called structured system developmentStructured analysis and design technique (SADT)Includes information engineering (IE)Object-oriented approachAlso called OOA, OOD, and OOPViews information system as collection of interacting objects that work together to accomplish tasks
11 Structured System Development Structure ProgrammingTop-down ProgrammingStructured DesignStructured Analysis
12 Object-Oriented Approach Completely different approach to information systemsViews information system as collection of interacting objects that work together to accomplish tasksObjects – things in computer system that can respond to messagesConceptually, no processes, programs, data entities, or files are defined – just objectsOO languages: Java, C++, C# .NET, VB .NET
13 Object-oriented Analysis and design (OOAD) OOAD essential for creating well-designed,& maintainable software systemAll Software Analysis and Design is preceded by the analysis of requirements.analysis models the “real-world” requirements, independent of the implementation environment.design applies object-oriented concepts to develop and communicate the architecture and details of how to meet requirements.
14 Unified Modeling Language (UML) UML (Unified Modeling Language) is a graphical language that is suit-able to express software or system requirements, architecture, and design.UML used for both database and software modelingUML modeling also supports multiple views of the same system.use case diagram shows the purposes of the system (use cases) and the users (actors).
15 UML diagrams Can be organized as the fallowing: Structural diagrams: to show the building blocks of your system—features that don’t change with time.Ex: Class diagramBehavioral diagrams:to show how your system responds to requests or otherwise evolves over time.Ex: Use case diagramInteraction diagrams:Is a type of behavioral diagram.To depict the exchange of messages within a collaboration (a group of cooperating objects).Ex: Sequence diagram & Collaboration diagram
16 UML diagrams Another ways of categorizing UML diagram: Static diagrams to show the static features of the system. (no change)Dynamic diagramsto show how your system evolves over time.Functional diagrams:to show the details of behaviors and algorithms.
18 Object-oriented analysis (OOA) Trying to figure out what the users and customers of a software effort want the System to do.Builds a “real-world” model from requirementsclient interviews, domain knowledge, real-world experience collected in use cases and other simple notationsOOA models address three aspects of the system (its objects)class structure and relationshipssequencing of interactions and eventsdata transformations and computations
19 Models of Object-Oriented Analysis (UML) Structural Model (Data-Oriented)static featureswhat objects are in the system?how are they related?Dynamic Model (Action-Oriented)behavioral aspectswhat events occur in the systemwhen do they occur and in what order?Functional Model (Both Data and Actions)data transformations“what” does the system do
21 Ex: Use Case (Analysis) Start from requirementsDescribe response of system to eventsNormal flow of actionError and exception handlingCan implement tests to check use cases
22 OOD: Object Oriented Design Emphasizes a conceptual solution that fulfils the requirements specified in the analysis.Need to define software objects and how they collaborate to fulfill the requirements.For example, in the Library Information System, a Book object may have a title attribute and a display() method.Designs are implemented in a programming language.In the example, we will have a Book class in Java.
24 Example: Analysis vs. Design figure : Analysis and design versions of a class
25 Object-oriented programming (OOP) Writing statements in programming language to define what each type of object doesOO Programming Language (e.g. C++, Java,smalltalk, …)
26 OOP: Object-Oriented Programming During Implementation, or Object-Oriented Programming, design objects are implemented, such as a book class in Java.Implementation is also known as Coding or Construction.
27 ObjectsConcepts, concrete or abstract, with meaning derived from the problem domain “the real world”Provide a basis for implementation.Encapsulation of state (data values) and behavior (operations)
28 Objects (cont.)Exhibit behavior by invoking a method in response to a message.Instances of classes.an object-oriented program is a collection of autonomous interacting and collaborating objects
29 Classes objects sharing common characteristics dictate the behavior of the objectcontainstate: attributes, fields, variables, data memberbehavior: functions, methods, function member
30 3 Pillars of Object-Orientation encapsulationinheritancepolymorphism
31 Encapsulation combination of state and behavior implementation details are hidden internallyinternal mechanisms can change while public interfaces remain stablestate may be retrieved using public methodsbehavior consists of methods activated by receipt of messages
32 InheritanceClasses with similar attributes and operations may be organized hierarchicallyCommon attributes and operations are factored out and assigned to a broad superclass (generalization)generalization is the “is-a” relationshipsuperclasses are ancestors, subclasses are descendants.Classes iteratively refined into subclasses that inherit the attributes and operations of the superclass (specialization)
34 PolymorphismPolymorphism means same operation may behave differently on different classes.Some Polymorphism types:Overloading: Method with same name but with different arguments (compile-time polymorphism).Overriding: when child class declares a method that has the same type arguments as a method declared by one of its superclass (run-time polymorphism) .
35 Summary What is information system. System analysis. System analysis vs. system designSystem development life cycle (SDLC)Unified Modeling Language (UML)Phases of OO Approach.Pillars of OO.