Web-Based Systems: Initial Questions




                     What is a Web-Based System?



                     How is it build?




dsbw 2011/2012 q1                                   1
What Is a Web-Based System?
 “A software system based on technologies and standards of
    the World Wide Web Consortium (W3C) that provides Web
    specific resources such as content and services through a user
    interface, the Web browser” (Kappel et al.)

 Therefore, this definition excludes:
         Web sites without software components (e.g. static HTML
          pages)‫‏‬
         Web services

 Web-Based System = Web Application




dsbw 2011/2012 q1                                                   2
Categories of Web-Based Systems

                                                    Ubiquitous
                                                                    Semantic-Web
    COMPLEXITY




                                                           Social-Web
                                         Collaborative

                                   Workflow-
                                    Based
                                                          Portal-
                         Transactional                   Oriented

                     Interactive

                 Document-
                  Centric

                                                   DEVELOPMENT HISTORY

dsbw 2011/2012 q1                                                                  3
Characteristics of Web-Based Systems
 Network intensiveness
       Internet
       Intranet

 Global reach and Unpredictability
         Who are the users?
               Usage patterns
               Backgrounds: language, culture, age, education, ...
         How many users?
               Potential / Occasional / Frequent users
               Concurrency: average, peaks
 Competition and Differentiation




dsbw 2011/2012 q1                                                     4
Characteristics of Web-Based Systems
 Space / Time
       Internationalization
       Location-aware services
       Availability

 Hypertext
       No-linearity
       Navigation

 Content-driven
       Document-centric
       Multimedia




dsbw 2011/2012 q1                      5
Characteristics of Web-Based Systems
 Look and feel
       Usability
       Accessibility
       Aesthetics



 Continuous Evolution



 Security




dsbw 2011/2012 q1                      6
Technologies for Web-Based Systems
 Web Standards
         HTTP, HTML, XML, CSS, etc
 Programming Languages:
         PHP, Javascript, Perl, Java, C#, etc
 Component Frameworks:
       J2EE: Servlets, JSP, EJB
       .NET: ASP.NET

 Web Frameworks:
       PHP: Symfony, Mojavi, CakePHP, Prado, etc
       Java: Struts, Spring, Tapestry, Turbine, Webworks, etc

 Security:
         Firewalls, Cryptography, Authentication
dsbw 2011/2012 q1                                                7
Web Engineering
 “Web Engineering is the application of systematic and
    quantifiable approaches (concepts, methods, techniques,
    tools) to cost-effective requirements analysis, design,
    implementation, testing, operation, and maintenance of high-
    quality Web applications”. (Kappel et al.)
 A Web Engineering Process must accommodate
       Incremental delivery
       Frequent changes
       Short timeline

 Therefore,
       An incremental process model should be used in virtually all
        situations (e.g. RUP)‫‏‬
       An agile process model is appropriate in many situations

dsbw 2011/2012 q1                                                      8
The Web Engineering Process

                                 Acceptance test         Coding
                                 Customer’s‫‏‬feedback     Component testing


             Release



                                                                              Design models

                                                                              Analysis models



                                                         Umbrella activites
Business analysis
Vision document                                        Change management
                      Iteration plan                   Quality assurance
                                                       Risk management
                                                       Project management

  dsbw 2011/2012 q1                                                                        9
Web Engineering: Techniques and Tools
 Communication among participants
         Formal/informal meetings, documentation, e-mail, demos,
          project management tools, etc.
 Requirements elicitation
         Communication with stakeholders, vision documents, use
          cases, CASE tools, etc.
 Modeling
         UML artifacts, design patterns, CASE tools, etc.
 Construction
         Programming techniques, code editors, compilers, version
          management, installers, IDE, open source code, etc.
 Testing
         Strategies, tools, etc.
dsbw 2011/2012 q1                                                    10
Web Engineering: The People
 Domain experts
 Content developers/providers

 Web editors

 Web engineers: We!



 Support team
         System evolution: patches, adaptations, improvements
 Administrator (webmaster)‫‏‬
         Statistics, tuning, security, etc




dsbw 2011/2012 q1                                                11
References
 R. G. Pressman, D. Lowe: Web Engineering. A Practitioner’s
    Approach. McGraw Hill, 2008. Chapters 1-2.


 KAPPEL, Gerti et al: Web Engineering. Wiley, 2006. Chapter 1.




