Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 19 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
19
Dung lượng
232,47 KB
Nội dung
BTEC FPT INTERNATIONAL COLLEGE INFORMATION TECHNOLOGY ASSIGNMENT UNIT: PROGRAMMING STUDENT : CLASS : BDAF-2005-1 STUDENT ID : BDAF190018 SUPERVISOR : DaNang, August 2020 ASSIGNMENT FRONT SHEET Qualification BTEC Level HND Diploma in Business Unit number and title Unit: Programming Date received (1st Submission date submission) Date received (2nd Re-submission date submission) Student name Student ID Class Assessor name 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 Student’s signature: Grading grid P1 P2 P3 P4 M1 M2 D1 D2 Summative Feedbacks: Resubmission Feedbacks: Grade: Assessor Signature: Internal Verifier’s Comments: Date: Signature & Date: TABLE OF CONTENT INSTRUCTOR/ SUPERVISOR/ ASSESSOR i REVIEWERS iv ACKNOWLEDGMENTS vii ASSURANCE viii TABLE OF CONTENT .ix LIST OF TABLES AND FIGURES xi LIST OF ACRONYM .xii INTRODUCTION .1 CHAPTER 1: PLANNING A SOFTWARE DEVELOPMENT LIFECYCLE .9 1.1 Software lifecycle models (P1) .9 1.1.1 Waterfall model 1.1.2 Interative model 11 1.1.3 The spiral model 13 1.1.4 V model 14 1.2 The risk in spiral lifecycle model (P2) .15 1.3 Feasibility report (P3) 16 1.4 Technical solutions (P4) .17 CONCLUSION REFERENCES LIST OF TABLES AND FIGURES Table 1-1: gfdgfdgfdgfd Figure 1-1: abx - ssss Figure 2-1: Figure of chapter Figure 3-1: Figure of chapter LIST OF ACRONYM ACL Access Control List ADSL Asymmetric Digital Subscriber Line ARCNET Attached Resource Computer Network ARP Address Resolution Protocol Bit Binary Digit DHCP Dynamic Host Configuration Protocol DHCS Dynamic Host Configuration Server DNS Domain Name System INTRODUCTION Dsasadsada d sad sad sad sa Perfomed Student: xxxxxxx CHAPTER 1: PLANNING A SOFTWARE DEVELOPMENT LIFECYCLE 1.1 Software lifecycle models (P1) 1.1.1 Waterfall model In this model, software development activities are divided into different stages and each stage consists of a series of tasks and has different goals It is divided into phases and output of one phase becomes the input of the next phase It is mandatory for a phase to be completed before the next phase starts In short, there is no overlapping in the Waterfall model The waterfall model have seven non-overlapping stages: Requirements: Potential requirements, deadlines and guidelines for the project are analyzed and placed into a functional specification This stage handles the defining and planning of the project without mentioning specific processes Analysis: The system specifications are analyzed to generate product models and business logic that will guide production This is also when financial and technical resources are audited for feasibility Perfomed Student: xxxxxxx Design: A design specification document is created to outline technical design requirements such as programming language, hardware, data sources, architecture and services Coding/Implementation: The source code is developed using the models, logic and requirements designated in the prior stages Typically, the system is designed in smaller components, or units, before being implemented together Testing: This is when quality assurance, unit, system and beta tests take place to report issues that may need to be resolved This may cause a forced repeat of the coding stage for debugging If the system passes the tests, the waterfall continues forward Operation/Deployment: The product or application is deemed fully functional and is deployed to a live environment Maintenance: Corrective, adaptive and perfective maintenance is carried out indefinitely to improve, update and enhance the final product This could include releasing patch updates or releasing new versions Case of used Requirements are stable and not changed frequently An application is small There is no requirement which is not understood or not very clear The environment is stable The tools and techniques used is stable and is not dynamic Resources are well trained and are available Advantages of the waterfall model Upfront documentation and planning stages allow for large or shifting teams to remain informed and move towards a common goal Forces structured , disciplined organization Is simple to understand, follow and arrange tasks Facilitates departmentalization and managerial control based on schedule or deadlines Reinforces good coding habits to define before design and then code Allows for early design or specification changes to be made easily Clearly defines milestones and deadlines Disadvantages of the waterfall model The disadvantages of the waterfall model Design is not adaptive; often when a flaw is found, the entire process needs to start over Ignores the potential to receive mid-process user or client feedback and make changes based on results Delays testing until the end of the development life cycle Does not consider error correction Does not handle requests for changes, scope adjustments or updates well Perfomed Student: xxxxxxx Reduces efficiency by not allowing processes to overlap No working product is available until the later stages of the life cycle Not ideal for complex, high risk, ongoing or object-oriented projects 1.1.2 Interative model The interative model is a particular implementation of a software development life cycle that focusses on an initial , simplified implement, which then progressively gains more complexity and a broader feature set until the final system is complete Normally, The interative consists of five stages Planning : This is the first stage of the iterative model, where proper planning is done by the team, which helps them in mapping out the specifications documents, establish software or hardware requirements and generally prepare for the upcoming stages of the cycle Analysis and Design : Once the planning is complete for the cycle, an analysis is performed to point out the appropriate business logic, database models and to know any other requirements of this particular stage Moreover, the design stage also occurs in this phase of iterative model, where the technical requirements are established that will be utilized in order to meet the need of analysis stage Implementation : This is the third and the most important phase of the iterative model Here, the actual implementation and coding process is executed All planning, specification, and design documents up to this point are coded and implemented into this initial iteration of the project Testing : After the current build iteration is coded and implemented, testing is initiated in the cycle to identify and locate any potential bugs or issues that may have been in the software Perfomed Student: xxxxxxx Evaluation : The final phase of the Iterative life cycle is the evaluation phase, where the entire team along with the client, examine the status of the project and validate whether it is as per the suggested requirements Case of used The systematic requirements are complete, clearly defined and easily understood Key requirements need to be defined, and some details may be renewed over time Advantages of interative model Build and perfect the product steps step by step Documenting time will be less than design time Some working functions can be developed quickly and early in the life cycle Less expensive to change ranges, required Easy to manage risks Throughout the life cycle, the software is produced early to facilitate customer reviews and feedback Disavantages of interative model Demanding many resources System architecture or design issues can arise at any time More complex management requirements The progress of the project depends heavily on the risk analysis Perfomed Student: xxxxxxx 1.1.3 The spiral model The spiral model is emphasis placed on risk analysis The spiral model has four phases: Planning, Risk Analysis, Engineering and Evaluation A software project repeatedly passes through these phases in iterations (called Spirals in this model) The baseline spiral, starting in the planning phase, requirements are gathered and risk is assessed Spiral Model Phases Case of used When project is large When releases are required to be frequent When creation of a prototype is applicable When risk and costs evaluation is important For medium to high-risk projects When requirements are unclear and complex When changes may require at any time When long term project commitment is not feasible due to changes in economic priorities Advantages of spiral model Additional functionality or changes can be done at a later stage Cost estimation becomes easy as the prototype building is done in small fragments Continuous or repeated development helps in risk management Development is fast and features are added in a systematic way There is always a space for customer feedback Perfomed Student: xxxxxxx Disadvantages of spiral model Risk of not meeting the schedule or budget It works best for large projects only also demands risk assessment expertise For its smooth operation spiral model protocol needs to be followed strictly Documentation is more as it has intermediate phases It is not advisable for smaller project, it might cost them a lot 1.1.4 V model The V-model is an SDLC model where execution of processes happens in a sequential manner in a V-shape It is also known as Verification and Validation model The V-Model is an extension of the waterfall model and is based on the association of a testing phase for each corresponding development stage Case in used Requirements are well defined, clearly documented and fixed Product definition is stable Technology is not dynamic and is well understood by the project team There are no ambiguous or undefined requirements The project is short Advantages of V model This is a highly-disciplined model and Phases are completed one at a time Works well for smaller projects where requirements are very well understood Simple and easy to understand and use Easy to manage due to the rigidity of the model Each phase has specific deliverables and a review process Disadvantages of V model High risk and uncertainty Perfomed Student: xxxxxxx Not a good model for complex and object-oriented projects Poor model for long and ongoing projects Not suitable for the projects where requirements are at a moderate to high risk of changing Once an application is in the testing stage, it is difficult to go back and change a functionality No working software is produced until late during the life cycle 1.2 The risk in spiral lifecycle model (P2) The spiral model is a practical approach for developing large-scale software When implementing this model, developers and customers can better understand from overview to detail Since then, when encountering risks at each level, it is possible to have appropriate solutions or give development suggestions to put the software in the right direction, helping to quickly improve When implementing this model, developers can directly consider technical risks and manage each stage However, when developing warehouse management software into this model, there will be many problems: Cost issue: Risk analysis and evaluation will be very costly This increases the cost greatly Because this is a software to manage a small part of an enterprise's operations Technical problems: When putting software into use in a certain company Then maybe the software needs to change according to the needs of the customer It is possible to change requirements frequently, so the risk analysis of each change requires people with technical and experience Time issue: According to the spiral model, the risk analysis must be done during software development However, usually in practice, before signing the contract to buy software Software manufacturers often have to present risks to customers So the risk assessment must be done first Personnel issue: Warehouse software only needs a small number of developers When assessing risks, it may not be possible to see all risks Or that could just be subjective risks from similar software So finding all the risks requires a lot of experts Small parts are unlikely to meet this Perfomed Student: xxxxxxx 1.3 Feasibility report (P3) The objective of the feasibility study is to prove the feasibility of the project to persuade investors or investment leaders to implement the project The feasibility study document clarifies whether the work is worth doing or not and is feasible in terms of economic and technical aspects If so, how much and how much benefit The feasibility study document considers the legal basis, necessity of the project, scope objectives as stated and approved When there is a good design analysis, the writer is at risk Technical benefits: Help storekeepers more easily find and look up information about goods and information on stock quantities Ensure the search is accurate, complete and fast Helps save time for storekeepers in import and export activities Linking with other software in the system to help facilitate the electronicization of the company Economic benefits: Minimize paper documents in management activities Reduce document storage costs compared to using paper documents because data is stored on the cloud drive Help save time for storekeepers in import and export activities, increase productivity Perfomed Student: xxxxxxx 1.4 Technical solutions (P4) There are three ways to connect to a database:ADO.NET, Entity Framework, LINQ to SQL The following table provides the pros and cons of each type of connection ADO.NET It provides consistent access to data sources Entity Framework Entity Framework is a wrapper for ADO.NET Writing and managing ADO.NET code for data access seems a bit tedious and monotonous So, Microsoft provides an O/RM framework —— Entity Framework to automate database related activities for our application We can say that EF is an enhancement to ADO.NET that gives developers an automated mechanism for accessing & storing the data in the database It is useful in three scenarios First, if you already have existing database or you want to design your database ahead of other parts of the application Second, you want to focus on your domain classes and then create the database from your domain classes Third, you want to design your database schema on the visual designer and then create the database and classes Perfomed Student: xxxxxxx 10 LINQ to SQL It's used for quick data access construction to relatively well designed SQL Server databases LINQ to SQL Entity Framework ADO.net It only works with SQL Server Database It can work with various databases like Oracle, DB2, MYSQL, SQL Server etc It can work with RDBMS like SQL Server, Oracle, DB2 and MySQL etc It generates a dbml to maintain the relation It generates an edmx files initially The relation is maintained using different files csdl, msl and ssdl It generates data provider to connect for each kind of database Ex : System.Data.Sqlclient, System.Data.OracleClient, … It has not support for complex type It has support for complex type You can create data provider to connect with different types of database It cannot generate database from model It can generate database from model It cannot generate database from model It allows only one to one mapping between the entity classes and the relational tables /views It allows one-to-one, one-tomany & many-to-many mappings between the Entity classes and the relational tables /views It can not create entity class It allows you to query data using DataContext It allows you to query data using EntitySQL, ObjectContext, DbContext It query depend on commants It provides a tightly coupled approach It provides a loosely coupled It provides a tightly coupled approach Since its code first approach approach allow you to use Dependency Injection pattern which make it loosely coupled Perfomed Student: xxxxxxx 11 CONCLUSION After completing this report, I have gained… Perfomed Student: xxxxxxx 12 REFERENCES Nguyễn Kim Sơn, Phạm Hùng Vân, Nguyễn Bảo Sơn cộng (2010) Đột biến gen mã hóa EGFR ung thư phổi Tạp chí nghiên cứu y học, 3, 30-37 Amanda B.R, Donna P.A, Robin J.L et al (2008) Total prostate specific antigen stability confirmed after long-term storage of serum at -80C J.Urol, 180(2), 534-538 Cách ghi tài liệu tham khảo tại: https://journal.hiu.vn/vi/cach-trich-dan-tai-lieu/cach-trich-dan-tai-lieu-tham-khao Perfomed Student: xxxxxxx 13 ... Student: xxxxxxx CHAPTER 1: PLANNING A SOFTWARE DEVELOPMENT LIFECYCLE 1.1 Software lifecycle models (P1) 1.1.1 Waterfall model In this model, software development activities are divided into... ACRONYM .xii INTRODUCTION .1 CHAPTER 1: PLANNING A SOFTWARE DEVELOPMENT LIFECYCLE .9 1.1 Software lifecycle models (P1) .9 1.1.1 Waterfall model 1.1.2 Interative... the life cycle Not ideal for complex, high risk, ongoing or object-oriented projects 1.1.2 Interative model The interative model is a particular implementation of a software development life