Your SlideShare is downloading. ×
0
CIS591 Analysis Presentation
Brief system background
What the system is used for
The company

National Marketing Resources (Kearney, MO)
  Sister company to Professional Marketing International (Utah)
  ...
Brief system description

 Sales leads tracking system
 Computerizes the process of obtaining / categorizing sales leads
 ...
Feasibility study
Benefits and costs of the project as well as its overall feasibility
Organizational feasibility

 Not much risk here
 No switching or eliminating positions
 Similar system already in place
  ...
Cultural feasibility


 Also not much risk
 Many people are embracing computers / technology
 Staff / management will have...
Technological feasibility


 Could be an issue
 Never previously exposed to Django / Python
 I’d request hiring a couple o...
Schedule feasibility

 I have all semester to complete the project; not much risk
 Most of my schedule is open for this pr...
Resource feasibility


 I can tap current users as needed to ask them any questions
 Major issue: I’m the only ‘staff memb...
Economic feasibility
 Present value of benefits                  Estimated present value of net benefits, costs

 $877,077....
Requirements models
Highlighting actors, use cases, and domain classes
System


                                            Define lead
                                              source


   ...
System


                                             Distribute leads to
                                                ...
Use case                  System



diagram               Modify lead status

Marketer
           Marketer
Use case: change lead status

Triggering event:
Marketer follows up on sales lead

Brief description:
A marketer will go d...
Use case: change lead status
Stakeholders:
Sales teamleaders, customers

Preconditions:
  Lead in the list must already ex...
Use case: change lead status
Marketer visits leads page
                                                                  ...
Domain model class diagram
Lead Source
                                     1      companyName                                                       ...
Prototypes & implementation
Screen designs, report designs, menus, and more
Design prototype: leads list (and web app layout)
Report design work-in-progress: leads list (active)
Report prototype: Lead detail report
Report design work-in-progress: Actual system lead detail report
Report prototype: Overall lead report
Menu hierarchy: headers

External company management
Internal company management
Leads management
Customer management
Orde...
Menu hierarchy:
External company management


 Add new lead source
 View existing lead sources
 Add new promotion
 View ex...
Menu hierarchy:
Internal company management
 Add new sales company
 View existing sales companies
 Add new division
 View ...
Menu hierarchy:
Leads management

 Add new lead
 Import leads
 Export leads
 Distribute leads
 View my leads
Menu hierarchy:
Customer management

 Add new customer
 View existing customers

Order management
 Add new order
 View exi...
Menu hierarchy:
Reports



 Generate lead report
 Generate marketer report
 Generate overall report
Screen design work-in-progress: main menu
Application architecture
How Birdie represents model-template-view (MTV) architecture
using Django
Technology & working environment

Web application running on Django 1.1 (beta), Python 2.5.4, SQLite
  Features locked; 1....
App architecture, design approach
Model-Template-View (three-layer architecture)
  Models represent data access and definit...
Web browser               URL controller       Template layer                      View layer                       Model ...
Birdie Analysis
Upcoming SlideShare
Loading in...5
×

Birdie Analysis

