System analysis, the definition you
       don’t know … Yet!!
“Dive into real life”
What is Analysis ? Really


OOP, The thing they don’t teach
you @ School.

What, Why and Why not?


Hands on Example


How to be an Analyst ?
Muhammed Nabil
System Analyst
+6 Years
B.Sc. in Computer Science
M.Sc. in Information system
What is system analysis ?
To know that!!
What is a System ?!

          Isn’t That old ?!!!
An information system (IS) is
an arrangement of people
data, processes, and
information technology that
interact to collect, process,
store, and provide as output
the information needed to
support an organization.
Yes
People



  WAllah
    El
  People
Client

                   Stakeholders
PM
          End Users
           Developers
 QE/A
11.8
                                                                       %
                                    12.8%
                                            Incomplete Requirements
                                                   12.3%
                                                                                   7.5
                                                                                    %
                                                                        Lack of Executive Support




                                   15.9%
                                                                             13%
                                                     13.9%




* THE STANDISH GROUP REPORT 2007
44.4%

42.8%
Yea Yea they are people
What is system analysis ?
Analyzing people needs
Basics of Object Oriented Programming
Encapsulation
Inheritance



   Abstraction

                  Polymorphism
Responsibilities…
Doing

Knowing
Where are we going ?
Impact and Gap analysis
Responsibilities…
What, Why and Why not?
Functional
Dynamic



          Static




Solution View
Functional View
Static View
Dynamic View
“80% of your object modeling needs can be
    satisfied with 20% of the notation”
             - Scott Ambler
What Should I use ?
Hands on Example
A woman without her man is nothing


A woman without her. Man is nothing


A woman, without her man is nothing
What is a Feature ?


  “A condition or capability to which a system must
 conform”
Q: Is features enough ?!

A: Yes ..


    When you are a   Tailor
What is a Use Case?

  “A sequence of actions a system performs that yields an
 observable result of value to a particular actor. ”
Use Case contain :
  Use Case Name
  Brief Description
  Flow of Events
     • Basic Flow
     • Sub-Flows
     • Alternative flow
  Special Requirements
  Precondition
  Post condition
  Extension point
Alternative :
   “Necessitating a choice between mutually
              exclusive possibilities”
                                    Webster


Extension:
  “Act of expanding in scope; making
         more widely available “
                                  Webster
Example
Withdraw Features
• A withdrawal transaction asks the customer to choose a type of account to
  withdraw from (e.g. checking) from a menu of possible accounts, and to
  choose a dollar amount from a menu of possible amounts. The system
  verifies that it has sufficient money on hand to satisfy the request before
  sending the transaction to the bank. (If not, the customer is informed and
  asked to enter a different amount.) If the transaction is approved by the
  bank, the appropriate amount of cash is dispensed by the machine before
  it issues a receipt. (The dispensing of cash is also recorded in the ATM's
  log.)

• A withdrawal transaction can be cancelled by the customer pressing the
  Cancel key any time prior to choosing the dollar amount.
Give it a try ?!!
Use Case Name      Withdraw amount
Use Case ID        WA-01
Trigger            Customer selects to withdraw money
Precondition       The user is identified as authenticated through his PIN number
Basic Flow         1. System displays available accounts type according to the customer
                      ID.
                   2. Customer select specific accounts.
                   3. System displays default amounts.
                   4. Customer select specific amount.
                   5. System verifies the ATM has sufficient money.
                   6. System verifies with the bank that the account has sufficient
                      money.
                   7. System approve transaction, dispense amount
                   8. Customer retrieve amount and Card
                   9. System generate receipt.
Alternative Flow   5.1 ATM doesn’t have enough money, display message and go to step 4
                   6.1 Customer balance not enough, display message and go to step 4
                   8.1 Customer didn’t retrieve card and money on time, Hold the card
                   and the amount and display message and produce receipt
Post condition     Transaction status recoded in the system
How to be an Analyst ?
Analytical Skills
                      Problem solver

   Excellent communication Skills
                                UML+
Programming experience


                      Documentation skills

      starter
  Self-
