Transitioning from programmer to ASP-net architect [Translate]

Source: Internet
Author: User
Tags dotnet

Microsoft's dotnet development is definitely the kind of technology that makes it easier to get started. It is virtually impossible to be able to become a dotnet architect without three years or longer coding accumulation. Especially in large software projects, the architect is the core member of the project, connecting the link, so rup{rational Unified Process, emphasizing that software development is an iterative model interative models), RUP defines four phases (Phase): The Beginning (Inception), the elaboration (elaboration), the construction (construction), the Transition (Transition)} methodology also recognizes the architecture as the core, embodying 4+ The 1 view plays an important role in the entire software development process. Architects must be proficient in technology and familiar with the business, and the basic software life cycle of all stages of related technologies need to have the relevant accumulation and knowledge reserves, and these years of training is difficult to achieve this height.

To become a qualified architect must first be a qualified or excellent coding staff, for the development of coding is always the most important skill, in the coding process as long as they are good at thinking and analyzing problems, you can learn a lot of relevant knowledge and technology. Therefore, we must pay attention to the new knowledge and technology in the development process of learning, predecessors experience and results of learning. Some of the issues that should be considered during the coding process are:

1. Do you do unit testing yourself during the coding process, do unit tests using related tools, and if not, what are the reasons why you can't do unit tests?
2. Self-coded leak rate situation, code leak bug Cause analysis
3. Are you consciously refactoring the code, or are you introducing the idea of a design pattern in the refactoring process?
4. Whether to learn some advanced features of the C # language, such as reflection invocation, asynchronous processing, and so on.
5. Have you done research and comparative analysis on two distributed technologies for remoting and webservice?
6. Do you often study open source projects and open source code, such as Duwamish,petshop,nunit,enterprise library,nant
7. Whether the object persistence mechanism and the O/R mapping and other related technologies have done related research
8. Do you usually pay attention to the reuse and extraction of common components and common classes during the coding process?
9. Do you often develop tools to improve work efficiency and to consolidate learning knowledge when working and studying in peacetime?

Design and coding are really close and inseparable, and the waterfall model that separates design and coding is generally used only in large projects. And in time coding and design separation, is not the coder does not need to think, coding activity is always a creative labor, if the negation of this view, it means that the coding process completely does not require personnel intervention and can be fully automated. Therefore, in this talk about the design is mainly refers to the designers of the systematic thinking ability, designers should be higher than the developer station to analyze and consider the problem. One of the most important skills of a designer is the transformation of reality-> Abstraction, which needs to be addressed to methodological issues, where technical personnel need to accumulate knowledge of object analysis and design or structural analysis, and need strong database analysis and design capabilities. The depth and breadth of this accumulation is key to a design being a good architect.

So the issues to be considered in the design process are:
1. Are you currently capable of analyzing and designing for large or medium-sized applications or are they just independent functional analysis and design?
2. Is the design process consciously taking into account the components of the reuse and related interface design guidelines. It is possible to apply the relevant content of the analysis pattern and design pattern to the design process naturally.
3. Whether to Xp,rup, object-oriented, structural and other methodologies have a more systematic study and thinking.
4. Do you really understand the different guiding roles of system functional requirements and non-functional requirements on system design?
5. Is the function designed for yourself to reflect on the changes that have been made to your design so that the changes are not well adapted?
6. Do you often develop prototypes to validate your design ideas during the design process?
7. Do you focus on technology and start the analysis of professional business processes and focus on business modeling? The knowledge and skills that are often used in the dotnet architecture are
1.RUP methodology, 4+1 view. Use case driven Business Modeling-> Analysis Model-> Design Model
2. Use case pattern-> Analysis mode-> design mode
3. Common Distributed Technologies
4. Attention to non-functional requirements such as security, anomalies, logs, performance, etc.
5. Focus on the overall business of the application system

Transitioning from programmer to ASP-net architect [Translate]

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.