Application Development: Fly to the Clouds or Stay in-House? Stamatia Bibi1, Dimitris Katsaros2, Panayiotis Bozanis2 1Department of Informatics Aristotle University of Thessaloniki, Greece 2 Department of Computer & Communication Engineering, University of Thessaly 1http://sweng.csd.auth.gr 2http://www.inf.uth.gr/ WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece) Presentation outline Introduction Cloud Computing Costs Traditional Software and Systems Costs Decision Model Conclusions and Future work WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece) Introduction IT managers are recently faced with the problem of making a selection between cloud computing and on-premise development 2 questions – Quality? – Costs? Cloud computing costs – software-as-a-service – platform-as-a-service – infrastructure-as-a-service On-premise assets – IT infrastructure – Software development – Operation expenses WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece) Scope A framework for decision making – Costs – Quality – Demand level Example – A popular SaaS application is used as an example: CRM (Customer Relationship Management) WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece) Cloud computing utilities Software-as- aService (SaaS), Platform-as-a-Service (PaaS) and Infrastructure-as-a-Service (IaaS). Horizontal – subscription management software, mail servers, search engines and office suites Vertical applications – Accounting software, Management Information systems and Customer Relationship Management systems Subscription fees recorded in Service Level Agreements – licensing fees, maintenance and upgrade costs WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece) Cloud computing utilities Platform as a Service (PaaS) – Developer studios, tools to build a web application, runtime environment and management and monitoring tools Infrastructure as a Service – physical storage space and processing capabilities that enable the use of SaaS and PaaS – Hardware, servers and networking components are typical examples of IaaS PaaS and IaaS costs are usually interrelated – PaaS costs: usage of operating systems, database management systems, web hosting server software, batch processing software and application development environments – Usually costs of IaaS are calculated as on-demand instances per hour. number of servers, the operating systems and middleware applications loaded to them. based on CPU, memory and hard disk usage WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece) On premise software development Infrastructure Costs – Hardware – Networking Operational Costs – Floor – Electricity – Administration Development Costs – – – – Personnel Product Environment Process WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece) Decision Model 3 step decision model – Assess software and infrastructure development costs – Define quality characteristics – Estimate user demand WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece) Assess software and infrastructure development costs. CRM (Customer Relationship Management application) Cloud – Zoho, Salesforce – prices range from 12$ per month to 75$ per month, per user – 5 potential users that use a sublist of features charged 50$ per month the annual costs are calculated to be 3000$ On- premise – ISBSG (find mean values) 1867 total effort 181.5 function points 233 workdays 11,65 months 48242$ WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece) Define quality characteristics. Attribute Cloud On premise Reliability Continuity, better equipment Back- ups, disaster recovery Availability Instant, universal internet access Only on the company’s office Customization Limited Full control and flexibility Confidentiality Encryption, firewalls, VLANs. Data privacy, local in-house access to critical business data Interoperability Device independence Dependence on local systems and devices Maintenance Better and quickly addressed Intensive, time and cost consuming task Usability Require from users to possess Incorporates functionality and knowledge and experience features that the users are familiar with WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece) Estimate user demand. Seasonal demand – refers to sales and retails periods that usually present increased demand volume. (for the CRM) Temporary effect – may refer to clearance period or possible relocation that are seldom events that may cause extra demands Expected demands: – Batch processing may involve for the CRM a period that massive advertisements are shifted Unexpected demands – for the CRM may occur when a new product of the company becomes very popular unexpectedly WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece) Conclusions A first step towards: – identifying all relevant costs of cloud computing – on-premises infrastructure and software Proposed a three step decision model for evaluating the two alternatives. – Assess software and infrastructure development costs – Define quality characteristics – Estimate user demand WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece) Future Work Evaluate the proposed model on real world applications deployment and compare the three alternatives (cloud, on–premise, a combination of the two) based on data coming from both in-house development and cloud hosting In particular for the hybrid of the two worlds, we plan to elaborate on the cases where it is more profitable and derive appropriate “rules-of-thumb”, since we argue that this model will be the one that will finally dominate the market WETICE 2010, June 28 - June 30, 2010, TEI of Larissa (Greece)
© Copyright 2026 Paperzz