Tag: devops

  • How DevOps Can Help Improve Security

    How DevOps Can Help Improve Security

    Automation and standardization along with development-inspired reviews can address the three top risks to IT security.

    The term “DevOps” these days tends to evoke images of automation and push-button application deployments whenever app dev wants. It’s anarchy, it’s chaos, and it’s a frightening notion to those for whom stability and security of the core business network is their top priority. After all, folks in the DevOps camp routinely cheer on a “Chaos Monkey,” whose sole purpose is to break things in the production network. On the surface, that hardly seems conducive to stability or security.

    So, it might be surprising to discover that the seemingly laissez faire approach to building and delivering apps with DevOps is actually one of the best ways to combat significant risks to IT security.

    Not kidding.

    top 3 risks it security spiceworks surveyFirst, let’s consider the survey, conducted by SpiceWorks, in which IT pros were asked to rank a set of threats in order of risk to IT security.

    According to the report, the respondents ranked the following threats as their organization’s biggest three risks to IT security as human error, lack of process and external threats.

    All three of which DevOps can positively impact, without negatively impacting stability or reliability of the core, business network. Let’s examine how, shall we?

    Human Error

    We’ve all fat-fingered configurations and code before. Usually we catch them, but once in a while they sneak into production and wreak havoc on security. A number of “big names” have been caught in this situation, where a simple typo introduced a security risk. Often these occur because we’re so familiar with what we’re typing that we see what we expect to see, rather than what we actually typed. We’ve entered that command a hundred times, after all; we know what it’s supposed to look like and we aren’t as careful as we (likely) should be because it’s Friday and it’s almost 5 o’clock. Whatever the reason, we’ve done it, and it’s the repetitious nature of the beast that actually ends up biting us in the proverbial derriere.

    Codifying those commands into scripts or, even better, into templates means once it’s right, it’s right. The inescapable reality that we will fat-finger something eventually is reduced to virtually nil because we aren’t typing it in over and over and over, each time with less and less attention. The reliance on codification, on templates and APIs and scripts as a means to automate tasks, is not just about speed but also repeatability. And accurate repeatability at that. That’s the kind of assurance you need to prevent “human error” from exposing apps—and the business—to a wide range of risks.

    To reduce risk from human error via DevOps you can:

    1. Use templates to standardize common service configurations;
    2. Automate common tasks to avoid simple typographical errors; and
    3. Read twice, execute once.

    Lack of Process

    This is probably my favorite risk (and not just because it lets me talk up Six Sigma and some really hairy mathematical equations) because it encompasses such a broad category of problems. First, there’s the fact that there’s almost no review of the scripts that folks already use to configure, change, shut down and start up services across the production network. Don’t let anyone tell you they don’t use scripts to eliminate the yak shaving that exists in networking and infrastructure, too. They do. But they aren’t necessarily reviewed, they are certainly aren’t versioned like the code artifacts they are, and they rarely are reused. Everyone has their “own” favorite language and scripts, and they are the Frank Sinatra of IT: They do it their own way. (Yes, I know you’re probably too young to get that reference, but until your musical icons have a better one, that’s the one I’m using because my generation didn’t have a better one, either.)

    The other problem is simply there’s no governed process. It’s tribal knowledge. Bob does X and then Alice pushes Y and someone from Team Rocket* pushes button to make it go live. What can happen—and sometimes does—is one step is simply overlooked. It isn’t that there is no process, it’s that there’s no real standardization and no overarching governing process. There’s no one coordinating between Bob and Alice and Team Rocket to ensure the process goes smoothly. The thing is that the app might go live and actually work in production minus a few services, but if those services are related to security in any way (such as locking down a port), then your lackadaisical approach to the deployment process just put the business at risk.

    To reduce risk from lack of process:

    1. Define the deployment process, clearly. Understand prerequisites and dependencies and eliminate redundancies or unnecessary steps.
    2. Move toward the use of orchestration as the ultimate executor of the deployment process, employing manual steps only when necessary.
    3. Review and manage any scripts used to assist in the process.

    External Threats

    At first glance this one seems to be the least likely candidate for being addressed with DevOps. Given that malware and multi-layered DDoS attacks are the most existential threats to business today, that’s understandable. There are entire classes of vulnerabilities that only can be detected manually, by developers or experts reviewing the code. There’s DevOps in that, but it doesn’t really extend to production, where risks becomes reality when it’s exploited.

    More extensive testing, and development of web app security policies during development that can then be deployed in production is one way that DevOps can reduce risk. Adopting a DevOps approach to developing those policies—and treating them like code, too—provides a faster, likely more thorough policy that does a better job overall of preventing the existential threats from being all-too-real nightmares.

    To reduce the risk of threats becoming reality:

    1. Shift web app security policy development and testing left, into the app dev life cycle.
    2. Treat web app security policies like code. Review and standardize.
    3. Test often, even in production. Automate using technology such as dynamic application security testing (DAST) and when possible, integrate results into dev life cycle for faster remediation that reduces risk earlier.

    There is no technology, methodology or approach to IT security that will completely eliminate risk short of a complete power outage. Given that’s not a viable option, the best approach is one that reduces risk to acceptable levels (where acceptable is defined by your business’s tolerance, regulatory requirements and how much your MBO is based on not being hacked this quarter). DevOps and security are a good fit, as the former can help standardize, codify, automate and expand security practices across production and dev/test.

    So get out there, and put some DevOps in your security. And while you’re at it, put security in your DevOps.

    * Yes, that’s a Pokémon reference. I figured I needed something more modern after tossing Frank Sinatra in there. If you got both, give yourself +5 geek points.

  • Case Study: Laserfiche Builds Hybrid Cloud for ECM

    Case Study: Laserfiche Builds Hybrid Cloud for ECM

    Laserfiche is a privately owned software development company that creates enterprise content management (ECM), business process automation, workflow, records management, document imaging and webform software. The company provides secure document management, image capture, electronic forms, workflow automation, digital signatures and DoD 5015.2-certified records management, “Automating and streamlining business processes with prepackaged solutions for contract management, HR onboarding and new account openings,” says Thomas Phelps, vice president of Corporate Strategy & CIO.

    Laserfiche also maintains a business process library including templates that enable its customers to hit the ground running on new ECM deployments.

    The business counts Fortune 500 companies among its customers, serving industries including government, education, health care and finance. “We’re an enterprise content management software leader in state and local government, with a majority of the Center for Digital Government’s top digital cities and counties as our customers,” Phelps says.

    This is the story of the company’s addition of a cloud infrastructure and its plans for a hybrid cloud.

    Embracing DevOps and its Culture in Preparing for the Cloud

    Laserfiche embraced DevOps and its methodologies and tools simultaneously as it began development on its cloud infrastructure, the Laserfiche Cloud, which the company announced in January 2014 at the company’s worldwide Empower user conference.

    With that, Laserfiche took a sharp detour from its usual scrum development practices, adopting DevOps for its ability to encompass the development needs and demands of a cloud project.

    To use DevOps to move up the timetable on bringing the Laserfiche Cloud to life, the company had to swallow the DevOps culture, tools and processes whole. “We created a separate, dedicated cloud infrastructure team responsible for rapid deployments of test and production environments. We assigned a member of each software product team as a designated Laserfiche Cloud liaison to represent each product team including Laserfiche Forms, Laserfiche Mobile and Laserfiche Connector teams with respect to any feature updates, testing or releases for Laserfiche Cloud,” Phelps says.

    Though the Laserfiche Cloud infrastructure development team works in unison, each team member has the opportunity and responsibility to isolate, program and interweave software and services. Proper governance and controls ensure this means progress rather than setbacks for the ongoing cloud project.

    Development adopted PowerShell scripts, open-source and homegrown tools and Chef to promote advancement of a DevOps pipeline for its cloud infrastructure.

    Software Development Before DevOps and the Cloud

    Before moving to DevOps, the company developers relied on scrum-based agile development methods. The process followed from planning two-week sprints, through developer programming on desktop machines, unit testing, committing daily code changes, testing using daily automated builds and ultimately ending with retrospectives. Software products were tested individually by their own teams on separate VM clusters assigned to each team.

    That process allowed for one big release per year with smaller releases before and after. “Before DevOps, we manually uploaded release packages to our support site for customers and resellers to download, install and configure the Laserfiche ECM,” Phelps notes.

    After DevOps, with the Cloud

    The Laserfiche Cloud, a software-as-a-service (SaaS)-based ECM subscription service, offers mobile synchronization, e-forms and workflow automation in addition to its previous services, once offered only on premises. “The Laserfiche Cloud provides robust granular system security, encryption and audit reporting to bring centralized control and transparency to business operations,” Phelps says.

    With the cloud infrastructure in place, the company now is using the same DevOps culture, structure, tools and people to develop a hybrid cloud version. “We’re developing a hybrid solution, using Laserfiche Web Access, to provide access to hosted content and enable collaboration with third parties, business partners and customers,” Phelps notes.

    Results, Benefits

    “Instead of taking days or weeks for information technology or our software testers to deploy new VMs and infrastructure, the cloud infrastructure team can spin up new test environments within hours,” Phelps says.

    The company progressed from one major product release a year to updates every one to three months by automating the process of configuring new environments and deploying software. “Many software engineering teams have begun adopting a cloud-first development system where they develop and test binary packages and use internal tools to deploy the packages for testing,” he notes.

    Laserfiche can now satisfy customers with larger, swifter feature enhancements to its Laserfiche Cloud. “The cloud infrastructure team works closely with our software engineering teams, using accelerated release management processes, to perform upgrades in hours within an approved maintenance window,” Phelps says.

  • Managing Your DevOps Releases Efficiently

    Managing Your DevOps Releases Efficiently

    The Top 5 Things You Need to Know When Selecting a DevOps Release Management Solution

    DevOps is a modern software delivery movement that encompasses agile principles and encourages automation in application delivery. Why adopt it? It allows teams to reduce errors due to manual steps and break down silos between teams to improve communication and collaboration between all stakeholders within the business.

    Whether you’re knee deep in a DevOps transformation or just getting started, implementing a DevOps release management solution is an important step along the journey. Why? Because in today’s on-demand economy, organizations must capitalize on any opportunity to improve application delivery throughout the organization, irrespective of the development processes in place.

    Based on a recent discussion between Michael Azoff, principal analyst at Ovum, and Anders Wallgren, CTO of Electric Cloud, I was able to glean why DevOps release management is a must for enterprises to modernize the software delivery process and compete at a higher level. More specifically, Michael and Anders discussed the top five requirements for selecting a release management solution, which I’ve laid out for you below.

    No. 1: Application Manifest: Model and version applications, infrastructure and middleware.

    This is what you’re looking for in an enterprise grade solution—a solution with ease of use in defining an application deployment blueprint, and being able to reuse it and version it and have variations to meet the complex and ever-changing needs of your organization. If you are doing continuous delivery and DevOps correctly, you should never have to make a change to a deployed application by hand—ideally, changes are made to the application model and then re-released into a production environment. This allows you to make and test changes in one place, and easily keep track of everything in production. Having an application manifest is a key facet for a great release management solution.

    No. 2: Pipeline Design: Model, version and refactor pipelines, workflows and processes.

    This is not only an important consideration for selecting a release management solution, but also is at the very heart of continuous delivery—the ability to define and manage delivery pipelines for complex legacy applications or newer microservices. For large organizations with lots of technical and process debt, being able to flexibly model and manage that sort of complexity is essential.

    Ultimately, the whole concept behind DevOps comes down to the idea that there is the “what,” the “how” and the “where.” The “what” is the application manifest, mentioned above. The “how” is the pipeline design. What are all the stages this particular application or component or service goes through? Understanding your end-to-end pipeline is very important. You need to have the end to end of what your software goes through—not just conceptually, but even physically written down somewhere. If you don’t have that that process completely nailed down, you don’t really have a full understanding of what it takes to ship your software. Without this complete understanding, it can be much more difficult to have success. By modeling these pipelines, you allow teams to visualize the flow of value through the life cycle, and make iterative improvements on it in a collaborative and safe manner.

    No. 3: Pipeline Execution: Predictably and efficiently deliver legacy and CD-style pipelines and releases at scale.

    One of the most important things when practicing DevOps is enabling fast feedback, so getting visibility into pipeline execution as they’re occurring is very important. This provides teams an easy way to troubleshoot problems quickly, and then refactor and optimize the pipeline over time. Enterprise pipelines can be very complex and touch a lot of tools—your Dev team might be using Jenkins and Chef and Selenium, and your Ops team might be using ServiceNow and Azure cloud and Puppet. We have customers that have more than 60 tools as part of their ultimate DevOps toolchain. For each one of these tools or services you need to make sure you’re getting the best performance possible, and operating them as efficiently as you possibly can. As you execute them, the ability to see those executions live as they happen, then collect information about them and optimize your pipeline helps to make the entire process more efficient.

    No. 4: Governance, Security: Role-based access control, traceability and auditability.

    This is one of the key functions to consider for an enterprise-grade solution. If you just tie together your release capability with tools that still require some manual steps, you’re not able to scale that. This is where a large-scale organization, especially one that is regulated and has auditors, will want a solution that can demonstrate clearly that the whole process is governed such that no one can make a change to the process, environments or binaries without it being logged, and that any change that is made has gone through a QA and testing process. Those are the sorts of things that are really crucial for the Ops people, as they are handed responsibility for ensuring a low-risk environment.

    When DevOps was starting, the overwhelming belief around security and governance was, “Gee, this is going to really bother the auditors.” However, it turns out it is quite the opposite—to get good at DevOps and continuous delivery, you really need to automate everything. What do auditors want? They want companies to do two things:

    1) Document their process and

    2) Demonstrate they are using that documented process.

    In the process of sitting down and automating your software delivery pipeline, you are essentially documenting that process. Executing that pipeline gives you the record of what you did: How did we deploy? When? Who did it? What was the pipeline that was used? What was the testing? All of those things are now available to be audited.

    No. 5: Integrations: Works with the tools you already use

    You want a solution that fits in with the tools and process that you have. It would be a non-starter to show up and say, “Throw away all of your current tools and let’s use this new thing.” It would also be inefficient to have to change your process to fit into some tool’s preconceived notion of how your enterprise should run. Make sure you don’t have to change the way you do business, and that can help the DevOps adoption curve quite a bit.

    By keeping these top five considerations in mind when selecting a release management solution, you can help ensure your journey into DevOps and continuous delivery is a much smoother, more efficient and more fruitful one. Regardless of the tools your organization decides to use, consider first how you can make your pathway to production a competitive advantage and reap the benefits of an efficient delivery pipeline!

    If you have the chance, take a listen to the full conversation between Michael and Anders.

    About the Author/Sam Fell

    sam-fell-leadershipSam Fell is the head of Marketing at Electric Cloud, responsible for driving awareness and demand for the company’s DevOps release automation and acceleration solutions. For 20 years, Sam has helped companies achieve success by marketing, selling and implementing DevOps release automation, IT change management and application performance management solutions. Prior to joining Electric Cloud, Sam held leadership roles at BMC, CA, Marimba and Nimsoft.

    Sam holds a Bachelor of Arts degree from Illinois Wesleyan University.

  • Electric Cloud Announces Industry’s First End-to-End DevOps Release Automation Platform with Native, Push-Button Rolling Deployments

    Easy access to rolling and other advanced deployment patterns makes large-scale, mission-critical application releases safe, reliable and repeatable throughout the entire lifecycle

    SAN JOSE, Calif., July 19, 2016 – Electric Cloud (http://electric-cloud.com), the leader in DevOps Release Automation, today announced its latest version of ElectricFlow, now the industry’s first and only end-to-end DevOps platform to provide native, push-button support for advanced deployment strategies (such as Blue/Green, Canary, and Rolling Deployments). This enables IT to frequently and reliably deploy mission-critical applications at scale and avoid service interruptions to their end users.

    “DevOps implementations are highly individual, and what works for one may not work for another, creating disparate DevOps tool portfolios and resulting in a need for greater investment and skills,” wrote David Paul Williams and Thomas E. Murphy in a March 2016 Gartner Research Report*.

    “We appreciate the effort it typically takes for Application Support teams to provide superior quality of service and zero-downtime for their hundreds or millions of demanding end-users,” said Steve Brodie, CEO of Electric Cloud. “This latest version of ElectricFlow fully automates the process of creating and executing advanced deployment strategies, making them error-free, easy to adopt, and simple to use.”

    As a significant upgrade to what is otherwise achieved with cumbersome scripting or complex, ad hoc, and environment-specific workflows, the new Rolling Deployment capability in ElectricFlow provides a robust, model-based approach and intuitive GUI, making it easy to configure and re-use Rolling Deployments across many projects and pipelines in the enterprise.

    Today, Rolling Deployments are mostly confined to Production environments, where the scale (and risk) of application deployment is the largest. By providing Rolling Deployments as an integral capability, ElectricFlow enables teams to “practice” rolling deployments even in lower environments (such as QA, Staging, or Pre-Production), without requiring additional management overhead or investment in specialized resources. The result is faster, more reliable and rehearsed deployments at enterprise scale, with zero-downtime.

    “Our customers expect always-on access to high-quality applications,” said Marc Priolo, Software Configuration Manager at Urban Science, a global high-tech consulting firm. “Being a leader in this competitive market means we need to release feature-rich software updates more often and at less cost. ElectricFlow’s intuitive approach to application and environment management has allowed us to reduce deployment times, costs and increase visibility across many client environments. Extending this approach to include advanced deployment strategies will help us not only release faster and safer, but allow us to do so with zero-downtime and less risk to our clients.”

    In addition to the breakthrough push-button Rolling Deployments capability, the new version of ElectricFlow includes a number of other new features, such as:

    • Environment Reservation and Calendaring – increases visibility and reduces the chance for cross-team conflict during deployments through a new rich calendar view. This allows users to reserve environments for applications, pipelines and releases; define black-out/maintenance windows; and, offer policy-driven prioritization and conflict handling.
    • Automated Environment Discovery – reduces onboarding time and effort while eliminating errors. A “one-click” automated process accelerates modeling; automatically populates resource and environment parameters; and, offers a new extensible plug-in architecture.
    • Full-stack Dependency View – provides IT-Ops and App Support teams a way to model and visualize dependencies among applications, middleware and infrastructure. Users can define middleware and their infrastructure requirements per application; capture and report on infrastructure/middleware capabilities across environments; and, ensure dependencies are met.
    • Built-in IDE for ElectricFlow DSL with Object Export enhancements – makes it easy to define, debug, version and store your “Process as Code” in any Source Control Management system. The built-in IDE provides an efficient way to modify application models, deployment processes and release pipelines as code and instantly see the changes reflected in the graphical interface.

     

    The new version of ElectricFlow with Rolling Deployments is now available through Invitation Program and will be generally available in August 2016.

    To learn more about ElectricFlow, download the Community edition at http://electric-cloud.com/products/electricflow.

    To learn more about Electric Cloud, please visit: (http://electric-cloud.com).

    Share This: .@electriccloud eliminates failed releases for large-scale deploys w/ industry-first push-button Rolling Deployments http://bit.ly/295WDCt

    *Gartner, Avoid Failure by Developing a Toolchain That Enables DevOps, March 16, 2016.

    About Electric Cloud, Inc.

    Electric Cloud is the leader in DevOps Release Automation. We help organizations developing enterprise web/IT, mobile, and embedded systems deliver better software faster by automating and accelerating build, deployment, and release processes at scale. Leading organizations like Cisco, E*TRADE, Gap, GE, HP, Intel, Lockheed Martin, Sony and Qualcomm use Electric Cloud solutions and services to boost DevOps productivity and Agile throughput, while providing a scalable, auditable, predictable, and high-performance pathway to production.

    #

     

    Contact:

    Jeremy Douglas

    Catapult PR-IR

    303-581-7760

    jdouglas@catapultpr-ir.com

     

     

  • DevOps Can Counter Brexit Aftershocks

    DevOps Can Counter Brexit Aftershocks

    On June 23, the people of the United Kingdom voted to leave the European Union in a referendum. The impact was immediate. The value of the pound has plunged. Stock markets around the world tumbled. Share prices for U.K. companies that trade internationally have recovered fairly quickly, but smaller companies in the FTSE 250 are still down.

    Many U.K. businesses now face a period of uncertainty.  In the week following the referendum, 49 percent of businesses reported feeling “pessimistic” in a YouGov and CEBR poll—up from 25 percent beforehand.

    When faced with uncertainty, it’s common for businesses to try and protect themselves. This can include:

    • A reduction in investment
    • A hiring freeze
    • Reduced or non-existent training budgets

    Even before the EU referendum, the BBC reported that 1 million U.K. businesses don’t have the skills they need to prosper in the digital age.

    Does this mean the outlook for DevOps adoption and organizational culture change is bleak in the U.K.?  At a time when companies large and small were starting to innovate, will we now see a retreat to traditional ‘tried and tested’ waterfall methods?

    The Time for Change is Now

    It’s easy to understand why businesses might be nervous about implementing new ways of working in time of great uncertainty.  However, the Puppet 2016 State of DevOps report has some compelling data that might change their minds. Some of the key facts include:

    • High-performing organizations are deploying 200x more frequently
    • High performers have better employee loyalty—potentially allowing them to avoid recruitment and induction costs
    • High performers recover from failure 24 times as fast

    The report also shows that high performing organizations spend 22 percent less time on unplanned work and rework. For a business that’s looking to protect its bottom line and improve forward planning, this could be a huge advantage.

    Evolution, Not Revolution

    The traditional corporate approach to new ways of working is “big bang”—lots of change, all at the same time. Businesses need to remember that DevOps doesn’t have to be all or nothing. Rather, incorporate elements of DevOps into existing service management capabilities—it’s an approach discussed during Ignite at DevOps Days London. Making small incremental improvements can lead to benefits, with less risk attached.

    Whatever the results of the post-referendum negotiations are, U.K. businesses need to put themselves into a strong position to survive in a global market. Deploying better software, faster, will definitely help.

    ITSM Zone is an organization that specialises in best practice e-learning. Courses include BRM Professional, Certified Agile Service Manager and the DevOps Foundation.

  • How to Conquer Test Automation for Your Mobile Testing

    How to Conquer Test Automation for Your Mobile Testing

    Developing your mobile app is just the initial step toward preparing it for market. It first needs to work flawlessly over thousands of different devices, each running over different mobile operating systems with their own version, and inside any of hundreds of unique local networks. On top of that, every feature has to be tested for fast performance.

    That’s a lot of work!

    On top of that, today’s DevOps standard demands that you get it all done in a matter of weeks, instead of months. Eventually, it will be days instead of weeks.

    DevOps1

    This demands test automation. Manual testing beyond going over new code for the next version of your app no longer is acceptable. Mobile applications are ultra-competitive; If an app doesn’t rise to a certain rank within days, it is considered a failure. Mobile test automation underwrites the rapid release cycle necessary to sustain the latest and greatest features on your mobile offering to the public.

    Four Hurdles to Achieve Mobile Test Automation

     Find the Right Test Automation Tool

    The capacity to automate test scripts scratches the surface, but the right mobile testing tool should have more. To support a greater DevOps strategy, it should be able to connect to the cloud and integrate seamlessly to continuous integration servers such as Jenkins to automate as much of the DevOps process as possible.

    In addition, it must run on both native and object web properties, making identification of the components of the app as precise as possible. It should be able to perform more than just functional testing—an automation tool must also allow for good performance testing with network virtualization and load testing options.

    Integration into Existing Testing Environments

    What happens when your test script is perfect but the tool doesn’t accept the language the script was written in? To solve this challenge, you need a tool that can handle all the big testing environments: Selenium, QTP, Microsoft Visual Studio, IBM RFT, Smartbear Testcomplete, Java, Pearl, Python and Ruby. You should be able to write a test script in one of these languages and be able to convert it to any of the others instantly.

    devops2

    Parallel Execution and Adaptability to New Technologies

    The advantage of automated mobile testing is that the scripts run while you are fast asleep, doubling your testing productivity. If you can run the same test on more than one device at the same time, you are increasing the productivity of your mobile testing exponentially. The right test automation solution allows for parallel execution, either by running multiple tests on devices connected to your local computer, or really scaling up by running a single script over tens or even hundreds of devices connected through the cloud. This can be accomplished by setting up a dedicated mobile device lab.

    With the matrix of devices, operating systems, versions and local networks expanding rapidly, parallel execution is a must to enable you to increase your test coverage as fast as the test coverage itself is multiplying.

    The biggest reason for the increase in test coverage is the myriad new mobile devices with new technologies coming to market. The best test automation tools are those that anticipate and are ready to test over new platforms the moment they are made available to the public, and even while still in beta.

    Support and Learning: As Painless as Possible

    Even with the best of everything, you still need to learn the testing tool. You also need to be able to react quickly to every technical issue in your mobile testing. The right mobile testing provider gives you a practical training program, even a certification process, and provides you with 24/7 support. You are investing huge amounts of money to reduce your release time by days, even hours per cycle.  To lose this advantage because of a third party’s inability to reply to your needs in a timely manner is ludicrous. The right mobile testing providers know what’s at stake for you and prioritize their response times accordingly.

    The return on investment in the right test automation strategy is priceless. But to realize it, you have to make sure the biggest hurdles are cleared.

  • Using Case Management to Tackle the Unknown

    Using Case Management to Tackle the Unknown

    One of the biggest challenges for an organization is producing IT response models that accurately reflect real-world scenarios. It’s pretty straightforward to establish protocols for predictable situations. We call these “standard” scenarios.

    It gets harder when you have to tackle the unknown.

    “Case management,” as it’s called, involves establishing strategies and methods to approach unpredictable situations. In my recent whitepaper, titled, “How IT Response Models Drive Modern Operations,” I explain the benefits of combining these two approaches to have a complete model for all forms of responses that arise.

    Standard response models establish and standardize processes for certain situations. Companies that I have worked with use standardization to increase performance and improve outcomes through to faster response times, more efficient resource usage and proven methodologies. Agile methods have accelerated the pace of change; to keep up, your organization should pinpoint opportunities for automation and enhanced collaboration. Many companies are using DevOps to do so, boosting workflows by integrating new communication and collaboration tools.

    It’s all great until a situation arises that has no response template to follow. Then organizations fill the gap with case management. Unfortunately, most IT organizations are not even aware that case management discipline exists. Sometimes their business has case managers, but it does not occur to apply the same methods to IT. These organizations perform ad hoc case management without any formal guidance, rules, resources or methods. As a result, they often perpetuate unnecessary inefficiencies and fail to address business-critical problems.

    By applying a level of formality to case management, organizations can confront the unfamiliar head on and maximize their chances of handling incidents successfully. By acquiring and analyzing useful data, and devising ways to improve mechanisms over time, they eventually can create new standard models.

    Embracing the flexibility and agility afforded by DevOps is key to a solid case management strategy. Case workers can choose procedures from any number of sources to assemble a case management process. They can create toolchains to connect the procedures, making team hand-offs and collaboration more efficient and effective. This allows organizations to structure and control the response process as much as possible, even in unpredictable situations. If you have the right tools to help your teams work together, you can better adapt and respond to new information, external events and actions taken. And, as I explain in my white paper, the benefits of case management can extend beyond expectations and lead to greater flexibility in responding to user needs as well as higher customer and user satisfaction.

    Standardization is the goal: Although we can never completely standardize the world, you should do your best to transform the uncharted into the defined. Having a robust case management process allows you to identify new unfamiliar scenarios and ultimately develop mechanisms for standard models of response. By treating cases with the same level of rigor as standardized procedure, your IT department can truly maximize the benefits of DevOps.

    The standard+case approach introduces case management to our thinking for the same reason that we introduced DevOps: to bring in defined practices, mature management, relevant reporting and structured improvement so we can be more effective and efficient at responding to the situations the world presents to us.

    Check out my white paper for more on info on how to implement standard+case.

     

    About the Author/Rob England

    rob_englandRob England B.Sc., MIITP, CITP is an independent IT management consultant, trainer and commentator based in Wellington, New Zealand. Rob is an internationally recognized thought leader in IT Service Management (ITSM) and a published author of seven books and many articles, best known for his controversial blog and alter-ego, the IT Skeptic. He speaks regularly at international conferences. In 2005 Rob founded his company, Two Hills, with the motto “Sensible Business Practices.”

    Books: http://www.twohills.co.nz/books

    Blog: http://www.itskeptic.org/

  • Can DevOps Be Applied to Production Networks?

    Can DevOps Be Applied to Production Networks?

    The key goal of DevOps is to bring development and operations together, bound by a common set of practices. For this to become reality, developers need to think more like the operations team—focusing on stability and reliability—while operators need to think more like developers—focusing on agility and speed. But how widely can this be applied?

    We say regularly the goal of application development is to deploy new features into production continuously—daily, weekly or monthly, if possible. But what about the production infrastructure itself? Can we apply DevOps practices to making changes to the production infrastructure on which these applications run?

    Recently, I met with customers who want to implement DevOps practices to how they manage their operational network, applying continuous deployment to the production network. For example, they would like to design, test and then deploy new network services such as load balancing and firewalls into production immediately to enable new applications and services—actions that currently could take weeks or months. Is this kind of continuous deployment to be expected, or is it pushing DevOps too far?

    Let’s look at how key concepts of DevOps might be applied to adding network services to a production enterprise network:

    1. Virtualize services: To enable rapid deployment of applications, it was first critical that they be enabled with virtualization and in the future, with containers to make them portable. We would need to apply this same approach to production network infrastructure if we expect to enable rapid deployment of new infrastructure. Unfortunately, there is no standard way to make physical network equipment portable. Of course, shifting heavily to software-defined networking (SDN) enables virtualization for free, but it doesn’t make even virtual network equipment “standard.” In the world of networking, there are a number of “standard” interfaces and modeling languages: SNMP, NetConf, Yang and TOSCA (though not originally designed for networking), to name a few. Using one of these standard interfaces, in combination with virtualization, potentially could enable the agility required for continuous deployment of network services.
    2. Automate: DevOps success depends on automating the entire process of development, test and deployment so the process can be continuous. The same level of automation would need to be provided throughout the process of designing, testing and deploying new network services onto production networks. Network testing is very similar to other types of hardware and software testing so most test automation frameworks can be applied. However, network testing requires automation of the environment setup, and it also requires traffic generation to test with realistic network conditions.
    3. Continuously deploy: While this is still a dream for many companies attempting to achieve DevOps nirvana, a key requirement for using DevOps for production network configuration is to be able to deploy new services continuously into a live production network. Most of the configuration management tools available today are good at configuring servers and software, but are more immature when it comes to configuring networks, which are far more complex and inter-dependent than a single server. A tool would be required that allows the configuration of the tested network to be deployed automatically in exactly the same way within a production network.
    4. Monitor Operation: A good DevOps practice monitors applications in production and uses that information in planning new services. While it would seem that network monitoring is quite mature, an open question is whether that data is useful in planning future network services for improved operation.

    Sandboxes for Network DevOps

    Sandboxes are tools for defining and testing infrastructure configurations (physical, virtual and application). A good sandbox allows users to model any infrastructure, including any type of network infrastructure. This model also can serve as a way to implement “virtual services.” Models can be created in Yang or TOSCA, and under the covers these models can automate access to network infrastructure using CLIs, SNMP and/or NetConf where appropriate. This allows network services to be defined and tested using a high-level model, rather than the low-level interfaces.

    Sandboxes also address automation by providing a context for automating not just individual network components but also entire configurations and connectivity that are required for a “network service.” In addition, automation can encompass traffic generators and test tools as part of the testing process.

    Sandboxes also are designed to set up and tear down a network service automatically so they can be used for continuous deployment of new services. The same automation used to create the sandbox for a network service also can be used to deploy it into production.

    Finally, monitoring used in production also can be performed in the Sandbox to compare performance between testing environments and production so future services can be improved.

    While applying DevOps to production infrastructure and services is challenging and immature, in principle it can provide significant improvements in the speed of deployment of new network services—and the applications that depend on those services.

    About the Author / Joan Wrabetz

    Joan-CasualJoan Wrabetz is the Chief Technology Officer for Quali. Most recently, she was the vice president and Chief Technology Officer for the Emerging Product Division of EMC. Ms. Wrabetz holds an MBA from the University of California, Berkeley, an MSEE from Stanford University, and BSEE from Yale University. She has taught as an adjunct faculty member at the University of St. Thomas, St. Mary’s University, and at the Carlson School of Business at the University of Minnesota. She holds patents in load balancing, distributed systems and machine learning classification and analytics.

     

  • WaveMaker Extends Lead in Enterprise Rapid Application Development with Out-of-the-Box RAD-based App Security

    Expanded Security Functionality Lets Developers Focus on Developing Great Apps, With Assurance of Protection Against Network Breaches

    MOUNTAIN VIEW, CA – July 14, 2016 – WaveMaker, Inc., a leading enterprise Rapid Application Development Platform software company, today announced two major enhancements to its enterprise-class Rapid App Development platform. Built with a strong foundation in application security, the WaveMaker platform now supports Single-Sign On for WaveMaker-built and deployed applications using Central Authentication Server (CAS), which permits users to access multiple applications by providing credentials such as UserID and password only once. WaveMaker also announced today that it meets the standards addressing the top ten list of web application vulnerabilities published by the Open Web Application Security Project (OWASP).

    Enterprises are increasingly challenged by the need to deliver new web applications rapidly while ensuring compliance with enterprise IT security teams. In response, WaveMaker built application security natively into the initial release of its RAD platform, and subsequently strengthened its security with enterprise-class, RAD-based application security. And now, WaveMaker’s announcement of CAS-based Single Sign-On furthers the company’s commitment to provide the highest level of application security while simplifying application access for users.

    For its part in pinpointing major network vulnerabilities, OWASP has become a critical, yet often overlooked, asset to application developers. The OWASP Top 10 represents a broad consensus of the most critical web application security flaws – gaps in security that are often easy for malicious actors to detect and exploit. By certifying compliance with the OWASP Top 10 list, WaveMaker assures developers that the applications they create with WaveMaker will comply with the directives of OWASP.

    “In the heat of the battle to expedite new apps to market, ‘rapid’ has become the mantra of many developers, both professional and non-professional,” said Didier Tournier, Product Marketing Manager, Gemalto. “But developers can’t afford the risk of sacrificing security for speed. From the beginning, WaveMaker’s RAD platform has encompassed security, not as a bolt-on, but as part of an integrated whole. We’re confident that our developers using WaveMaker can focus on creating great apps, and won’t have to obsess over the latest security risks.”

    Unlike other vendors of RAD platforms, WaveMaker’s focus on security extends beyond the application and to the APIs (Application Programming Interfaces) that allow multiple applications to link and interoperate. WaveMaker is the only RAD platform that allows developers to build native microservices-based applications, and today’s release introduces token-based authentication for APIs, allowing API keys to be generated rapidly for consumption by other applications.

    “Security was once an afterthought in application design, but those days are long past,” said Vijay Pullur, CEO of WaveMaker.   “Still, vestiges of those days remain, as the primary objective of application design, in the eyes of most developers, is to ensure that the application performs continuously and under heavy demand. But security cannot be exempted from that objective. That’s why WaveMaker believes that security must be a cornerstone of good application design, and a major component in ensuring software quality before an app goes live.”

    For more information on RAD application development or professional services from WaveMaker, visit http://www.wavemaker.com/get-started

    About WaveMaker

    WaveMaker’s software platform revolutionizes how enterprises build, deliver and manage modern custom applications, improving business agility and fostering innovation. WaveMaker leverages the latest trends and technologies in Rapid App Development (RAD) such as multi-device auto-responsive interfaces and componentized app assembly, Docker for app-optimized container deployment on private infrastructures, and APIs and Microservices Architecture (MSA) for scalable integration. WaveMaker, Inc., a Pramati Technologies company, is headquartered in Mountain View, CA with offices in Hyderabad, India. For more information, visit www.wavemaker.com, or like us on Facebook, follow us on Twitter, or connect with us on LinkedIn.

    ###

    Editorial Contact

    Michael Porter

    10Fold

    wavemaker@10Fold.com

    415-800-5373

     

  • What ‘Star Wars’ Can Teach Us About DevOps Automation

    What ‘Star Wars’ Can Teach Us About DevOps Automation

    Perhaps no movie has ever received the same level of hype as “Star Wars: The Force Awakens.” Longtime fans yearned for the latest episode of the sprawling saga to bring back some of the magic of the original movies, while paving the way for the next generation of the “Star Wars” universe.

    In this way, the current state of “Star Wars” provides a useful way for understanding the infrastructure evolution situation that many IT organizations now find themselves in.

    ‘Star Wars’ and DevOps Automation

    Just as “Star Wars” has lots of previous characters and concepts—from Han Solo to the Force itself—to weave into its new properties, DevOps-minded teams have their own legacy infrastructure (admittedly, not as glamorous or nearly as profitable as the 1970s vintage “Star Wars” canon) to bring into a future defined by virtualization, automation and cloud orchestration. This modernization effort can go several ways depending on what approach is taken:

    • Organizations may quickly run into difficulties if they treat their DevOps initiatives as simply a new type of silo, one that is focused intensely on virtual and cloud assets without ample attention paid to legacy and physical infrastructure. You could say that a similar tack was taken with the first Death Star: Despite all of the focus on its planet-destroying weaponry and enormous tractor beam (which hauled in the Millennium Falcon), the space station’s designers neglected its basic heating infrastructure, eventually settling on a small exhaust port that was vulnerable to torpedo attack (and, indeed, was destroyed in that exact way).
    • On the other end of the spectrum, creating a culture of collaboration supported by highly capable technical tools can ensure that DevOps innovation takes hold and facilitates business agility. Think of this ideal as being similar to the relationship between R2-D2 and Luke Skywalker when the latter was piloting his X-Wing Fighter. There was not only a good understanding between the two of them, but also the powerful automation capabilities provided by R2’s advanced circuitry.

    The new Star Wars movie provides an occasion to see how old and new infrastructure, such as that inside the Millennium Falcon, can work together.

    Overall, we can see here both a “dark side” and “light side” approach to DevOps transformation. An old joke about the Force is that it is a lot like duct tape: it has a dark side and a light side and it holds everything together. Something similar could be said about the variety of infrastructure types that support critical business applications. They can cause a lot of problems (e.g., they probably can’t match the credit card-swipe convenience of Amazon Web Services), they can provide some key advantages (e.g., by being easy to control and secure on-premises) and ultimately they are essential cogs for supporting a wide range of applications, especially within bimodal IT setups.

    Why the Millennium Falcon Would Have Benefited from a Better Self-Service Portal

    Since we are on the subject on supporting and holding things together, we should talk a little about the Millennium Falcon, a ship that always seemed to be on the verge of breaking down in the original films. Its hyperdrive for making the leap to lightspeed was spotty at best, and it took its fair share of bruises. Keeping it in working order and out of the clutches of the Empire was a full-time job for Han and crew.

    Part of the problem was the Falcon was this weird mix of old and new technologies. It could travel at warp speed, fire lasers and make the Kessel Run in less than 12 parsecs. But it also required human pilots and gunners; plus, it was accurately labeled a “bucket of bolts” by Princess Leia Organa during a critical escape sequence.

    Maybe the Millennium Falcon would have run a lot more smoothly if it had a self-service portal that helped keep tabs on what was going on around its decks. Are the ship’s countless modifications playing nice with its older components? Is there a technical problem hidden in one of its smuggling holds? Is the holographic Dejarik table from Episode IV eating up too many resources? Having a centralized automation platform would have helped with these issues of accountability, visibility and IT governance.

    One could say that the Millennium Falcon was already a rough approximation of environment-as-a-service (EaaS), since it passed muster in automating a lot of heterogeneous infrastructures implemented and modified by its various owners. But it could have gone further in bridging the gap, just as many IT organizations can take additional steps to ensure DevOps automation success by working with software such as CloudShell.

    The takeaway: “Star Wars: The Force Awakens” provides an occasion to do more than sit back and enjoy the lightsaber fights —it’s also a moment to see how old and new infrastructure, such as that inside the Millennium Falcon, can work together. With an EaaS and self-service automation solution, IT organizations can bring their legacy, physical, virtual and cloud assets together into a more agile combination.

    About the Author / Hans Ashlock

    HansHans Ashlock joined Quali in 2013 and heads Quali’s worldwide technical marketing.  Hans has more than 15 years of software engineering, product management, marketing and sales experience in automation software solutions addressing, cloud, networking, telcom, data center, federal, and semiconductor industries.  Before Quali, Hans was a founding member of a global engineering services company, developing products and services for enabling adoption of automation technologies. Though he only holds one patent, he’s glad he didn’t have to pay for it. An engineer at heart, Hans is passionate about the transformation to software-defined everything and its impact on business and technology. Connect with him on LinkedIn, Twitter, and SlideShare, or at www.qualisystems.com.