Develop a project charter to highlight the goals of the project that is about to undertaken. In addition, the group will develop a conceptual architecture. This high-level architecture will outline the various entities that are being managed in the system.
- Project Charter (10 pts)
- Entity Design / Conceptual Architecture (10 pts)
Your instructor may ask for a presentation of your project charter and entity design.
Knowing where you are going and being able to convey that direction to others is vital to a successful project. For this first group assignment, the group will develop a vision statement – a reminder and a standing stone which will guide decisions as the project moves along. Having a strong vision can be a compelling motivator for team members, stakeholders and possible investors. The scope portion of the document ensures that the important aspects of the project are considered and diversions are caught early.
Once the vision has been set and the team is clear on the project’s direction from a business perspective, it’s important to set the technical boundaries of the project. A conceptual (or logical) diagram of entities involved in the system can help to keep the technical team on the same page. Highlighting the key data that will be made available to the API and the type of data that will be stored in the database can make evident any design difficulties early in the process before getting too far into the implementation.
Turn in a single PDF document which has the project charter and the entity design (which will serve as your design document). You may add additional information that you feel will be valuable to convey the vision and to keep the project on track (i.e. use cases, requirements doc).
The example attached is based on the case study with regard to Geocaching outings (derived from Systems Analysis and Design, Kendall and Kendall). In short, Wayne (the customer) wants to have a geocaching application with the features described in this project charter. NOTE: This is a sample and can be a useful template for your project. It is provided to give you an idea of the level of detail that is expected. The entity diagram is a not related to the case study for which the project charter is written. It is provided as another example of what is expected.
You should cover all the aspects represented here. Remove the sample text and instructions before submitting. Remember to ensure your deliverables are professional and neat. (proper headers/footers, consistent font, use of built in styles, etc.)
The purpose of the entity design is to start to develop a high-level understanding of the data that will be managed in the system. This is not a database design, but a conceptual design. The entities should be the major objects that will be managed in the system. The relationships should be high-level and not include cardinality or modality. The attributes should be the major pieces of data that will be stored in the system. This is a high-level design and doesn't have to include every piece of data that will be stored in the system. The goal is to understand the major entities and the relationships between them. This will help to guide the development of the system and ensure that the team is on the same page with regard to the data that will be managed.
When considering the entity design, you will need to consider the following:
- What are the major entities in the system?
- What are the relationships between the entities?
- What are the major attributes of the entities?
Your entity design should have at the very least 3 tables with relationships between them. You can have more tables if you feel it is necessary. You should have a minimum of 5 attributes per entity. These are minimums and you should feel free to add more if you feel it is necessary. The goal is to have enough interesting data and relationships to make your API interesting and challenging to develop.
Some of the following are ideas for projects that you could consider. You are not limited to these ideas, but they are provided to help you think about the types of projects that you could consider. You should feel free to come up with your own ideas for projects. The only requirement is that the project should be interesting and challenging to develop.
- An IT ticketing system for a small company. This system would allow users to submit tickets for IT issues and allow IT staff to manage the tickets.
- A small library management system. This system would allow users to check out books and manage the library collection. Could also allow for user ratings and reviews of books.
- Small restaurant orders, inventories and sales management. This system would allow users to manage tables, orders, and inventory.
- Superhero API. This system would allow users to manage superheroes and their powers. This could be a fun project that would allow you to be creative with the data that you are managing.
- Movie API. This system would allow users to manage movies and actors. The API would allow users to keep track of the movies they've seen, actors they like or dislike, and other information about movies and actors.
- Event Management System. This system would allow users to manage events, attendees, and other information about events.
- A system for managing a small store. This system would allow users to manage inventory and sales.