Just got this article from Code Project news letter, I think it is very useful for Architecture guys to avoid mistakes when doing architecture work.
- Scoping Woes. "This is the sort of situation where a simple travel booking system ends up with full expense claim management facilities being built into it, with inevitable repercussions for project costs, timescales and quality...It is really true that no security is needed beyond simple login? Once logged into the system can users really perform any system operation?"
- Not Casting Your Net Widely. "A related mistake that many of us have made is to focus on just a couple of our system stakeholders – classically the acquirer (who is paying for the system) and the end users get all of the attention."
- Just Focusing on Functions. "…unless the system exhibits a whole range of qualities (such as performance, security, maintainability and so on) it is unlikely to be successful."
- Box and Line Descriptions. "There are two reasons why the [single, all inclusive] huge Visio picture doesn’t work well as an architectural description: firstly, it’s trying to show too much information in a single representation, and secondly, no one is really sure quite what each of the different types of symbol that you’ve drawn mean."
- Forgetting That It Needs to be Built. "Common things to watch out for related to building the system include designs that the developers or testers don’t really understand, technologies that they aren’t enthusiastic about or don’t have the time to learn, and new technologies that don’t yet have good tool support or perhaps impose a new and unfamiliar way of working."
- Lack of Platform Precision."…its no longer sufficient to simply say that you “need Unix and Oracle” when specifying your platform. You need to be really precise about the specific versions and configurations of each part in order to ensure that you get what you need. This will allow you to avoid the situation where you can’t deploy your system because someone has helpfully upgraded a library for one part of the platform without realising that it means that something else will no longer work."
- Making Performance and Scalability Assumptions. "Start considering performance and scalability early, create performance models to try to predict key performance metrics and spot bottlenecks and get stuck into some practical proof-of-concept work as your design ideas are forming. This will all help to increase confidence that there aren’t any performance and scalability demons lurking in your design."
- DIY Security. "A mistake made in many systems over the years has been to try to add security into the system using “home brew” security technology. Be it custom encryption algorithms, a developer’s own auditing system or an entire DIY access control system, locally developed security solutions are rarely a good idea. While most of us think we could probably whip up a clever piece of security technology in no time, we’re usually wrong."
- No Disaster Recovery. "The key to getting resources to implement a DR mechanism for your system is to be specific and quantify the cost of system unavailability in a number of realistic scenarios. If you can also estimate the probability of the scenarios occurring then you can use these two figures to convince people that DR is important and to justify a certain level of budget to implement it."
- No Backout Plan. "Make sure that whatever happens during the deployment of your system or upgrade that you have a documented, reviewed and agreed backout plan to allow you to restore the environment to its state before you started deployment."
分享到:
相关推荐
top-phonegap-mistakes, 开发者新给Phonegap的常见错误列表 Phonegap开发人员指南上次更新:2016-02-09最新的错误由开发者 cordova/phonegap如何将 cordova/phonegap应用到白名单系统Whitelist笔记- Cordova Cordova...
### 三、Quest Software公司介绍 - **概况**:成立于1987年,于1999年上市(纳斯达克代码:QSFT),在全球范围内拥有超过2,750名员工,其中近三分之一专注于研发。 - **业绩**:2006年营收超过5亿美元,在2001年至...
### 实时软件开发中的常见误区及其规避方法 #### 引言 无论是初学者还是资深专家,在进行实时软件开发的过程中往往容易重复犯同样的错误。这些错误不仅会影响项目的进度和质量,还可能导致软件出现难以预料的问题...
藏经阁-Top 5 mistakes when wriiting a.pdf
The Software Insider’s Guide to Getting Hired and Getting to the Top! Here’s all the information you need to jumpstart your software career: the best ways to get hired, move up, and blaze your way ...
In contrast, most software developers only ever get to know a handful of large programs well—usually programs they wrote themselves—and never study the great programs of history. As a result, they ...
Effective Software Testing provides experience-based practices and ... This book details 50 specific software testing best practices, contained in ten parts that roughly follow the software life cycle.
很优质的官方资源,可以用于内部培训、客户宣讲、产品展示、市场活动等
I hope you’ll find that the mistakes you found have all been fixed—and replaced by a whole new batch of mistakes that you can tell me about for the third edition! Of course, as I've said before, ...
### SQL Server数据库使用中最容易犯的10个错误 #### 一、未知的可扩展性需求(Unknown Scalability Requirements) **知识点概述:** 在数据库设计之初未能充分考虑系统的可扩展性,导致随着数据量的增长,系统...
Whitesmoke is an English learning software. It can correct your writting or Grammer mistakes automatically.
CHARLES_RIVER_MEDIA-Preventative Programming Techniques Avoid and Correct Common Mistakes
As a result, they repeat one another's mistakes rather than building on one another's successes. Our goal is to change that. In these two books, the authors of four dozen open source applications ...
Brian Marick 的《经典错误测试教程》(Classic Testing Mistakes)旨在揭示并分析这些常见错误,并提供解决策略。本文将详细介绍该教程中提出的五大主题及其相关的经典错误。 #### 主题一:测试的角色 **错误1:...
Software Engineering is not ...have found mistakes, and have offered suggestions. I would like to thank Ramon, who suggested this book, and the McGraw-Hill editorial staff for their help and suggestions.
I hope you’ll find that the mistakes you found have all been fixed—and replaced by a whole new batch of mistakes that you can tell me about for the third edition! Of course, as I've said before, ...
英语写作,该出指出了国人在英文写作中经常犯的一些错误
### 常见技术英语论文中的错误分析与规避策略 #### 概述 在学术界,尤其是工程技术领域,发表英文论文对于研究生来说是一项至关重要的任务。然而,由于语言背景、教育经历以及专业知识等方面的限制,中国研究生在...