- ASP.NET 3.5 Application Architecture and Design
- Vivek Thakur
- 691字
- 2021-05-28 17:47:08
Project Planning and Prototyping
In this phase, we elaborate on the project requirements by capturing all business requirements in specially formatted documents called use cases, and then prepare a prototype as well as a project plan for the next stages of the project life cycle. Once the project initiation and inception stage is over and the project owners have selected a development team, the second phase starts, in which the architect or the development team leads and the project manager will work out a plan and a development cycle. In this phase, most of the major pre-development activities take place. These activities are described in more detail below:
The project manager will need to create a plan that will lay out all of the major tasks in the project life cycle, along with the resources and time required. Without a plan it would be very difficult to track and manage the progress of different stages of a project. The project plan at this stage might not be able to cover the actual development phase, because this will depend on the completion of the following tasks.
The architect/business analysts will first start this phase by creating use cases, which can be simple documents explaining the interaction between the application and the end user. A "use case" lists the interaction steps sequentially, along with other possible paths for a single interaction with the user. Each use case should capture a specific scenario from end-to-end. It should also list all pre-conditions as well as post-conditions for that scenario. Here is a sample use case:

There are many ways of creating use cases; we can also create them diagrammatically. But to keep things simple, we can follow the above use case, which is easier to understand. After the major use cases are covered, we can move to the next step in this elaboration phase, which is, prototyping.
The Graphical User Interface (GUI) of any project is one of the most critical areas in terms of its overall presence and credibility. And many projects are delayed because of repeated changes in the GUI throughout the project life cycle, adding to the frustration of the programmers. For web projects, designing a working prototype in HTML before starting to work on any other activity can be very helpful, for project stakeholders as well as developers. A working prototype means that the different HTML pages would be linked to each other (based on the use cases we covered earlier), and can use dummy data to give a realistic impression of the actual project.
A GUI prototype is not only a part of the Proof of Concept(POC), but also forms an important extension of the project requirements specifications, in a graphical sense. Properly-linked HTML pages with some dummy data showing the important business process flows can be an indispensable tool, aiding in the visual understanding of the project, as well as answering all kinds of technical and business-related questions. That is why it is highly recommended to develop a prototype before starting the actual coding for a project.
The architect and the technical lead will create an object model of the system, highlighting all important entities and how they will interact. We will learn more about how to create an object model in the coming chapters of this book.
A database model would be created based on the class model described above. This data model, along with the object model and use cases, will help provide the development team with clear instructions, and paths to the targets and objectives. It is very common for a data model to be created before a class model. It's also very common for these two steps to be completed at the same time, as they are very closely related.
Based on the use cases, the prototype and the object/data models, the project manager, along with the architect and the team lead, will develop a project plan for the construction phase, in which the coding takes place. This plan will highlight the milestones as well as list all of the important deliverables of that phase.
- ANSYS 14熱力學·電磁學·耦合場分析自學手冊
- 從零開始:Photoshop CC中文版基礎培訓教程
- 基于元胞自動機的城市路網交通流建模與仿真
- Celtx: Open Source Screenwriting Beginner's Guide
- Drupal Multimedia
- SOLIDWORKS 2021中文版基礎入門一本通
- CakePHP 1.3 Application Development Cookbook
- Django 1.0 Website Development
- After Effects影視特效立體化教程:After Effects 2021(微課版)
- Blender 2.5 Materials and Textures Cookbook
- SOA Patterns with BizTalk Server 2009
- 會聲會影視頻編輯實戰秘技250招
- 高等院校電腦美術教材:CorelDRAW X7中文版基礎教程
- Microsoft SharePoint 2010 and Windows PowerShell 2.0: Expert Cookbook
- Configuring IPCop Firewalls: Closing Borders with Open Source