Top Banner

of 52

Alexandria ACM Student Chapter | Systems Analysis

Apr 14, 2018

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    1/52

    Systems Analysis

    What? Why?

    ByNahla Ghoneim

    Senior Systems Analyst

    ITWorx Egypt

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    2/52

    What?

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    3/52

    Why?

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    4/52

    Contents

    My Story Requirements.. A problem

    Software Process Model

    Requirements Engineering Systems and Business analysis

    The Business Analysis Process Model

    Systems Analysis Skills Career path

    Questions

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    5/52

    My Story

    The story begins like any other

    ComputerSystemsEngineering

    2006

    Graduation

    ITWorx

    Sun Certified

    JavaProgrammer

    Senior

    SoftwareEngineer

    FoundationCertificate inBusiness

    Analysis

    Senior

    UTC,Reliance, du,Qtel

    SystemsAnalyst

    GTMs

    EMBA

    BusinessExecutive

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    6/52

    Exercise

    Terms Write requirements for a login page for an

    internal system

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    7/52

    A Classic Joke

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    8/52

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    9/52

    Requirements: A big problem

    The hardest single part of building a software

    system is deciding precisely what to build. No

    other part of the conceptual work is as

    difficult as establishing the detailed technicalrequirements...No other part of the work so

    cripples the resulting system if done wrong.

    No other part is as difficult to rectify later.

    -No Silver Bullet: Essence and Accidents of

    Software Engineering

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    10/52

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    11/52

    Relative cost to repair a software

    error

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    12/52

    Problems with Requirements

    Lack ofrelevance to the objectives of theproject

    Lack ofclarity in the wording Ambiguity Duplication between requirements Conflicts between requirements

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    13/52

    Software Process Model: Waterfall

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    14/52

    The Agile Model

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    15/52

    Agile Methodology

    Iteration/Sprint User Story

    Backlog

    Pair ProgrammingAgile does not mean no documentation!

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    16/52

    Requirements Engineering

    Requirements

    Engineering

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    17/52

    Requirements Engineering

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    18/52

    Hurry up!

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    19/52

    Requirements Elicitation

    When I actually meet users... I find that they

    certainly have needs, but that these do not

    appear in an organized form at all. The needs

    come out in a rush, a mixture of complaints,design decisions, interface descriptions, current

    situations, and from time to time specific

    human-machine interface requirements.-Alexander and Maiden (2004)

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    20/52

    Requirements Elicitation

    Techniques

    Interviewing Shadowing

    Workshops

    Scenario Analysis Prototyping

    MOM

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    21/52

    Requirements Analysis

    Ensuring that all of the requirementsidentified during Requirements Elicitation

    have been developed into clear, organized,

    and fully-documented requirements.

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    22/52

    Requirements Analysis Filters

    Ambiguous? Meaning clear?

    Conflict? -> Negotiate a resolution Reasonable? Expensive? Time-consuming?Atomic?

    Overlap? Duplicate?

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    23/52

    Outcomes

    Accept Reword

    Merge

    Clarify

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    24/52

    Requirements Engineering

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    25/52

    Requirements

    Specification/Documentation

    Functional RequirementsWhat the system must do

    Non-Functional RequirementsHow the system will perform in certain areas:o Performance/Response time

    oAvailability

    o Security

    o Backup

    oArchiving

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    26/52

    Requirements Documentation

    Requirements Template

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    27/52

    Requirements Engineering

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    28/52

    Requirements Validation

    Analysts Deem requirements

    complete

    Reviewgroup

    Confirm requirements suitability

    Review group:

    Business representatives

    Project Sponsor

    SME

    Document Signed off

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    29/52

    Requirements Engineering

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    30/52

    Prototyping

    Software customers and end-users usually find it very

    difficult to express their real requirements. It is almost

    impossible to predict how a system will affect working

    practices, how it will interact with other systems and what

    user operations should be automated. Carefulrequirements analysis along with systematic reviews of the

    requirements help to reduce the uncertainty about what the

    system should do. However, there is no real substitute for

    trying out a requirement before agreeing to it. This ispossible if a system prototype is available.

    -Software Engineering, 6th edition, Sommerville

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    31/52

    Prototype Types

    Evolutionary Prototypingo Best understood & highest priority requirements

    Throw-away Prototypingo To validate or derive requirements

    o Least understood

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    32/52

    Prototyping

    Supports: Requirements Elicitation &Requirements Validation

    POC UI Prototyping

    o Wireframes

    oAxure

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    33/52

    Business Analysis or Systems

    Analysis

    Production ofclearly-statedbusinessrequirementsdefinitions,which can bepassed to asystem designerto be turned intospecificationsthat are the inputto thedevelopmentprocess

    BusinessAnalysis Analysing &

    specifying the ITsystemrequirements insufficient detailin order toprovide a basisfor theevaluation ofsoftwarepackages or thedevelopment ofa bespoke ITsystem

    SystemsAnalysis

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    34/52

    What we do

    A well-defined

    businessproblem

    A solutionbased on a

    certaintechnology

    Well-

    documentedrequirements

    Needs strong

    technicalknowledge

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    35/52

    The Business Analysis Process

    Model

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    36/52

    Investigation Techniques

    Interviewing Observation Workshops Scenario Analysis Prototyping

    Five Whys

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    37/52

    Systems Analysis Skills

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    38/52

    Analytical Skills

    [Analytical skills mean] not settling for the obvious,

    not accepting things at face value and not jumping to

    premature conclusions. It means digging deeperand

    deeper until the true situation is uncovered and the

    real problem has been defined. It involves sifting

    through masses of often conflicting data and

    determining which is relevant and which is

    not. And it involves challenging received

    wisdom at every turn.

    -Business Analysis, Paul & Yeates, 2006

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    39/52

    Systems Analysis Skills

    Dealing withambiguity

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    40/52

    The Analyst as a Mixer!

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    41/52

    Systems Analysis Skills

    Change

    Management

    Customer

    Management

    Dealing withambiguity

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    42/52

    Systems Analysis Skills

    CommunicationChange

    Management

    Customer

    Management

    Dealing withambiguity

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    43/52

    Communication Skills

    Communication is

    perhaps the most

    important skill that

    humans possess-Business Analysis, Paul &

    Yeates, 2006

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    44/52

    Systems Analysis Skills

    PresentationCommunication

    Self-confidence!Negotiation

    Change

    Management

    Customer

    Management

    Dealing withambiguity

    Business

    Knowledge/Sense

    Requirements

    Engineering

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    45/52

    Career Path

    Engagement Presales Egypt

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    46/52

    What you learned

    The science of requirements engineering Keep an eye on the business world Broad range of positions in the industry

    o Systems Analysis (like me!)o Testing (Detail-oriented, persistence)

    o UI developer (talent)

    o Entrepreneurs (risk-taking)

    oAcademia (research)

    o Engagement, Presales (customer interfacing)

    o Management

    When the best leader's work is done the people say,

    "We did it ourselves."-Lao Tzu

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    47/52

    What you learned

    Study and develop yourself

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    48/52

    Exercise

    Whats wrong with this requirement?

    The reservations clerk must be able to record

    a booking. They must be able to amend or

    cancel bookings

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    49/52

    Answer

    Not atomic. Several requirements groupedinto one entry.

    Why did the text use they for a singularnoun?

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    50/52

    Exercise

    Write requirements for a login page for aninternal system

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    51/52

    References

    "Business Analysis", BCS, by Debra Paul &Donald Yeates

    Software Engineering, 6th edition,Sommerville "No Silver Bullet: Essence and Accidents of

    Software Engineering, IEEE, by F. Brooks

  • 7/27/2019 Alexandria ACM Student Chapter | Systems Analysis

    52/52