In the final article of this series on enterprise-grade web apps, we review one of the key benefits of web frameworks: input validation. Though often abnegated to minutiae in the minds of many programmers, input validation forms the primary defense of most software against its two most significant weaknesses: hacking attacks and system errors.
Continue reading
All posts by Andrew Palczewski
Elements of Enterprise-Grade Web Frameworks – Part 11: Friendly Error Messages and Error Logging
Error messages are one of the few places where programmers can showcase their latent literary talents. Unfortunately, most developers are not Shakespeare, nor were meant to be, and so an effective framework that helps automate error message generation is key to a successful enterprise-grade system.
Continue reading
Elements of Enterprise-Grade Web Frameworks – Part 10: Foreign and Unique Keys
Foreign and unique keys are two components of enterprise web applications that help improve data integrity and define relationships between elements of the system. A well-built enterprise app will enforce the keys at both the database and application levels, providing business logic and validation at each system entryway.
Continue reading
Elements of Enterprise-Grade Web Frameworks – Part 9: A Robust and Scalable Database Backend
Since the database is often the central component around which enterprise applications are built, a robust and scalable database is an absolute necessity for enterprise app development. As the application grows and interfaces with other systems, the database becomes a central hub for system architecture and business logic. Out of all the factors that influence longevity of an application, the database design often outweighs even the application’s development framework.
Continue reading
Elements of Enterprise-Grade Web Frameworks – Part 8: Deployment Workflow
One does not simply develop software, take it live, and finish the project. In enterprise applications, the deployment is often just the beginning of the “Software Lifecycle” – the process by which the software is maintained and updated over the course of 10 to 20 years. The better the design and support of the software, the longer it will last and provide benefit to the client.
Continue reading
Elements of Enterprise-Grade Web Frameworks – Part 7: Role-based menus and privileges
In addition to user authentication, user roles and fine-grained privileges are a key component of enterprise systems. In order to handle multiple administrators and user categories, scalable systems must be built with customizable access control so that each user will have access to what they need, and no access to what they don’t.
Continue reading
Elements of Enterprise-Grade Web Frameworks – Part 6: Integrated User Authentication
User authentication is one aspect of enterprise-grade web apps that many frameworks get right. From ASP.NET, to Node.js, to Rails, most well-developed application stacks have a solution for user authentication.
Continue reading
Elements of Enterprise-Grade Web Frameworks – Part 5: Lazy-Loaded Data Grids
The lazy-loaded data grid has been a key feature of desktop applications, and is slowly making its way into web applications. Lazy-loading enables clients to view large amounts of data by initially loading only a small portion of the results. As the client scrolls toward the bottom of the screen, the next set of data is automatically loaded from the server.
Continue reading
IBM Researchers Analyze Which Graphs are Easiest to Read
A recent study by IBM User Interface Researchers at San Jose analyzed the effectiveness of various automated graphs in understanding data. In the paper, “Understanding Users’ Comprehension and Preferences for Composing Information Visualizations,” researchers used crowdsourcing to study how well individuals can answer statistical questions, given a type of graph.
Continue reading
Elements of Enterprise-Grade Web Frameworks – Part 4: N-depth Parent-child relationships
Parent-child relationships are the heart of most enterprise apps – enabling them to enumerate the hierarchical relationships present in most business processes. Every web framework needs to support parent-child relationships, however the key to a platform’s flexibility and usability is the amount of overhead involved in the implementation.
Continue reading