Index
Space Index
| --- | --- | --- | --- | --- | --- | 0-9 ... 1 | A ... 32 | B ... 8 | C ... 59 | D ... 35 | E ... 21 | F ... 9 | G ... 10 | H ... 23 | I ... 13 | J ... 39 | K ... 2 | L ... 13 | M ... 35 | N ... 2 | |||||||||||
| 0-9Page: 4 plus 1 View Model Introduction The 41 View Model of Software Architecture is probably the most commonly used methodology for documenting software architecture. It was introduced by Philippe Kruchten in 1995 in the article Architectural Blueprints — The "41" View Model of Software Architecture http://www.cs.ubc.ca/gregor/teaching ... | APage: A brief history lesion on why we have got HTML5. Page: A custom performance testing framework Drivers/goals Browser/environment independent modus Resource efficient Ajax support Http session (e.g. login) support Possible to automate statistics and report generation Possible to deduct changes in performance over time Possible to debug when something ... Page: About failing agile projects http://globalnerdy.com/wordpress/wpcontent/uploads/2007/11/dilbertagileprogramming.gif! There's a trend in the blogosphere showing an increasing number/percentage of agile projects failing. We believe that the reason for this is quite simply that many projects are attempting to use agile methods. Some of these can be expected ... Page: Abstract Do you want to simpelfy the writing of tests? Do you want to make testing easier? Ever avoided writing tests because the tests were too hard to write? In this presentation we will show you how to test write, simple ... Page: Advanced Spring configuration Drivers The generated artifact should be the same regardless of the target environment. This means that any deployment configuration must be runtime, not buildtime. Keep configuration as close to the bean that needs it as possible. Selfconfiguring beans should be preferred. Minimize the number of properties that must be set ... Page: Agenda - Final Final as in the standing plan at any given time... B Bruce, R Robert, D Dylan, T Trygve 19:00: Welcome Resp Type Duration Topic 1 T Talk 30 An overview of what we developers struggle with today ... Page: Agenda and CASE Page: Agile What is Agile? A description of agile in general. In our words, agile is a culture on many levels that allows change for the better, meaning more value as it is specified the manifesto. At the community level Agile Communities, our industry celebrates and recognizes organizations and individuals that provide ... Page: Agile 2.0 An reflection on agile (postagilism). Agile 2.0 (aka Smidig 2.0) was an initiative a few years ago where we (Objectware) attempted to counter the negative reactions around failing agile projects. In essence, Agile 2.0 is actually just ... Page: Agile 2.0 in the real world (TBA) Title One idea: How we successfully rewrote the entire core of a big distributed system an experience report from the real world Highlight Summary Project mandate: Complete rewrite of major parts of a big, distributed system. Necessary ... Page: Agile Communities Agile communities/industries celebrate and recognize organizations and individuals that provide more value. Good signs: Annual conferences on topics of software development Weekly meetups (No fluff, just stuff kind of things) Alot of interchanging knowledge between corporations ... Bad ... Page: Agile Individuals Agile developers keep their work transparent and take pride in their craftmanship. They remain loyal to their Programming Ethics and strive to work more efficiently. When it comes to it, this level of agile is what it's all about. Most of the litterature focuses on the individual level, so we ... Page: Agile Maturity Agile software development is all about frequent delivery of products Each tactic has a positive value/cost ratio by themselves. Used together with other tactics and strategies it is possible to gain a lot more value. A sideeffect/synergyeffect is the feedbackloops (see ... Page: Agile Maven quickstart Set up Enterprise Maven Infrastructure This step is actually a precondition. Without the Enterprise Maven Infrastructure the following steps won't make sense. See Maven Infrastructure Set up a "Mavenfriendly" file structure in your version control system For Subversion ... Page: Agile Mindset and Methodology Agile Mindset Understanding agile is not easy. It is a process of learning it by imitating the existing practices, doing it and learning what works, and finally mastering it, understanding the values behind it, and delivering good software on time again and again. We do not claim to have mastered ... Page: Agile Organizations Agile organizations measure and reward software development that returns longterm value and costefficiency. Good signs An infrastructure that doesn't make people shave yaks Software transparency in their infrastructure, like: Wiki Maven Infrastructure Code inspection (FishEye) Continous ... Page: Agile Project Communication Intro Agile communication Which softwarestack is needed to support the agile methodologies we want to use? Wiki, jira and email lists ( Scrumworks?) SinglePointofEntry to the documentation above, plus Maven site and test & build history Implementation recommendations Email lists ... Page: Agile Project Management vs Agile Product Management Note that these opinions, like many others on this wiki, are not results of empirical research, but rather deducted from common sense. Subject them to reasoning specific to your own context and situation. Many organizations starting off with agile choose a project as the sandbox ... Page: Agile projects and contracts Standard contract name Agile guidelines PS 2000 http://dataforeningen.no/mglrW0g.ips tba xyz tba H3. Comments Home page: Agile Software Development Home Introduction The purpose of this wiki is to create processes, techniques and technology which, in combination, will provide cost efficient and easytoadopt bootstrapping environments. The starting point is agile methodology, but the focus is to solve the challenges in the enterprise under realistic conditions. By this we mean extending/strengthen ... Page: Agile Tragedy - the agile practitioner visits the wine store Presentation Downloads Page: An overview of what we developers struggle with today and how HTML5 can solve parts of those. I et input interface vi har i dag endel utfordringer vi i dag kan begynne å håndtere på en skikkelig måte. La oss ta et enkelt eksempel som et blog ... Page: Android Build Android projects with Maven Android emulator howto Page: Android emulator howto Install android JDK # Set up virtual device ## android list avd ## emulator avd vDeviceName ## emulator avd vDeviceName wipedata # Install application ## adb install r someApp.apk # Use ddms for debugging. Resources Using the Android Emulator ... Page: Articles worth reading page contains articles worth reading for people working in the software industry. Classics The Cathedral and the Bazaar by Eric Raymond Programming as Theory Building by Peter Naur Notes on structured programming by Edsger Dijkstra The humble programmer by Edsger Dijkstra Go To Statement ... Page: assembly.xml to create zip with support for config_override assembly xmlns="http://maven.apache.org/plugins/mavenassemblyplugin/assembly/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance" xsi:schemaLocation="http://maven.apache.org/plugins/mavenassemblyplugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly1.1.0.xsd"> |
||||||||||||||||||||||||||||||
| BPage: Backlog agile todolist. The backlog should be a pretty familiar concept to most agile practioneers. Although it most commenly used in Scrum, all methods have some notation of a backlog. The product backlog is simply the team's todolist. Some teams prefer to eliminate ... Page: Basic configuration tactics Arguments, variables, options and properties The traditional approach to make an application is to extract relevant properties and put them in external property files. Setting environmental variables or commandline arguments are two other approaches. The following table gives an overview ... Page: Basic error handling Immediate Caller A method foo calls method bar which detects an error. The possible errors detected by bar should be documented and foo may be able to recover or ignore some of them, based on the specific kind of error. If it can't, it ll ... Page: Bridging the gaps-backward compatibility Toolkits and Gaps Slides http://www.slideshare.net/dylanks/html5codecamptoolkits Page: Build Android projects with Maven Dev env requirements: # Follow http://code.google.com/p/mavenandroidplugin/wiki/GettingStarted # Install platforms: android update sdk noui obsolete force # Install 32bit libs if you use 64bit OS: sudo aptget install ia32libs Page: Build C (plusplus) code for multiple platforms with Maven Project description We have a C project and cannot standardize the GCC http://gcc.gnu.org/ version of the runtime environment. This means that we must build binaries for each target platform. This gives us the following two dimensions: 32 and 64 bits ... Page: Build pipeline Page: Builder project One of the reasons why some people cling to the "Everything in one project" approach is that it is convenient to build all code with a single command. This convenience can also be achieved with a so called builder project ("samlepom" in Norwegian). Create a new, empty pom ... | CPage: C++ i686 pom project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/mavenv400.xsd"> Browse and upload multiple files in one go by holding down Ctrl (Windows, Linux) or Command (Mac) when clicking on them in the file dialog. Information about the uploaded files will be listed below. NOTE ... Page: Complete code example in demo h2>File upload Browse and upload multiple files in one go by holding down Ctrl (Windows, Linux) or Command (Mac) when clicking on them in the file dialog. Information about the uploaded files will be listed below. NOTE ... Page: Conditional requests Buy the book! (in paper copy) RESTful Web Services Cookbook: Solutions for Improving Scalability and Simplicity https://www.amazon.com/RESTfulWebServicesCookbookScalability/dp/0596801688/ref=sr11?ie=UTF8&qid=1510319582&sr=81&keywords=RESTfulWebServicesCookbookbySubbuAllamaraju&dpID=51vmsDXxxrL&preST=SX218BO1,204,203,200QL40&dpSrc=srch ... Page: Configuration Categorization Matrix Support different dimensions of configuration Startup 1 Resource/ext. service setup 2 Usage/Tuning 3 Global Environment Application Node 1 Startup configuration: java options, Environment Variables 2 Setup configuration (addresses ... Page: Confluence Documentation Template Draft quality! This template is based on the 4 plus 1 View Model. This is a work in progress and the template is not as a silverbullet, but as a starting point when documenting a system using Confluence wiki. System Architecture Logical View Physical View Process View Scenario ... Page: Confluence resources Export a space exportingaconfluencespaceasawebsite http://cwiki.apache.org/DIRxDEV/exportingaconfluencespaceasawebsite.html Must use "Default" theme to be able to change layouts. See CONF13221 http://jira.atlassian.com/browse/CONF13221 for more information. Modifying Confluence Layouts Using Custom Decorators http://confluence.atlassian.com/display/CONF20/ModifyingConfluenceLayoutsUsingCustomDecorators ... Page: Confluence-based Documentation Release Write documentation according to Confluence Documentation Template. Update documentation (check especially the references to Maven artifacts) Export documentation to html http://confluence.atlassian.com/display/DOC/ConfluencetoHTML Check it into a Version Control System http://en.wikipedia.org/wiki/Revisioncontrol Page: Continuous Deployment Automatically deploy the latest changes. Continuous Deployment A process that detects new releases into your software repo. Essentially, each time this process detects a new artifact, it will attempt to deploy it to a specified environment. Typically, this is applied in organizations where users want ... Page: Continuous Deployment Diagram Page: Continuous Integration Automatic build and integration. Principles To fix a broken build must always have highest priority. Otherwise, most of the benefit of doing continuous integration is lost. Integrate often http://www.extremeprogramming.org/rules/integrateoften.html When deciding which product to use ... Page: Control at System level achieve control at the system level is much harder than control at the application level. Unlike the application level, the system level cannot be specified completely. The reason is that control at the system level is all about trust and confidence. How much control do ... Page: Control at Systems level When the entire organization is comfortable with automated upgrades of your system things are really looking good. However, to achieve frequent deployments to production you must also be comfortable that the integration with external systems will work. Systems Integration Test SysAdmin Production ... Page: Control at the application level achieve control at the application level the following concepts must be in place: Traceability (EMI Maven Infrastructure) (/) Source code version control Artifact versioning Artifacts can be configured runtime. (/) Nonsensitive, default values may be included in the artifact, BUT it must be possible ... Page: Control state possible to write tests that verify that a service work even though it has a dependency on some external environment. Integration with a database, a JMS server, reading files from file system or a remote share are typical examples of external environment. All these services ... Page: Conventions for org IaM Security paradox Most companies define the HR system as the IaM master source Most companies outsource the HR system and many HR functions the IaM master is outside the company's control... Some reflections HR system is master for users ... Page: Copy of Timeline Timeline describes the coupling between JigZaw test model and agile development methodology and related concepts as Continuous Integration (CI) and continuous production. In other words, when should a certain group of tests be run and who is responsible for executing them. Timeline ... Page: CORS Learn What is CORS? http://www.w3.org/wiki/CORSEnabled#WhatisCORSabout.3F https://developer.mozilla.org/enUS/docs/Web/HTTP/AccesscontrolCORS#Preflightedrequests Browser support: http://enablecors.org/client.html. What about security? https://code.google.com/p/html5security/wiki/CrossOriginRequestSecurity How to set ... Page: CouchDB Simple hosted JSON DB for mobile and js apps CouchDB Simple hosted JSON/REST DB for mobile/.js apps http://cloudant.com offers free hosting of CouchDB instances which are trivial to get started with and provides a decent REST interface from which one can replace with other ... Page: Crystal Clear Alistair Cockburn's agile method. http://en.wikipedia.org/wiki/CrystalClear(softwaredevelopment) http://alistair.cockburn.us/Crystalmethodologiesmainfoyer http://www.amazon.com/exec/obidos/ASIN/0201699478 Page: CSRF What is CSRF CSRF is an attack where the attacker tricks the users browser to make a request to the target. For more information of how it works see: http://en.wikipedia.org/wiki/CSRF http://www.owasp.org/index.php/CrossSiteRequestForgery The picture above tries to illustrate ... |
||||||||||||||||||||||||||||||
| DPage: Daily Standup meeting daily gettogether ceremony. In Scrum, this is called "the daily Scrum". The point is to gather the team together for a short (10 minutes or less) facetoface meeting, standing up. Normally, the team makes a round where each team member presents the following: # What ... Page: Data-driven testing Datadriven testing http://en.wikipedia.org/wiki/Datadriventesting is a wellknown concept and many different implementations exists. When to consider datadriven testing? # A mature API exists and the data format is fairly static. # The test itself is simple. # Big variation of input data ... Page: Database tests Page: Database versioning How to track and control changes to databases? Versioning and sorted changes You should have the complete schema in its latest version. You will also have changes separate, and they must be stored in a sequenced way. Database changes is not mutual independent. Release ... Page: Debug log Debug logging is a tool for software developers to determine the cause of an error. Should never be enabled by default in production environments. Verbose as much context as possible (e.g. stack traces) Technical does not need to be user friendly Must contain a reference ... Page: Definition of Done Definitions and suggestions for enforcement. Different definitions of Done Scrum Alliance What is DoD? http://www.scrumalliance.org/articles/105whatisdefinitionofdonedod Agile Software Development DoD http://agilesoftwaredevelopment.com/2006/05/definitionofdone Agile faq What is DoD? (example) http://agilefaq.net/2007/10/24/whatisdefinitionofdone/ How to enforce ... Page: Delivery Team 1 Files Everything in a zip file FRONT:Delivery Team 1group1blogsbu.zip The HTML file we presented FRONT:Delivery Team 1presentedversion.html (also shown below) Beta version with some additions that didn't work too well FRONT:Delivery Team ... Page: Delivery Team 2 Code http://github.com/leftieFriele/h5oteam2 http://github.com/lacostej/h5oteam2 App http://totalworldannihilation.org/cc/blog.html Page: Delivery Team 3 Please go to Google code to download our project http://code.google.com/p/html5codecamp3 Page: Delivery Team 4 See http://github.com/ivarconr/html5codecamp Page: Deploy application with Java Network Launching Protocol (JNLP) Which applications implements JNLP? Java Web Start What is Java Web Start? What is Java Web Start? http://java.sun.com/j2se/1.5.0/docs/guide/javaws/developersguide/faq.html#101 Why should I use Java Web Start ... Page: Deploy application with native packages Create unix packages We recommend using Unix Maven Plugin http://mojo.codehaus.org/unix/unixmavenplugin/ to generate native packages (pkg, deb, rpm) for the Unix platform. See Available native package systems for other plugins and available Windows ... Page: Deploy AWS Lambda What # Build über jar (jar with all dependencies) file and upload to Maven artifact repository # Download jar file and upload to S3. # Deploy lambda Strategy for DevTest, Systest and Prod environment We support three environments; Devtest, Systest ... Page: Deploy to different environments Problem description Projects are often deployed to multiple different environments. By "deploy" we do not mean the process of publishing an artifacts to a repository, but deploying an application to for example a application, portlet, or servletcontainer or just installing the application in the staging or production environment ... Page: Deploy to different environments - run-time Runtime approach The goal is to avoid building artifacts for different environments. This problem can be divided into the following subproblems: Make the application environmentindependent. I.e., by default is should not have any dependencies to external systems. Use property files from classpath to override ... Page: Deploy zip to artifact repo with grunt-maven-tasks Configure gruntmaventasks Release and deploy is supported, but only for zip files, not jar. Install npm install gruntmaventasks savedev Add to grunt.initConfig({ section in GruntFile.js: maven: { options: , deploy: { options: , src: '', '!nodemodules/' }, release: { options: , src: '', '!nodemodules/' } } grunt.loadNpmTasks('gruntmaventasks ... Page: Deployment and Configuration Strategies JaMaCU Deployment Strategy Multienvironment Configuration and Deployment Strategy Important challenge: How to bridge the gap between Operations and Development Resources Logging Monitoring Deployment and Configuration Products Configuration Categorization Basic configuration tactics JAU:ConfigService sysadm ... Page: Deployment and Configuration Products commonsdaemon (JSVC) http://commons.apache.org/daemon/jsvc.html appassemblermavenplugin http://mojo.codehaus.org/appassembler/appassemblermavenplugin/ Assembles the artifacts and generates bin scripts for the configured applications mavenassemblyplugin http://maven.apache.org/plugins/mavenassemblyplugin/ Open Source Installers Generators in Java http://javasource.net ... Page: Deployment strategies Questions / abstract Define relevant terminology and concepts to establish a common baseline for discussion. Compare pros and cons of the 23 most relevant deployment strategies. Lessons learning from using Ansible is perhaps one of them? Remember to define scope of responsibility ... Page: Developers - Error handling concerns in service or component systems fact that error handling is often the lowestpriority concern is doubly weird if you consider that crosscomponent error handling is the same concern as core functionality messaging. In both cases there are the same sets of concerns, both with regards to communication with external components and interaction between ... Page: DevOps Recommended reading http://blog.torresdal.net/2013/02/25/introducingcondep/ GitHub project https://github.com/Cantara/devops.git Page: DevOPS and NoOPS comparision http://www.infosecisland.com/blogview/20869UnderstandingDevOpsvsNoOps.html http://blog.appfog.com/whatisnoopsanyhow Page: Diagram Software Gliffy http://www.gliffy.com Gliffy Confluence Plugin http://www.gliffy.com/confluencePlugin/ Enterprise Architect http://www.sparxsystems.com.au/products/ea/index.html Poseidon http://www.gentleware.com/products.html Visio Any other drawing tool like Dia http://projects.gnome.org/dia ... Page: Distributed Revision Control new loud. TODO: Write more about the awesomeness of DRC. Resources General DRC Wikipedia: http://en.wikipedia.org/wiki/Distributedrevisioncontrol Git The Git Community Book: http://book.gitscm.com/ Pro Git Book: http://progit.org/book/ A tour of git ... Page: Dive and conquer tactics Tactics This paragraph will explain how we can apply the JigZaw Multidimensional Test Categorization to discuss and choose different types of tests. Loose coupling between endpoint and service The coupling between a service and endpoints can be said to be loose if it is possible to test ... Page: Divide and conquer Divide et impera architecture, implementation and tests In JigZaw context, "Divide and conquer" is the concept of dividing a problem into subproblems until we know how to solve them. This is a wellknown technique for handling something complex and/or complicated. This principle is the cornerstone of the test strategy ... Page: Docker https://www.docker.com/ https://www.amazon.com/s/ref=srnrpnfeatureninebro0?fst=as%3Aoff&rh=n%3A283155%2Ck%3Adocker%2Cpnfeatureninebrowsebin%3A3291437011&keywords=docker&ie=UTF8&qid=1467967970&rnid=3291435011 Page: Documentation 4 plus 1 View Model Page: Documentation Release Overview Documentation can be written in a number of formats. We have chosen to separate between WYSIWYG files (e.g. MS Word), compiled text (e.g. LaTeX) and wikibased documentation. The table below might help you to choose. Feature Confluence ... Page: Documentation team 4 Forms | EPage: Embedded ActiveMQ JMS Server (Spring) Start nonpersistent ActiveMQ JMS server before each test method and shut it down after. Use xbean and spring for simple configuration. The test groups annotation is a TestNG concept to group execution of tests. Test parent See EmbeddedJmsServerParent src ... Page: EmbeddedJmsServerParent import org.apache.activemq.broker.BrokerFactory; import org.apache.activemq.broker.BrokerService; import org.apache.activemq.broker.jmx.BrokerView; import org.apache.activemq.broker.jmx.DestinationView; import org.apache.activemq.broker.region.Destination; import org.apache.activemq.command.ActiveMQDestination; import org.testng.annotations.AfterMethod; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; import javax.management.ObjectName; import java.net.URI; import java.util.Map; import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertTrue ... Page: EMI Server Overview Continuous Integration Servers Continuum Installation Guide Linux Continuum Installation Guide Solaris Repository Managers Artifactory Installation Guide Linux Artifactory Installation Guide Solaris sysadm:Nexus Installation Guide Linux Version Control System Subversion ... Page: Endpoint tests responsibility of endpoint tests is to verify that the wiring and configuration of the endpoints works as intended. It is often a good idea to use stubs instead of the actual services. We recommend Mockito http://mockito.github.io/mockito/docs/current/org/mockito/Mockito.html#2 for stubbing ... Page: Enterprise economy versus Project economy Why agile projects fail to deliver expected values in an enterprise context Intro When dealing with agile projects in the enterprise, the difference between enterprise economy and project economy becomes an important challenge. One common problem is that development ... Page: Environment environment of web applications is a crucial factor when considering security. It wouldn't help much to create an application with all available security measures made with best practices, using top security consultants if the application was deployed on an application container ... Page: Environment versioning baseline is a set of software services with fixed versions and their configuration in a known Operating System environment on known hardware. In other words; Software versioning http://www.reference.com/search?r=13&q=Versioning can be implemented with mavenreleaseplugin Configuration versioning known ... Page: Error Categorization example Error levels Fatal Crisis Indicates that the system is for most purposes dead. Like if no superPNR are received into the ESB, or that the ESB looses connection with critical systems Fatal Severe Indicates that a large set of operations are failing, i.e. That all operations against Accounting ... Page: Error Handling And Exception Management Excecutive Summary The bigger problem in software reliability is not how we communicate errors, it's the state we are in when the error happens. So often the errors are things we can't really do anything about, we can't force the network connection ... Page: Error Push Setup Error pushlike log behaviour/setup Log4J.properties config Add the following to log4j.properties log4j.appender.HUB=org.apache.log4j.net.SocketHubAppender log4j.appender.HUB.layout=org.apache.log4j.PatternLayout log4j.appender.HUB.layout.ConversionPattern=cc%d %14.14c %m%n log4j.appender.HUB.port=9004 And add the HUB as a logger (I.e. something like: log4j.rootCategory=INFO ... Page: Evaluation HTML5Code Camp De viktigste i hver kategori er uthevet med bold. (?) indikerer litt upresise punkter. Pkt1 (?) Pkt2 Pkt1 Pkt2 Pkt1 Pkt2 Page: Evaluation of HDIV What HDIV provides: HDIV provides a state management mechanism which adds a hashed state of parameters sent to the client which makes it possible to detect any alterations a client makes to socalled "non editable" data (combobox, hidden fields ... Page: Evaluation of tactics according to organizational drivers any given problem, there are multiple possible solutions. When choosing one, it is important to investigate if the tactic chosen effects the rest of the system. If it does, the tactics must be evaluated according to the drivers for the entire system, and pros/cons of the different tactics must be compared ... Page: Event-based Logging Rename to eventing? Auditing A log containing changes in the data. Need context (user/timestamp/source ) Error log Something Operations must act on (e.g. apache error log) See Error Push Setup Eventing Information to the business support ... Page: Evo Tom Gilb's evolutionary method. Plenty of resources available here: http://www.gilb.com/Blog Page: Example JSW and RPM project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/mavenv400.xsd"> |
||||||||||||||||||||||||||||||
| FPage: FAQ Q Page: Feature Branches Keep the main branch in a working state, develop new features in branches. The agile manifesto states Working Software as a value. This implies that we keep the mainline of the code (known to many as the stable branch) in a working state. A good way to keep it that way ... Page: Feedback Transkript av feedback session med Totto: Good: Location was great! Great with talks > coding > talks > coding Great speakers Food > Learned a lot more Wifi Networking (social) Fun, good times! Platform independent software Results ... Page: Ferris' notes from part 2 Neo4J Emil talks about semantic web, web 2.0. Graphs of information. RDF. The problem of relational database. oesn't scale with information complexity. Sparse tables, and increasing number joins. So the solution is a graph database. Instead of having relationships ... Page: File API Page: Finally, an Agile test strategy! (that works) Title Finally, an Agile test strategy (that works)! Speakers Bård Lind (bard.lind@objectware.no) Erik Drolshammer (erik.drolshammer@objectware.no) Abstract Traditional test strategies were typically created in the context of a specific methodology (like for example the waterfall model) and are unsuited for the serviceoriented ... Page: Find latest version in NEXUS repo Documentation internally in Nexus only http://127.0.0.1:8081/nexus/nexusrestlet1xplugin/default/docs/resourceArtifactResolvePlexusResource.html url: /artifact/maven/resolve Parameter g Group id of the artifact (Required). query a Artifact id of the artifact (Required). query v Version of the artifact (Required) Supports ... Page: Flexibility vs complexity trade-off Flexibility is nice when it is needed. Unused flexibility is wasteful and adds complexity and cost. How to decide what changes we can support without exceptional high cost? It falls to the architect to weigh the drivers of the project and choose where to make it possible ... Page: Frontend | GPage: GeekCruise Notes - Part 2 - Emil presents Neo4J About 18 o'clock, we cut the Qi4J discussion and Emil goes on with Neo4J Notes and comments (add your ones as children pages Page: General development tips What is the correct way to write JavaDoc when you override methods like equals and hashCode? / / @Override Page: General test theory purpose of this page is to list some "rules" with regards to general test theory. If you disagree or don't understand the following statements, please leave a comment. These rules are assumed to be common knowledge, so no explanation will be provided unless someone ask. # Don't test ... Page: Generic Parent POM Example project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/mavenv400.xsd"> |
||||||||||||||||||||||||||||||
| HPage: Helper Libraries purpose of this page is to describe a few helpers that are often useful for service and system tests. The same helpers are also the basis for a SysAdmin Production Toolbox. RestoreDefaultState bring the system back to a known, "empty" state. Each test insert their own test data ... Page: How to bridge the gap between Operations and Development Needs cleanup aka. the gap between agile and ITIL Problem description What hurts? What problems to we need to address? Hard to get resources from Operations early in the project Hard to get Operations as official stakeholders (and thus someone ... Page: How to call Oracle stored procedures from Java Using CallableStatement Using CallableStatement methods to call stored procedures http://publib.boulder.ibm.com/infocenter/db2luw/v8/index.jsp?topic=/com.ibm.db2.udb.doc/ad/tjvcscsp.htm Get connection from Spring DataSourceUtils import org.springframework.jdbc.datasource.DataSourceUtils; Connection con = DataSourceUtils.getConnection(dataSource); String procedureRef = "somePackage ... Page: How to combine JigZaw with the V-model Vmodel http://en.wikipedia.org/wiki/VModel(softwaredevelopment) groups tests into unit tests, integration tests, system tests and acceptance tests. To model big distributed systems, higher granularity and additional levels / test types is needed. There is also the matter of responsibility ... Page: How to debug webapp performance proactively? best approach to debug poor performance is to detect when and why the performance is poor. The obvious approach is to monitor and measure the performance continuously. For web applications Hudson sysadm:Hudson Installation Guide Solaris and the Grinder Plugin http://wiki.hudsonci.org/display/HUDSON ... Page: How to debug webapp performance reactively? Strategy There are of course many strategies for finding and fixing performance issues in any application. The most common is probably Classic performance debugging # Find the bottleneck # Fix the bottleneck # Repeat Do some initial cleanup to eliminate stupid issues However, locating ... Page: How to deploy to IBM WebSphere 6.x possible to deploy directly to IBM WebSphere 6.x by regular file transfer protocols, and it is not currently supported by Cargo http://cargo.codehaus.org/. The way of deploying to a cluster recommended by IBM, is by executing the file wsadmin.bat on the deployer's end with a number of parameters. The bat file is a facade ... Page: How to do setup and tearDown for a group of tests. TestNG supports sorting of tests into groups. I can be convenient to be able to perform a group wide setup, before, and teardown, after, the tests in a group are run. This can be accomplished in testNG using the BeforeGroups annotation. Sort your tests into logical groups ... Page: How to make the output of a shell command available to Maven? profile> |
IPage: IAM - Identity and Access Management you want to use whydah as an SSO provider, you may start at http://www.getwhydah.com. If you want to investigate different SSO Providers, check out Comparison of Identity and Authentication products Page: IAM Terminology General terms Term Definition Comment IAM Identity and access management Gartner's definition http://www.gartner.com/itglossary/identityandaccessmanagementiam/ IdM Identity management (IdM) describes the management of individual principals, their authentication, authorization,1 and privileges within or across system and enterprise ... Page: Identity Management Identity management in web applications Identity management covers how you handle the users of your application. You can choose to have a conecpt of user which has a password and that's all. This is a very slim concept which isn't sufficient for most ... Page: Improved communication Forbedret kommunikasjon Definere en trappemodell for hva man kommuniserer når. Det endelige målet er å bidra til best mulig økonomi for forretningen. Fjerne seg fra TCO mål, rette seg mot "best mulig ... Page: Incorporating best security practices in development TODO: Describe how the different principles and tools can be utilized in day to day development to become a part of the development lifecycle Page: Index Page: Input Validation Input validation in webapplications. Good ideas: Use whitelisting Strictly define what you expect. Take some time and identify what the properties of your legal data is. Centralize rules, make sure you don't define them more ... Page: Installation and Deployment Automation Goals and drivers Same artifact (primary artifact, can have multiple distribution artifacts) should be deployed to all environments, buildtime configuration is unacceptable. The number of manual steps required to deploy should be kept at a bare minimum. => minimize the number of required ... Page: Introducing JigZaw in your organization Introduce this material step by step You and your fellow developers need time to understand these consepts. Experiences we have made sugest to follow an approach something simmilar to this: Phase #0 Introduce basic tools and infrastructure to support automated ... Page: Invitasjon til HTML5 Code Camp Page: IoT Security Assumptions Limited CPU, memory, disk and network capabilities Possibly batterydriven (e.g. lowpower devices) Transmission use a lot of power. Transport: Radio, bluetooth, SMS Requestreply/handshake protocols are probably not suited. 2way communication like TLS is probably ... Page: Issue tracking in the Enterprise Release notes How to automate release notes? When to force all changes through an issue tracker and when to write a custom overview? Selection criteria What properties must the issue tracker we choose have? Is Jira the only ... Page: Issue workflow Workflow Many issue lifecycles can be used. As a general rule start with a few, welldefined states and add steps only if they add any real customer value. Statuses are modelled as a state machine in Jira and it is possible to have different state machines ... | ||||||||||||||||||||||||||||||
| JPage: JaMaCU Deployment Strategy Motivation Developers and architects have too long neglected the needs of system administration. The excuses vary, but the symptoms are much the same; Complex and time consuming deployments. Complex and error prone configuration. Too much, too little or just plain bad ... Page: Java Parent POM Example project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/mavenv400.xsd"> |
KPage: Kanban Naked JustInTime planning. Kanban 看板 means "sign" in Japanese. It is used to describe manufacturing systems that are based on pull as opposed to push. For example: Dell only orders http://www.youtube.com/watch?v=EEhNkzdKyrw the parts from it supply chain ... Page: Kjartans notes from Emils talk Notes on Emil Eifrem Neo4J Check out the neo page http://neo4j.org/ for more details The death of rdbms CouchDB Simple DB BigTable Cassandra Graphs Your file system (Simlinks, shortcuts) Trends Trend 1 Data is getting ... | ||||||||||||||||||||||||||||||
| LPage: Lean Poppendiecks' Toyota inspired method We don't have a lot of content on this subject. Feel free to expand it! http://en.wikipedia.org/wiki/Leansoftwaredevelopment The Oslo Lean Meetup An Oslo community based on Lean: http://agile.meetup.com/31 Page: Levels of identity assurance When using Whydah to log into a secure application or a protected system, one must first be assured that you are really who you say you are before you are granted access (doh..). Identity assurance is the process that verifies the identities of computer users ... Page: License - the short version License overview http://www.gnu.org/licenses/licenselist.html http://www.opensource.org/licenses/category http://www.debian.org/legal/licenses/ FAQ Q: If I have paid for development of this software, why should I pay for everything Page: Lightning talks Speaker Topic Comments Ola Nordmann Attach surface of HTML5 browsers Tor Martin Saur JavaScript i nettlesere for mobil Øyvind Aaraas IDE HTML5 support Kristoffer Rolf Deinoff Vær lat og utålmodig Page: Lightweight alternatives to heavyweight technologies JMS: ActiveMQ http://activemq.apache.org/ RDBMS: HSQLDB http://hsqldb.org/ , Apache Derby http://db.apache.org/derby/, Oracle TimesTen InMemory Database http://www.oracle.com/us/products/database/timesten/index.html? Inmem Mongo: Fongo https://github.com/fakemongo ... Page: Lightweight Web Application Development pages are supposed to be a place for sharing ideas on how we can quickly develop web applications. Some Jetty Notes From http://www.jroller.com/robwilliams/entry/ganymedeanotherbrokenpileof I prefer Jetty over WTP with Tomcat (which is what I ... Page: Log Tools Simple Logging Facade for Java (SLF4J) http://www.slf4j.org/ Logback http://logback.qos.ch/ Apache log4j http://logging.apache.org/log4j/ Java Util Logging http://java.sun.com/j2se/1.4.2/docs/guide/util/logging/overview.html Apache Commonslogging http://commons.apache.org/logging ... Page: Logback send error on email pom.xml |
MPage: Main class with embedded jetty public class Main { private static final Logger log = LoggerFactory.getLogger(Main.class); private Server server; public static void main(String arguments) public void start() { ResourceHandler resourcehandler = new ResourceHandler(); resourcehandler.setDirectoriesListed(true); resourcehandler.setWelcomeFiles(new ... Page: Make some choices Some choices can have profound effect on the result of a development project. Some choices can/should/must be made early, others can be delayed. What to decide when requires experience and competence. Here is a list of topics with some suggestions ... Page: Managing test data Managing test data represents a major challenge in system development projects. Read Evolutionary Database Design http://www.martinfowler.com/articles/evodb.html from Fowler and Sadalage for some background material to the subject. Use of test data Test data is used ... Page: Mapping between JigZaw test categorization and service categorization Page: Mapping between requirements and tests Singlepointofentry to requirements Assumption: Requirements are expressed as user stories User Stories (US). We want single point of entry to all requirements and we want a 11 mapping to the tests that ensure that they are fulfilled. A wiki makes the USs easily available and it is easy ... Page: Mapping Jira Concepts to Scrum and version strategy Projects ... introduction from BG main challenges (from HRA side view, applies mostly to MSB too) 1. Managing multiple projects 2. Release management 3. Reporting/ time tracking hra capacity plan... mapping projectst ... Page: Maven and Spring How to share configuration between Spring and Maven See Deploy to different environments runtime and configurationmanagementwithspring http://blog.arendsen.net/index.php/2005/03/12/configurationmanagementwithspring/ for examples on what's possible. Filtering in Maven Use filtering to easily set a different set of properties according to environment ... Page: Maven Artifact Naming artifactId The name of a libProject/product used in VCS should be reflected in the artifactId of the project. Additionally, it is common to prefix all modules (including the parent) in a multimodule project. E.g. commonsparent, commonslog, commonsfile. groupId Choosing a groupId is a bit trickier: groupId some ... Page: Maven Assemble and Distribute Artifacts FAQ Table of Contents How to assemble an application The official docs should be sufficient, see the mavenassemblyplugin http://maven.apache.org/plugins/mavenassemblyplugin/. If applicable, prefer to use the predefined descriptors. Example: How to create an executable jar with all runtime dependencies ... Page: Maven Dependencies and Build Stability FAQ Table of Contents How to handle libraries that cannot be found in any public Maven repository? Download the artifact to local storage. (e.g. /tmp/) Add the dependency to pom.xml and run mvn clean install. If the dependency cannot be found, the output will display which ... Page: Maven Deploy and Release FAQ Table of Contents How to ensure all submodules use the same version in a multimodule reactor? Set the autoVersionSubmodules to true. |
||||||||||||||||||||||||||||||
| NPage: Navigation Main components architecture:Agile and Software Architecture Agile Mindset and Methodology Strategies Tactics Popular Pieces JigZaw Maven Infrastructure Installation and Deployment Automation Maven FAQ Test Frameworks and Tools Lightweight alternatives to heavyweight technologies Resources Presentation ... Page: Nexus configuration tips Use case: Open repositories and secured repositories in the same Nexus installation. See also https://support.sonatype.com/entries/24901127SonatypeNexusSecurityCookbook. # Set up anonymous user ## Remove access for the anonymous user to all repositories. ## Create privileges for releases and snapshots repositories. ## Create ... | OPage: Offline detection Page: One-click deploy TODO: Bård can you write a description and requirements/wishes/goals Page: Only Service Tests example TODO: Geir Key words: Almost all functionality is CRUD in the DAlayer. Really thin service layer and no gui. Services exposed with SOAP A test for the service has almost 100% overlapping with a test of the DAfunctionality. It does not make sense to test the same ... Page: Open Source JMS Server Comparison many Open Source JMS (Java Message Service) Implementations http://www.manageability.org/blog/stuff/opensourcejmsjava, but we will start with evaluating ActiveMQ http://activemq.codehaus.org/ and JBossMessaging http://wiki.jboss.org/wiki/Wiki.jsp?page=JBossMessaging Page: Organize Maven projects and modules FAQ Table of Contents What is and where can I find the Maven SuperPOM? All Maven projects implicitly inherit from the Maven super pom. Read more on the subject in Introduction to the pom, SuperPOM http://maven.apache.org/guides/introduction/introductiontothepom.html#SuperPOM ... Page: Organizing Maven projects Guidelines There are many types of Maven project relationships http://www.sonatype.com/books/mavenbook/reference/pomrelationshipssectprojectrelationships.html and many ways or organizing Maven projects. The purpose of this page is to explain some guidelines and setups that we have come to value. The main guidelines can ... Page: Other Logging Error Handling And Exception Management How to use lightweight software to speed of development smidigtonull:Lightweight alternatives to heavyweight technologies Page: Other test tools Tool Type Opinions and notes FIT http://fit.c2.com/ Requirement/test mapper Very popular tool. Concordian http://www.concordion.org/ Requirement/testmapper Like FIT, but better for Java JBehave http://jbehave.org/ Requirement/testmapper Java powered. Follows ... Page: Output Encoding Output encoding in webapplications | ||||||||||||||||||||||||||||||
| PPage: Package by feature Package by layer is widely used in the Java community. Here we have gathered some resources which explain why package by feature may be a good idea. Why package by feature? How changing Java package names transformed my ... Page: Participant bio and questionaire Bio Experience Skill area Level Details/comments JavaScript experience: HTML 4 experience: XHTML experience: Favourite JavaScript libraries: Best frontend resource and reference websites: My dream frontend toolbox: Used HTML5 JavaScript APIs ... Page: Per-deployment projects What is it? This approach is aimed at what I like to call product lines. I.e., the goal is to deliver multiple different products with similar functionality. The general idea is to write libraries that are easy to integrate and reuse. Each product can then depend on any subset ... Page: Performance test See Wikipedia: Software performance testing http://en.wikipedia.org/wiki/Softwareperformancetesting for an introduction to the subject. This page is about discussing different strategies and their pros and cons. Run a browser, Selenium 2 Selenium 2 (with webdriver) The grinder can be used for both ... Page: Performance test tools Tool Type Opinions and notes JMeter http://jakarta.apache.org/jmeter/ Load test functional behavior and measure performance Maven plugin: chronos http://mojo.codehaus.org/chronosmavenplugin/ The Grinder http://grinder.sourceforge.net/ load testing framework that makes it easy to run a distributed ... Page: Persistence Persistence Product Overview Logical Requirements to Persistence Products Page: Persistence Product Overview All products in this overview support persistence, but what other responsibility and properties do they have? Which are important enough to group by? TODO: Split "Scalable" into how they scale OR just use () and ()() and (x) to illustrate differences? E.g. need to show that while Oracle ... Page: Planning Poker Do you plan poker? Planning poker is a session where the team gets together and puts some estimates on the backlog. The goal is to rip out hidden complexity (one team member may know details that make some backlog items ... Page: Platform dependent artifacts Example with JMSclient While we strive to make our artifacts platform independent, this is not always possible. The java.naming.factory.initialproperty needed by JndiTemplate http://static.springframework.org/spring/docs/2.5.x/api/org/springframework/jndi/JndiTemplate.html requires that the given implementation of ContextFactory is present ... Page: pom.xml yeoman and embedded jetty xml version="1.0" encoding="UTF8"?> |
QPage: Questions and Answers Taken from discussion topics after October 2. presentation In lack of a better place to put the discussion :) Test data Q: How should test data best be stored? Excel files, xml, property files? Q: How partitioned ... Page: Quotes on Complexity Quality is never an accident; it is always the result of high intention, sincere effort, intelligent direction and skillful execution; it represents the wise choice of many alternatives. William A. Foster http://www.answers.com/topic/williamafoster Fools ignore complexity. Pragmatists suffer ... | ||||||||||||||||||||||||||||||
| RPage: RDBMS testing according to JigZaw Introduction Relational databases are and have been highly popular for a long time. This page is about how to test integration with RDBMSs when they are used for persistence and queries. Testing against the SQL standard The database is considered (at least in this context) to be external to the software under ... Page: Recommended directory structure using Subversion and Maven Maven can be configured to use almost any directory structure and so can the scm plugin. However, in the spirit of convention over configuration we strongly recommend that you follow the trunk, tags, branches convention when using Subversion. See ... Page: Recommended reading Litt startpunkter for å skjønne litt av det vi driver med.. Ledelse, metode, styring Management 3.0: Leading Agile Developers, Developing Agile http://www.amazon.com/Management30DevelopersDevelopingebook/dp/B004ISL6JY/ref=pdsimkstore15 Metode: Kontinuerlig leveranse/kontinuerlig produksjon Continuous ... Page: Record-and-playback test automation When to apply recordandplayback test automation? Answer: Never! http://testobsessed.com/2010/07/randomthoughtsonrecordandplayback/ Okey, only almost true. Disadvantages: Test data and test logic tightly coupled. Expensive/time consuming to keep the tests updated. "Advantages": Nonprogrammers can ... Page: Relational Databases See also Database versioning Jetty with prepopulated local HSQLDB Deploy to different environments runtime Change environment at buildtime using profiles Managing test data Testing DB scripts Modeling tools SQuirreL http://www.squirrelsql.org/ Freeware. Reverse ... Page: Release process and agility Reasons for wanting frequent deployments: TTM Time to Market Reduced risk Reduced cost Happy customers :) Sprints, system test, acceptance test/deploy to production TODO: KIR figur som viser sprinter, systemtestsykler og deploysykler. Related ... Page: Release Profile profile> |
SPage: Sandbox Parent page to group initiatives still in the sandbox. I.e., the content is still unstructured, and the ideas are not easy to grasp Page: Scaled Agile Framework Patterns for implementing LeanAgile software and systems development at an enterprise scale. Website: Scaled agile framework http://www.scaledagileframework.com Page: Scratch area Secondary benefits: More content and more consistent content in the Agile 2.0 wiki space A list of unsolved "pains" that we should know how to solve Code examples/patches to ease some known pains. Some starting questions Deployment ... Page: Script to download and unpack - Windows DeployFromNexus.bat @Echo Off && setlocal rem Set working dir to local dir PUSHD "%dp0" rem rem Script to download an artifact from Nexus. Then unpack, and replace existing version of the artifact rem rem Usge: DeployFromNexus repogroup ... Page: Scrum widely popular king of the hill. Scrum is the ruling mainstream agile methodology, probably with XP right behind it. Most agile projects probably use some mix of these. Scrum is idiotsafe, meaning it is sure to attract idiots. The theory of Scrum is so simple ... Page: Scrumworks tips How avoid weekends and vacations to "pollute" the burn down graph? One possible solution is to have a backlog item in the sprint which contains vacations and weekends. Example: Assumtions for the example: 2 weeks long sprint (10 working days) Average ... Page: Security intentions for this space is to highlight problems, solutions and what to (not) do. Attackers This section will contain a short description of the types of attackers out there. Attacks This section will describe known attacks and their enablers. Strategy concepts and best practices This section will examine the broader concepts of security ... Page: Security recommendations for web application frameworks Hvilke taglibs, rammeverk, plugins, biblioteker kan må bruke for å få sikkerhet på som default, ikke motsatt? Noen spesielle man bør unngå? Hva konkret bør man passe på når man bruker ... Page: Security Resources Links to OWASP, CC, papers WSsecurity, Liberty osv Page: Selenium About Selenium http://seleniumhq.org/ seems to have become the defacto web testing tool, with now WebDriver merging into the project. Resources Maven Selenium Plugin http://mojo.codehaus.org/seleniummavenplugin/ Selenium user meetup @ Google mars 2008 http://video.google.com ... Page: Sequence, flow or dispatcher test goal of a sequence/flow test is to verify that a service calls methods in the expected sequence. The actual processing within each step is not important and the service can thus be stubbed. The same concept can also be used to test typical dispatcher logic Page: Setup for Selenium on CI using Maven, Jetty and JUnit Note!The setup is version dependent! (not for JUnit) Junit: |
||||||||||||||||||||||||||||||
| TPage: Tactics Intro Tactics are the smallest pieces of the puzzle, and may be any combination of: Technology Best practises Patterns Design Architecture Library, tools and frameworks Skills Page: Team 1 Morgan Kjølerbakken Oddbjørn Thea Christine Steen Robin Stig Nicolaisen Page: Team 2 Espen Dalløkken, http://github.com/leftieFriele/h5oteam2 Helge Thomas Hellerud Jerome Lacoste, http://github.com/lacostej/h5oteam2 Thomas Finneid Målet learning > delivery learn by delivering local (no server for all) Lage en blog editor uten noe admin ... Page: Team 3 Anders Sandberg Nordbø Øyvind Aaraas Hans Ole Kristoffer Tobias Page: Team 4 Rikard Halvorsen Ivar Conradi Østhus Arve Systad km Tor Martin Code repository We are using Github as a repository for our code. Everyone has read access. The main HTML is located in dashboard.html, and the scripts of interest are located in the scriptsfolder ... Page: Team 5 Tux Asbjørn Goa Egil Jone Lura Aud Marie Page: Team 6 Anton Svein Arild Gunnar Trygve Lie Viggo Normann Gregers Page: Tech stack for modern frontend Context Set up a basic webapp using modern tools. Tech stack: Grunt, Bower, Angular Generate skeleton with Yeoman. Install software Install node.js http://nodejs.org/download/ Setup Yeoman http://yeoman.io/learning/ npm install ... Page: Technical site and reporting Technical Site and reporting Reporting is implemented by "Plugins which generate reports, are configured as reports in the POM and run under the site generation lifecycle.". The tables below show some of the most popular of these plugins. From the official plugin overview http://maven.apache.org ... Page: Technology for Distributed Contexts Associative (i.e. no ordering constraints) Commutative (also abt removing constraints) Idempotent (enabling atleastonce delivery) Distributed. Old ACID: predictive & accurate. New ACID: flexible & redundant. Thanks @emileifrem Learning resources Seattle Scalability Conference: Amazon ... Page: Terminology Test terminology Mock Stub Simulator Page: Test Everyone agrees that unit tests are important. The agile movement also preaches that tests are documentation. And what about various levels of integrationtests? Another dimension is the execution speed of tests. Until now, you have had to pick one or the other..... not anymore Page: Test Frameworks and Tools Codecentric test tools Performance test tools Web tests Other test tools Page: Test groups and phases Part 3 Group management Annotating tests with one or more groups makes it possible to have test runs that include group A and B, but excludes tests from group C. It is technically possible to use any number of groups, but we recommend ... Page: Test nomenclature and classification Part 1 Intro The Vmodel http://en.wikipedia.org/wiki/VModel(softwaredevelopment) is a popular approach to testing in a typical waterfall http://en.wikipedia.org/wiki/Waterfallmodel project. With the rising popularity of agile development methodologies like XP and Scrum, the Vmodel is no longer sufficient ... Page: Test pl_sql - old Description Stored procedure which reads from n input tables og put the results to m output tables. Test written in plain Java running inprocess. Primary test aspect: Automated regression test Prerequisites A user with empty ... Page: Test strategy for Oracle PL_SQL Description Oracle stored procedure (or other PLSQL code) which reads from n input tables og put the results to m output tables. Test written in plain Java running inprocess. Primary test aspect: Automated regression ... Page: Test structure refactoring support in most IDEs, most code refactorings are easy and lowrisk changes. However, not everything should be subject to frequent refactorings. A public API is a typical example of an interface we want to be stable and may thus be considered a {}refactorization boundary ... Page: Test structure and Single-Responsibility Principle Part 2 One and only one reason to change Singleresponsibility principle (SRP) http://www.objectmentor.com/resources/articles/srp.pdf: A test should have only one reason to change. Test code (as well as regular code) is then easier to refactor and easier ... Page: Test-Driven Development ever more popular testfirst approach. A widely popular programming rythm where you write failing tests before implementing/changing the functionality of functional code. Rules (as roughly gathered from Uncle Bob http://butunclebob.com/ArticleS.UncleBob.TheThreeRulesOfTdd) # Never ... Page: Testing Data Bound components Mapping between different types of tests and JigZaw categorization Test the query logic No data (or more precisely, known data), no environment (inmemory database) => tests should be fast enough to run before checkin. Responsibility: CRUD, best case (with empty ... Page: Testing DB scripts All code needs to be tested, even the database scripts. This page contains practices and suggestions for testing database artifacts. This PDF book http://www.informit.com/store/product.aspx?isbn=032150206X seems to contain very useful practices related to this subject, also ... Page: TestNG What functionality makes TestNG a better choice than JUnit 3/4? Groups Runtime configuration of which tests to run Dependent methods Flexible support for datadriven testing with DataProviders Support for testing with multiple threads How to swap between tests ... Page: TestNG run only database tests example Annotation @Test(groups = "databaseproductA") TestNG config Yo! Points http://html5.validator.no HTML5 validator Without tag, IE won't style (render CSS) (Not needed ... Page: The Planning Game team and customer get together and figure out what they are going to do in what order. Resources http://en.wikipedia.org/wiki/ExtremeProgrammingPractices#Planninggame http://c2.com/cgi/wiki?PlanningGame http://jamesshore.com/Blog/CouldaShouldaWoulda.html http://csis.pace.edu/bergin/xp ... Page: Thoughts on architecture when using HTTP endpoints Dvs. guiserverside blir proxy mot en bakenforliggende tjeneste. Husker du om vi dokumenterte noe om dette i cantarawiki? Poengene/læringen jeg kommer på i farten: # Billigere, enklere og raskere å ... Page: Time Tokens Paying for time taken with chips. A technique presented by GettingThingsDone (GTD) guru Merlin Mann. Each period (a day, week?) you get a set number of chips that you use to "pay" people for coming to meetings and other things that eat up ... Page: Timeline 2007 we coined the term timeline to describe the coupling between JigZaw test model and agile development methodology and related concepts as Continuous Integration (CI) and continuous production. In other words, when should a certain group of tests be run and who ... Page: Tomcat production setup Når det gjelder tomcat er sikkerhetsfeilene det refereres til lokalisert i applikasjonene som leveres med tomcat. Aldri, aldri bruke de applikasjonene, folkens! De som er interesserte i dette kan lese ... Page: Tools Version Control SaaS: Compare GitHub and BitBucket http://www.infoworld.com/article/2611771/applicationdevelopment/bitbucketvsgithubwhichprojecthosthasthemost.html?page=2 Git on the Server Setting Up the Server http://gitscm.com/book/en/v2/GitontheServerSettingUptheServer Onpremise or hosted Build env CI server: Jenkins http://jenkinsci.org ... Page: Tools and implementation Basic implementation requirements The purpose of this page is to give an overview of the technology that can be employed to implement the JigZaw test strategy. We need support for the following: Support for organizing tests in groups og run code before and after a group of tests ... Page: Tools for data(base)-driven testing Tool Mature Description Comment DbUnit http://www.dbunit.org/ (/) puts your database into a known state between test run \ export and import your database data to and from XML datasets Does not support table creation! Unitils http://unitils.sourceforge.net ... Page: Typical application architecture Use case: Graphical web application using HTML5 and JavaScript. Needs to use services which expose REST APIs. Alternative 1: Communicate with backend which in turn fetch data from other services Pros Do not need CORS ... |
UPage: Unitils pom.xml example get unitils and dbmaintain > |
||||||||||||||||||||||||||||||
| VPage: V-model vs JigZaw purpose of this page is to provide a comparison between the VModel (Wikipedia) http://en.wikipedia.org/wiki/VModel%28softwaredevelopment%29 and JigZaw. The goal is to illustrate the logical differences between the two models. VModel JigZaw Waterfall model Agile development, Continuous deployment/production ... Page: Verify expected behavior instead of looking for bugs Traditional testing is aimed at finding bugs, where a bug is defined as a mismatch between the specification and the actual behavior of the software under test. JigZaw aims at making sure the system works as expected. The difference may seem subtle, but there is a difference between the specification ... Page: Version Control Strategies for Confluence-based Documentation Export space and checkin to regular VCS Export to xml, html or pdf and check into a version control system. xml export makes rollback possible, but is not very viewing friendly standalone. html is viewing friendly, but does not support rollback. This option must ... Page: Versioning Source code can easily be version controlled with a Version Control System http://en.wikipedia.org/wiki/Listofrevisioncontrolsoftware. We can control the version of artifacts using Maven and the mavenreleaseplugin http://maven.apache.org/plugins/mavenreleaseplugin. See Organizing Maven projects for details ... Page: Video and Audio Page: Video and Audio API's Page: Visualize Maven modules quickly get a overview of a big Maven project it is often useful to get a visual view of the modules and their dependencies. The Maven Dependency graph plugin http://el4j.sourceforge.net/plugins/mavendepgraphplugin/index.html generates such a dependency graph as a pngfile. <! sudo aptitude install graphviz ... | WPage: W3C Widgets What is W3C Widgets and how can we us it to deploy our web apps! The presentation http://files.trygvelie.com/documents/w3cwidgets Page: Waste bin Page: Waterfall - why and why not? When (is it ever so?) is waterfall appropriate? TODO Statistics that show why waterfall is not appropriate for development projects TODO Scalable, Distributed, Outsourced, and CMMI Level 5: Some of the best scrums http://www4.java.no/web/show.do?page=92&articleid ... Page: Web Application Architecture Some classic patterns of web applications These are fairly well documented in some Excellent Books. We recommend that you make yourself familiar with the basic patterns, then follow through by using an existing Java Web Framework Java Web Frameworks ... Page: Web application container pull deployment Lightweight development, but heavyweight production server: Which problems must be addressed? (Note! Just identify, not solve) How to deploy to IBM WebSphere 6.x WebSphere deployment from a CI environment Page: Web Application Exception Management Catch exceptions where you can do something about them (or let them propagate all the way up to the top level handler). Categorization Catch ALL exceptions at the top level of the application nice message to the user log as much ... Page: Web Application Fragments possible to reuse fragments of web applications. Think two web applications being dependent on the same module of templates. However, there are some limitations: JSP's can generally not be packaged inside JARfiles in your classpath (they have to be located openly in the WARfile, so ... Page: Web Application JigZaw Why is JigZaw good for webapps? Because: There are lots of testcategories for webapps alone We need quick rountrips We need control, configuration, web.xml For web testing implementations, see Web testing. JigZaw Common test problems and how to solve ... Page: Web Application Logging Some logging features can be configured in the webapp from day 1: A console appender for development use Log sessionid together with each log statement (if any) this is useful for filtering out the activity of one user For test/produse, use file ... Page: Web Application Security security:Meta Character Handling for Web Applications HDIV, ESAPI security:CSRF Protection HDIV security:Web Application IDM springsecurity Web Application Exception Management security:Web Application Audit Trail Resources HDIV http://www.hdiv.org ... Page: Web Design page needs ALOT of work, but unfortunately this kind of knowledge is spread evenly throughout the web. Web designers are perhaps the most intensive bloggers out there, so any search on google will provide enourmous bundles of information on any web design topic ... Page: Web development tips and tricks Resources Best Practices for Speeding Up Your Web Site http://developer.yahoo.com/performance/rules.html Minify JavaScript and CSS Minify JavaScript and CSS http://developer.yahoo.com/performance/rules.html#minify can be done by the following tools: JSMin http://crockford.com ... Page: Web framework security tactics Possible pitfalls of Web Application Frameworks Webapp security should take into consideration the different frameworks that are used to develop the application. The frameworks influence the application not only with preexisting code and design, but also by changing the mindset of developers. Developers can be mislead into thinking ... Page: Web SQL - IndexedDB Web Storage, WebSQL, and IndexedDB Slides http://www.slideshare.net/dylanks/introtohtml5webstorage Page: Web Storage Page: Web test tools Tool Type Opinions and notes FITNesse http://fitnesse.org/ integrated standalone wiki, and acceptance testing framework GreenPepper http://www.greenpeppersoftware.com/confluence/display/GPW/Home/ executable specifications and automated functional testing Selenium http://selenium.openqa.org/ Web tests ... Page: Web testing Strategies and tactics To webtest or not to webtest It depends. Remember that even though webtests may seem easy and quick, they are expensive compared to unittests. However, you can get pretty far with just having a single test or script that attempts to do some ... Page: Webapp caching strategy purpose of this page is to describe one strategy for caching of static resources in a JSP based web application. The term "assets" is used to denote static files javascript, CSS, images, etc. Credit go to Trygve Laugstøl https://twitter.com/trygvis and Erlend ... Page: Webapp deployment from RPM Requirements to war archive Must be released with maven and deployed to a repository. No jetty specific configuration in the war (i.e no WEBINF/jettyweb.xml file). Jetty configuration xmlfile examples {{conf/jetty.xml}} jetty.xml The main configuration file where the jetty server properties ... Page: Webapp deployment from RPM - scratch area Strategy 1: add war archive to a preinstalled webserver Typically multiple webapps in one instance of WebSphere, Weblogic, Tomcat (or Jetty). cargomavenplugin? wasmp? etc. Distribution as war or ear. Requires a preconfigured webserver. Probably not easy to automate, since you ... Page: WebSockets WebSockets Slides http://www.slideshare.net/dylanks/introtowebsocketsandcomet Page: WebSphere deployment from a CI environment Problems with deploying from CIserver There may be better way of doing deployment than what is presented here. In such a case, please let us know Deployment to WebSphere from a CIserver can be troublesome since the deployment tool, wsadmin, is tighty coupled ... Page: What is Agile 2.0? Isn't 1.0 enough? First draft You can learn agile development by reading a lot of books on the subject. And basic understanding of Scrum and XP concepts is IMHO necessary to work agilely. However, necessary is not the same as sufficient. Experience is needed to work efficiently with any methodology ... Page: When to use JigZaw Remote centric architecture Your system has: Mulitiple JVM's Large DB's JMS Eventing Maybe even C interactions Standalone application: Standalone application example not relevant in this form Traditional 3 layer webserver Fix the problem with endtoend ... Page: Word Documentation Template Scratch area, needs cleanup What do we want? Must be printable Must be under version control and follow the same release cycle as the application To minimize time spent on writing documentation How Geir Hedemark's suggested template: http ... | ||||||||||||||||||||||||||||||
| XPage: XP eXtreme Programming (XP) An early methodology to gather mainstream popularity. Practices It defines a number of practices that are pretty common in most agile projects. Some examples: Pairprogrammering Unittesting Continous Integration The 10minute build Weekly meetings Shrinking teams ... | Y | ||||||||||||||||||||||||||||||
| ZPage: Zero downtime deployment with ECS What is zero downtime deployment aka. rolling upgrade? "At a basic level, a zero downtime deploy involves swapping out servers running new code for servers running the old code on a load balancer. Here is the general scripted process: # Create ... | !@#$ |