1 Contact details 1 Managing Partner ALT-F1 SPRL/BVBA Abdelkrim W: M: +32 (0)
2 Où suis-je? Université de Lille 1 MA Informatique 2 Le Master informatique est composé de plusieurs spécialités : E-services (Conception d'applications Web et Mobile), IAGL (Conception et architecture logiciel), TIIR (Systèmes, Réseaux, Sécurité), MOCAD (IA et Analyse des grands volumes de données) et IVI (Imagerie, 3D)
3 Experiences 3 ALTI International S.A. (1998) Mediagenix S.A. (Feb 2001) Bulle internet Digital Age Design S.A. (Sept 2001) -> LBi Group Unisys Belgium S.A. (2007) Crise bancaire ALT-F1SPRL (Oct. 2010)
4 Alt-f1.be 4 Group of entrepreneurs Business Intelligence Project Program Portfolio management Coaching Marketing & Web Marketing Strategy Quality Assurance R&D Cloud computing Lean manufacturing (Optimisation)
5 Expectations 5 le sujet puisse dans la mesure du possible parler de problématiques intéressant le plus grand nombre de nos étudiants, mais nous aimerions avant tout profiter de votre longue et diverse expérience professionnelle Vous écouter
6 6 Case study Paran Yo, the place where we can share the world!
7 7 Paran Yo, the place where you can share the world!
8 8 Paran Yo Where do I start? The methods
9 V-Model (software development) 9 Requirements analysis Determining the needs or conditions to meet for a new or altered product, taking care of the conflicting requirements of the various stakeholders User Acceptance Testing System Design Defining the architecture, components, modules, interfaces, and data System Testing Architecture Design Defining the architecture, components, modules, interfaces, and data Integration Testing Design independent, interchangeable collection of procedures and other values Module Design Unit Testing Source code
10 Methods - Requirements analysis 10 Rational Unified Process FURPS Functionality Usability Reliability FURPS+ design constraints implementation requirements interface requirements physical requirements Performance Supportability
11 technical & non tech. requirements 11 Legal requirements Data privacy, SOX Regulatory reqs Solvency II, Basel III Policy Computer security Recommandations W3C, IETF (RFC, Internet Standards) Standards HTML, UNICODE, ISO, ECMA, IANA, Java Specification Requests Non-standards Silverlight, Flash, XUL
12 Methods Naming convention 12
13 Methods - Enterprise architecture 13 Data architecture Security architecture Strategy architecture Business architecture Application architecture Technical / Infra architecture
14 IAGL (Conception et architecture logiciel) 14 Software engineering Architecture n Service Oriented Architecture (SOA) n Web Services using SOAP / REST Programming paradigm n Aspect-Oriented programming n XP Extreme Programming Software development process n Test-Driven Development n Continuous integration Code generation
15 IAGL (Conception et architecture 15 logiciel) App server middleware Java EE.NET Architecture SCA (isn't dead?) Enterprise Service Bus Frameworks Hibernate Spring Struts Java Server Faces (JSF)
17 IAGL (Conception et architecture 17 logiciel) Database design Backus-Naur Form 1 st -2 nd -3 rd Normal Form Database engine Oracle, MySQL NoSQL: MongoDB Security See next slides
18 Methods - Enterprise architecture 18 Data architecture Security architecture Strategy architecture Business architecture Application architecture Technical / Infra architecture
19 TIIR (Systèmes, Réseaux, Sécurité) 19 Network and system security through crypto, VPN, IPSec, OWASP-10 Infrastructure and Frameworks Distributed algorithms (MongoDB) Architecture and Network technologies like Wi-Fi, TCP/IP, ATM
20 Security analysis 20 Security and Organisational Control Requirements - Collaboration private B public Cross-Organisational Workflow A - Transactions A public B private - Basic Security Services - Rights Management - Privacy public B private A R4eGov project
21 Security analysis 21 Security and Organisational Control Requirements ACID-Properties - Collaboration - Transactions - Basic Security Services - Rights Management - Privacy Advanced Transaction Models Coordination Pivot, Compensate, Retry Enforcement (of steps) Mixed/Atomic Outcome Time constraints R4eGov project
22 Security analysis 22 Security and Organisational Control Requirements - Collaboration - Transactions - Basic Security Services - Rights Management - Privacy Confidentiality Data Integrity Authentication Non-Repudiation Time Stamping Traceability / Structured Proof Assurance R4eGov project
23 Security analysis 23 Security and Organisational Control Requirements - Collaboration Access Control - Transactions - Basic Security Services - Rights Management - Privacy Delegation Separation of Duties Revocation Obligation of Duties R4eGov project
24 Security analysis 24 Security and Organisational Control Requirements - Collaboration - Transactions - Basic Security Services - Rights Management - Privacy Anonymity / Pseudonymity Data Control / Obligation Management Unlinkability / Unobservability R4eGov project
25 MOCAD (Modèles complexes, 25 algorithmes et données) Design methodologies Multi-criteria Decision Aid method: PROMETHEE Forecast: Moving Average, Winters Exponential smoothing
26 MOCAD (Modèles complexes, 26 algorithmes et données) Big Data analysis Web pages Social networks Domain based information n Justice Geolocation Electronic documents
27 Development Lifecycle 27 Use case agreement Deployment Technical requirement proposal Testing Software development
28 28 E-services Web & Mobile application design
29 Evolution: unified communications & technology years ago, different devices for almost every type of interaction Now, all interaction types integrated in one device
30 E-services (Web & Mobile app design) 30 Web browser Chrome (34%) IExplorer (32%) Firefox (24%) Safari (7%) Opera (2%) Mobile (8%) Source: (July 2012) Mobile browser Android (23%) iphone (21%) Opera (20%) Nokia (10%) BlackBerry (5%) ipod touch (4%) Source: (July 2012)
31 Android Dashboard 31 Source:
32 32 Vocal interfaces Multi-touch interfaces
33 33 use of computing resources delivered as a Service over a network Cloud computing or disguised Application Service Provider?
34 Infrastructure as a Service (IaaS) 34 to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software consumer DOES NOT manage or control the underlying cloud infrastructure but has control over [it] possibly limited control of select networking components (e.g., host firewalls) Source: Mell, P., & Grance, T. (2011, September). The NIST Definition of Cloud Computing. Gaithersburg, Maryland, U.S.A.: National Institute of Standards and Technology.
35 Platform-as-a-Service (PaaS) 35 to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages and tools supported by the provider The consumer DOES NOT manage or control the underlying cloud infrastructure [but consumer] but has control over the deployed applications and possibly application hosting environment configurations Source: Mell, P., & Grance, T. (2011, September). The NIST Definition of Cloud Computing. Gaithersburg, Maryland, U.S.A.: National Institute of Standards and Technology.
36 Software-as-a-Service (SaaS) 36 to use the provider s applications running on a cloud infrastructure The applications are accessible from various client devices through a thin client interface such as a web browser (e.g., web-based ) The consumer DOES NOT manage or control the underlying cloud infrastructure with the possible exception of limited user-specific application configuration settings Source: Mell, P., & Grance, T. (2011, September). The NIST Definition of Cloud Computing. Gaithersburg, Maryland, U.S.A.: National Institute of Standards and Technology.
37 Cloud-as-a-Service (I/P/SaaS) 37 IaaS PaaS SaaS Amazon Elastic Compute Cloud Google infrastructure Microsoft Cloud infrastructure Rackspace Computer Sciences Corporation Terremark Bluelock Savvis processing, storage, networks Google App Engine Heroku Engine Yard AppScale Consumer created or acquired applications processing, storage, networks Google Apps Salesforces Zoho Office365 - Hotmail Provider s applications Consumer created or acquired applications processing, storage, networks
38 38 Paran Yo How much does it cost to deliver value to your customer?
39 15$/1 million views without 39 business complexity
40 Architecture -15$/1 million views 40 without business complexity Memcache transient Memcached API DataStore persistent GQL Query Object Python 2.5 Services: TaskQueue, Mail, Image, Fetch, Users Internet User
41 Architecture -15$/1 million views 41 without business complexity Google analytics Google charts OpenId 2.0 Users api Webapp1 APIs libraries GAE SDK 1.6.5
42 Architecture -15$/1 million views 42 without business complexity Datastore Bootstrap Twitter CSS 3 HTML 5 Django 1.2 (MTC) Model View Controller 10/05/2012
43 Architecture -600$/1 million views 43 without business complexity
44 GAE Application: How to budget the 44 deletion of 5000 records in a table? how to compute the cost of deleting 5000 records from a table containing five columns of string type. We assume that each column is indexed and there is no composite index.
45 60$/1 million views with business 45 complexity
46 60$/1 million views with business 46 complexity
47 Architecture - 60$/1 million views 47 with business complexity Datastore Bootstrap Twitter jquery CSS 3 HTML 5 Django 1.2 (MTC) Model View Controller 10/05/2012
48 48 The importance of the standards Legal, regulations, investigations and compliance
49 I used to be blind, now I see! 49
50 Architecture - 7$/1 million views 50 with business complexity Google analytics Google charts OpenId 2.0 Users api Webapp2 APIs libraries GAE SDK /05/2012
51 51 Paran Yo Technical summary
52 Case study: Paran Yo 52 Cloud computing Platform-as-a-Server (PaaS) High availability Scalability Google App Engine NoSQL Creational design patterns Abstract factory Lazy initialisation (jquery) Structural design patterns Decorator (Python) Front controller (app.yaml) Behavioral pattern Chain of responsibility (url patterns) Iterator Mediator (middleware django) Architectural pattern Model-View-Controller
53 Technical specifications 53 Webapp2 python2.7 WTForms Tech spec GAE SDK datastore Bootstrap Twitter Google analytics Google charts Python Image Library (PIL) Memcache TaskQueues OpenId 2.0 Django 1.2 jquery Users api
54 Be carefull, «walking in my shoes» 54 All previous slides are useless if you don t know what your customer wants! Public/Private company Individuals Handicap Culture
55 55 Incomes - Earnings We have talked about the costs, now let s see how to make money?
56 On internet, how to earn money? 56 Subscription fees Free + Advertising Freemium Premium Open Source model Free software but support is invoiced Brokerage fees Affiliates Amazon associates itunes Connect Google AdSense ebay affiliates Online advertising Ancillary revenues
57 57 Almost the end Tips
59 Tips 59 Have you developed a proof of concept... using a complex use case... running under the selected software architecture?
60 Tips 60 Read the financial reports investor.google.com - investor.fb.com Check slideshare.net Find valuable documents with Google with filetype:pdf pptx xlsx etc. Register to (but expensive) safaribooksonline.com books24x7.com getabstract.com
61 Tips 61 Develop a mindset, adapt to change, work in team Speak like a business man, code like a geek Put in place an Escrow, Backup strategy & Source Control first Do not set the automatic updates Document briefly your code but extensively your architecture and processes Focus on innovation and how to bring value to the business using your IT knowledge
62 Tips 62 Integration projects are key Be bold in technologies applicable in multiple domains Don t try to become a project manager nor a business analyst (it s boring) Facilitate the life of your users, they are always right!
63 Project manager 63 Run Forest, Run! (after the others) Value and report on Risk, EAC, ETC, Actuals, delays, changes Learn what is important for the business (P&L)
64 64 Who want to be a millionaire Break the stereotypes 29 November 2012
65 Apple and its closed architecture 65 Data architecture Security architecture Strategy architecture Business architecture Application architecture Technical / Infra architecture Impact of the App store for the developer?
66 Questions 66 What is the minimum daily rate you should be sold just after your graduation (in Belgium)? Who earns the best salary (5 years experience) A. Software developer (Java,.NET, etc.) B. Visual Basic developer for Soft architecture
67 Questions 67 in 2006, for a net salary of EUR, you cost EUR in Belgium EUR in the Netherlands EUR in UK EUR in Luxembourg
68 Questions 68 in 2006, for EUR net increase, you cost EUR in Belgium EUR in the Netherlands EUR in UK EUR in Luxembourg
69 Keep this in mind 69 How can IT capabilities support business strategy? How can business strategy be created/transformed through IT?
70 Q&A 70 Managing Partner ALT-F1 SPRL/BVBA Abdelkrim W: M: +32 (0)