502

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
502
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • - Birdie is my project
    - Written in Python using Django framework
    - Sales leads tracking app
  • - Touch on the basis for the app
    - What it does, in a nutshell
  • - NMR, partnered with PMI in Utah
    - They do consulting and marketing
    - One of their functions is phone marketing
  • - Sales leads tracking and management system
    - Leads come into company
    - Processing reps file the leads according to their sources
    - Distribute them through our channels
    - Current system is tied to Windows clients, need access for browsers and mobile phones

  • - Show the feasibility study from my last report
  • - No change, really
    - Most organizational changes already took place with previous system

  • - Still not much risk
    - People are mostly tech-savvy here
    - Marketers are least tech-savvy, but most still are sharp on tech
  • - My first major exposure to Django OR Python
    - Issue at beginning but: easy to pick up, very powerful
    - Know people that know Django
  • - Not much risk as long as I manage my time
    - Could spend longer than alotted; I tend to pay too much attention to small details
    - No time for that
  • - Small (but growing) company, know most users of system
    - I’m the scarce resource (as developer)
  • - Numbers on my last report
    - Quite feasible, economically and overall
  • - The fun stuff, pretty pictures
    - Some of what the system needs to do
  • - Processing rep does a lot of management of the data
    - Customers, sources, promotions, campaigns
    - Initial lead distribution
  • - Various levels of mgmt
    - Leads go to sales mgrs, then to division mgrs, then teamleaders
    - All levels can see lead reports and marketer reports
    - Only sales mgrs can see overall reports
  • - Marketer has one: change lead status
    - Upgrade/downgrade lead depending on outcome of followup
    - Complex, lots of data entry; focal point
  • - From description
    - Happens when marketer follows up on lead via phone
    - Makes calls for each lead on their list
    - Pull up detail report and fill out extra details, change status
  • - Teamleaders preside, customers are contacted
    - Lead must have complete path, be assigned to show up in list
    - After, lead is modified, be active or inactive
  • - Diagram: follow arrows
    - Gets active leads list, chooses one, updates info
    - Gets redirected

  • - Lead is in center
    - Order/product is off to side, somewhat separate from main part
    - Person super of customer, user
    - User is anyone who logs into system, includes bottom row classes
  • - REALLY fun stuff
    - Mockup designs, what’s implemented
  • - Initial prototype, layout of leads list for mktr
    - Select a lead, go to lead detail
  • - Leads list implementation
    - Same functionality, choose between lead phases (a/i/e)
  • - Second prototype: detail report
    - Marketer gets this for each lead they call
    - Add details, fill in demographics
  • - Implementation of lead detail report
    - Haven’t added demographics
    - Working status change and detail/notes
  • - Third mockup: lead report
    - May or may not have graph; extra feature
    - Shows statistics of leads over time period
    - Not yet implemented
  • - Planned menu hierarchy
    - Dependent on credentials
    - Section headers
  • - Managers, processing reps have access
  • - Processing reps, mgmt, teamleaders have access to certain sections
  • - Processing reps have first 4
    - Mgmt has 3 & 4
    - Mktr has 5th
  • - Processing reps get all these
    - Mgmt can access as well
  • - Mgmt have all 3
    - Teamleaders only have first 2
  • - Real basic main menu implemented now
    - Tailored to your credentials
    - Clicking on your name in upper-right gets you to menu
    - Breadcrumb always helps you find your way
  • - MTV: model/template/view
    - MVC: model/view/controller
    - different names for same thing
    - Django ‘controller’ is URL direction file, biz-logic in ‘views’
    - Templates are rendered HTML files
  • - Dev-ing w/ prerelease build of Django 1.1, due in couple of weeks
    - Database testing with SQLite, full build MySQL; Django handles DB differences
    - All Mac dev-environment

  • - As previously explained
    - Models = models
    - Views = templates
    - Controllers = views
    - Actual controlling = URL direction, regex’s
    - Objects/models predefined, view classes/forms = biz-logic
  • - What it looks like going from through system
    - Follow steps
  • - End! Stop sweating now
  • Transcript of "Birdie Analysis"

    1. 1. CIS591 Analysis Presentation
    2. 2. Brief system background What the system is used for
    3. 3. The company National Marketing Resources (Kearney, MO) Sister company to Professional Marketing International (Utah) Employs roughly 300 people across all sites Internet business consulting and product marketing Services for entrepreneurs, investors, small business owners One function: phone marketing following sales leads
    4. 4. Brief system description Sales leads tracking system Computerizes the process of obtaining / categorizing sales leads Forwards them to marketers Marketers follow through on those leads If necessary, they upgrade their statuses to accounts
    5. 5. Feasibility study Benefits and costs of the project as well as its overall feasibility
    6. 6. Organizational feasibility Not much risk here No switching or eliminating positions Similar system already in place Most organizational changes took place when that system was implemented Both projects are organizationally feasible
    7. 7. Cultural feasibility Also not much risk Many people are embracing computers / technology Staff / management will have more control over their people
    8. 8. Technological feasibility Could be an issue Never previously exposed to Django / Python I’d request hiring a couple of people that already know Django / Python to assist in development / support (if this weren’t for a class)
    9. 9. Schedule feasibility I have all semester to complete the project; not much risk Most of my schedule is open for this project Gauging where I’m at periodically is important I’ll keep an eye on managing my time Time usage must be efficient (could spend more than a semester working on system)
    10. 10. Resource feasibility I can tap current users as needed to ask them any questions Major issue: I’m the only ‘staff member’ assigned to doing this project I have people I can call on if I need technical help Could be an issue; some risk
    11. 11. Economic feasibility Present value of benefits Estimated present value of net benefits, costs $877,077.00 $400k $320k Present value of costs $73,373.46 $240k $160k Payback period 44 days $80k $0k 3-yr return on investment 695.83% ($80)k Year 0 Year 1 Year 2 Year 3
    12. 12. Requirements models Highlighting actors, use cases, and domain classes
    13. 13. System Define lead source Create new lead Use case Import external leads diagram Define promotion Define marketing campaign Processing representative Processing Assign leads to Rep lead path Distribute leads to sales company Export lead list Define customer
    14. 14. System Distribute leads to sales team Distribute leads to division Division Generate lead manager report Generate marketer report Sales manager Generate overall report Sales Assign leads to teamleader marketers Use case diagram Managers
    15. 15. Use case System diagram Modify lead status Marketer Marketer
    16. 16. Use case: change lead status Triggering event: Marketer follows up on sales lead Brief description: A marketer will go down their list of leads assigned to them and make sales calls. Depending on the status of the phone call (if the lead hung up, was busy, wasn’t home, etc), the marketer will change the status of that lead in the system. They’ll login to the system, visit their active leads, click on the lead they’re working on, and change the details of that lead.
    17. 17. Use case: change lead status Stakeholders: Sales teamleaders, customers Preconditions: Lead in the list must already exist in the system with complete details Lead must already be assigned to a marketer Postconditions: Lead will be modified with additional details on the prospective customer Lead will either be active or inactive depending on status
    18. 18. Use case: change lead status Marketer visits leads page System System gives leads list Marketer Marketer selects current lead Open active leads page System gives detail page Choose current lead Marketer updates lead info Update lead information and status, submit Redirect to active leads page System saves info to DB Marketer returns to lead list
    19. 19. Domain model class diagram
    20. 20. Lead Source 1 companyName Product address productName 1 * city productSource * state productPrice Promotion zip productDescription promotionName country productPicture promotionSource phone 1..* 0..1 OrderDetails 0..1 orderID productID qty * * * Lead Order createDate Sales Company orderDate expireDate companyName orderCustomerID customerID address orderTotal sourceID city orderPaymentMethod promotionID 0..1 * state orderDueDate pipelineID zip orderPayDate salesCompanyID country 1 divisionID * phone * teamID isInternal marketerID managerID status 1 1 detail * * * 0..1 * Division Person Team divisionName firstName divisionID companyID lastName 0..1 teamLeaderID managerID address * city 1 1 1 1 state zip country phone 0..1 1 User Customer userid age maritalStatus 0..1 0..1 numChildren assetAmount 0..1 * 0..1 liabilityAmount Manager Team Leader Marketer Processing Rep managerType commissionRate commissionRate managerID teamID salesCompanyID 1 * *
    21. 21. Prototypes & implementation Screen designs, report designs, menus, and more
    22. 22. Design prototype: leads list (and web app layout)
    23. 23. Report design work-in-progress: leads list (active)
    24. 24. Report prototype: Lead detail report
    25. 25. Report design work-in-progress: Actual system lead detail report
    26. 26. Report prototype: Overall lead report
    27. 27. Menu hierarchy: headers External company management Internal company management Leads management Customer management Order management Reports
    28. 28. Menu hierarchy: External company management Add new lead source View existing lead sources Add new promotion View existing promotions
    29. 29. Menu hierarchy: Internal company management Add new sales company View existing sales companies Add new division View existing divisions Add new team View existing teams Add new marketer View existing marketers
    30. 30. Menu hierarchy: Leads management Add new lead Import leads Export leads Distribute leads View my leads
    31. 31. Menu hierarchy: Customer management Add new customer View existing customers Order management Add new order View existing orders
    32. 32. Menu hierarchy: Reports Generate lead report Generate marketer report Generate overall report
    33. 33. Screen design work-in-progress: main menu
    34. 34. Application architecture How Birdie represents model-template-view (MTV) architecture using Django
    35. 35. Technology & working environment Web application running on Django 1.1 (beta), Python 2.5.4, SQLite Features locked; 1.1 is slated for April SQLite for development only; production will use MySQL All development done on my MacBook under Mac OS X TextMate, CSSEdit, Pages/Keynote/Numbers, OmniGraffle, GitHub
    36. 36. App architecture, design approach Model-Template-View (three-layer architecture) Models represent data access and definition Templates contain presentation logic Views contain business logic Similar to Model-View-Controller architecture Object-oriented design approach Python is object-oriented
    37. 37. Web browser URL controller Template layer View layer Model layer Database Marketer Open active leads page (/leads/marketer) Get active leads view Get active leads view Get active leads for marketer Get all active leads for marketer Marketer's active leads Marketer's active leads Template context for active leads Rendered active leads template Select active lead Get lead detail view Get lead detail view Get lead detail for lead #001 Get lead detail for lead #001 Lead #001 detail Lead #001 detail Template context for lead #001 Rendered lead detail template Update lead details, submit form Get update lead view Get update lead view Update lead #001 Update lead #001 Redirect to active leads template Template context for active leads Rendered active leads template Detailed sequence diagram Change lead status (for demonstration)
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×