Đang tải... (xem toàn văn)
mô tả về sdlc và ứng dụng trong các trang web. Nêu các chức năng thêm, sửa, xóa
Trang 1ASSIGNMENT 2 FRONT SHEET
Unit number and title Unit 7: Software Development Life Cycle
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism I understand that making a false declaration is a form of malpractice
Grading grid
Trang 2❒ Summative Feedback: ❒ Resubmission Feedback:
Internal Verifier’s Comments:
Signature & Date:
Trang 36 Identify FRs and NFRs of Tune Source Project 11
7 Discuss the relationships between the FRs and NFRs 12
8 Discuss the technique (s) you did use to obtain the requirements 13
a Introduction 13
b Requirement gathering techniques 13
c Conclusion 14
P6 Use appropriate software analysis tools/techniques to carry out a software investigation and create supporting documentation 14
1 Use Case diagram for the entire system 14
2 Use Case specification for 2 Use cases 16
3 Context Diagram 20
4 Data Flow Diagram – Level 0 for the whole system 21
5 ERD for the whole system 24
P7 Discuss, using examples, the suitability of software behavioural design techniques 25
1 Use Mock-ups and Wireframes in projects 25
Trang 42 Client-Server Architecture for student management 31
3 Use the PHP & MySQL programming languages to implement those interfaces according to the requirements of the specific use case (at least 2 use cases as described in
Trang 5Table of Figure
Figure 1: Stakeholder 6
Figure 2: Use Case diagram for the entire system 16
Figure 3: Context Diagram 21
Figure 4: Data Flow Diagram 22
Figure 5: ERD 24
Figure 6: Signup interface 26
Figure 7: Login interface 27
Figure 8: Account 28
Figure 9: Home 29
Figure 10: From add 31
Figure 11: Student Information System 33
Trang 6I Introduction
Net Education Institute (NEI), one of Vietnam's leading organizations in the field of
education, recognizes the importance of improving administrative and academic processes through the application of software technology In the previous stage, I discussed with NEI about software development models as well as developed a feasibility analysis report of NEI's student management project At this stage, I convinced the Network Education Institute (NEI) to choose my project for development The project was initiated with the goal of creating an efficient and flexible software system that automates various
administrative and academic activities To carry out this project, NEI chose our company as a partner to develop software that met their specific requirements and needs
In this context, our task is to take on the role of Systems Analyst to carry out the analysis and design phase for NEI's new system This article will focus on the process of analyzing project requirements, using appropriate techniques and tools, and designing the system's architecture based on the identified requirements At the same time, we will also discuss the appropriateness of software behavioral design techniques and technology selection in the context of the NEI project We hope to contribute to building an effective software system, helping NEI improve its operating processes and bring a better learning experience to students
Trang 7II Contents
P5 Undertake a software investigation to meet a business need 1 What is stakeholder?
Stakeholder or stakeholder is a term to refer to individuals, a group of people or an organization that has a close relationship with the business and is interested in the operations and success of the project These are people who are interested and have the ability to share resources and they can influence and be directly or indirectly affected by the business such as strategies, plans, and business activities, programs, Stakeholders also include important stakeholders who have the ability to influence or decide on the survival and development of the business
Figure 1: Stakeholder
Trang 82 Types of Stakeholder
Stakeholders are individuals, groups, or organizations that have an interest or concern in a particular project, organization, or system They can influence or be affected by decisions and actions related to that entity Here are some common types of stakeholders:There are two types of stakeholders in a project which are internal stakeholders and external
stakeholders:
a Internal stakeholders: These stakeholders are directly linked to the organization
or project They may include:
Owners: The individuals or groups that own the organization, such as shareholders or partners
Employees: People who work for the organization, including managers, employees, and executives
Managers: Individuals responsible for supervising and directing the activities of the organization
Board of Directors: Individuals elected or appointed to represent the interests of shareholders and provide governance
b External stakeholders: These stakeholders are outside the organization but can
still influence or be affected by the organization's actions They may include:
Customers: Individuals or organizations that purchase or use the products or services offered by the organization
Suppliers: Individuals or organizations that provide goods, services, or resources to the organization
Shareholders/Investors: Individuals or entities who own shares or have invested in the organization
Government: Regulatory bodies, government agencies, or legislative bodies that establish laws, regulations, and policies affecting the organization
Trang 9 Community: People living or working in the vicinity of the organization or those who are impacted by its operations
Competitors: Other organizations or entities operating in the same industry or offering similar products or services
Non-Governmental Organizations (NGOs): Independent organizations that work towards social, environmental, or humanitarian causes and can have an interest in the organization's activities
Media: Journalists, reporters, and media outlets that can influence public perception of the organization
c Collaborative stakeholders: These stakeholders work closely with the
organization to achieve common goals They may include:
Partners: Other organizations or individuals with whom the organization collaborates on specific projects or initiatives
Alliance: Formal or informal groups formed to address common interests or concerns
Trade Unions: Associations that represent the rights and interests of workers in an organization
Professional Associations: Organizations that represent professionals in a specific industry or field
3 Roles of Stakeholders
Direct the Management: Stakeholders can serve on the board of directors and so
contribute to decision-making They can oversee certain departments like as service, human resources, or research and development to ensure success
They Bring in Money: Stakeholders are the company's largest investors, and they can
withdraw or deposit funds at any moment Their judgment will be influenced by the company's financial success As a result, they may put pressure on management for
Trang 10financial reports and, if required, modify methods Some stakeholders may even raise or decrease their investment in order to affect the market share price and so make the conditions more beneficial to them
Help in Decision Making: The board of directors includes major interests As a result, they
make choices alongside the other board members They also have the ability to sway judgments They also introduce new ideas and threaten management to obey them The stakeholders also have complete authority to designate top management As a result, they are present in all significant decision making sectors They also make judgments on acquisitions and liquidations
Corporate Conscience: Large stakeholders are the company's primary stakeholders, and
they have overseen all of the company's important actions They have the power to compel the corporation to follow human rights and environmental regulations They also monitor outsourcing activities and may vote against any business action that jeopardizes the company's long-term goals
Other Responsibilities: Apart from the four core jobs listed above, they also perform
various minor roles in the firm They can spot fresh opportunities for market penetration and revenue growth They can contribute additional marketing ideas They also draw additional investors to the firm like honeybees Furthermore, they have the authority to make all key social and environmental choices
4 Stakeholder role with interest in Tune Source Project
managers take the lead in project planning, execution, monitoring, control, and closure Here is an overview of
Trang 11the project manager role, responsibilities, required credentials, projected wages, and job-search advice
Tune Source services to listen to music and buy it, which boosts the company's revenue
Luu Le, Hong Hanh
Co-Founders of Tune Source
Co-Founders will be able to offer ideas, develop the project, and handle budgeting and
As it has worked with the ISP to manage the site, get knowledge with Internet technologies
Huy Hoang, Hoai Nam
responsible for the entire success of the project, including the selection of the project manager and team, the
development of success criteria, and the goals of the successful conclusion of the project
5 Stakeholder Requirements
Trang 12Minh Nguyet Carry out the project and assist t he team in developing software to meet the
speciffcations
digital music downloads
market as quickly as feasible
purchase non-copyrighted music downloads via kiosks in their stores and via the internet via their website
6 Identify FRs and NFRs of Tune Source Project a Definition of Functional Requirements
A Functional Requirement (FR) describes the service that the program must provide It refers to a software system or a component of one A function is nothing more than the software system's inputs, behavior, and outputs It might be a computation, data manipulation, business process, user interaction, or any other specialized activity that defines the function of a system In software engineering, functional requirements are also known as functional specifications
b Definition of Non-Functional Requirements
Trang 13Non-Functional Requirement (NFR) describes a software system's quality attribute They evaluate the software system based on its
responsiveness, usability, security, portability, and other non-functional characteristics that are crucial to its success "How quickly does the website load?" is an example of a nonfunctional requirement Non-functional requirements that are not met can lead to systems that do not meet the demands of the users
7 Discuss the relationships between the FRs and NFRs
In the context of software engineering and requirements engineering, FR (Functional Requirements) and NFR (Non-Functional Requirements) are two types of requirements that describe different aspects of the system Understanding the relationship between FR and NFR is critical to developing a comprehensive and well-designed system Here is a discussion of their relationship:
The first is a complementary relationship: FR and NFR complement each other FR specifies the functional capabilities and behaviors that a system should exhibit, such as the specific features, functions, or actions it must perform On the other hand, NFR defines the quality attributes or constraints that the system must meet, such as performance, reliability, usability, security, or scalability Both types of requirements are necessary to achieve an efficient and successful system FR addresses what the system should do, while NFR addresses how well the system should perform Second, NFR may have a dependency on FR The functional capabilities specified by the FR often have an impact on the non-functional qualities of the system For example, a system's response time (NFR) may
depend on the complexity or volume of tasks it needs to perform (FR) Therefore, achieving certain functional requirements can directly affect the fulfillment of related non-functional requirements This is a dependency relationship The trade-off relationship of FR and NFR may then require trade-offs during system design and implementation Sometimes,
meeting certain functional requirements may come at the cost of sacrificing or compromising some non-functional requirements For example, optimizing system performance may require some trade-off in availability or vice versa Balancing the
Trang 14implementation of both types of requirements often involves making decisions based on constraints, project priorities, and stakeholder needs Next is the impact relationship on how changes in FR can have an impact on NFR and vice versa Modifications to functional requirements may affect non-functional aspects of the system Similarly, changes in the NFR, such as modifying performance goals or security requirements, can have an impact on functional behavior Therefore, it is important to consider the interdependencies between FR and NFR throughout the software development lifecycle to ensure that modifications to a requirements type are properly evaluated and coordinated with the type Other
requirements Finally, there is the partnership Collaboration and coordination between FR and NFR stakeholders is necessary for a successful system Various stakeholders, such as business analysts, developers, testers, and end users, contribute to capturing, analyzing, and validating both functional and non-functional requirements Collaboration helps understand the relationships, dependencies, and priorities between FR and NFR, ensuring that they align with business goals and user needs
From the above relationships, we see that FR and NFR are related to each other and influence each other They address different aspects of system requirements, and their effective management and coordination are necessary to develop a system that meets user expectations, performs well, and meet quality attributes
8 Discuss the technique (s) you did use to obtain the requirements a Introduction
In this section, we will discuss the techniques used to collect and define the functional requirements(FRs)and non-functional requirements (NFRs) of the project to build a
student management systemfor NEI Thesetechniques are responsible for ensuring that we properly understand user needs and desires andcanapplythem correctly during system development
b Requirement gathering techniques
I recommend 3 main techniques as follows:
Trang 15The first was user interviewing by conducting interviews with NEI students, faculty, and staff to better understand their needs and desires for a student management system Through this, we can determine the necessary features and quality requirements The second is brainstorming by holding team meetings to discuss requirements in detail and ensure consensus among stakeholders on what is needed for the project Finally, analyze the document by studying relevant documents such as NEI policies, similar systems, and feedback from users to better understand the project context and requirements
c Conclusion
Through the use of requirements gathering techniques such as user interviews,
groupdiscussionsanddocument analysis, we have obtained a comprehensive and accurate picture of the functional andnonfunctional requirements of the project project These techniques have helped us identify anddefinethenecessary requirements to develop a student management system for NEI, ensuring that theprojectisimplemented effectively and meets the needs of users, use
P6 Use appropriate software analysis tools/techniques to carry out a software investigation and create supporting documentation
In this section, we will use structural and behavioral modeling techniques to analyze
therequirementsidentified in Task 1 We will create supporting documents such as use case diagrams , Use Case specification,context diagram, data flow diagram and ERD data model for the entire student management systemforNEI
1 Use Case diagram for the entire system
In the project of building a student management system for NEI, the Use Case diagram is a modeling tool that describes the interaction between the user (agent) and the system, and identifies the main functions that the system performs provided to describe key features and interactions between users and the system The Use Case diagram for this entire system will include:
Trang 16User:
Log in to the system
Manage student records
Manage class lists
Record student scores and achievements
Look up student information
System:
User authentication
Store and manage student profile information
Manage class lists
Record student scores and achievements
Look up student information
Create reports and statistics
Use Case (Feature):
Login: User logs into the system to access functions Student profile management:
Add student records: Users can add new student records to the system
Edit student records: Users can edit information in student records
Delete student records: Users can delete student records from the system
Manage class lists:
Create new class: Users can create new classes in the system
Edit layer: Users can edit information in the layer
Delete class: User can delete class from the system
Record student scores and achievements:
Enter scores: Users can record students' scores in subjects
Trang 17 Record achievements: Users can record student achievements
Look up student information:
Look up by name: Users can look up student information based on name
Look up by class: Users can look up the list of students of a specific class
Reporting and statistical requirements:
Report request: Users can request the system to generate reports about student information, classes or learning results
Statistics request: Users can request the system to create statistics about student information, classes, and learning results
Figure 2: Use Case diagram for the entire system
2 Use Case specification for 2 Use cases
Below are detailed descriptions of three use cases in NEI's student management system: "Add student records," "Record student grades," and "Look up student information."
2.1 Use case: Add student records
Trang 18Use Case ID: BH00123
Use Case Name: Add student record
Participant: User
Description: This use case allows the user to add a new student record to the system
Preconditions:
The user is logged into the system
The user has the appropriate permissions to add student records
Post-condition:
Student records were successfully added to the system
Event stream:
Step 1: The user selects the "Add Student Profile" option from the system's menu
Step 2: The system displays a form for the user to enter the details of the new
student record (e.g name, date of birth, address, contact information)
Step 3: The user enters the necessary information into the form
Step 4: User submits form
Step 5: The system checks the validity of the entered information
Step 6: If the information is valid, the system creates a new student record with the
provided details and adds it to the system
Step 7: The system displays a success message to the user indicating that the
student profile has been added
Step 8: End use case
Alternate stream:
If the entered information is invalid (e.g missing required fields, invalid format), the
system displays an error message to the user and asks them to correct the information The
event flow then continues from Step 3
Trang 192.2 Use case: Record student scores
Use Case ID: BH00124
Name Use case: Record student scores
Participant: User
Description: This use case allows users to record grades for students in one or more subjects
Preconditions:
The user is logged into the system
The user has the appropriate permissions to record student scores
The student whose grades are being recorded already has a record in the system
Post-condition:
Scores for students are successfully recorded in the system
Event stream:
Step 1: The user selects the "Record student scores" option from the system menu
Step 2: The system requires the user to enter the student's identification code (e.g.,
student code, name) to retrieve the student record
Step 3: User enters student identification code
Step 4: The system searches student records based on the entered code
Step 5: If a student record is found, the system displays the student's information
and a form to enter scores for the corresponding subjects
Step 6: Users enter scores for related subjects into the form
Step 7: User submits form
Step 8: The system checks the validity of the entered scores
Step 9: If the scores are valid, the system attributes them to students in the
respective subjects
Trang 20 Step 10: The system displays a success message to the user indicating that the score
has been recorded
Step 11: End use case
Alternate stream:
If a student record is not found based on the code entered, the system displays an error message to the user indicating that the student does not exist The event stream then
returns from Step 3, allowing the user to enter another code or take the appropriate action
2.3 Use case: Look up student information
Use Case ID: BH00125
Name Use case: Look up student information
Step 2: The system requires users to enter a student's identification code (e.g
student code, name) to search for information
Step 3: The user enters the student identification code
Step 4: The system searches for student information based on the entered code
Trang 21 Step 5: If student information is found, the system displays that information to the
user
Step 6: End use case
Alternate stream:
If no student information is found based on the entered code, the system displays a message informing the user that no information matches the entered code The event
stream then ends at Step 6
3 Context Diagram
In this section, I will build a context diagram to better understand the system's position in the larger environment The context diagram will describe the interactions between our system and external stakeholders This helps us better understand information flows and
interactions between the system and its surroundings
Context diagram for the entire system includes:
NEI's student management system: This is the system we are developing, including
functions for student information management, course registration, attendance, and access to learning resources
Students: Represent the primary users of the system, they will interact with the system to access personal information, register for courses, and use academic features
Faculty and Staff: A group of people who manage and provide academic services, they will interact with the system to manage student information, course registration, and
attendance
Peripheral systems: Includes external elements with which our systems may interact, such as financial management systems or external databases
Trang 22Figure 3: Context Diagram
4 Data Flow Diagram – Level 0 for the whole system
Data Flow Diagram - Level 0 is a high-level interaction diagram that describes how information moves through the main components of the system At level 0, this diagram focuses on how the system's key processes interact with each other and with external entities In NEI's student management system, I represent the level 0 data flow diagram as follows:
Trang 23Figure 4: Data Flow Diagram
The level 0 data flow diagram for the Net Education Institute (NEI) student management systemisanimportant tool for understanding how data moves through the steps in the student managementprocess.Starting from the "NEI Student Management System", where data enters the system, includinginformationabout students, courses, and scores From there, data is transferred through the main processes of thesystemin a logical and organized manner:
First, "Account Management" plays an important role in managing user accounts in the system The main tasks of "Account Management" include creating, updating and deleting user accounts In addition, it can also be related to the management of user access rights and access levels in the system “Account Management” ensures that user accounts are managed effectively and securely, while ensuring security and compliance with system regulations and policies Next, “Manage Course Manager" plays an important role in the course registration and management process The system processes information about available courses, class schedules and other related details, helping students easily choose