1 / 13

Stanford GSB High Tech Club Tech 101 – Session 1

Stanford GSB High Tech Club Tech 101 – Session 1. Introduction to Software, Distributed Architectures, and ASPs Presented by Shawn Carolan Former Manager of Software Architecture, Open Port Technology February 22, 2001. Mission.

lotus
Télécharger la présentation

Stanford GSB High Tech Club Tech 101 – Session 1

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Stanford GSB High Tech ClubTech 101 – Session 1 Introduction to Software, Distributed Architectures, and ASPs Presented by Shawn Carolan Former Manager of Software Architecture, Open Port Technology February 22, 2001

  2. Mission To equip the MBA audience with a fundamental understanding of the software industry and its terminology in hopes that they’ll sound better in interviews, and have a better idea where to look for more information (highly recommended).

  3. Topics • What is software? • How it is developed? • And distributed systems? • Application Service Providers (ASPs) • Industry trends

  4. Applications Word, Excel, Quicken Application Programming Interfaces (APIs), Libraries Win32, ODBC, OpenGL Windows, Sun Solaris, Linux Operating System (OS) Intel x86, Sun Sparc, DEC Alpha Hardware What is Software? • Set of instructions: tells the hardware what to do

  5. Source Code Executable (Binary) Compiler How is Software Developed? • Assembly Code • Programming Languages (C, C++, Java) • Scripting Languages (Perl, Tcl, Shell) • Other programming “environments” (Application Servers, Visual Basic, etc.)

  6. How is Software Developed? • Product management – Helps gather customer and market requirements, prioritize features, negotiate schedules, position product, etc. • Programmers – Research available tools/libraries/components, plan software architecture, write source code, fix bugs/improve efficiency • Quality Assurance (QA) – Tries to break the software before it is release to customers. Find bugs. • Client Support – Interfaces with customers to help them solve problems and answer questions. Often file bugs.

  7. And Distributed Systems? Required for when applications scale past the capabilities of a single machine. • File Servers • Database Servers • Napster • The Internet!

  8. Application Presentation Session Transport Network Data Link Physical And Distributed Systems? The “Layered” Network Model HTTP, SMTP, SNMP, etc. TCP IP Optical, Copper Wire, Wireless

  9. And Distributed Systems? Ubiquitous Client/Server Application Domain Name Server (DNS) Client (Internet Browser) Server (Apache Web Server)

  10. And Distributed Systems? Napster, a peer-to-peer (P2P) application Napster Server (Holds Song to IP mapping) Napster User 1 (Client + Server) Napster User 2 (Client + Server)

  11. ASPs Classic client/server, but with much more complex server functionality (it runs the whole application!) Client 1 Server (session for 1, 2, 3) Client 2 Client 3

  12. ASPs Drivers Include • Company gets to focus on their core competency • Easy upgrades, access to latest technology • Eliminates heavy infrastructure costs • Scalability, availability, backups • Fewer IT personnel, developers

  13. Trends, Hot Fields • Outsourcing apps, infrastructure (ASPs, LoudCloud) • Outsourcing development (BaliCamp) • Proliferation of devices (IP v6) • Ad-hoc, often wireless networks (Jini) • Standard data exchange (XML) • Peer-to-peer applications

More Related