Questions ?
Mohamed.alsaid@gmail.com



http://analystinside.blogspot.com



@Muhammed_Nabil
System Analysis 101

System Analysis 101

  • 1.
    System analysis, thedefinition you don’t know … Yet!!
  • 2.
  • 4.
    What is Analysis? Really OOP, The thing they don’t teach you @ School. What, Why and Why not? Hands on Example How to be an Analyst ?
  • 7.
  • 8.
  • 9.
  • 12.
  • 13.
  • 14.
    What is systemanalysis ?
  • 15.
  • 16.
    What is aSystem ?! Isn’t That old ?!!!
  • 17.
    An information system(IS) is an arrangement of people data, processes, and information technology that interact to collect, process, store, and provide as output the information needed to support an organization.
  • 18.
  • 19.
    Client Stakeholders PM End Users Developers QE/A
  • 20.
    11.8 % 12.8% Incomplete Requirements 12.3% 7.5 % Lack of Executive Support 15.9% 13% 13.9% * THE STANDISH GROUP REPORT 2007
  • 21.
  • 23.
    Yea Yea theyare people
  • 27.
    What is systemanalysis ?
  • 28.
  • 29.
    Basics of ObjectOriented Programming
  • 30.
    Encapsulation Inheritance Abstraction Polymorphism
  • 31.
  • 32.
  • 33.
    Where are wegoing ?
  • 34.
  • 38.
  • 39.
    What, Why andWhy not?
  • 40.
    Functional Dynamic Static Solution View
  • 43.
  • 44.
  • 45.
  • 46.
    “80% of yourobject modeling needs can be satisfied with 20% of the notation” - Scott Ambler
  • 47.
  • 49.
  • 50.
    A woman withouther man is nothing A woman without her. Man is nothing A woman, without her man is nothing
  • 52.
    What is aFeature ? “A condition or capability to which a system must conform”
  • 53.
    Q: Is featuresenough ?! A: Yes .. When you are a Tailor
  • 55.
    What is aUse Case? “A sequence of actions a system performs that yields an observable result of value to a particular actor. ”
  • 56.
    Use Case contain: Use Case Name Brief Description Flow of Events • Basic Flow • Sub-Flows • Alternative flow Special Requirements Precondition Post condition Extension point
  • 58.
    Alternative : “Necessitating a choice between mutually exclusive possibilities” Webster Extension: “Act of expanding in scope; making more widely available “ Webster
  • 59.
  • 61.
    Withdraw Features • Awithdrawal transaction asks the customer to choose a type of account to withdraw from (e.g. checking) from a menu of possible accounts, and to choose a dollar amount from a menu of possible amounts. The system verifies that it has sufficient money on hand to satisfy the request before sending the transaction to the bank. (If not, the customer is informed and asked to enter a different amount.) If the transaction is approved by the bank, the appropriate amount of cash is dispensed by the machine before it issues a receipt. (The dispensing of cash is also recorded in the ATM's log.) • A withdrawal transaction can be cancelled by the customer pressing the Cancel key any time prior to choosing the dollar amount.
  • 63.
    Give it atry ?!!
  • 64.
    Use Case Name Withdraw amount Use Case ID WA-01 Trigger Customer selects to withdraw money Precondition The user is identified as authenticated through his PIN number Basic Flow 1. System displays available accounts type according to the customer ID. 2. Customer select specific accounts. 3. System displays default amounts. 4. Customer select specific amount. 5. System verifies the ATM has sufficient money. 6. System verifies with the bank that the account has sufficient money. 7. System approve transaction, dispense amount 8. Customer retrieve amount and Card 9. System generate receipt. Alternative Flow 5.1 ATM doesn’t have enough money, display message and go to step 4 6.1 Customer balance not enough, display message and go to step 4 8.1 Customer didn’t retrieve card and money on time, Hold the card and the amount and display message and produce receipt Post condition Transaction status recoded in the system
  • 65.
    How to bean Analyst ?
  • 66.
    Analytical Skills Problem solver Excellent communication Skills UML+ Programming experience Documentation skills starter Self-
  • 67.
  • 68.