dsbw 2011/2012 q1                                              12

Unit 01 - Introduction

  • 1.
    Web-Based Systems: InitialQuestions  What is a Web-Based System?  How is it build? dsbw 2011/2012 q1 1
  • 2.
    What Is aWeb-Based System?  “A software system based on technologies and standards of the World Wide Web Consortium (W3C) that provides Web specific resources such as content and services through a user interface, the Web browser” (Kappel et al.)  Therefore, this definition excludes:  Web sites without software components (e.g. static HTML pages)‫‏‬  Web services  Web-Based System = Web Application dsbw 2011/2012 q1 2
  • 3.
    Categories of Web-BasedSystems Ubiquitous Semantic-Web COMPLEXITY Social-Web Collaborative Workflow- Based Portal- Transactional Oriented Interactive Document- Centric DEVELOPMENT HISTORY dsbw 2011/2012 q1 3
  • 4.
    Characteristics of Web-BasedSystems  Network intensiveness  Internet  Intranet  Global reach and Unpredictability  Who are the users?  Usage patterns  Backgrounds: language, culture, age, education, ...  How many users?  Potential / Occasional / Frequent users  Concurrency: average, peaks  Competition and Differentiation dsbw 2011/2012 q1 4
  • 5.
    Characteristics of Web-BasedSystems  Space / Time  Internationalization  Location-aware services  Availability  Hypertext  No-linearity  Navigation  Content-driven  Document-centric  Multimedia dsbw 2011/2012 q1 5
  • 6.
    Characteristics of Web-BasedSystems  Look and feel  Usability  Accessibility  Aesthetics  Continuous Evolution  Security dsbw 2011/2012 q1 6
  • 7.
    Technologies for Web-BasedSystems  Web Standards  HTTP, HTML, XML, CSS, etc  Programming Languages:  PHP, Javascript, Perl, Java, C#, etc  Component Frameworks:  J2EE: Servlets, JSP, EJB  .NET: ASP.NET  Web Frameworks:  PHP: Symfony, Mojavi, CakePHP, Prado, etc  Java: Struts, Spring, Tapestry, Turbine, Webworks, etc  Security:  Firewalls, Cryptography, Authentication dsbw 2011/2012 q1 7
  • 8.
    Web Engineering  “WebEngineering is the application of systematic and quantifiable approaches (concepts, methods, techniques, tools) to cost-effective requirements analysis, design, implementation, testing, operation, and maintenance of high- quality Web applications”. (Kappel et al.)  A Web Engineering Process must accommodate  Incremental delivery  Frequent changes  Short timeline  Therefore,  An incremental process model should be used in virtually all situations (e.g. RUP)‫‏‬  An agile process model is appropriate in many situations dsbw 2011/2012 q1 8
  • 9.
    The Web EngineeringProcess Acceptance test Coding Customer’s‫‏‬feedback Component testing Release Design models Analysis models Umbrella activites Business analysis Vision document Change management Iteration plan Quality assurance Risk management Project management dsbw 2011/2012 q1 9
  • 10.
    Web Engineering: Techniquesand Tools  Communication among participants  Formal/informal meetings, documentation, e-mail, demos, project management tools, etc.  Requirements elicitation  Communication with stakeholders, vision documents, use cases, CASE tools, etc.  Modeling  UML artifacts, design patterns, CASE tools, etc.  Construction  Programming techniques, code editors, compilers, version management, installers, IDE, open source code, etc.  Testing  Strategies, tools, etc. dsbw 2011/2012 q1 10
  • 11.
    Web Engineering: ThePeople  Domain experts  Content developers/providers  Web editors  Web engineers: We!  Support team  System evolution: patches, adaptations, improvements  Administrator (webmaster)‫‏‬  Statistics, tuning, security, etc dsbw 2011/2012 q1 11
  • 12.
    References  R. G.Pressman, D. Lowe: Web Engineering. A Practitioner’s Approach. McGraw Hill, 2008. Chapters 1-2.  KAPPEL, Gerti et al: Web Engineering. Wiley, 2006. Chapter 1. dsbw 2011/2012 q1 12